Анонсирован
релиз тулкита для создания графического интерфейса пользователя GTK+
2.16.0 и сопутствующей библиотеки GLib 2.20, расширяющей возможности
стандартной библиотеки Си. В GTK+ 2.16 представлен ряд новшеств, не
нарушающих обратную совместимость с прошлой веткой GTK+ 2.14, при этом
в будущем году планируется
выпуск релиза GTK+ 3.0 со значительным измененим программных/бинарных
интерфейсов (API/ABI), полной переработкой некоторых подсистем и
потерей совместимости с прошлыми версиями.
Основные новшества GTK+ 2.16.0:
API дополнено новым интерфейсом GtkOrientable, для
изменения горизонтальной или вертикальной ориентации виджетов. Функции
gtk_scale_button_get_orientation, gtk_scale_button_set_orientation и
gtk_toolbar_set_orientation объявлены устаревшими;
Изменен механизм работы action-proxy, который
теперь представлен через новый интерфейс GtkActivatable добавленный для
всех виджетов;
В формах ввода пароля теперь выводится
предупреждения при попытке ввода символов с нажатым Caps-lock. Статус
изменения режима Caps-lock теперь также сигнализируется через
GdkKeymap;
GtkEntry может отображать пиктограммы с любой
стороны от элемента и выводить индикатор прогресса выполнения операции
позади текста;
Для каждого виджета теперь можно установить разные методы ввода, используя свойство "im-module";
В GtkScale появилась возможность показа аннотированых меток для определенных величин;
В GtkStatusIcon добавлена поддержка обработки новых
событий, совершаемых над пиктограммой в поле статуса, например,
скроллинг, клик средней кнопкой мыши.
В форме выбора файлов добавлена возможность
отображения размера файлов, списка примонтированных разделов, ввода
нелокальных URI. Также теперь запоминается размер окна выбора файла
между разными вызовами;
Изменения в методе обработки клавиатурных
комбинаций, с целью поддержки нового способа работы с несколькими
клавиатурными раскладками в GTK+. GTK+ теперь использует клавиши из
иных групп, только в случае их отсутствия в текущей группе;
В Glib 2.20 проведена
оптимизация работы со структурами GHashTable и GMarkup; добавлена
поддержка декодирования base64 строк на месте; при запуске приложений
URI вида file:// обрабатываются через трансляцию GIO в FUSE; в GIO
добавлена реализации концепции скрытых точек монтирования.