LINUX.ORG.RU
ФорумTalks

[git][rekonq][qtwebkit] 308+14

 , ,


0

1

Скриншот.

Для этого нужен QtWebKit 2.2 (войдёт в состав Qt 4.8) и свежий rekonq.

Внутри video (youtube работает), audio, webgl, и т.д.

По поводу поддержки WebGL — на скриншоте она есть, но вопрос в флагах компиляции QtWebKit (которые не факт что будут включены в Qt 4.8), и для rekonq нужен патч на две строчки (который очень скоро включат).

Без WebGL — 293+14. В konqeror и arora — 288+14.

★★★★★

Ответ на: комментарий от CYB3R

М? Все html5-видео работают же.

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от CYB3R

Или ты не понял, что речь про них?

Тогда ещё скажи и «4.2, не всегда». Без интернета — не работает.

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от CYB3R

Повторяю для непонятливых: все html5-видео (работающие через тэг video) с youtube работают.

ChALkeR ★★★★★
() автор топика

Правильно собранный kwebkitpart даёт 303+14 в Konqueror+WebKit.

ChALkeR ★★★★★
() автор топика

Ура, теперь хром идет в мусорку.

frozenix ★★★
()

Ты собирал ее отдельно или вместе с qt с гита?

Покажи какие флаги нужны и что за патч для реконка?

Behem0th ★★★★★
()
Ответ на: комментарий от Behem0th

Для начала: если ты собираешь на арче из PKGBUILD-ов, то в процесс сборки чего угодно ты можешь вмешаться, добавив в нужном месте вызов mc. Это я на всякий случай.

Вкратце
Для меня всё работает так:

  • Собрать Qt 4.8 c «-D ENABLE_WEBGL=1 -D ENABLE_ANIMATION_API=1» в configure.
  • Пересобрать kwebkitpart без изменений (для konqueror).
  • Добавить две строчки (см ниже) в свежий rekonq и пересобрать.

Всё.

Теперь по шагам.

QtWebKit отдельно (если хочешь).
Можно собрать отдельно (но не знаю, что будет с video).
Общая инструкция по сборке (я собирал ветку 2.2, которая вошла в Qt 4.8), как включить WebGL при компилировании.
В результате получится библиотека libQtWebKit.so, которой можно заменить системную.

QtWebKit в Qt 4.8.
Собственно, там уже всё есть, в Qt 4.8 включен QtWebKit 2.2.
Единственное что: для включения WebGL нужны такие параметры для configure:

-D ENABLE_WEBGL=1 -D ENABLE_ANIMATION_API=1
Последний включил заодно, он тоже по умолчанию выключен. Остальные параметры возьми из своего дистрибутива.
Для арча могу дать полный PKGBUILD для Qt 4.8 с WebGL, но он просто делается.

Konqueror + WebKit.
Просто пересобери себе kwebkitpart (из гита или последний релиз, не важно, по-моему) после установки Qt.
Должно заработать и дать тебе WebGL и 303+14 баллов. Почему-то есть разница между тем, как запускать: «konqueror» (из консольки) или «kfmclient openProfile webbrowsing» (как делает меню и кнопки в плазме), но мне кажется, что после перелогина исправится. Я проверю, как допишу пост.
Если ты всё-таки поставил QtWebKit отдельно и у тебя не появился WebGL, то погрепай исходники на «QWebSettings::WebGLEnabled», найди там две строчки, и убери оборачивающий их ifdef. Только тогда если у тебя таки старый QtWebKit — может вообще не взлететь.

Rekonq.
Собирай из гита или снапшот (0.7.92). На 0.7 не проверял.
Погрепай исходники вот на что и допиши туда две нижние строчки:

// ================ WebKit ============================
    defaultSettings->setAttribute(QWebSettings::AutoLoadImages, ReKonfig::autoLoadImages());
    defaultSettings->setAttribute(QWebSettings::DnsPrefetchEnabled, ReKonfig::dnsPrefetch());
    defaultSettings->setAttribute(QWebSettings::JavascriptEnabled, ReKonfig::javascriptEnabled());
    defaultSettings->setAttribute(QWebSettings::JavaEnabled, ReKonfig::javaEnabled());
    defaultSettings->setAttribute(QWebSettings::JavascriptCanOpenWindows, ReKonfig::javascriptCanOpenWindows());
    defaultSettings->setAttribute(QWebSettings::JavascriptCanAccessClipboard, ReKonfig::javascriptCanAccessClipboard());
    defaultSettings->setAttribute(QWebSettings::LinksIncludedInFocusChain, ReKonfig::linksIncludedInFocusChain());
    defaultSettings->setAttribute(QWebSettings::ZoomTextOnly, ReKonfig::zoomTextOnly());
    defaultSettings->setAttribute(QWebSettings::PrintElementBackgrounds, ReKonfig::printElementBackgrounds());
    defaultSettings->setAttribute(QWebSettings::WebGLEnabled, true);
    defaultSettings->setAttribute(QWebSettings::AcceleratedCompositingEnabled, true);
Опять же, может не взлететь вообще, если у старый QtWebKit.

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от ChALkeR

Почему-то есть разница между тем, как запускать: «konqueror» (из консольки) или «kfmclient openProfile webbrowsing» (как делает меню и кнопки в плазме), но мне кажется, что после перелогина исправится. Я проверю, как допишу пост.

Да, нужно перезайти, тогда разница исчезает.

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от ChALkeR

Спасибо за такое подробное объяснение.

Попробую собрать Qt и реконк, konqueror меня не интересует.

Для арча могу дать полный PKGBUILD для Qt 4.8 с WebGL,

если не трудно дай

Behem0th ★★★★★
()
Ответ на: комментарий от Behem0th

Не. С гита долго качать. Тут только что 4.8 RC вышел, вот его и качай.

Просто замени ссылку на архив в PKGBUILD для Qt 4.7, и добавь в него те опции в configure. Должно сработать.

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от Behem0th

Удачи ).

Ты флаги конфига Qt не забыл? А то смысла править исходники в rekonq не будет.

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от madgnu

По скорости чего? Отрисовывает шустро. Не знаю, как мерять.

Или ты про яваскрипт? Искоробочный яваскрипт у меня чуть немного медленнее, чем в ФФ. Но если ты гонишься за попугаями в яваскрипте, можешь ещё чуть-чуть поколдовать и собрать QtWebKit с v8 (там есть какие-то флаги для этого, я не вникал).

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от ChALkeR

Одно из «чуть» и «немного» вычеркнуть.

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от madgnu

В QtWebKit в пятым кутям обещают v8 из коробки, если я всё правильно понял.

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от madgnu

Тикет о переходе Qt целиком (QtWebKit, QtScript, и QtQuick) на v8.

Add support for building QtWebKit with V8 — Closed

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от Behem0th

В [testing] теперь Qt 4.8.rc1 и qtwebkit отдельно.

PKGBUILD для qtwebkit: http://projects.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=pac...

Чтобы получить то, о чём говорилось выше, тебе достаточно поставить Qt из [testing], а qtwebkit пересобрать с добавлением флага «--3d-canvas» (для WebGL). И пересобрать kwebkitpart без изменений.

Если WebGL не нужен — можешь вообще всё из пакетов ставить.

Сейчас пинаю их, чтобы они в тестинге включили WebGL и пересобранный kwebkitpart, тогда будет вообще всё готово.

ChALkeR ★★★★★
() автор топика
Ответ на: комментарий от ChALkeR

Я из аура рц1 собрал но у меня с ним косяк был (в консоли шрифт внизу обрезался) откатился на 4.7, Все хотел попробовать с тестинга но что то времени все нет(. Спасибо за обьяснение.

Behem0th ★★★★★
()
Ответ на: комментарий от Behem0th

А какая разница, прописали его в зависимости или нет? SO-шка то одна, что раньше в пакете Qt была, что теперь в отдельном пакете qtwebkit. Просто разделили на две части.

Это правильно, qtwebkit отдельно обновлять будут, возможно.

ChALkeR ★★★★★
() автор топика

Блин.. в Генте криворукие мейнтейнеры. QtWebkit-4.8.0 собирается без аудио и видео(( Пытаюсь собрать QtWebkit-2.2, который отдельным пакетом идет. Но хз как к нему ебилд накатать.

Gorthauer ★★★★★
()
Ответ на: комментарий от ChALkeR

Наконец то нашел время собрать и отписаться.

Behem0th ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.