Microsoft решила расширить возможности кастомизации меню «Пуск» средствами самой Windows. В сборке Windows 11 Insider 26212, выпущенной в начале мая 2024 года, появилась поддержка виджетов — «компаньонов» (Companions) меню «Пуск», и можно создавать свои собственные.
«Компаньоном» может объявить себя любое приложение — достаточно добавить несколько записей в его манифест, включая путь к файлу JSON, который служит ему в качестве источника данных. Примечательно, что Microsoft предпочла многочисленным фреймворкам на основе XAML (WinUI 3, UWP и другим) формат JSON с выводом в интерфейс «Адаптивных карточек» (Adaptive Cards) — оболочка отслеживает его содержимое по указанному пути и при регистрации изменений в файле сменяется и изображение виджета. В меню «Пуск» одновременно могут отображаться лишь два «компаньона», по одному слева и справа от основного содержимого, хотя в настройках системы можно активировать любое их число; причём загружаются они в алфавитном порядке из списка в разделе «Персонализация» настроек Windows.
Собственный виджет есть, например, у приложения «Связь с телефоном»: он показывает статус подключения телефона, уровень заряда батареи, открывает доступ к основным функциям и демонстрирует небольшой список последних действий. Можно создать и собственный компаньон — ресурс Tom’s Hardware предложил все необходимые средства для этого. Пока функция работает только на предварительных версиях Windows 11 Insider (сборка Dev/Canary 26241.5000 и выше, сборка Beta 22635.3790 и выше, а также сборка Release Preview 26100.994 и выше).
Для включения поддержки «компаньонов» потребуется активировать функцию с ID 48697323 через утилиту ViveTool; включить режим разработчика в настройках Windows; загрузить код с образцом виджета с GitHub; запустить в Visual Studio 2022 или выше файл проекта .sln; произвести сборку приложения; и, наконец, перезапустить sihost.exe или перезагрузить компьютер, чтобы обновилось меню «Пуск». Отключить виджет можно в разделе «Персонализация» настроек системы. В предложенном образце показан вывод прогноза погоды и котировки валют. Можно поэкспериментировать, изменяя файл SampleAdaptiveCard.json в папке Assets проекта или сгенерировать собственный файл JSON в запущенном Microsoft веб-приложении AdaptiveCards.io/designer. Для управления содержимым потребуется редактирование кода C# в проекте.
Источник: