Wayland-Protocols 1.49 шығарылымы

Wayland протоколдарының 1.49 нұсқасы шығарылды, ол негізгі Wayland протоколын толықтыратын және құрама серверлер мен пайдаланушы орталарын құруға қажетті мүмкіндіктерді қамтамасыз ететін хаттамалар мен кеңейтімдер жиынтығын қамтиды.

Жаңа нұсқада:

  • Добавлен экспериментальный протокол xx-fractional-scale, предоставляющий возможность масштабирования системы логических координат, значения в которой задаются целыми числами, для повышения точности позиционирования и увеличения разрешения логических координат до отдельных пикселей. Подобная возможность решает проблему с ограниченным разрешением системы логических координат, недостаточным для позиционирования на уровне отдельных пикселей, необходимого для полноценной реализации дробного масштабирования.
  • В протокол «linux-dmabuf» добавлена поддержка работы на системах с несколькими GPU. На подобных системах клиент может согласовать с композитными сервером какой из GPU следует использовать.
  • В протокол color-management-v1 добавлена поддержка метаданных изображений в формате BT.2100 для применения в композитном сервере специфичных обработчиков, позволяющих корректно отображать HDR-контент, созданный для Windows.

Барлық хаттамалар дәйекті түрде әзірлеу, тестілеу және тұрақтандыру кезеңдерінен өтеді. Әзірлеу кезеңін аяқтағаннан кейін («тұрақсыз» санат) хаттама «сахналық» тармағына орналастырылады және ресми түрде wayland-хаттамалар жинағына енгізіледі, ал тестілеу аяқталғаннан кейін ол тұрақты санатқа ауыстырылады. «Кезеңдеу» санатындағы хаттамаларды құрама серверлерде және қатысты функционалдылық қажет клиенттерде бұрыннан пайдалануға болады. «Тұрақсыз» санаттан айырмашылығы, «сатылауда» үйлесімділікті бұзатын өзгерістер енгізуге тыйым салынады, бірақ тестілеу кезінде проблемалар мен кемшіліктер анықталса, хаттаманың жаңа маңызды нұсқасымен немесе Wayland кеңейтімін басқа кеңейтіммен ауыстыру алынып тасталмайды.

Әзірлеушілерге хаттамаларды жеткізуді жеделдету және бұрынғы шығарылымнан бастап қолданыстағы жобаларда хаттамаларды ертерек енгізуді ынталандыру үшін үйлесімділікті бұзатын өзгерістерге және біртіндеп тиісті деңгейге жеткізуге болатын «шикі» хаттамаларды қосуға мүмкіндік беретін «эксперименттік» кезең қосылды. Протокол қою кезеңіне өту үшін қолдау тобын құруы және рецензенттерден белгілі бір растау (ACKs) алуы қажет болғанымен, эксперименттік кезеңге өту үшін екі апталық шолу кезеңінде тек қарсылықтарды (NACK) алу қажет.

Қазіргі уақытта wayland-protocols жинағы кері үйлесімді келесі тұрақты протоколдарды қамтиды:

  • «viewporter» - клиентке сервер жағында масштабтау және беткі жиектерді кесу әрекеттерін орындауға мүмкіндік береді.
  • «тұсаукесер уақыты» - бейне көрсетуді қамтамасыз етеді.
  • «xdg-shell» - терезелер ретінде беттерді құруға және олармен әрекеттесуге арналған интерфейс, оларды экранда жылжытуға, жиыруға, кеңейтуге, өлшемін өзгертуге және т.б.
  • "linux-dmabuf" - DMA-BUF негізінде wl_buffers құру мүмкіндіктерін береді.
  • «планшет» - графикалық планшеттерден енгізуді ұйымдастыру.

«Саттау» бөлімінде сынақтан өткен хаттамалар:

  • drm-lease - виртуалды шындық гарнитураларына шығару кезінде сол және оң көздер үшін әртүрлі буферлері бар стерео кескінді жасау үшін қажетті ресурстарды қамтамасыз етеді.
  • «ext-session-lock» - сеансты құлыптау құралын анықтайды, мысалы, экран сақтағышы жұмыс істеп тұрғанда немесе аутентификация диалогы көрсетілген кезде.
  • «бір пиксельді буфер» - төрт 32-биттік RGBA мәнін қамтитын бір пиксельді буферлерді жасауға мүмкіндік береді.
  • «xdg-activation» — позволяет передать фокус между разными поверхностями первого уровня (например, при помощи
    xdg-activation одно приложение может переключить фокус на другое).
  • мазмұн түрі - Клиенттерге "мазмұн түрі" сияқты арнайы DRM сипаттарын орнату сияқты мазмұнды ескеретін әрекетті оңтайландыру үшін пайдаланылуы мүмкін құрама серверге көрсетілетін мазмұн туралы ақпаратты беруге мүмкіндік береді. Келесі мазмұн түрлеріне қолдау көрсетіледі: ешқайсысы (деректер түрі туралы ақпарат жоқ), фото (сандық фотосуреттерді шығару, минималды өңдеуді қажет етеді), бейне (бейне немесе анимация, кекіруді болдырмау үшін дәлірек синхрондау қажет) және ойын (іске қосу) ойындар, ең аз кешігуден шығу).
  • ext-idle-notify - Құрама серверлерге пайдаланушының әрекетсіздігі туралы клиенттерге хабарландырулар жіберуге мүмкіндік береді, оны белгілі бір әрекетсіздік уақытынан кейін қосымша қуат үнемдеу режимдерін қосу үшін пайдалануға болады.
  • жыртуды басқару - шығыста жыртылудан қорғау үшін пайдаланылатын толық экранды қолданбаларда тік демпферлік импульспен тік синхрондауды (VSync) өшіруге мүмкіндік береді. Мультимедиялық қолданбаларда жыртылу нәтижесінде пайда болған артефактілер жағымсыз әсер болып табылады, бірақ ойын бағдарламаларында артефактілермен жұмыс істеу қосымша кідірістерді тудырса, оларға жол беруге болады.
  • ext-foreign-toplevel-list - жоғарғы деңгейде орналастырылған беттер туралы ақпаратты шығарып алады, бұл терезелерді басқа мазмұнның үстіне бекіту үшін ұйымдастыруға мүмкіндік береді, мысалы, жеке панельдер мен терезе қосқыштарын бекіту.
  • қауіпсіздік-контекст - құм жәшігінің оқшаулануын пайдаланып клиенттерді анықтауға мүмкіндік береді. Клиент Wayland негізіндегі құрама серверге жаңа қосылымды тіркей алады және оған қауіпсіздік контекстін тіркей алады, содан кейін құрама менеджер көрсетілген қауіпсіздік контекстіне негізделген орнатылған қосылымға қолжетімді мүмкіндіктерді шектейді.
  • курсор пішіні - бетке (wl_surface) түсірудің орнына курсор кескіндерінің қатарын беруге негізделген курсордың сыртқы түрін теңшеудің баламалы жолы.
  • «Ex-transient-seat» - виртуалды енгізу құрылғыларымен пайдалануға арналған уақытша тәуелсіз сеанстарды (орындарды) жасауға арналған. Мысалы, қашықтағы жұмыс үстеліне қосылу мүмкіндігін жүзеге асырған кезде, протокол виртуалды пернетақта мен тінтуірдің көмегімен әрбір пайдаланушы үшін жеке сеанс жасауға мүмкіндік береді.
  • «xdg-toplevel-drag» - «сүйреп апару» механизмін, мысалы, құралдар тақталарын немесе шолғыш қойындыларын тінтуірмен апаруды ұйымдастыру үшін пайдалануға болатын сүйреп апару операциясына жоғарғы деңгейлі терезелерді қосу мүмкіндігімен кеңейтеді. Жаңа протокол сол терезеден сүйреп апарған кезде жаңа терезелерге айналатын және қайта тіркемес бұрын бұрыннан бар терезенің үстіне жылжытылатын терезенің ажыратылатын бөліктерін жасауға мүмкіндік береді.
  • «xdg-dialog» - жоғарғы деңгейлі беттерге диалогтық терезеге тән атрибуттарды тағайындауға мүмкіндік береді, мысалы, интерфейстің қалған бөлігімен пайдаланушының әрекеттесуін блоктайтын модальды диалогтарды жасауға болады.
  • "linux-drm-syncobj" - DRM (Direct Rendering Manager) синхрондау нысандарын пайдаланып айқын буферді синхрондау құралдарын қамтамасыз етеді. Буферге көрсету кезінде синхрондау контекстінде ұсынылған хаттама Vulkan және OpenGL графикалық API негізіндегі драйверлермен жұмысты жақсартады деп болжанады (іске асыру драйверлердегі өңдеушілерге негізделген). Жаңа протокол құрастыру менеджері осы буферді көрсеткенге дейін буферге тарту әрекетінің аяқталуын қамтамасыз етуге мүмкіндік береді.
  • альфа-модификатор, ол клиенттерге бетінің мөлдірлік деңгейін өзгертуге және композиттік сервер жағына мөлдірлікті қамтамасыз ету үшін операцияларды тасымалдауға мүмкіндік береді, бұл өз кезегінде бұл операцияларды KMS-ке қайта бағыттай алады.
  • xdg-toplevel-icon - белгішені жоғарғы деңгейдегі терезеге байланыстырады.
  • ext-image-capture-source және ext-image-copy-capture – экранда көрсетілетін мазмұнды түсіруді ұйымдастыру.
  • xdg-system-bell - жүйелік сигналды шығаруға мүмкіндік береді, оны, мысалы, терминал эмуляторында ескерту ретінде пайдалануға болады. Сигналдың шығу формасы композиттік менеджердің қалауы бойынша анықталады, ол тек дыбыстық емес, визуалды жауап болуы мүмкін;
  • fifo - көрсетілетін беттің мазмұнды жаңарту кезегін өңдеу үшін FIFO (бірінші кірген, бірінші шыққан) механизмін жүзеге асырады. Тәжірибелік жағынан, протокол VSync пайдалану кезінде жоғары GPU жүктемесі мәселесін шешетін жаңа кадрды көрсетуге дайын болған сайын кері шақыруларды пайдаланудың орнына тік сканерлеудің аяқталуын күтуге (vblank) мүмкіндік береді.
  • commit-timeing - уақыт шегін беткі мазмұнға байланыстыруға мүмкіндік береді (композиттік сервер мүмкін болса, көрсетілген уақыттан кейін мазмұнның өзгеруін көрсетуі керек, бірақ ертерек емес).
  • ext-data-control - Артықшылықтары бар клиенттерге деректерді өңдеуді басқаруға мүмкіндік береді, мысалы, алмасу буферінің басқарушыларын енгізу.
  • ext-workspace – виртуалды жұмыс үстелі концепциясын жүзеге асырады және жұмыс үстелінің күйі туралы ақпараты бар оқиғаларды, сондай-ақ жұмыс үстелдерін белсендіру және өшіру мүмкіндіктерін ұсынады. Протоколды қол жетімді виртуалды жұмыс үстелдерінің тізімін көрсететін және олардың арасында ауысуға мүмкіндік беретін панельдер мен көрсеткіштер жасау үшін пайдалануға болады.
  • түстерді басқару — түсті басқару мүмкіндіктерін және жарықтылықтың кеңейтілген динамикалық диапазонын қолдауды қамтамасыз етеді (HDR, Жоғары динамикалық диапазон). Қосылған кеңейтіммен клиенттік қолданбалар шығыс құрылғыларының түске қатысты қасиеттері туралы ақпаратты ала алады және өздерінің мазмұндарының түске қатысты сипаттары туралы деректерді құрама серверге жібере алады. Құрама серверде бұл ақпаратты әртүрлі шығыс құрылғыларында мазмұнды көрсету кезінде түсті автоматты түрде басқару үшін, мысалы, мазмұнды HDR мониторларында көрсетуге жарамды презентацияға түрлендіру үшін пайдалануға болады. ICC профильдері түс кеңістіктерін сипаттау үшін пайдаланылады.
  • xdg-toplevel-tag — Wayland клиенттеріне қолданбаны қайта іске қосқаннан кейін терезелерді анықтау үшін біріктіру сервері пайдалана алатын жоғарғы деңгейлі беттерге тегтерді тіркеуге мүмкіндік береді (мысалы, қолданба негізгі терезе мен параметрлер терезесі үшін «негізгі терезе» және «параметрлер» тегтерін орнатуы мүмкін). Мұндай сәйкестендіру қайта іске қосылғаннан кейін терезелердің орнын, өлшемін және сипаттарын қалпына келтіру үшін және терезелердің жеке түрлері үшін арнайы ережелерді анықтау үшін пайдалы.
  • color-representation — Wayland бетінің түс көрінісін анықтайды. Wayland клиенттері мөлдірлікті, түс үлгісін, ішкі үлгіні және кванттау ауқымын анықтау үшін қажетті метадеректерді жібере алады және YCbCr түс үлгісіне сәйкес деректері бар буферді RGB көрінісіне түрлендіру кезінде пайдаланылады.
  • ext-background-effect - фондық бұлыңғырлық сияқты Wayland бетінің жартылай мөлдір бөліктеріне әсерлерді қолданады.
  • pointer-warp - қолданбаға меңзерді көрсетілген орынға лезде жылжытуға мүмкіндік береді.
  • xdg-session-management — возможности для восстановления состояния и позиции окон прерванного сеанса, например, после аварийного завершения композитного сервера или приложения.

Эксперименттік бөлімде әзірленетін хаттамалар:

  • xx-session-management - үзілген сеанстар үшін терезелердің күйін қалпына келтіреді (мысалы, композиттік менеджердің бұзылуынан кейін).
  • xx-input-method — қолданбаларға құрама серверлер үшін мәтін енгізу әдістерін енгізуге және енгізілген мәтінді жасауға мүмкіндік береді, оны, мысалы, енгізуді өңдеу үшін виртуалды пернетақталар мен IME (Input Method Editor) қабаттарын жасау үшін пайдалануға болады.
  • xx-мәтін енгізу — құрама серверлерге енгізу әдістерін енгізуге және қолданбаларға мәтін жіберуге мүмкіндік береді. Хаттама құрама серверлер мен қолданбалар арасындағы өзара әрекеттесуді стандарттайды және енгізу мәтінін жіберу, енгізу фокусының оқиғаларын өңдеу және енгізу өрісінің ерекшеліктерін (тіл, мәтінді таңдау, мазмұн түрі) ескеру сияқты мүмкіндіктерді басқаруға мүмкіндік береді.
  • xx-cutouts — для получения информации о вырезах на экране (например, области под фронтальную камеру на экране смартфона).
  • xx-zones — для создания и добавления окон верхнего уровня в «зоны» — окружения со своим пространством координат. Протокол позволяет организовать логическую расстановку окон, в которой каждое окно размещается относительно другого окна.
  • xx-keyboard-filter — для перехвата клиентом выбранных событий клавиатуры, изменения событий ввода или блокирования передачи определённых событий в Wayland-поверхность, на которой установлен фокус ввода.

«Тұрақсыз» филиалда әзірленетін хаттамалар:

  • «толық экран-қабық» - толық экран режимінде жұмысты басқару.
  • «енгізу әдісі» - енгізу әдістерін өңдеу.
  • «idle-inhibit» - экран сақтағышты (экран сақтағыш) іске қосуды блоктау.
  • "input-timestamps" - енгізу оқиғалары үшін уақыт белгілері.
  • «пернетақта-жарлықтар-ингибит» - пернелер тіркесімдері мен жылдам пернелердің тіркемелерін басқарады.
  • «linux-explicit-synchronization» келесіге тән Linux бетке қатысты буферлерді синхрондау механизмі.
  • «көрсеткіш-имылдар» - сенсорлық экраннан басқару.
  • «көрсеткіш шектеулері» - көрсеткіш шектеулері (блоктау).
  • «бастапқы таңдау» - X11 ұқсастығы бойынша ол бастапқы алмасу буферінің жұмысын қамтамасыз етеді (бастапқы таңдау), ақпарат әдетте тінтуірдің ортаңғы түймесі арқылы енгізіледі.
  • «салыстырмалы көрсеткіш оқиғалары» - салыстырмалы көрсеткіш оқиғалары.
  • «мәтін енгізу» - мәтін енгізуді ұйымдастыру.
  • «xdg-foreign» — «көрші» клиенттің беттерімен әрекеттесу интерфейсі.
  • "xdg-decoration" - сервер жағында терезе әшекейлерін көрсету.
  • "xdg-output" - бейне шығысы туралы қосымша ақпарат (бөлшек масштабтау үшін пайдаланылады).
  • "xwayland-keyboard-grab" - XWayland қолданбаларында енгізуді жазу.

Ақпарат көзі: opennet.ru

DDoS қорғауы бар сайттар үшін сенімді хостинг, VPS VDS серверлерін сатып алыңыз 🔥 DDoS қорғанысы, VPS VDS серверлері бар сенімді веб-сайт хостингін сатып алыңыз | ProHoster