Введение
Платформа приложений Yahoo Widgets — это прекращенная платформа бесплатных приложений для Mac OS X и Microsoft Windows, в частности Windows XP, Vista и Windows 7. Ранее программное обеспечение называлось Konfabulator, но после приобретения компанией Yahoo, предоставляющей компьютерные услуги, 25 июля 2005 года, оно было переименовано. Впоследствии название Konfabulator было возвращено как название базового движка рендеринга. Движок использует среду выполнения JavaScript в сочетании с XML-интерпретатором для запуска небольших приложений, называемых виджетами, и, таким образом, относится к классу программных приложений, называемых движками виджетов. 27 февраля 2012 года Yahoo обновила лицензионное соглашение, заявив, что начиная с 3 апреля 2012 года Yahoo! Widgets останется доступным для загрузки, но поддержка и разработка будут остановлены.
Yahoo Widgets is a discontinued free application platform for Mac OS X and Microsoft Windows, specifically Windows XP, Vista and Windows 7. The software was previously called Konfabulator, but after being acquired by computer services company Yahoo on July 25, 2005, it was rebranded. The name Konfabulator was subsequently reinstated as the name of the underlying rendering engine. The engine uses a JavaScript runtime environment combined with an XML interpreter to run small applications referred to as widgets, and hence is part of a class of software applications called widget engines. On February 27, 2012, Yahoo updated the License agreement stating that as of April 3, 2012 Yahoo! Widgets will continue to be available for download but support and development would stop.
Особенности
Yahoo Widget Engine включает несколько виджетов по умолчанию, чтобы помочь пользователям начать работу, в том числе виджет погоды, цифровые часы и календарь, среди прочего. К наиболее скачиваемым относятся часы мировых часовых поясов, специализированные таймеры обратного отсчета, простые RSS-ридеры и просмотрщики веб-камер. Каждый виджет работает в собственном системном процессе, отдельно от других виджетов и основного процесса Konfabulator, что повышает стабильность приложения в целом. В случае возникновения проблемы с виджетом Konfabulator, требующей его закрытия, этот конкретный виджет можно закрыть, не затрагивая другие виджеты или основное приложение Konfabulator. Недостатком такого подхода была потребность в памяти для каждого процесса, что могло стать проблемой на компьютерах того времени, которые обычно оснащались всего 512 МБ – 2 ГБ оперативной памяти. Однако это была незначительная проблема по сравнению с объемом оперативной памяти, потребляемым графическим оформлением виджетов, которое могло делать их более требовательными к памяти, чем традиционные прямоугольные десктопные приложения.
Дисплей головной части/Консось
Yahoo Widgets предоставляет функцию, позволяющую быстро вынести все открытые виджеты на передний план рабочего стола. Активировать её можно нажатием горячей клавиши (настраиваемой пользователем). Это приводит к тому, что все виджеты выводятся на первый план, а все остальные приложения затемняются. Виджеты также можно настроить для отображения только в режиме Конспозе, то есть они будут появляться только при активации Конспозе. Изначально эта функция называлась Konsposé (по аналогии с Exposé в Mac OS X), но с выпуском Yahoo Widget Engine была переименована в "Heads Up Display".
(Док)
С появлением Yahoo Widget Engine 4.0 в движок добавлена функция под названием «док». Док отображает все виджеты с соответствующими иконками. Виджеты, для которых не указаны изображения, отображаются либо со скриншотом из официальной галереи виджетов, либо со стандартной иконкой виджета, оба варианта показаны справа. При наведении курсора мыши на док пользователям предоставляется возможность управлять виджетами с помощью кнопок для закрытия виджета, отображения его настроек и развертывания виджета из панели быстрого доступа. Для пользователей, которым док не нужен постоянно видимым, предусмотрены опции автоматического скрытия в неактивном состоянии или полного закрытия.
Функции разработчика/API
Yahoo Widget Engine (Konfabulator) имеет очень гибкий интерфейс программирования приложений (API), основанный на JavaScript, с множеством функций, полезных для разработчиков. Некоторые основные функции включают такие элементы, как текстовые поля, изображения и таймеры. Другие функции включают возможность загрузки веб-страниц из Интернета, ввод-вывод файлов и объекты-аниматоры для создания визуальных эффектов. Встроенный интерфейс позволяет разработчикам виджетов запускать специфичный для операционной системы код, такой как скрипты оболочки и COM-приложения в Windows и AppleScript на Mac. Начиная с Yahoo Widget Engine 4.0, в движок включен SQLite, позволяющий разработчикам создавать и изменять базы данных. Также в версии 4.0 появился класс Canvas, который обеспечивает векторную графику. "Изображения" Canvas можно сохранять в файлы изображений JPG или PNG. С появлением панели задач виджеты могут устанавливать собственные значки на панели задач. Значки панели задач поддерживают ограниченный набор функций движка, позволяя отображать несколько изображений и текст. Это полезно для виджетов, предназначенных для отображения часов или прогноза погоды. Также добавлена поддержка простых CSS-стилей для форматирования текста. Еще одна новая функция, включенная в версию 4.0, – автоматическая проверка загруженных из галереи виджетов на наличие обновлений. Ранее эта функция была доступна только для официальных виджетов Yahoo, но 17 августа 2007 года она стала доступна всем сторонним разработчикам виджетов. Yahoo Widgets 4.5, выпущенная 29 ноября 2007 года, представила поддержку WebKit и Adobe Flash, что позволило разрабатывать виджеты с использованием XML, HTML и JavaScript, а также возможностей Flash. Поддержка WebKit не включает плагины, поэтому Flash поддерживается через отдельный нативный объект.
Первоначальная разработка
Yahoo Widgets был первоначально разработан как Konfabulator основной командой разработчиков в программной компании Pixoria, состоящей из Арло Роуза, Перри Кларка и Эда Воаса. Первоначально выпущенный 10 февраля 2003 года как приложение исключительно для Mac OS X, стоившее 24,95 доллара США (а позднее, с выпуском версии 2.0, 19,95 доллара США), его версия для Windows была выпущена 8 ноября 2004 года с выходом Konfabulator 1.8 и стала бесплатным программным обеспечением с выпуском Konfabulator 2.1 25 июля 2005 года, когда Pixoria была продана Yahoo. Незадолго до этого Apple выпустила аналогичный движок виджетов, Dashboard, в составе своей операционной системы Mac OS X Tiger. Основным коммерческим конкурентом Konfabulator на платформе Windows является DesktopX, разработанный Stardock. Другие программы, предлагающие схожую функциональность, включают Kapsules и AveDesk (для Windows), gDesklets (для GNOME) и SuperKaramba (для KDE). JavaScript-движок, используемый Konfabulator, основан на реализации Mozilla SpiderMonkey и соответствует стандартам Mozilla JavaScript версии 1.5 (эквивалент ECMAScript 262, редакция 3, с расширениями Mozilla). Идея Konfabulator возникла в 1998 году, когда Арло Роуз увидел, как можно изменить внешний вид MP3-плеера, работающего на его компьютере. Его идея заключалась в том, чтобы "настраивать отображение любой информации, которую вы хотите видеть на рабочем столе". До этого у него был опыт работы с Kaleidoscope, программой для изменения внешнего вида операционных систем Apple Macintosh, аналогичной WindowBlinds. Он придумал термин "Konfabulator" для описания своей идеи, а затем пытался предложить её другим программистам. Он не добился успеха до 2002 года, когда Перри Кларк (который позже стал одним из основных разработчиков Konfabulator) узнал о его идее и согласился работать над проектом вместе с ним. 10 февраля 2003 года Роуз и Кларк выпустили версию 1.0 Konfabulator. Перед запуском Роуз создал тизерный веб-сайт, спрашивая посетителей, что такое Konfabulator, пока он находился в разработке. Когда он был наконец выпущен, пользователи Konfabulator были очень впечатлены идеей виджетов, и его популярность резко возросла, что удивило разработчиков Konfabulator. Из-за популярности Роуз и Кларк были вынуждены уволиться с работы, чтобы полностью посвятить себя Konfabulator. В июле 2003 года Роуз и Кларк начали работу над версией для Windows с другим программистом, но внутренние разногласия привели к разрыву, и им пришлось отказаться от уже проделанной работы. Позже Роуз убедил Эда Воаса (который тогда был другом Роуза и имел 10-летний опыт программирования в Apple Computer, а впоследствии стал третьим членом основной команды разработчиков Konfabulator) разработать для них версию Windows. Первоначально он отказался, но позже создал рабочий прототип и представил его команде разработчиков Konfabulator в течение двух дней. В ноябре 2004 года был выпущен Konfabulator 1.8, первая кроссплатформенная версия Konfabulator. Версия для Windows могла беспрепятственно запускать большинство виджетов Konfabulator, написанных для Mac OS X, на компьютерах с Windows, и наоборот. Однако некоторые виджеты, разработанные позднее, были платформозависимыми. Через несколько месяцев, 18 мая 2005 года, был выпущен первый крупный релиз Konfabulator с версии 1.0, Konfabulator 2.0 (иногда сокращенно K:2), а также было проведено визуальное обновление виджетов, улучшена функциональность и снижена цена с 24,95 до 19,95 доллара США (это произошло после того, как многие пользователи, особенно пользователи Windows, привыкшие к бесплатным и более дешевым движкам виджетов, жаловались на высокую цену). Популярность Konfabulator вскоре после этого ускорилась, и компании стали стремиться использовать Konfabulator в своих проектах. В ответ на спрос на Konfabulator и для обеспечения надежного источника информации для разработчиков виджетов (некоторые из которых собирали информацию с веб-сайтов для своих виджетов), команда разработчиков Konfabulator решила продать Konfabulator компании Yahoo.
Приобретение Konfabulator
25 июля 2005 года Konfabulator был приобретен компанией Yahoo, и Yahoo распространяла Konfabulator бесплатно. Хотя фреймворк Konfabulator был переименован в Yahoo Widgets, базовый движок продолжал называться Konfabulator до декабря 2005 года. Компания Yahoo заявила, что приобрела Konfabulator, чтобы предоставить сообществу разработчиков виджетов простой способ доступа к своим API и облегчить получение информации с веб-сайта Yahoo. Это позволяло создавать виджеты без необходимости извлекать данные с веб-сайтов или осуществлять поиск информации об API для виджетов и фреймворка Konfabulator. 23 мая 2006 года универсальная сборка Yahoo Widget Engine версии 3.1.4 стала доступна пользователям компьютеров Macintosh на базе Intel. В августе 2006 года Перри Кларк, оригинальный разработчик Mac-версии движка виджетов, покинул команду Yahoo Widgets, а вскоре и сам Арло Роуз. В августе 2008 года команду также покинул Эд Воас, разработавший первую версию Konfabulator для Windows.
Закрытие
2 марта 2012 года было объявлено о прекращении поддержки Yahoo Widget Engine и полном закрытии Yahoo Widget Gallery. Объявление было сделано на главной странице галереи Yahoo и на форуме Konfabulator. Yahoo объяснил это двумя причинами: стоимостью замены устаревших серверов, поддерживающих галерею, и перенаправлением ресурсов на разработку платформы виджетов Yahoo! Connected TV.
Текущее техническое состояние
Windows – Движок Yahoo Widget работает в Windows XP, Vista, Windows 7, 8 и 10. В XP виджет обладает полной функциональностью. В системах NT6 (Vista и выше) функциональность управления звуком ограничена, так как Windows UAC не предоставляет виджетам права на изменение системных настроек звука без прав администратора, все остальные функции работают по назначению. Mac OSX – Начиная с версии 10.11 El Capitan, док-панель виджетов Yahoo работает некорректно. Однако док-панель можно отключить, отредактировав соответствующий конфигурационный файл plist, после чего виджеты станут доступны через меню. Несмотря на это незначительное ограничение, виджеты продолжают работать как ожидается в предыдущих версиях OSX. Linux – Движок Yahoo Widget был портирован на Ubuntu Linux 10.10 и модифицирован для использования в качестве движка Yahoo! Connected TV. Linux-версия не предназначена для автономного запуска виджетов на настольных компьютерах Linux, а использует Ubuntu в качестве хоста для встроенной операционной системы в телевизорах. Однако можно установить Ubuntu Linux 10.10 на обычный ПК и запустить движок Yahoo! Connected TV локально для разработки и тестирования. 30 марта 2018 года, спустя пятнадцать лет после дебюта Konfabulator, Yahoo (теперь принадлежащая Verizon) прекратила прием приложений "Kon" к публикации в движок Yahoo! Connected TV, рекомендуя разработчикам предлагать приложения-коннекторы на основе HTML5. Это ознаменовало окончательное прекращение существования последней ветви Konfabulator.
Сбой в подаче информации о погоде
С мая 2016 года популярный виджет погоды Yahoo перестал работать. Этот виджет был одним из самых популярных у Yahoo, так как предоставлял бесплатный доступ к данным о погоде Yahoo. Компания Yahoo изменила способ доступа к этим данным, что привело к неработоспособности не только виджета погоды, но и всех других программ и сайтов, использующих его. В обновленной документации Yahoo указано: "В целях повышения безопасности и улучшения обслуживания клиентов YDN, источник данных о погоде начнет использовать OAuth 1 с 15 марта 2016 года. Пожалуйста, обновите ваши API-запросы, включив поддержку OAuth 1 (через конечную точку OAuth /v1/yql при использовании YQL), используя ваш ключ и секрет приложения Yahoo". Поскольку поддержка виджета погоды прекращена, сотрудники Yahoo не будут вносить в него исправления. Однако, поскольку любой виджет можно декомпилировать до исходного кода JavaScript, разработчики могут изменить виджет, чтобы он соответствовал новым требованиям авторизации Yahoo, или получать данные из альтернативного источника погоды. Другие виджеты уже были модифицированы таким образом и получают данные из альтернативных источников, таких как https://aviationweather.gov/adds/dataserver.