- PVSM.RU - https://www.pvsm.ru -
Многие приложения (например, Skype, Lifearea, Dropbox и т.д.) по-прежнему используют старый механизм уведомлений в Gnome Shell, некрасивый да еще и неудобный в использовании как на десктопе, так и на планшете.
В то время как модель отображения уведомлений с помощью GtkStatusIcon перестала развиваться, появившийся на горизонте новый API уведомлений несет с собой решение уже накопившихся проблем и некоторые полезные нововедения!
Matthias Clasen указал на проблемы в текущей реализации и отметил необходимость в новом API, а Cosimo Cecchi, уже работающий над ним, рассказал о преимуществах нового API. Конечно, новый API принесет много полезного и, прежде всего, он реализует все те цели, которые были поставлены в начале работы над Gnome 3.
Matthias Clasen говорит:
«Понятно, что GTK+ должен предоставить такой API уведомлений, используя который приложения перестанут обращаться со своими мелочами к отдельной библиотеке (libnotify). Вместо этого будет использоваться наш API.»
Требования к API уведомлений:
Проблемы с GtkStatusIcon:
Проблемы с libnotify:
Новый API.
Mathias говорит:
«GtkApplication — очень хороший кандидат для реализации на его основе API уведомлений, так как уведомления должны быть связаны с приложениями. Без дополнительной работы мы получаем ID приложений и другие метаданные такие как: имя шины, иконки, переведенные имена, дескрипторы и прочее. Нам также доступно повторное использование GAction для действий. А в GAction уже есть очень гибкий механизм состояний (основанный на GVariant), который позволяет реализовать доставку уведомлений в будущее и выполнение уведомлений без необходимости приложению работать постоянно в фоне.»
Cosimo Cecchi уже приступил к работе над новым API по вот этой спецификации [1].
Cosimo описывает некоторые преимущества для Gnome.
«Трансформировать старую модель уведомлений в новый API довольно сложно, учитывая перечень проблем, обозначенных в письме Mathias-a [2]. Сейчас мы не планируем автоматически трансформировать иконки статусов приложения в уведомления — Shell по-прежнему будет поддерживать отображение статусов приложений в иконках трея и уведомления, реализованные старым методом через libnotify. Приложения сторонних разработчиков должны быть переработаны для того, чтобы иметь возможность использовать новый механизм уведомлений в полном объеме.»
Преимущества для Gnome:
Цели:
Возможности пользователю:
Дополнительные задачи:
Когда это появится в Gnome?
Эта работа уже начата, и даже если новый API появится в Gnome 3.8, полный список характеристик появится позже, так как он требует нового Центра управления Gnome, работа над которым еще не закончена.
Mathias говорит:
«Мы не уверены, что реально закончить эту работу до выхода Gnome 3.8 Скорее всего переход на новый механизм будет в несколько этапов. Сначала мы представляем GtkNotification API (к Gnome 3.8) и лишь к Gnome 3.10 мы полностью реализуем новый механизм. GtkStatusIcon будет запрещен после окончательной реализации нового механизма.»
В общем работа кипит в Gnome, и его будущее выглядит очень привлекательно. Помимо разработчиков, которые работают непосредственно в Gnome, как Matthias, Jasper, Cosimo и других, есть некоторые выдающиеся имена, Emanuelle Bassi (Clutter), Kristian Høgsberg (Wayland), Lennart Poettering (systemd) и это лишь немногие из тех, кого была бы рада принять любая команда разработчиков.
Перевод из моего блога [3].
Автор: usefree
Источник [4]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/linux/19980
Ссылки в тексте:
[1] спецификации: https://docs.google.com/document/pub?id=1TbzBMft6qs0lFPQ5kUOh6nWfk9M0DgxBwrc8uoHVUgY
[2] письме Mathias-a: https://mail.gnome.org/archives/gtk-devel-list/2012-November/msg00009.html
[3] моего блога: http://usefree.com.ua/redesigned-notification-api-for-gnome/
[4] Источник: http://habrahabr.ru/post/158519/
Нажмите здесь для печати.