За два дня до выхода GNOME 3.14 представлен (https://mail.gnome.org/archives/gnome-announce-list/2014-Sep...) стабильный релиз новой ветки многоплатформенного тулкита для создания графического интерфейса пользователя - GTK+ 3.14.0 (http://www.gtk.org/). Ветка GTK+ 3.14 полностью обратно совместима с прошлыми выпусками GTK+ серии 3.x.
В состав тулкита входит полный набор виджетов, позволяющих использовать GTK+ для проектов различного уровня и размера. Код GTK+ развивается в рамках проекта GNU и распространяется под лицензией LGPL, что позволяет использовать GTK+ не только для разработки свободного ПО, но и для создания проприетарных приложений, не требуя от производителей закрытых программ выплаты роялти или покупки специальной лицензии. С тех пор, как GTK+ был разработан в рамках проекта GIMP, тулкит используется в различных проектах, например, GTK+ лежит в основе десктоп-окружений GNOME и Xfce или используется в таких продуктах, как Firefox и OpenOffice/LibreOffice.GTK+ спроектирован для поддержки не только C/C++, но и других языков программирования, таких как Perl и Python, что в сочетании с использованием визуального построителя интерфейса Glade (http://glade.gnome.org/) позволяет существенно упростить разработку и сократить время написания графических интерфейсов. Организация вывода в GTK+ абстрагирована от типа оконных систем, например, поставляется бэкенд, обеспечивающий возможность работы поверх дисплейного сервера Wayland, а также бэкенд, позволяющий отрисовывать вывод библиотеки GTK+ в окне web-браузера (запустив Gtk-приложение на одной машине, можно открыть web-браузер на другой машине и получить доступ к интерфейсу данной программы).
Из добавленных в GTK+ 3.14.0 улучшений (https://developer.gnome.org/gtk3/3.14/) можно отметить:
- Значительное улучшение бэкенда, обеспечивающего возможность работы поверх дисплейного сервера Wayland. В том числе обеспечена поддержка
Wayland 1.6 (http://www.opennet.me/opennews/art.shtml?num=40632), добавлена возможность управления с сенсорных экранов, реализован механизм Drag-and-Drop, поддержка использования Wayland в классическом режиме GNOME;- Вместо темы оформления "Raleigh" по умолчанию для всех платформ задействована тема "Adwaita". Старая тема "Raleigh" потребляла немного ресурсов и не была привязана ко внутреннему или внешнему движку тем оформления, но была ограничена топорным внешним видом, из-за чего эта тема практически всегда заменялась в дистрибутивах Linux, но приводила к проблемам при поставке GTK-приложений для других платформ. Тема Adwaita позволяет добиться единого современного оформления программ на всех поддерживаемых платформах и учитывает все нововведения GTK+. Кроме того, доступен высококачественный вариант Adwaita, оформленный в тёмных тонах.
До сих пор тема оформления по умолчанию не заменялась, так как разработчики не решались потерять отсутствие привязки к движкам тем оформления. Данное требование потеряло актуальность, так как в настоящее время GTK+ продвигает средства CSS как основу для организации оформления. Ранее средства CSS не позволяли реализовать всё, что можно было сделать через движки тем (например, тени меню), но в свежей кодовой базе GTK+ данный недостаток уже преодолён. Потребность в движках тем отпала и Adwaita теперь обходится встроенными механизмами CSS. Более того, GTK+ теперь придерживается курса на отказ от движков тем и загружаемых модулей-дополнений, так как они не удовлетворяют требованиям безопасности и требуют стабильного API для внутренних подсистем.
Было:
<center><a href="http://blogs.gnome.org/mclasen/files/2014/06/raleigh.png&quo... src="http://www.opennet.me/opennews/pics_base/0_1402773495.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border="0"></a></center>Стало:
<center><a href="http://blogs.gnome.org/mclasen/files/2014/06/adwaita.png&quo... src="http://www.opennet.me/opennews/pics_base/0_1402773548.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border="0"></a></center>
Тёмный вариант:<center><a href="http://blogs.gnome.org/mclasen/files/2014/06/adwaita-dark.pn... src="http://www.opennet.me/opennews/pics_base/0_1402775168.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border="0"></a></center>
- Поддержка мультитач доведена до практического применения: добавлен фреймворк для распознавания жестов, виджеты преобразованы для поддержки управления жестами;- В состав GTK+ интегрирован собственный интерактивный отладчик GtkInspector (https://wiki.gnome.org/Projects/GTK%2B/Inspector). Поставка отладчика в составе GTK+ даёт возможность развивать средства отладки синхронно с GTK+ и предоставить разработчикам возможность иметь отладчик всегда под рукой. Отладчик можно вызвать на лету для любого GTK-приложения через клавиатурные комбинации Control-Shift-I или Control-Shift-D. Отладчик создан по мотивам проекта gtkparasite (https://github.com/chipx86/gtkparasite) (попытка создать подобие Firebug для GTK+) и позволяет наглядно инспектировать иерархию виджетов, на лету менять свойства и наблюдать вызванные этим изменения в интерфейсе, управлять настройками тем оформления (менять темы или отдельные элементы в процессе отладки), использовать режим подсветки обновляемых в процесе работы графических областей, отображать содержимое пиксельного кэша, выводить разметку выравнивания элементов. Предоставляется три основных режима работы: инспектирование объектов, визуальное инспектирование и переопределения свойств оформления через CSS.
<center><img src="http://www.opennet.me/opennews/pics_base/0_1400308304.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border="0"></center>- В состав включён инструмент для просмотра пиктограмм;
- Улучшен API для формирования визуальных тем, описание стиля в которых задаётся в CSS-подобном представлении с возможностью смены стиля на лету. В новой версии добавлена поддержка задание средствами CSS тем оформления пиктограмм. Добавлены новые состояния для ссылок и выбранных флагов (check button) и переключателей (radio button);
- В виджет GtkListBox (https://developer.gnome.org/gtk3/3.14/GtkListBox.html) добавлена возможность одновременного выделения нескольких элементов (multi-selection);
<center><a href="https://developer.gnome.org/gtk3/3.14/list-box.png">... src="http://www.opennet.me/opennews/pics_base/0_1411396640.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>
- Обеспечена более плотная интеграция с меню OS X при использовании GtkApplication;
- Прекращена поддержка виджетов GdkColor, GtkMisc, GtkArrow, GtkStatusIcon, GtkNumerableIcon, GtkThemingEngine, многих свойств стилей, файлов .icon, встроенных пиктограмм , gdk_window_flush, отрисовки за пределами области вывода, вызовов gtk_widget_reparent, gtk_widget_region_intersect, gtk_container_reallocate_redraws.
Одновременно дотупна (https://download.gnome.org/sources/clutter/1.20/) новая стабильная ветка графической библиотеки Clutter (http://www.clutter-project.org/) - 1.20.0 (https://developer.gnome.org/clutter/1.20/). Clutter активно используется для обеспечения работы пользовательского интерфейса в проекте GNOME 3. Функции библиотеки Clutter ориентированы на активное использование анимации и визуальных эффектов, что позволяет применять при создании обычных GUI приложений методы, используемые при разработке игр. При этом сама библиотека напоминает игровой движок, в котором максимальное число операций выносится на плечи GPU. Одним из основных преимуществ Clutter является то, что для создания сложного интерфейса пользователя требуется написание минимума кода. Библиотека может работать поверх OpenGL, GLib, GObject, GLX, SDL, WGL, Quartz, EGL и Pango. Имеются биндинги для языков Perl, Python, C#, C++, Vala и Ruby.URL: https://mail.gnome.org/archives/gnome-announce-list/2014-Sep...
Новость: http://www.opennet.me/opennews/art.shtml?num=40649
Ура! Бегу обновляться!
> Кроме того, доступен высококачественный вариант Adwaita, оформленный в тёмных тонах.А бэкпорт на GTK2 есть для синхронного вида? Если да - дайте две.
Есть несколько, хотя не официальные.
Aldabra к примеру http://gnome-look.org/content/show.php?content=142247
Но были еще, можно на gnome-look поискать.
Там теперь почти что браузер в кишках, небось?
>>GTK+ лежит в основе десктоп-окружений GNOME и Xfce или используется в таких продуктах, как Firefoxя даже знаю какой)
с каких пор Firefox использует GTK ? там у них ведь собственный тулкит есть.
С каких пор Firefox использует GTK+3?
AFAIK, там только форк какой-то есть, в котором некоторые части все еще содержат GTK+2, так что на GTK+3 им еще ехать и ехать скорее всего.
То-то мне показалось, что я это уже видел раньше. =)
http://www.opennet.me/opennews/art.shtml?num=40002
Да, походу [:|||:]
А что это за новое веяние засерать заголовок окна всякими кнопками?
В планшетах такое используется в модальных окнах, по крайней мере в Cocoa touch.
> В планшетах такое используется в модальных окнах, по крайней мере в Cocoa touch.Вот я и думаю - когда гномеры планшет то выпустят? Я уже устал ждать, честно. А на десктопе планшетный и-фейс мне ни в п..., ни в красну армию.
Конечно куда лучше держать целую строку вверху окна только для кнопок закрытия, сворачивания и разворачивания.
ну, а если используеш тайловый оконный менеджер, где шапки окон не нужны в принципе?
>Конечно куда лучше держать целую строку вверху окна только для кнопок закрытия, сворачивания и разворачивания.Конечно, куда лучше попадать на эти лишние кнопки при перемещении окна.
> Конечно, куда лучше попадать на эти лишние кнопки при перемещении окна.Ну так это... убрали кнопки управления окном. Появилось свободное место. Появился зуд - как же так, столько места пропадает.
Так вот зачем в гноме такие гигантские заголовки.
>Ветка GTK+ 3.14 полностью обратно совместима с прошлыми выпусками GTK+ серии 3.x
>Прекращена поддержка виджетов GdkColor, GtkMisc, GtkArrow, GtkStatusIcon...и т.д. и т.п.кэп, помогите разрешить логическое противоречие между этими двумя предложениями
Наверняка, отмечены deprecated. Т.е. в 3.x они ещё есть, но в следующей мажорной версии (4.x) уже не будет.
Хм, прикрутили бутстрап.
А страпон?
> полностью обратно совместима с прошлыми выпусками GTK+ серии 3.x.это какая-то ошибка, похоже
>С тех пор, как GTK+ был разработан в рамках проекта GIMP, тулкит используется в различных проектах, например, GTK+ лежит в основе десктоп-окружений GNOME и Xfce или используется в таких продуктах, как Firefox и OpenOffice/LibreOffice...а gimp по-прежнему использует GTK2.
Надеюсь, вы не пытаетесь делать из этого какие-то далеко идущие выводы? :)
> ..а gimp по-прежнему использует GTK2.Вообще фраза "многоплатформенного тулкита для создания графического интерфейса пользователя" -- это лукавство: официальная позиция гномятников, со слов разработчиков LXDE -- "это GNOME toolkit"; гном, как известно, приколачивается к systemd; а systemd -- по какому-то недоразумению к Linux.
Вообще, GTK - GIMP Toolkit.
Гном просто его активнее всех пилит.
> Вообще, GTK - GIMP Toolkit.До второй версии включительно.
Саш, запросить переписку?
> Саш, запросить переписку?Это тянет на классику: в ответ на "зачем вы цитируете бабок у подъезда, когда есть опубликованная программа партии" Шигорин говорит "не, давайте я вам найду переписку с бабками".
Алсо, https://git.gnome.org/browse/gtk+/log/?qt=author&q=lrn
> официальная позиция гномятников, со слов разработчиков LXDEВ этом весь Миша: официальная позиция президента США со слов бабки у подъезда.
> -- это лукавство: официальная позиция гномятников, со слов разработчиков LXDE --
> "это GNOME toolkit"; гном, как известно, приколачивается к systemd; а systemd
> -- по какому-то недоразумению к Linux.Странно как вы линуксным кернелом при всем этом пользуетесь :).
>> -- по какому-то недоразумению к Linux.
> Странно как вы линуксным кернелом при всем этом пользуетесь :).Ой, ребят, смотрите, какой у этого Анонима смешной поттер вырос: он Шигорину запрещает linux пользовать. <:*<
Его еще давным-давно надо было на Qt перевести.
А зачем нужна фиговина on/off если есть chekbox'ы?
Потому что on/off по смыслу нечто среднее между чекбоксом и кнопкой.
Их бы еще сделали однозначными. А то смысл двоякий сейчас. Или сейчас OFF, или я своим действием OFF активирую.
И ведь предлагали уже вариант однозначный. Какой-то художник или дизайнер, сейчас не вспомню. Смысл там сделать рамку, как на календаре, которая будет ездить между ON и OFF. Тут уже понятнее - рамка на ON - значит включено. В обсуждении народ вроде согласился, что так нагляднее, но почему не пошло дальше - неизвестно
нашел пример - http://chrisnorstrom.com/2012/11/invention-multiple-choice-w.../
Для чекбоксов логично использование кнопки "Применить" (или "ОК"). В гноме изменения происходят сразу, поэтому ON/OFF более логично.
> Для чекбоксов логично использование кнопки "Применить" (или "ОК").А что мешает применять сразу настройки чекбокса, если хочется?
> В гноме изменения происходят сразу, поэтому ON/OFF более логично.
Чем он анноит. Вот так случайно клацнешь по ошибке не туда. А теперь попробуй понять как это безобразие отменить...
Кнопки "применить" и "отмена" сделали ведь не просто так.
> Кнопки "применить" и "отмена" сделали ведь не просто так.Ага, а также любое изменение системных настроек требует перезагрузки системы.
> Чем он анноит. Вот так случайно клацнешь по ошибке не туда. А теперь попробуй понять как это безобразие отменить...
Чтобы безобразие отменить нужно клацнуть не туда ещё раз. А вообще не стоит куда-то клацать не понимая к чему это приведёт. "Применить" и "отмена" от ошибок тоже не спасают.
Поддержка мультитач доведена до практического применения: добавлен фреймворк для распознавания жестов, виджеты преобразованы для поддержки управления жестами;
Ну не хрена ж себе! Не прошло и 10 лет.
А много ты встречал десктопов с мультитачем?
>А много ты встречал десктопов с мультитачем?Любой монитор можно взять двумя или более руками... ;)
можно. но это - не ответ на подставленный вопрос
уж не император ли двачей к нам пожаловал?
Темная тема хороша.
не хочется признавать, но сабж - торт.
> не хочется признавать, но сабж - торт.Т.е. за три дня протухнет даже в холодильнике?
Одному мне кажется, что в новой теме модальное окно не видно на фоне основного?
Если честно, то по мне было выглядит кондово, но все можно прочитать, стало все такое светленькое, но что там нарисовано не понятно ...
> GTK+ теперь придерживается курса на отказ от движков темГут. CSS, в принципе, покрывает задачи движков оформления.
> и загружаемых модулей-дополнений
А вот это скорее шлехьт.
> встроенных пиктограмм
Э, куда? Это что, иконки теперь каждый будет на кнопки как б-г на душу положит вешать?
> Э, куда? Это что, иконки теперь каждый будет на кнопки как б-г на душу положит вешать?Разница вместо stock-id имя иконки писать ?
Ох, adwaita по умолчанию. Макокопец, серьёзно. Или хотя бы повод делать скриншоты кроссплатформенного софта с этой темой или qgtkstyle её подхватывающим
Да блин, не прошло и 20 лет как их наконец задолбал ТОПОРНЫЙ вид программ "а у нас тут win95, 1995 год".
Вот же ж гады, снова совместимость тем поломали. Clearlooks-Phénix снова разбит вдребезги.
> дисплейного сервера WaylandКогда же вы уже выучите...
Декорации на стороне клиента - зло.
А мне не нравится!!!
1) внешний вид Adwaita свистоперделистый
2) CSS ни к чему для GUI-движков - и без CSS гемора хватало
3) вот это особенно "порадовало":> Прекращена поддержка виджетов GdkColor, ... GtkStatusIcon
Щас иконки в трее быдлоколер как должен рисовать?!
Похоже, Gtk3 (как ГНОМ, Мудзила, Гстрёмер) попал в руки АНБ и его гробят.
Олдфаги негодуют. Молодёжь пускает сопельные пузыри умиления.
> А мне не нравится!!!
> 1) внешний вид Adwaita свистоперделистыйЗато виджеты в нем меньше и располагаются компактнее, что хорошо заметно на скриншотах. За это гном много ругали, мол куча пространства пустого. Теперь плотнее и информации больше в окне умещаются.