Wayland-ийн гол протоколыг нөхөж, нийлмэл серверүүд болон хэрэглэгчийн орчныг бүтээхэд шаардлагатай чадавхийг хангадаг протоколууд болон өргөтгөлүүдийн багцыг агуулсан wayland-protocols багц 1.48 гарсан.
Шинэ хувилбарт:
- xdg-session-management протоколыг үе шатны ангилалд нэмсэн бөгөөд энэ нь Wayland дээр суурилсан орчинд тасалдсан сессээс, жишээлбэл, нийлмэл сервер эсвэл програм гацсаны дараа цонхны төлөв байдал болон байрлалыг сэргээх боломжийг олгодог.
- Текст оруулах протоколыг өргөжүүлсэн бөгөөд ингэснээр нийлмэл серверүүд оролтын аргуудыг хэрэгжүүлж, програмууд руу текст илгээх боломжтой болсон. Жишээлбэл, эможигүй оролтод зориулсан no_emoji тугийг нэмсэн, текст оруулахаас гадна нэмэлт үйлдлүүдийг дэмжих дэмжлэгийг хэрэгжүүлсэн, хэлний мэдээллийг дамжуулахад зориулсан хэлний тугийг нэмсэн, оролтын самбарыг харуулах болон нуух хүсэлтийг нэмсэн, мөн урьдчилан засварлах хэв маягийг өөрчлөхөд зориулсан preedit_hint тугийг нэмсэн.
- Дэлгэц дээрх зүсэлтийн талаарх мэдээллийг авах туршилтын xx-cutouts протоколыг нэмсэн (жишээлбэл, ухаалаг гар утасны дэлгэц дээрх урд камерын доорх хэсэг).
- "Бүсүүд" буюу өөрийн гэсэн координатын орон зайтай орчинд дээд түвшний цонх үүсгэх, нэмэх туршилтын xx-zones протоколыг нэмсэн. Энэхүү протокол нь цонх бүрийг бусад бүх цонхтой харьцангуй байрлуулсан цонхнуудын логик зохион байгуулалтыг зөвшөөрдөг.
- Клиент сонгосон гарын үйл явдлуудыг таслан зогсоох, оролтын үйл явдлуудыг өөрчлөх эсвэл тодорхой үйл явдлуудыг фокуслагдсан Wayland гадаргуу руу дамжуулахаас хаах боломжийг олгохын тулд xx-keyboard-filter туршилтын протоколыг нэмсэн.
Бүх протоколууд дараалан хөгжүүлэлт, туршилт, тогтворжуулалтын үе шатуудыг дамждаг. Хөгжүүлэлтийн үе шатыг ("тогтворгүй" ангилал) дуусгасны дараа протоколыг "үе шат" салбарт байрлуулж, албан ёсоор wayland-protocols багцад оруулдаг. Туршилт дууссаны дараа үүнийг тогтвортой ангилалд шилжүүлдэг. Дараа нь "үе шат" ангилалд байгаа протоколуудыг нийлмэл хэлбэрээр ашиглаж болно. серверүүд болон холбогдох функц шаарддаг үйлчлүүлэгчид. "Тогтворгүй" ангиллаас ялгаатай нь "үе шат" нь нийцтэй байдлыг алдагдуулдаг өөрчлөлтүүдийг хориглодог. Гэсэн хэдий ч туршилтын явцад асуудал эсвэл дутагдал илэрсэн бол шинэ, чухал протоколын хувилбар эсвэл өөр Wayland өргөтгөлөөр солихыг үгүйсгэх боломжгүй.
Протоколуудыг хөгжүүлэгчдэд хүргэх ажлыг хурдасгах, одоо байгаа төслүүдэд протоколуудыг эрт нэвтрүүлэхийг дэмжихийн тулд өмнөх хувилбараас эхлэн "туршилтын" үе шатыг нэмсэн бөгөөд энэ нь нийцтэй байдлыг эвдэж, аажмаар зохих түвшинд хүргэх "түүхий" протоколуудыг нэмэх боломжийг олгодог. Протокол нь үе шат руу орохын тулд дэмжлэг үзүүлэх багийг бүрдүүлж, хянагчдаас тодорхой тооны талархал (ACKs) авах шаардлагатай бол туршилтын үе шатанд орохын тулд хоёр долоо хоногийн хяналтын хугацаанд ямар ч эсэргүүцэл (NACK) авах шаардлагатай.
Wayland-protocols иж бүрдэл нь одоогоор хоцрогдсон нийцтэй дараах тогтвортой протоколуудыг агуулж байна:
- "viewporter" - үйлчлүүлэгчид гадаргуугийн ирмэгийг хажуу талаас нь масштаблах, тайрах үйлдлүүдийг гүйцэтгэх боломжийг олгодог. сервер.
- "Танилцуулгын цаг" - видео дэлгэцээр хангадаг.
- "xdg-shell" нь гадаргууг үүсгэх, цонх хэлбэрээр харилцах интерфейс бөгөөд тэдгээрийг дэлгэцийн эргэн тойронд шилжүүлэх, буулгах, өргөжүүлэх, хэмжээг өөрчлөх гэх мэт боломжийг олгодог.
- "linux-dmabuf" - DMA-BUF дээр суурилсан wl_buffers үүсгэх боломжийг олгодог.
- "таблет" - график таблетаас оролтын зохион байгуулалт.
"Үе шат"-ын салбарт туршсан протоколууд:
- drm-lease - виртуал бодит байдлын чихэвч рүү гаргахдаа зүүн болон баруун нүдэнд өөр өөр буфер бүхий стерео дүрс үүсгэхэд шаардлагатай нөөцөөр хангадаг.
- "ext-session-lock" - жишээ нь дэлгэц амраагч ажиллаж байх эсвэл баталгаажуулах харилцах цонх гарч ирэх үед сессийг түгжих хэрэгслийг тодорхойлдог.
- "нэг пикселийн буфер" - 32 XNUMX бит RGBA утгыг агуулсан нэг пикселийн буфер үүсгэх боломжийг танд олгоно.
- "xdg-идэвхжүүлэх" - фокусыг өөр өөр түвшний гадаргуу хооронд шилжүүлэх боломжийг олгодог (жишээлбэл, xdg-идэвхжүүлэлтийг ашиглан нэг програм нь фокусыг нөгөө рүү шилжүүлэх боломжтой).
- контентын төрөл - үйлчлүүлэгчдэд нийлмэл файлыг дамжуулах боломжийг олгодог сервер "Контентын төрөл" гэх мэт тодорхой DRM шинж чанаруудыг тохируулах гэх мэт контентыг мэддэг зан төлөвийг оновчтой болгоход ашиглаж болох дэлгэцэнд гарч буй контентын талаарх мэдээлэл. Дараах контентын төрлүүдийг дэмжинэ гэж мэдэгдэв: байхгүй (өгөгдлийн төрлийн мэдээлэл байхгүй), зураг (хамгийн бага боловсруулалт шаарддаг дижитал зургийн гаралт), видео (гацахаас зайлсхийхийн тулд илүү нарийвчлалтай синхрончлол шаарддаг видео эсвэл хөдөлгөөнт дүрс), мөн тоглоом (тоглоом эхлүүлэх, хамгийн бага хоцрогдолтой гаралт шаарддаг).
- ext-idle-notify - нийлмэл серверүүдэд хэрэглэгчийн идэвхгүй байдлын талаарх мэдэгдэл илгээх боломжийг олгодог бөгөөд энэ нь тодорхой хугацаанд идэвхгүй болсны дараа нэмэлт эрчим хүч хэмнэх горимуудыг идэвхжүүлэхэд ашиглаж болно.
- teering-control - гаралтын үед урагдахаас хамгаалахад ашигладаг бүрэн дэлгэцийн програмуудад босоо уналтын импульс бүхий босоо синхрончлолыг (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 and ext-image-copy-capture - дэлгэцэн дээр харуулсан контентыг авах зохион байгуулалт.
- xdg-system-bell - системийн дохиог гаргах боломжийг олгодог бөгөөд үүнийг жишээ нь терминал эмулятор дээр анхааруулга болгон ашиглаж болно. Дохионы гаралтын хэлбэрийг нийлмэл менежерийн үзэмжээр тодорхойлдог бөгөөд энэ нь зөвхөн дуу чимээ биш, харин харааны хариу үйлдэл байж болно.
- fifo - харуулсан гадаргуугийн контентын шинэчлэлтийн дарааллыг боловсруулах FIFO (эхний орсон, хамгийн түрүүнд гарах) механизмыг хэрэгжүүлдэг. Практик талаас нь авч үзвэл, уг протокол нь VSync-ийг ашиглах үед GPU-ийн ачаалал ихтэй асуудлыг шийддэг шинэ фрейм харуулах бүртээ буцаан дуудлагыг ашиглахын оронд босоо сканнер дуусгахыг хүлээхийг (vblank) ашиглах боломжийг олгодог.
- commit-timing - гадаргын агуулгад цаг хугацааны хязгаарлалт тогтоох боломжийг олгодог (нийлмэл сервер нь заасан хугацааны дараа боломжтой бол агуулгын өөрчлөлтийг тусгасан байх ёстой, гэхдээ өмнө нь биш).
- ext-data-control - Давуу эрхтэй үйлчлүүлэгчдэд өгөгдөл боловсруулалтыг хянах, тухайлбал санах ойн менежерүүдийг хэрэгжүүлэх боломжийг олгодог.
- ext-workspace — уг ойлголтыг хэрэгжүүлдэг виртуал ширээний компьютерууд мөн ширээний компьютеруудын төлөв байдлын талаарх мэдээлэл, мөн ширээний компьютеруудыг идэвхжүүлэх болон идэвхгүй болгох чадвар бүхий үйл явдлуудыг санал болгодог. Энэ протоколыг боломжтой виртуал ширээний компьютеруудын жагсаалтыг харуулдаг хяналтын самбар болон индикаторуудыг үүсгэж, тэдгээрийн хооронд шилжих боломжийг олгодог.
- өнгөний менежмент — өнгөний менежмент болон өндөр динамик хүрээ (HDR)-ийг дэмжих чадварыг олгодог. Энэхүү өргөтгөл нь клиент програмуудад гаралтын төхөөрөмжүүдийн өнгөтэй холбоотой шинж чанаруудын талаарх мэдээллийг авах, өөрсдийн контентын өнгөний шинж чанаруудын талаарх өгөгдлийг нийлмэл сервер рүү дамжуулах боломжийг олгодог. Нийлмэл горимд, сервер Энэ мэдээллийг янз бүрийн гаралтын төхөөрөмж дээр контентыг харуулах үед автомат өнгөний удирдлагад ашиглаж болно, жишээлбэл, контентыг HDR дэлгэц дээр харуулахад тохиромжтой танилцуулга болгон хөрвүүлэхэд. ICC профайлыг өнгөний орон зайг тодорхойлоход ашигладаг.
- xdg-toplevel-tag — Wayland үйлчлүүлэгчдэд програмыг дахин эхлүүлсний дараа цонхыг тодорхойлохын тулд нэгтгэх сервер ашиглаж болох дээд түвшний гадаргуу дээр хаягуудыг хавсаргах боломжийг олгоно (жишээлбэл, програм нь үндсэн цонх болон тохиргооны цонхонд "үндсэн цонх" болон "тохиргоо" шошгыг тохируулж болно). Ийм таних нь дахин ачаалсны дараа цонхны байрлал, хэмжээ, шинж чанарыг сэргээх, мөн тусдаа төрлийн цонхны тусгай дүрмийг тодорхойлоход тустай.
- өнгөт дүрслэл — Wayland гадаргуугийн өнгөт дүрслэлийг тодорхойлно. Wayland үйлчлүүлэгчид ил тод байдал, өнгөний загвар, дэд түүвэрлэлт, квантчлалын хүрээг тодорхойлоход шаардлагатай мета өгөгдлийг дамжуулж, YCbCr өнгөт загварт харгалзах өгөгдөл бүхий буферийг RGB дүрслэл болгон хувиргахад ашигладаг.
- ext-background-effect - дэвсгэр бүдэгрэх гэх мэт Wayland гадаргуугийн хагас тунгалаг хэсгүүдэд эффект хэрэглэнэ.
- заагч-warp - Аппликейшн нь заагчийг заасан байрлал руу шууд шилжүүлэх боломжийг олгоно.
Туршилтын салбарт боловсруулж буй протоколууд:
- xx-session-management - тасалдсан сешнүүдийн цонхны төлөвийг сэргээдэг (жишээлбэл, нийлмэл менежерийн эвдрэлийн дараа).
- xx-оролтын арга — програмуудад нийлмэл текст оруулах аргуудыг хэрэгжүүлэх боломжийг олгодог серверүүд мөн оруулсан текстийг үүсгэх бөгөөд үүнийг жишээлбэл, оролтыг боловсруулах виртуал гар болон IME давхаргууд (Оролтын Аргын Редактор) үүсгэхэд ашиглаж болно.
- xx-текст-оролт — нийлмэл серверүүдэд оролтын аргуудыг хэрэгжүүлэх, програмууд руу текст илгээх боломжийг олгодог. Протокол нь нийлмэл серверүүдийн харилцан үйлчлэлийг стандартчилдаг. сервер болон програмуудыг ашиглах боломжийг олгодог бөгөөд оролтын текст дамжуулах, оролтын фокусын өөрчлөлтийн үйл явдлуудыг зохицуулах, оролтын талбаруудын онцлогийг (хэл, текст сонголт, агуулгын төрөл) харгалзан үзэх зэрэг боломжуудыг удирдах боломжийг танд олгоно.
"Тогтворгүй" салбарт боловсруулж буй протоколууд:
- "Бүтэн дэлгэцийн бүрхүүл" - бүтэн дэлгэцийн горимд ажиллах хяналт.
- "оролтын арга" - оролтын аргуудыг боловсруулах.
- "idle-inhibit" - дэлгэц амраагчийг (дэлгэц амраагч) ажиллуулахыг хориглох.
- "input-timestamps" - оролтын үйл явдлын цагийн тэмдэг.
- "keyboard-shortcuts-inhibit" - гарын товчлол болон халуун товчлууруудын хавсралтыг хянадаг.
- "linux-explicit-synchronization" нь дараахад зориулагдсан Linux гадаргуутай холбоотой буферуудыг синхрончлох механизм.
- "Заагч дохио" - мэдрэгчтэй дэлгэцээс удирдах.
- "заагчийн хязгаарлалт" - заагчийн хязгаарлалт (блоклох).
- "Анхдагч сонголт" - X11-тэй ижил төстэй байдлаар энэ нь үндсэн санах ойн (анхдагч сонголт) ажиллагааг хангадаг бөгөөд мэдээллийг ихэвчлэн хулганы дунд товчлуураар оруулдаг.
- "харьцангуй заагч үйл явдлууд" - харьцангуй заагч үйл явдлууд.
- "текст оруулах" - текст оруулах зохион байгуулалт.
- "xdg-foreign" нь "хөрш" үйлчлүүлэгчийн гадаргуутай харилцах интерфейс юм.
- "xdg-decoration" - сервер талын цонхны чимэглэлийг үзүүлэх.
- "xdg-output" - видео гаралтын талаархи нэмэлт мэдээлэл (бутархай масштаб хийхэд ашигладаг).
- "xwayland-keyboard-grab" - XWayland програмын оролтыг авах.
Эх сурвалж: opennet.ru
