The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск пользовательского окружения GNOME 3.24"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для слежения за появлением новых сообщений в нити, нажмите "Проследить за развитием треда".
. "Выпуск пользовательского окружения GNOME 3.24" +5 +/
Сообщение от Аноним (-), 23-Мрт-17, 18:24 
> А почему выбрано именно такое решение?

Которое именно?

Почему Гном на GTK? Ну так исторически сложилось.

Почему GTK использует для тем CSS?
gtkrc-формат в GTK2 был неудобен. Вся функциональность была реализована в отдельных движках — внешних модулях на C или еще на чем, которые самостоятельно рисовали элементы. Они могли показать наружу настройки, а в gtkrc-теме описывалось, фактически, какой элемент каким движком (либо без движка, см. тему Raleigh) рисовать и с какими настройками.
Для GTK3 справедливо решили, что такая система неудобна, и лучше использовать что-нибудь постандартнее. Например, CSS. Ну так и сделали. Правда, работа была совершенно огромная, и ее делали очень постепенно, версию за версией. Поэтому все ругались, что темы ломаются. Последнее такое крупное изменение было в GTK 3.20, где отрисовку виджетов полностью отделили от них самих. Элементы задают несколько css-нодов, а уж как они отображаются, определяется целиком и полностью через CSS. В итоге темы стало НАМНОГО проще писать и у них стало НАМНОГО больше возможностей.

Почему GNOME Shell не использует GTK, а использует Clutter?
Потому что через Clutter у них отрисовка идет с аппаратным ускорением (а тут отрисовка достаточно сложная, чтобы без него все люто тормозило). А в GTK на тот момент этого не было.

Почему он не на голом Clutter, а со своей надстройкой St?
Потому что Clutter — это не интерфейсный тулкит, а, по сути, движок. Он умеет рисовать через OpenGL и передавать события. А рисовать конкретно кнопочки и т.д. нет. Можно, например, реализовать на нем виджет CoverFlow и встроить его в GTK-приложение, он для таких вещей делался.
Поэтому St — реализация тулкита на Clutter. Всякие кнопочки, свитчи и т.д. Базовая реализация CSS-стилей тоже там.

Почему CSS?
Учитывая, что тулкит свой, то у них уже существующих решений не было. Потому выбрали удобный и стандартный вариант. Просто-напросто. :)

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск пользовательского окружения GNOME 3.24, opennews, 22-Мрт-17, 20:34  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру