Është publikuar versioni i paketës wayland-protocols 1.36, që përmban një grup protokollesh dhe zgjerimesh që plotësojnë mundësitë e protokollit bazë Wayland dhe ofrojnë funksionalitete të nevojshme për ndërtimin e serverëve kompozues dhe mjediseve të përdoruesve.
Të gjitha protokollet kalojnë nëpër tre faza — zhvillim, testim dhe stabilizim. Pas përfundimit të fazës së zhvillimit (kategoria "unstable"), protokolli vendoset në degën "staging" dhe përfshihet zyrtarisht në grupin e wayland-protocols, dhe pas përfundimit të testimit, kalon në kategorinë stabile. Protokollet në kategorinë "staging" tashmë mund të përdoren në serverët kompozitë dhe klientët ku kërkohet funksionaliteti përkatës. Në dallim nga kategoria "unstable", në "staging" ndalohet bërja e ndryshimeve që shkelin kompatibilitetin, por në rastin e zbulimit të problemeve dhe dobësive gjatë testimit, nuk përjashtohet zëvendësimi me një version të ri të rëndësishëm të protokollit ose me një zgjerim tjetër të Wayland.
Në këtë version të ri:
- Protokolli xdg-toplevel-icon është shtuar në kategorinë «staging», i cili është i destinuar për të lidhur një ikonë me një dritare në nivel të lartë.
- Protokollet ext-image-capture-source dhe ext-image-copy-capture janë shtuar në kategorinë «staging» për të organizuar kapjen e përmbajtjes që shfaqet në ekran.
Momentalisht, në përbërjen e wayland-protocols përfshihen këto protokolle të qëndrueshme, të cilat sigurojnë përkrahje të mbrapsht:
- "viewporter" - lejon klientin të kryejë veprime për zmadhimin dhe prerjen e skajeve të sipërfaqes nga ana e serverit.
- "presentation-time" - siguron shfaqjen e videove.
- "xdg-shell" — ndërfaqja për krijimin dhe ndërveprimin me sipërfaqet si dritare, e cila lejon t'i zhvendosim në ekran, t'i minimizojmë, t'i maksimizojmë, të ndryshojmë madhësinë, etj.
- "linux-dmabuf" — siguron ndarjen e disa kartave të grafikës me teknologjinë DMA-BUF (lejon krijimin e wl_buffer në bazë të DMA-BUF).
- «tablet» — organizimi i hyrjes nga tabletat grafikë.
Protokollet, që testohen në degën «staging»:
- drm-lease — ofron burimet e nevojshme për formimin e imazhit stereoskopik me bufra të ndryshëm për syrin e majtë dhe atë të djathtë gjatë përdorimit me helmetat e realitetit virtual.
- «ext-session-lock» — përcakton mjetet për bllokimin e seancës, për shembull, gjatë funksionimit të ruajtësit të ekranit apo paraqitjes së dialogut të autentikimit.
- «single-pixel-buffer» — lejon krijimin e bufferave të një pikseli, përfshirë katër vlera 32-bitësh RGBA.
- «xdg-activation» — lejon kalimin e fokusit midis sipërfaqeve të ndryshme të nivelit të parë (për shembull, përmes xdg-activation një aplikacion mund të kalojë fokusin te një tjetër).
- content-type — u lejon klientëve të dërgojnë informacion kompozit. server përfaqësimin e përmbajtjes, që mund të përdoret për optimizimin e sjelljes në përputhje me përmbajtjen, siç janë caktimi i pronave specifike DRM, të tilla si 'content type'. Është shpallur mbështetje për llojet e mëposhtme të përmbajtjes: none (pa informacion mbi tipin e të dhënave), photo (shfaqja e fotografive dixhitale, që kërkon përpunim minimal), video (video ose animacion, kërkon sinkronizim më të saktë për të përjashtuar ngadalësimet) dhe game (nisja e lojërave, kërkon shfaqje me vonesë minimale).
- ext-idle-notify — i jep mundësinë serverëve kompozitorë të transmetojnë klientëve njoftime mbi pasivitetin e përdoruesit, që mund të përdoret për aktivizimin e modesh shtesë kursimi energjie pas një kohe të caktuar pasiviteti.
- tearing-control — lejon mundëson çaktivizimin e sinkronizimit vertikal (VSync) me impulsin ndalues në aplikacionet me ekran të plotë, i përdorur për të parandaluar shfaqjen e prishjeve (tearing) gjatë shpërndarjes. Në aplikacionet multimediale, shfaqja e artefakteve nga prishjet është një efekt i padëshiruar, por në programet e lojërave, mund të tolerohet nëse lufta me to çon në vonesa shtesë.
- ext-foreign-toplevel-list — merr informacione mbi sipërfaqet e vendosura në nivelin më të lartë (toplevel), që lejojnë organizimin e fikseve të dritareve mbi përmbajtje të tjera, për shembull, për të lidhur panelet dhe kalimatorët e dritareve.
- security-context — lejon identifikimin e klientëve që përdorin izolimin sandbox. Klienti mund të regjistrojë një lidhje të re me serverin kompozitor mbi bazën e Wayland dhe t'i bashkangjisë një kontekst sigurie, pas së cilës menaxheri i kompozitimit do të kufizojë mundësitë e aksesit për lidhjen e vendosur në përputhje me kontekstin e sigurisë të caktuar.
- cursor-shape — një mënyrë alternative për të personalizuar pamjen e kursorit, e bazuar në transferimin e një serie imazhesh kursori në vend të lidhjes me sipërfaqen (wl_surface).
- "ext-transient-seat" — është e destinuar për krijimin e seancave të përkohshme të pavarura (seat), të projektuar për t'u përdorur së bashku me pajisje virtuale të hyrjes. Për shembull, në realizimin e mundësisë për t'u lidhur me desktop të largët protokolli lejon krijimin e një seance të veçantë me tastierë dhe maus virtual për çdo përdorues.
- «xdg-toplevel-drag» — zgjeron mekanizmin «drag & drop» me mundësinë e bashkimit të dritareve të nivelit të lartë në operacionin e lëvizjes, që mund të përdoret, për shembull, për organizimin e tërheqjes së paneleve të instrumenteve ose tab-eve të shfletuesit me miun. Protokolli i ri lejon krijimin e pjesëve të shkëputura të dritares, të cilat gjatë tërheqjes nga kjo dritare shndërrohen në dritare të reja dhe mund të lëvizin mbi një dritare ekzistuese përpara se të ribashkohen.
- «xdg-dialog» — lejonë të caktojë karakteristika specifike për dialogët, duke krijuar dialogë modalë që bllokojnë ndërveprimin e përdoruesit me pjesën tjetër të ndërfaqes.
- «linux-drm-syncobj» ofron mjete për sinkronizimin e qartë të bufeve duke përdorur objekte sinkronizimi DRM (Menaxhimi i Shfaqjes së Drejtpërdrejtë). Në kontekstin e sinkronizimit gjatë vizatimit në buf, protokolli i propozuar do të përmirësojë performancën me drejtorët mbi bazën e API-ve grafike Vulkan dhe OpenGL (implementimi bazohet në menaxherët në drejtorët). Protokolli i ri ofron mundësinë për të siguruar që operacioni i vizatimit në buf të përfundojë para se menaxheri i përbërë të shfaqë këtë buf.
- modifikuesi alpha, që u lejon klientëve të ndryshojnë nivelin e transparencës së sipërfaqeve dhe të transferojnë operacionet e sigurimit të transparencës në anën e serverit të kompozit, i cili nga ana e tij mund të rihdërgojë këto operacione KMS.
Protokollet që po zhvillohen në degën «unstable»:
- «fullscreen-shell» — menaxhimi i operacioneve në modalitetin e plotë.
- «input-method» — përpunimi i metodave të hyrjes.
- «idle-inhibit» — bllokimi i aktivizimit të screensaver-it.
- «input-timestamps» — shenjat kohore për ngjarjet e hyrjes.
- «keyboard-shortcuts-inhibit» — menaxhimi i bashkimit të kombinimeve të tastierës dhe tastave të ngrohta.
- «linux-explicit-synchronization» — mekanizmi specifik për Linux për sinkronizimin e bufereve në lidhje me sipërfaqen.
- «pointer-gestures» — menaxhimi me ekranet ndjeshëm.
- «pointer constraints» — kufizimet e treguesve (bllokimi).
- «primary-selection» — në përputhje me X11, siguron funksionimin e bufrit primar të murit (primary selection), ngjyrat e të cilit zakonisht realizohen me butonin e mesëm të mausit.
- «relative pointer events» — ngjarje relative të treguesve.
- «text-input» — organizimi i hyrjes së tekstit.
- «xdg-foreign» — interfaci i ndërveprimit me sipërfaqet e klientit ‘fqinje’.
- «xdg-decoration» — vizatimi i dekorimeve të dritareve nga ana e serverit.
- «xdg-output» — informacion shtesë rreth daljes vizuale (përdoret për shkallëzim të ndarë).
- «xwayland-keyboard-grab» — kapja e inputit në aplikacionet XWayland.
Burimi: opennet.ru
