- Что такое «композитинг»?
- Что такое оконный менеджер?
- Содержание
- Оконный менеджер в окружении рабочего стола
- Оконный менеджер без окружения рабочего стола
- Составление оконного менеджера — Compositing window manager
- СОДЕРЖАНИЕ
- Сравнение со стековыми оконными менеджерами
- История
- Композиция и 3D-эффекты в операционных системах
- Linux
- Джава
- AmigaOS 4 и MorphOS
- Майкрософт Виндоус
- Юзабилити и приятный глазу
- Предварительный просмотр в реальном времени
- Переключение окон
- Флип-переключение
- Переключение крышки
- Переключение звонка
- Группировка
- Разоблачать
- Управление полетами
- Двигатели виджетов
- Переходы и другие эффекты
- Фасады пользовательского интерфейса
Что такое «композитинг»?
Я включил Compiz и использую трехмерный куб рабочего стола с вращением, пока различные классные анимации минимизации.
Недавно, когда я загружал компьютер, Docky велел мне «включить композитинг». Я не знаю, что такое композитинг! Docky работает нормально, как и всегда, поэтому я не знаю, почему он вдруг спрашивает меня об этом (я предполагаю, что это сбит с толку и что это на самом деле включено, но я не уверен).
Итак, что такое композитинг и включен ли он, потому что я использую Compiz или это что-то другое?
Что именно означает «композитинг»?
Композицию обеспечивает Compiz, менеджер окон композитинга. Что это означает, объясняется ниже:
Диспетчер окон композитинга — это компонент графического пользовательского интерфейса компьютера, который рисует окна и их границы. Он также управляет тем, как они отображаются и взаимодействуют друг с другом и с остальной средой рабочего стола. Основное различие между оконным менеджером компоновки и другими оконными менеджерами заключается в том, что вместо вывода на общий экран каждый из них сначала программируется в отдельный и независимый буфер, либо во временное местоположение внутри компьютера, где их можно манипулировать до их отображения. [1] [2]
Затем оконный менеджер обрабатывает и объединяет или комбинирует выходные данные из этих отдельных буферов на общий рабочий стол. В результате программы теперь ведут себя как независимые 2D или 3D объекты. [1] Композиция позволяет создавать расширенные визуальные эффекты, такие как прозрачность, затухание, масштабирование, дублирование, сгибание и искажение, перетасовка и перенаправление приложений. Добавление виртуального третьего измерения позволяет использовать такие функции, как реалистичные тени под окнами, отображение расстояния и глубины, живые эскизы окон и сложные анимации, и это лишь некоторые из них. [3] [4] Поскольку программы обращаются к внеэкранному буферу, вся графика, естественно, имеет двойную буферизацию и, следовательно, не мигает при обновлении.
Наиболее часто используемые оконные менеджеры композитинга включают оконный менеджер рабочего стола в Microsoft Windows, Quartz Compositor в Mac OS X, а также системы Compiz, Metacity и KWin для Linux, FreeBSD и OpenSolaris.
Если вы видите черную рамку вокруг Docky, значит, композитинг не включен должным образом. Предупреждение, которое вы получаете, скорее всего, является результатом запуска Docky до того, как сработает композитинг.
Источник
Что такое оконный менеджер?
Содержание
Оконный менеджер — это приложение, которое отвечает за размещение, декорирование окон, взаимодействие с окнами — изменение размеров, максимизация, свёртывание, закрытие. Оконный менеджер взаимодействует с графическим сервером X11, который занимается взаимодействием c видеокартой и устройствами ввода/вывода (клавиатура, мышь и монитор).
Оконный менеджер может работать как вместе с окружением рабочего стола (Gnome, KDE, XFCE), так и отдельно от него. Функционал, предоставляемый оконными менеджерами, может достаточно серьёзно различаться.
Оконный менеджер в окружении рабочего стола
Итак, в состав окружения рабочего стола уже входит оконный менеджер. В случае с Gnome это Metacity, в случае с KDE — kwin, XFCE использует по умолчанию xfwm4. Окружение рабочего стола LXDE использует менеджер окон openbox — в отличие от других DE, использующих оконные менеджеры, написанные специально для них, LXDE включает в свой состав менеджер окон, разрабатываемый независимо от остального окружения.
В составе каждого из этих окружений оконный менеджер, поставляемый «по умолчанию», может быть заменён другим по тем или иным причинам.
Два, пожалуй, самых показательных для Ubuntu примера — замена стандартного менеджера окон Metacity на Compiz для включения различных спецэффектов или на Openbox для снижения потребления ресурсов и обеспечения более точного управления окнами (более эффективное использование горячих клавиш, помещение окон в различные слои (Always on top) и т.д.)
Собственно, не существует никаких препятствий для использования оконного менеджера kwin в рабочем окружении Gnome или наоборот.
В случае, если в составе рабочего окружения заменяется оконный менеджер, обычно достаточно следующих действий:
При замене оконного менеджера в составе рабочего окружения последнее продолжает выполнять для вас ряд важных функций — контроль сессий, монтирование съёмных носителей, управление буфером обмена и сетью, ассоциацию файлов с приложениями. Вы меняете только и исключительно механизм управления окнами и рабочим столом.
Оконный менеджер без окружения рабочего стола
Предположим, для снижения потребления оперативной памяти и мощности процессора, для самообразования или по эстетическим соображениям вы решили самостоятельно развернуть рабочее окружение на основе какого-либо оконного менеджера.
Что до сих пор обеспечивало вам рабочее окружение? Что вам теперь предстоит настроить самостоятельно? Какие задачи решает большинство оконных менеджеров, а какие выполняются с помощью сторонних утилит?
Давайте разберём по порядку.
При добавлении в автозапуск приложений следите за порядком, в котором они запускаются. Например, если вы хотите запустить менеджер сетевых подключений или торрент-клиент, им, скорее всего, потребуется трей, поэтому они должны запускаться после трея, возможно, с некторой задержкой (используйте команду sleep)
Самое универсальное решение:
Её тоже нужно добавить в автозапуск. Для более тонкой настройки переключения раскладок воспользуйтесь утилитами xxkb или xneur
/.themes/название_темы/gtk-2.0. Некоторые авторы делают паки тем, и в папке «Тема» могут оказаться подпапки «Тема светлая» и «Тема тёмная». Удобный инструмент настройки тем gtk, иконок, шрифтов и тем курсора — lxappearance. Не забудьте, что темам gtk для корректной работы требуются так называемые «движки» тем, которых в свежеустановленной минимальной системе, скорее всего, нет. Их можно установить из репозитариев, посмотреть, какие движки есть в репозитарии можно так: aptitude search gtk-engines
Горячие клавиши, декорации окон, виртуальные рабочие столы и меню, как правило, предоставляются оконным менеджером и настраиваются в конфигурационном файле последнего.
Источник
Составление оконного менеджера — Compositing window manager
Композитинга окно менеджер или компоновщик , является оконным менеджером , который обеспечивает приложения с закадровым буфером для каждого окна. Оконный менеджер композиты оконных буферов в образ , представляющий экран и записывает результат в память дисплея.
Составные оконные менеджеры могут выполнять дополнительную обработку буферизованных окон, применяя двухмерные и трехмерные анимированные эффекты, такие как смешивание , затухание , масштабирование , вращение , дублирование , изгиб и искривление, перетасовка, размытие , перенаправление приложений и перевод окон на один из нескольких дисплеев. и виртуальные рабочие столы . Технология компьютерной графики позволяет визуализировать визуальные эффекты в реальном времени, такие как тени , предварительный просмотр в реальном времени и сложная анимация. Поскольку экран имеет двойную буферизацию , он не мерцает во время обновлений.
К наиболее часто используемым оконным менеджерам композитинга относятся:
СОДЕРЖАНИЕ
Сравнение со стековыми оконными менеджерами
Оконный менеджер посылает каждому окну сообщение перерисовки себя всякий раз , когда необходимо (например, при изменении его размера, или когда другое окно проходит перед ним). При использовании диспетчера стека процесс перерисовки может быть нарушен, если программа, которая работает медленно, не отвечает или содержит ошибки , не отвечает на сообщения своевременно. Вредоносная программа может вызвать нестабильность системы из-за того, что просто не перекрасит ее окно. Тогда может произойти одно или несколько из следующих условий:
- подстриженные окно не перекрашивать непокрытые участки, в результате чего либо пробелов или «след» оставил позади другого окна
- части окон (например, декоративные падающие тени) оставлены позади и не закрашены должным образом
- указатель мыши поврежден
- обновления экрана становятся невыносимо медленными
- весь экран зависает, пока программа не ответит или не завершит работу
При использовании диспетчера композитинга, если окно перестает перерисовываться по запросу диспетчера окон, его последняя перерисовка останется отображаемой, и окно может быть затемнено. Часто заголовок изменяется, чтобы отразить статус окна как не отвечающего. Программа может препятствовать перемещению или отмене отображения своего окна, но обычно не вызывает проблем с перерисовкой.
История
Одной из первых систем с оконной системой композитинга была Commodore Amiga , выпущенная в 1985 году. Приложения могли сначала запрашивать область памяти за пределами текущей области отображения для использования в качестве растрового изображения. Затем оконная система Amiga будет использовать серию битовых битов, используя аппаратный блиттер системы, для построения композиции растровых изображений этих приложений — вместе с кнопками и ползунками — в памяти дисплея, не требуя от этих приложений перерисовки каких-либо своих растровых изображений.
24 марта 2001 года Mac OS X v10.0 стала первой основной операционной системой, в которой реализован программный 3D-композитинг и эффекты, обеспечиваемые компонентом Quartz . С выпуском Mac OS X v10.2 и Quartz Extreme работа по композитингу может быть перенесена на специализированное графическое оборудование .
В 2003 году Sun Microsystems продемонстрировала амбициозную систему трехмерной графики под названием Project Looking Glass поверх своего набора инструментов Swing . Впервые он был показан на выставке LinuxWorld Expo 2003 года . Хотя Apple пригрозила подать в суд на Sun за нарушение прав интеллектуальной собственности , другие оконные менеджеры реализовали некоторые функции в Looking Glass. К 2006 году разработка была прекращена компанией Sun, основной бизнес которой был переход от графически ориентированных рабочих станций Unix к продаже корпоративных мэйнфреймов.
Microsoft впервые представила диспетчер окон рабочего стола в Project Longhorn на конференции по проектированию оборудования Windows 2003 года , продемонстрировав шаткие окна . Серьезные задержки в развитии Longhorn вызвали Microsoft не дебют ее 3D-композитинг менеджера окон до выхода Windows Vista в январе 2007 года.
Реализация композитинга в системе X Window потребовала некоторой переделки, которая происходила постепенно. Metacity 2.8.4 был выпущен в августе 2004 года. Однако первым широко разрекламированным оконным менеджером композитинга для X был Xfwm , выпущенный в январе 2005 года. 26 января 2005 года был выпущен Compiz , представляющий полностью ускоренное 3D-композитинг на платформе Linux. KDE «s KWin также поддерживает композитинга.
Композиция и 3D-эффекты в операционных системах
При компоновке трехмерные эффекты могут применяться к окнам для создания трехмерных эффектов рабочего стола. Современные оконные менеджеры композитинга используют аппаратное ускорение 3D. Программное обеспечение композитного оконного менеджера взаимодействует с графическим оборудованием через программные интерфейсы, такие как OpenGL или Direct3D .
Самые ранние широко распространенные реализации, использующие эту технику, были выпущены для Mac в Mac OS X 10.2 и для Linux в прототипе Luminocity . В настоящее время оконные менеджеры, использующие OpenGL, включают Compiz, KWin и Quartz Compositor, тогда как Desktop Window Manager в настоящее время использует DirectX 9. OpenGL все еще не полностью поддерживается на оборудовании, поэтому производительность композитинга на основе OpenGL должна продолжать улучшаться по мере улучшения оборудования.
Linux
Для стекирования оконных менеджеров, работающих на X-сервере, требовалось расширение цветового ключа или зеленого экранирования . Композиция была введена посредством расширения «Composite» . Менеджеры компоновки используют аппаратное ускорение с помощью этого расширения, если оно доступно.
В Linux и UNIX возможность выполнять композицию с полным 3D-ускорением требовала фундаментальных изменений в X11 , чтобы использовать аппаратное ускорение. Первоначально начал появляться ряд модифицированных реализаций X11, разработанных на основе OpenGL , включая Xgl . Внедрение AIGLX устранит необходимость в использовании Xgl и позволит оконным менеджерам выполнять 3D-ускоренную композицию на стандартном X-сервере, при этом обеспечивая прямой рендеринг . В настоящее время карты NVIDIA , Intel и ATI поддерживают AIGLX .
Compiz представила эффект куба, который позволяет пользователю одновременно видеть до 6 виртуальных рабочих столов. Каждый рабочий стол преобразуется в текстуру поверхности куба, которую можно вращать по желанию. Compiz отображает широкий спектр 2D и 3D эффектов и имеет относительно низкие требования к оборудованию. В 2012 году Compiz был включен в Ubuntu Linux и включался автоматически, когда поддерживаемое оборудование и драйверы были доступны, а пользователь не выбрал 2D-режим.
Mutter (Metacity + Clutter ) заменил Metacity в качестве оконного менеджера по умолчанию для GNOME . Он включен в компонент оболочки GNOME в GNOME 3.0. Он использует механизм отображения Clutter, который был перенесен на все основные операционные системы, нетбуки и смартфоны .
Начиная с версии 4, оконный менеджер KWin KDE имеет возможности компоновки. KWin имеет большую часть той же функциональности, что и в Compiz .
Джава
Project Looking Glass был оконным менеджером, сочетающим 3D-рендеринг и кроссплатформенный язык программирования Java . Сейчас он неактивен и выпущен под Стандартной общественной лицензией GNU . В дистрибутив Granular Linux live CD входит Looking Glass в качестве дополнительного оконного менеджера.
После того, как он был прекращен, некоторые из его функций, такие как переключение обложек и предварительный просмотр эскизов в реальном времени, нашли свое применение в других оконных менеджерах. Его более оригинальные особенности включали наклон окна, двусторонние оконные рамы и фон с параллаксной прокруткой .
AmigaOS 4 и MorphOS
Хотя они могут работать на оборудовании с поддержкой 3D, AmigaOS 4 и MorphOS предназначены для работы на старых устаревших компьютерах Amiga, начиная с Amiga 1200 . Таким образом, их оконные менеджеры имеют в основном возможности плоского рендеринга, которые включают составные слои, альфа-смешение, градиенты, высокое разрешение и несколько рабочих столов («экранов»), которые могут частично обрезать друг друга.
Майкрософт Виндоус
Хотя диспетчер окон в Windows 2000 выполняет композицию, он не выполняет преобразования, такие как альфа-канал для каждого пикселя. Немногие коммерческие приложения использовали альфа-смешение; бесплатные программы были одними из первых, кто экспериментировал с ним, хотя и с помощью дополнительных настроек. Композиция была представлена с помощью диспетчера окон рабочего стола в Windows Vista .
Windows Vista и Windows 7 позволяют пользователю отключить диспетчер окон рабочего стола, выбрав параметры внешнего вида Windows Basic. Кроме того, он автоматически отключается Windows для выполнения аппаратного наложения через Overlay Mixer Filter .
Юзабилити и приятный глазу
Композиционный подход упрощает реализацию ряда функций, которые делают пользовательский интерфейс более доступным, простым в использовании или с добавлением ярких элементов.
Векторная графика , такая как шрифты TrueType и элементы с 3D-ускорением, может быть расширена без ухудшения качества (обычно из-за наложения имен ). Экран увеличитель увеличивает площадь экрана, что делает части текста легче читать — будьте то, чтобы предотвратить усталость глаз , для ослабленного зрения , или просто на расстоянии. Эту функциональность обеспечивают эффекты масштабирования, такие как лупа « рыбий глаз» и эффекты масштабирования рабочего стола.
Предварительный просмотр в реальном времени
Предварительный просмотр окна может отображаться в виде всплывающего эскиза, когда пользователь наводит курсор на соответствующую кнопку панели задач . Это позволяет пользователю идентифицировать несколько одновременно работающих программ и управлять ими.
Переключение окон
Окна с похожими именами и значками часто вызывают путаницу, особенно когда их строки заголовков перекрываются; положение каждого такого окна на панели задач необходимо запомнить. Когда таким образом открыто много окон, пользователю часто приходится прибегать к методам проб и ошибок — нажимая каждую кнопку панели задач одну за другой — прежде чем продолжить. Переключение окон позволяет быстро просмотреть сразу несколько окон, временно расположив их на декоративном фоне. После того, как выбор сделан, окнам восстанавливается исходное расположение.
Выделение начинается, когда пользователь вводит комбинацию горячих клавиш , перемещает указатель мыши в точку доступа на экране или, в некоторых случаях, использует колесо прокрутки мыши . Элементы перемещаются с помощью клавиатуры или мыши. Элемент можно выбрать, отпустив горячую клавишу, нажав клавишу Enter или щелкнув по нему мышью.
Флип-переключение
Переключатель переворота — это усовершенствованная функция переключения Alt-Tab . Выполняющиеся окна организованы в стопку — аналогично переключателю в стиле флип в музыкальном автомате 1950-х годов или Rolodex . В некоторых системах пользователь может нажимать Alt-Shift-Tab для перехода назад. Визуальные переходы применяются к каждому элементу во время навигации.
Распространенные реализации переключения поворота включают Flip 3D в Windows и Shift Switcher в Compiz.
Переключение крышки
Переключение обложки похоже на переключение флип с несколькими, в основном визуальными, отличиями. Вместо одной стопки с выделенной областью наверху отображаются две симметричные стопки с текущим выделением спереди и в центре (аналогично функции наклона окна в Looking Glass).
Cover Flow — это реализация переключения обложек в macOS. Более поздние версии используют размытие, чтобы не выделять невыделенные элементы. Cover Flow также был реализован в другом программном обеспечении Apple, таком как iTunes .
Это также называется «просмотром книги».
Переключение звонка
Кольцевое переключение похоже на переключение щелчком, за исключением того, что окна перемещаются по кругу, с текущим выделением впереди, обычно внизу. Большинство композитных оконных менеджеров включают эту функцию прямо из коробки , также доступны сторонние приложения , такие как 3D-рабочий стол .
Группировка
Пользователь может группировать окна вместе, так что в каждой группе одновременно отображается только одно окно. В Compiz фрейм окна переворачивается, чтобы указать, когда активное окно в его группе было изменено.
Разоблачать
macOS отображает предварительный просмотр каждого окна на экране, разбивая их мозаикой. Другие системы с аналогичной функциональностью (Microsoft Windows, Compiz, KWin, сторонние приложения) называются клонами Exposé. Горячая клавиша для активации Exposé — это не Alt-Tab, а F3.
Управление полетами
Mac OS X 10.7 объединяет несколько других функций композитинга, разработанных Apple, таких как Exposé, Dashboard и Spaces, в более крупную программу под названием Mission Control .
Двигатели виджетов
В macOS «виджеты» (одноцелевые апплеты ), такие как часы, блокнот и калькулятор, могут появляться при нажатии горячей клавиши . Механизмы виджетов ускоряют работу, делая часто используемые виджеты доступными, но ненавязчивыми. Они обрабатываются программой Dashboard в macOS.
Compiz начинается с пустого слоя виджетов, что позволяет пользователю добавлять приложения, щелкая по ним. Разнообразие виджетов поддерживается, в том числе Screenlets , gDesklets и SuperKaramba .
Windows Vista предоставляет гаджеты, которые пользователь может разместить на боковой панели Windows (гаджеты боковой панели), стартовой странице Windows Live (веб-гаджеты) или на внешнем дисплее, например на мобильном телефоне пользователя ( гаджеты SideShow ). Боковая панель Windows была видимым разделом в Windows Vista и была удалена в Windows 7 вместе с гаджетами боковой панели, которые были заменены на гаджеты рабочего стола .
Переходы и другие эффекты
До того, как были разработаны композитные оконные менеджеры, окна мгновенно появлялись и исчезали из поля зрения, что несовместимо с метафорой интерфейса (и с настройками физического офиса ). Некоторые системы, такие как Classic Mac OS, избежали этой проблемы с помощью ZoomRects , анимировав «масштабирование» контура окна в сторону его окончательного положения. Но в большинстве систем внезапное появление и исчезновение элементов графического интерфейса может показаться неопытным пользователям сбивающим с толку или даже хаотичным. Визуальные переходы обеспечивают контекст и помогают различать причинно-следственные связи элементов графического интерфейса. Вместо того, чтобы просто исчезнуть, окно может исчезнуть или заметно сжаться до панели задач. Выпадающее меню, которое было выбрано, может плавно выходить наружу из строки меню, что упрощает определение его происхождения и назначения.
Постепенные и естественные переходы могут быть особенно полезны для пожилых людей или пользователей с ослабленным зрением, которые замечают изменения на экране медленнее и с меньшей четкостью. Например, неопытный пользователь может импульсивно щелкнуть случайно активированное меню, что приведет к потере работы. Короткая задержка, необходимая для отображения визуального перехода, может дать пользователю достаточно времени, чтобы принять осознанное решение и избежать таких ошибок.
Фасады пользовательского интерфейса
Metisse реализует фасады пользовательского интерфейса, систему, которая предоставляет пользователям простые способы адаптации, перенастройки и рекомбинации существующих графических интерфейсов с помощью методов прямого управления .
Источник