Вышел очередной релиз молодого, но перспективного GTK-клиента для Music Player Daemon — Ymuse 0.16.
В данном релизе исправлена пара проблем с отзывчивостью приложения при рестарте MPD, а также добавлены регулятор громкости демона и настройка для скрытия панели инструментов.
Ymuse — это клиент для MPD, написанный на Go/GTK3 и доступный как в виде snap-пакета, так и в deb и rpm.
Более чем два года назад в Gnome GitLab был открыт багрепорт о том, что скроллинг в GTK-приложениях с помощью тачпада получился слишком быстрым или слишком чувствительным. В дискуссии участвовали 43 человека.
Мейнтейнер GTK+, Маттиас Класен, изначально утверждал, что не видит проблему. Комментарии были в основном на тему «как оно работает», «как оно работает в других ОС», «как это объективно измерить», «нужны ли настройки» и «что можно поменять». Однако их накопилось слишком много, настолько много, что багрепорт, по мнению мейнтейнера, потерял свое назначение как отчет об имеющейся ошибке и превратился в форум для дискуссии. В связи с этим, багрепорт был закрыт без каких-либо изменений в коде.
После 9 лет разработки Дмитрий Грошев выпустил новый стабильный релиз растрового графического редактора mtPaint версии 3.50.
Интерфейс приложения использует GTK+, но также поддерживает возможность работы в режиме CLI ($ mtpaint --cmd, см. $ mtpaint --help) без запуска графического интерфейса (благодаря чему можно использовать mtPaint и на платформе Android с помощью терминала Termux).
16 декабря состоялся выпуск графического тулкита gtk 4.0.
В новом выпуске были добавлены новые виджеты, поддержка встроенного медиа-проигрывателя, доработки ускорения через GPU, улучшена поддержка других операционных систем.
Выпущена первая нестабильная версия графического редактора GIMP на базе GTK3.
Главные изменения:
Интерфейс на основе GTK3 с встроенной поддержкой Wayland и дисплеев с высокой плотностью (HiDPI).
Поддержка горячего подключения графических планшетов: втыкаете свой Wacom и продолжаете работать, перезапуск больше не нужен.
Мультивыделение слоев: можно перемещать, группировать, добавлять маски, применять цветовые метки и т.д.
Масштабный рефакторинг кода.
Новый API плагинов.
Переход на GObject Introspection и возможность писать плагины на Python 3, JavaScript, Lua и Vala.
Улучшенная поддержка управления цветом: исходное цветовое пространство больше не забывается при использовании фильтров, работающих в других цветовых пространствах (LCH, LAB и т.д.).
Ускоренная отрисовка за счет кэширования проекции с примененными экранными фильтрами и рамкой выделения.
Опциональная поддержка Meson для сборки.
Ожидается еще несколько релизов в серии 2.99.х, после чего команда выпустит стабильную версию 3.0.
Примечание для собирающих программу из исходного кода: при упаковке тарболла мейнтейнер упустил из виду, что более новая версия GEGL еще не выпущена, и оставил зависимость от версии из git master. Можно смело использовать GEGL 0.4.26, предварительно исправив номер микроверсии в configure.ac.
В мае этого года (точная дата не сообщается) вышла новая, 2020.1, версия U++ Framework (Он же Ultimate++ Framework). U++ — кроссплатформенный фреймворк для создания GUI приложений.
Нововведения в текущей версии:
Linux бэкенд по умолчанию теперь использует gtk3 вместо gtk2.
«look&feel» в Linux and MacOS переработан и лучше поддерживает тёмные темы.
У ConditionVariable и Semaphore появились варианты метода Wait с параметром timeout.
Добавлена функция IsDoubleWidth для определения глифов UNICODE двойной ширины.
U++ теперь использует директории ~/.config and ~/.cache для хранения разного.
Добавлена функция GaussianBlur.
Модернизирован внешний вид виджетов в дизайнере слоёв.
Поддержка нескольких мониторов в MacOS и другие исправления.
В дизайнер добавлено несколько часто используемых виджетов, таких как ColorPusher, TreeCtrl, ColumnList.
Нативный диалог выбора файлов, FileSelector, переименован в FileSelNative и добавлен в MacOS (в дополнение к Win32 и gtk3).
Рефракторинг GLCtrl в OpenGL/X11.
Добавлена функция GetSVGPathBoundingBox.
PGSQL теперь может экранировать ? через ?? или использовать метод NoQuestionParams в целях избежания использования ? как символа подстановки параметров.
Хотели провести стресс-тестирование в Linux, но не знали как? Теперь это может каждый - с новым приложением GTKStressTesting! Главной особенностью приложения является интуитивно понятный интерфейс и информативность. Вся нужная информация о вашем компьютере (CPU, GPU, RAM, и т.п.) собрана на одном экране. На этом же экране можно выбрать тип стресс-теста. Также присутствует небольшой бенчмарк.
Основные возможности:
Стресс-тестинг CPU и RAM.
Многоядерный и одноядерный бенчмарк.
Подробная информация о процессоре.
Информация о кэше процессора.
Информация о материнской плате (в т.ч. версия BIOS).
Информация об оперативной памяти.
Монитор загрузки процессора (ядро, пользователи, средняя загрузка и т.п.).
Монитор использования памяти.
Просмотр физических тактовых частот CPU (текущая, минимальная, максимальная).
Монитор железа (получает информацию из sys/class/hwmon).
В основе GTKStressTesting лежит консольная программа stress-ng tool, что позволяет в любой момент запустить приложение из терминала с параметром --debug.
Год назад учил Си, осваивал GTK и в процессе писал враппер для Wine, упрощающий настройку многих утомительных действий. Сейчас дописывать проект нет ни времени, ни сил, но в нём была удобная функция адаптации темы Wine к текущей теме GTK3, которую я вынес в отдельную консольную утилиту. Знаю, в Wine-staging есть функция «мимикрии» под тему GTK, но сделано это очень криво, часть виджетов перестаёт отвечать или вообще отображаться, и это длится уже несколько лет, так что моё решение куда как более юзабельное, хотя и далеко не идеальное.
Утилита «вытаскивает» цвета из текущей темы GTK-3 и оптимально подстраивает их для использования с виджетами WinAPI. Алгоритм оптимизирован для использования как со светлыми, так и с тёмными темами. К сожалению, особенности тем а-ля «windows 95» не позволяют добиться современного плоского дизайна, в любом случае часть виджетов отображаются некорректно. Для придирчивых пользователей есть несколько ключей для более точной подстройки под себя.
Состоялся релиз gtk-темы Lounge (в комплекте идет оформление для gtk2, gtk3, gnome-shell и вспомогательная тема иконок), основанной на оригинальной Adwaita. Тема создана под впечатлением от Absoulte, распространяется по лицензии GPLv3+.
Список изменений (по сравнению с 0.6.1, выпущенным 7 месяцев назад):
Теперь DBusMenu преобразуется в GMenuModel, а не сразу в виджет, как раньше.
Теперь используется только одна GtkMenuBar, что позволило сделать скроллинг между меню.
Добавлен компактный режим - все меню может быть показано в одну секцию (под именем приложения, примерно как в gnome-shell)
Полужирное имя приложения теперь является настройкой времени выполнения, а не компиляции
libwnck теперь не используется (временно), хотя при сборке все равно ищется
Переработана Jayatana - добавлены хаки для Idea, а также кэширование пунктов меню.
Для скачивания исходников нужно пройти по ссылке ниже и либо заклонить репозиторий, либо скачать артефакты сборки (просто зазипованный репозиторий работать не будет)
Когда мы (разработчики GTK+ — прим. переводчика) начали разработку GTK+ 4, мы составили план, в котором GTK+ 3.22 будет окончательной стабильной ветвью GTK+ 3. И мы некоторое время придерживались этого плана.
Но GTK+ 4 ещё нужно время, чтобы созреть, а некоторые приятные новые функции GTK+ 4 не используются в основной версии GTK+ — GTK+ 3.x.
Поэтому мы решили, что лучше изменить курс и позволить ограниченное количество новых функций и API в GTK+ 3.x, сделав выпуск GTK+ 3.24 в сентябре.
Теперь в git‐репозитории GTK+ есть ветвь gtk-3-24. Техническое обслуживание GTK+ 3.x перешло в эту ветку, и мы не будем делать никаких дальнейших релизов 3.22.x.
Вызов gdk_window_move_to_rect теперь является публичным.
Бэкенд для Wayland переведён на использование анонимной разделяемой памяти на платформе FreeBSD.
Побочным эффектом еще одного релиза GTK+ из цикла 3.x является то, что GTK+ 3.24 будет окончательным GTK+ 3, что является приятной параллелью c GTK+ 2.24, являющейся окончательным релизом в GTK+ 2.
В связи с переездом на GitLab и желанием поскорее выпилить libpeas я принял решения выпустить релиз ValaPanel 0.4.0 раньше.
Кто не знает, ValaPanel — панель рабочего стола (аналог mate-panel, fbpanel, xfce4-panel)
Из новых возможностей релиза 0.4:
Библиотека libvalapanel почти полностью переписана на C (за исключением связанных с libpeas частей, их в 0.5.0 перепишу).
vala-panel-runner теперь для работы не требует панели и может быть установлен отдельно (но для сборки все равно нужны полные исходники vala-panel).
Добавлен интерфейс ValaPanelPlatform, теперь панель проще адаптировать к любому оконному менеджеру и композитору (только если использовать ее в Wayland, то следует избегать плагинов с libwnck — упадет).
Изменено API для написания плагинов (незначительно).
Изменен формат конфигурационных файлов. Теперь требуется только один файл на профиль, в отличие от директории в версии 0.3.х,
Исправлено несколько ошибок.
В остальном это все та же панель, что и раньше, и так же исправно может быть использована где угодно.
Вышла новая версия графического файлового менеджера из состава Xfce.
Начиная с этой версии Thunar переведён на GTK+ 3.
Из внешних изменений — полностью переработана панель адреса. Добавлены кнопки для переходов вперёд/назад/на уровень выше/в домашний каталог. Кроме этого, можно напрямую редактировать строку адреса.
При переходе на GTK+ 3 меняется часть Thunar Plugin API (thunarx). Т.е. при обновлении Thunar до версии 1.8.0 необходимо обновить установленные плагины и xfdesktop до актуальных версий (см. таблицу совместимости).
Состоялась новая версия плагина gtkplatform 0.2.3, позволяющего унифицировать внешний вид Qt-приложений в GTK-окружениях рабочего стола, путём задействования GTK в качестве хост-тулкита. Qt приложение использует GTK+ для рендеринга окна, файловых диалогов, ввода и так далее, делая работу Qt-приложения, например, в GNOME, неотличимой от штатных GNOME-приложений. В новом выпуске, помимо исправления багов и уменьшения нагрузки на CPU, добавлен крайне интересный модуль - gtkextras. Данный модуль позволяет использовать в любом Qt-приложении штатный HeaderBar-заголовок GTK+ 3, посредством класса QGtkHeaderBar. Пример. Данный модуль ещё не стабилизирован, но разработчики продолжат его дорабатывать и улучшать.
Представлен выпуск новой стабильной ветки WebKitGTK+ 2.20.0, порта браузерного движка WebKit для платформы GTK+. Из известных проектов, использующих WebKitGTK+, можно отметить Midori и штатный браузер GNOME (Epiphany).
Изменения:
Новый API для извлечения и удаления Cookie при помощи WebKitCookieManage;
Новый API для определения, когда форма отправлена через JavaScript;
Поддержка семейства шрифтов «system» в CSS;
Ряд улучшений и исправлений в поддержке управления при помощи сенсорных экранов и экранных жестов;
Улучшена отрисовка сложной компоновки текста;
Добавлен режим энергосбережения;
Подготовлена более полная и соответствующая спецификации реализация API WebDriver.
Qt5 Configuration Tool — небольшая утилита, предназначенная для настройки внешнего вида приложений на базе Qt 5.
В версии 0.28 добавлена поддержка Qt 5.8 и проведена доработка, связанная с вынесением части кода в отдельный стиль-обёртку. Это позволяет избежать проблем с некоторыми приложениями, использующими собственные настройки внешнего вида.
Одновременно обновлён набор плагинов Qt5Gtk2 0.4, добавляющий интеграцию с GTK+ 2.0. В новой версии добавлена поддержка Qt 5.8. Следует также отметить, что аналогичные изменения проведены и в репозитории модуля qtstyleplugins, который теперь может полностью заменить Qt5Gtk2.
Как многие заметили, из состава Qt 5.7 была удалена поддержка Gtk+ 2.0. Взамен разработчики предлагают использовать соответствующий стиль из репозитория qtstyleplugins. Однако, при использовании данного стиля нет возможности задействовать стандартные диалоги из Gtk+ 2.0 (было доступно в Qt 5.6).
Для решения данной проблемы был создан небольшой проект Qt5Gtk2, в рамках которого выпускаются плагины для Qt5, позволяющие вернуть полноценную поддержку Gtk+ 2.0 в Qt5. Исходный код с незначительными доработками был взят из Qt 5.6 и распространяется под лицензией GPLv2 и выше.