The OpenNET Project / Index page

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

Представлен бэкенд для формирования вывода Gtk+ через web-браузер

24.11.2010 23:53

Александр Ларсон (Alexander Larsson), активный разработчик GNOME и мантейнер таких проектов, как Nautilus, Gnome-vfs и Dia, представил экспериментальный GDK-бэкенд (GIMP Drawing Kit), позволяющий отрисовывать вывод библиотеки GTK+ 3 в окне web-браузера. Бэкенд находится на начальной стадии развития, поэтому исходные тексты пока недоступны, но судя по представленной демонстрации возможности проекта уже позволяют транслировать вывод почти всех тестовых приложений GNOME.

Положительным качеством разработки является то, что для работы не требуется модификация кода GTK+ и приложений. Отрицательная черта - для работы требуется web-браузер с поддержкой последних HTML5-технологий, таких как web-сокеты и canvas (например, Firefox 4). В перспективе web-бэкенд может быть использован для организации служб для удаленной работы с приложениями через web-браузер (например, можно сделать что-то похожее на утилиту screen, позволяющее получить доступ к своим программам из любого места) или даже для создания публичных web-сервисов, приложениями в которых выступают Gtk-программы (например, web-сервис редактирования изображений на базе Gimp).

С технической стороны, каждое окно сопоставляется с элементом canvas и для обновления содержимого окна организуется передача потока команд через "multipart/x-mixed-replace"-запросы XMLHttpRequest, использующие gzip-сжатие для сокращения объема передаваемых данных. Содержимое окон передается клиенту в виде копий слоев (для скроллинга) и блоков, описывающих изменения между изображениями. Изображения отправляются в виде несжатых данных в PNG-формате. Пользовательский ввод перехватывается через DOM-события и затем транслируется на сервер через WebSocket API, позволяющий организовать двунаправленный обмен данными с сервером.



  1. Главная ссылка к новости (http://blogs.gnome.org/alexl/2...)
  2. OpenNews: В экспериментальном релизе GNOME 2.31.4 состоялся переход на GTK+ 3.0
  3. OpenNews: Вышла первая тестовая версия библиотеки GTK+ 3.0
  4. OpenNews: Предварительный план разработки библиотеки Gtk+ 3.0
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/28769-gtk
Ключевые слова: gtk, gnome, web, html5
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (22) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Konstantin (??), 00:18, 25/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я не поверл но когда посмотил видео то понял что если это допилить как надо то оно тожет убить и flash и silverlight и .net
     
     
  • 2.2, nib952051 (ok), 00:45, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    и каким образом по-вашему такой бекенд убьет флеш? это крутой хак, не больше..
     
     
  • 3.4, Аноним (-), 00:49, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Супер крутой.
     
     
  • 4.6, Аноним (-), 00:57, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +8 +/
    > Супер крутой.

    Так уж повелось в IT, что нестандартным образом сделано через жопу, и не должно вроде работать, но работает - супер круто. Разработчики молодцы, да, но применений этому тормозному маразму не будет.

     
  • 4.16, СуперАноним (?), 07:32, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Ещё более крутой хак получился бы, если бы сделали GDK-бэкенд, позволяющий отрисовывать вывод библиотеки GTK+ 3 посредством технологий KDE SC.

    P.S. КДЕшнеги точно были бы рады.

     
  • 2.3, Аноним (-), 00:47, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +4 +/
    И не только. Тут орали, что Хы трогать нельзя - без них, де, не будет сетевой прозрачности. А с этим инструментом вполне себе будет.
     
     
  • 3.5, Аноним (-), 00:55, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Один GTK нахрен никому не сдался. Если такое будет на уровне протокола - вот тогда да. И с иксами так можно сделать, а с wayland - хрен. С другой стороны можно пойти по другому пути и сделать для каждого тулкита поддержку всех бэкэндов (X, Wayland, HTML5) - но тогда разработчикам придется поддерживать все бэкэнды, и если gtk и qt это, пожалуй, осилят и быстро, насчет остальных (XLib, SDL, SFML, wx, tk и fltk и т.д.) я не уверен.
     
     
  • 4.21, szh (ok), 13:22, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Один GTK нахрен никому не сдался.

    Какие серьезные и очень нужные многим (не 3d) GUI программы есть на чем-то кроме qt/gtk ?
    Почему бы xlib/wx/tk не умереть в процессе эволюции если за их развитием серьезно никто не занимается ?

    > И с иксами так можно сделать

    Если никто в ближайшие 3-5 лет не возьмется сделать, то можно считать что сложность протокола его похоронила.

     
  • 3.7, yet_another_pseudonymous (ok), 00:59, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Я, правда, цифры не смотрел, но что-то у меня *впечатление*, что по сравнению с требованиями этого к ширине пропускной полосы канала всякие ютюбы с H.264 HD будут нервно курить в сторонке.

    В общем, не взлетит, ящитаю. Тем более, что тот же VNC уже довольно давно как в веб пихали. Да и в стародавние времена X11R6.что-то-там был плагин для X11 в браузере. И где они сейчас? Хотя про VNC знаю только одно применение - кто-то делал сервис для кросс-браузерного тестирования, плодя у себя виртуалки с браузерами, и отдавая их по VNC, но это специфичное исключение, а не правило.

     
     
  • 4.8, Аноним (-), 01:05, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Cжимать можно на лету - и круто сожмется.
     
     
  • 5.10, yet_another_pseudonymous (ok), 01:25, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Cжимать можно на лету - и круто сожмется.

    Возьмите две машины с X11, что-нибудь на GTK понажористее, да проверьте (ssh -X), как оно по интернетам работает в условиях разных каналов.

     
     
  • 6.11, Аноним (-), 01:30, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Цыплят будем по осени считать.
    У меня это сообщение вызвало приступ оптимизма. А как будет реализовано (если будет) посмотрим. Возможно экономии (по сравнению с Х) не будет. Но все равно - круто! Прогресс!
     
  • 4.12, Аноним (-), 02:02, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А там не картинки "как окно выглядит" будут ходить, а комманды "нарисовать кнопочку", так что траффик будет в идеале минимальный.
     
  • 4.15, Аноним (-), 02:36, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    www.ulteo.com
     
     
  • 5.23, Аноним (-), 13:53, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > www.ulteo.com

    Там через VNC-клиент на Java работает, совсем не то.

     

  • 1.9, denis111 (ok), 01:07, 25/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Отрицательная черта - для работы требуется web-браузер с поддержкой последних HTML5-технологий

    Имхо, это вполне себе положительная черта. К тому времени, когда это допилят, все браузеры это будут поддерживать.

     
     
  • 2.22, Аноним (-), 13:52, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    с каких это пор Microsoft делает нормальные средства?
     

  • 1.17, Zenitur (?), 08:46, 25/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    ActiveX? QtWebGui?
     
     
  • 2.19, letsmac (ok), 10:21, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Ещё можно Silverlight дописать. В WinServer через браузер/ActiveX давно rdp работает.
     
  • 2.20, userd (ok), 10:44, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Нет.
    QWebClient же. ( http://labs.qt.nokia.com/2009/09/18/qt-in-the-cloud-with-qwebclient/ ) Жалко, не слышно об успехах.
     

  • 1.24, StrangeAttractor (ok), 23:36, 25/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Когда надо сделать, скажем, кнопку, между сервером и клиентом передаётся картинка, или координаты/размер/надпись? IMHO если картинка - то в топку очередной велосипед, если между сервером и клиентом передаются только свойства виджетов и события - то хочется воскликнуть "ну наконец то!".
     
  • 1.25, m_vitaly (?), 01:46, 02/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Это они Google ToolKit заново изобрели?
    Ну тогда единственное преимущество что уже написана куча програм на GTK.
    Хотя не очень верится что допилят так что все программы будут работать "из коробки".
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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