Рубрика «webkit» - 2

Задался я с задачей, ознакомится с тем как работает в том или ином виде основа всех современных браузеров — WebKit, как происходит процесс загрузки ресурсовю И что с этим всем, собственно, можно сделать. Документации по вопросу, в принципе, достаточно:

* структурированная, но не покрывающая и 10 й части от Apple;
* разбросаные статьи в вики, разные по степени детализации и степени покрытия.

Целью данной статьи является не общий взгляд на систему сверху, а как раз точечный и детальный разбор одного из процессов, происходящих в системе. Который, по моему мнению, иногда дает лучшее представление о системе в целом, нежели абстрактный взгляд. А может быть просто будет маленьким кирпичиком, который понадобится разработчику для составления из разрозненной мозайки информации своего представления о системе.
Читать полностью »

Данная статья может быть интересной для начинающих web-разработчиков, или же обычных программистов, которые вёрстку учили только на первом курсе, и сейчас не до конца понимают как с html вообще можно играть.

image
Читать полностью »

Самая первая спецификация продукта, частично устная, содержала требование – наличие кроссплатформенного(Windows, Linux, Mac) клиента под десктоп и облегченную версию мобильного(Windows, Android, iPhone). По возможности интерфейс должен быть максимально похожим на разных ОС.
Благодаря Mono мы можем писать кроссплатформенные приложения, но вопрос с GUI остается открытым. Имеющиеся технологии под .Net(Windows Forms, WPF) хорошо работают только под Windows, и у нас уже был печальный опыт портирования Windows Forms. Под Linux мы можем использовать GtkSharp, но идея ставить Mono на Windows при наличии .Net мне не нравится. В итоге приходится писать и поддерживать отдельный интерфейс под каждую ОС.
Что в этой ситуации могла придумать команда .Net(с уклоном под веб)? Решили встраивать Webkit и писать GUI на связке html-js-css.
На сегодняшний день мы 2 года успешно используем такой подход для Windows и год – под Linux и Mac. До мобильной платформы пока руки не дошли.
Читать полностью »

Разработка проекта AppJS прекращена, в дальнейшем пользуйтеся node webkitЧуть больше года назад (1 октября 2012 года) я выложил на Хабрахабре блогозапись «Node.js + Chromium = AppJS: один из перспективных вариантов второго шага эволюции веборазработчика», в которой привёл AppJS в качестве примера такого объединения движков Node.js и Chromium, которое позволяет каждому веборазработчику, употребляя привычные ему по работе технологии (JavaScript, HTML, CSS), сделаться разработчиком приложений с GUI (графическим интерфейсом пользователя), объединяющих в себе выразительные способности браузера Chromium и мощь API Node.

На следующий же день (2 октября 2012 года) во блогозаписи «Node.js + Chromium = node-webkit: ещё более перспективный вариант второго шага эволюции веборазработчика» я указал, что AppJS — не единственный и даже не лучший вариант: node-webkit отличается удобством и бóльшими возможностями API, более обширной документацией, а также обеспечивает запуск ZIP-упакованных приложений.

И что же? — не прошло и тринадцати месяцев, как успех node-webkit сделался очевидным и для разработчиков AppJS. Сегодня во твиттере у AppJS вы можете прочесть о том, что разработка проекта AppJS прекращена, поскольку node-webkit достиг его цели:

[скриншот Twitter]

Читать полностью »

Во вчерашнем безобидном топике про про Rollercoaster.io многие снова были недовольны, спрашивали про Linux, синхронизацию и закладки. И мельком упомянули это видео, которое многим открыло глаза на то, почему Opera Software решилась на такой шаг в этом году. Оно было записано на конференции РИТ, как раз на волне интереса к переходу, но появилось только в конце августа.

Читать полностью »

Определенная последовательность арабских символов позволяет вызвать критическую ошибку, приводящую к аварийному завершению любого приложения использующего движок WebKit в iOS и Mac OS. Уязвимость воспроизводится на актуальных версиях приложений.

Уязвимость можно воспроизвести:

  • Отправив sms на iPhone — при этом происходит респринг и больше нельзя зайти в приложение «Сообщения».
  • Открыв страницу содержащую строкуЧитать полностью »
Habrahabr::Instance()->hello();

Я давно ничего не писал на хабр, достаточно давно. Но на прошедшей неделе я изрядно пот**хался с модулем QtWebkit 5.1 и решил, что хорошим тоном было бы рассказать вам какой мрак ждет вас там, в случае, если вы захотите попробовать захватить изображение с экрана или что-то в этом роде.

На самом деле, моя задача лежала в том, чтобы сделать браузер, который сохраняет все изображения со всех страниц, которые он браузит. Элементарная задача, на первый взгляд: повесить обработчик на отдельный поток, который перебирает все QWebElement по селектору “img” и отрисовывает их содержание (QWebElement::render()) через QPainter на QImage, который, в свою очередь, сохраняется в файл.

Но оказалось, что не все так просто, к сожалению. Про тот путь самурая, которым я воспользовался, чтобы выполнить поставленную задачу изложен мной под катом этого поста. Приятного аппетита!

Читать полностью »

в 20:18, , рубрики: opera, Opera 12, opera 15, presto, webkit, метки: , , , ,

image Я — настоящий фанат браузера Опера. Я терпел все: глюканутые сервисы Google, отсутствие доступа к большинству сайтов, типа «о, марио на JavaScript», потому что Opera была для меня прекрасным браузером, который всегда поддерживал стандарты W3C. «Все невзгоды мы переживем», причитал я и клацал на «Справка->Проверить обновления», когда Chrome приобретал поддержку новой фичи HTML5 и лоббировал какие-то демонстрационные сервисы для этой фичи. В течение месяца я получал поддержку этой фичи в любимом браузере, а также (иногда) несколько фич HTML5, CSS3 и т.д., которых в Chrome и FF еще не было. Я радовался стабильно отличным результатам своего браузера в Acid3. Гонка вооружения браузеров шла полным ходом, но Opera для ПК поддерживали лишь страны СНГ. Жаль, реклама новых фич Opera была видна только на Хабре и прочих ресурсах для гиков и фанатов этого браузера, а Google, тем временем, во всю использовал свой ресурс контекстной рекламы для пропаганды своего продукта среди масс.Читать полностью »

Наше видение Opera 15 и её будущего

Сегодня, когда мы прошли важную веху и запустили во вторник Opera 15, пришло время поделиться с вами нашим видением продукта.

Когда мы выпустили наш первый браузер в 1996 году, большинство пользователей веба были не прочь повозиться с браузером и предпочитали множество вариантов настройки. Минуло 17 лет и веб теперь повсюду. Быстрая навигация и правильно работающие сайты — это самое важное для очень многих людей.

Такая ситуация привела нас к вопросу, с которым в какой-то момент сталкиваются все разработчики программ: как совместить интерфейс достаточно простой, чтобы быть интуитивно понятным для пользователя, которому нужен стабильный и быстрый браузер, который просто работает, с настраиваемым и расширяемым интерфейсом, который опытные пользователи смогут дополнять нужными им возможностями?

Ответом, к которому мы пришли, стало создание сильной и расширяемой платформы для наших новых идей. С Opera 15 мы начали с самого начала и продолжим добавлять новые возможности.Читать полностью »

Позавчера (27 апреля) из праведных недр интеловского Центра технологий с открытым исходным кодом (а это тот самый Центр, который hshhhhh обозревал неделю назад во блогозаписи «Печеньки для пингвина») вышла в свет новая версия движка node-webkit — могучего объединения Node и WebKit (точнее даже не просто WebKit, а Chromium — и в дальнейшем, вероятно, Blink), обеспечивающего быстрое и бесхитростное создание GUI-приложений методами веборазработки (код на JavaScript с употреблением API от Node.js, а интерфейс на HTML да на CSS) под операционные системы Windows, Mac OS X и Linux.

Новая версия имеет номер 0.5.1; на её основе нетрудно составить и запустить, например, вот такое окно:

[скриншот]

Одну из предыдущих версий node-webkit (0.4.1) мне довелось обозреть в начале февраля, а теперь на дворе конец апреля. Настала пора рассказать обо всех тех изменениях, которыми сопровождался выход версии 0.4.2, за нею 0.5.0, и затем 0.5.1 наконец. Рассказываю:

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js