إصدار Wayland-Protocols 1.49

تم إصدار حزمة wayland-protocols 1.49، والتي تحتوي على مجموعة من البروتوكولات والامتدادات التي تكمل بروتوكول Wayland الأساسي وتوفر الإمكانيات اللازمة لبناء خوادم مركبة وبيئات مستخدم.

новой версии:

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

تمر جميع البروتوكولات بشكل تسلسلي بمراحل التطوير والاختبار والتثبيت. بعد الانتهاء من مرحلة التطوير (الفئة “غير المستقرة”)، يتم وضع البروتوكول في فرع “التدريج” وإدراجه رسميًا في مجموعة بروتوكولات وايلاند، وبعد الانتهاء من الاختبار، يتم نقله إلى الفئة المستقرة. يمكن بالفعل استخدام البروتوكولات من فئة "التدريج" في الخوادم والعملاء المركبين حيث تكون الوظائف ذات الصلة مطلوبة. على عكس الفئة "غير المستقرة"، يُحظر في "التدريج" إجراء تغييرات تنتهك التوافق، ولكن إذا تم تحديد المشكلات وأوجه القصور أثناء الاختبار، فلا يتم استبعاد الاستبدال بإصدار مهم جديد من البروتوكول أو امتداد Wayland آخر.

لتسريع تسليم البروتوكولات للمطورين وتشجيع التنفيذ المبكر للبروتوكولات في المشاريع الحالية، بدءًا من الإصدار السابق، تمت إضافة مرحلة "تجريبية"، والتي تسمح بالتغييرات التي تكسر التوافق وإضافة بروتوكولات "خام" يمكن إحضارها تدريجيًا إلى المستوى المناسب. في حين أن البروتوكول يحتاج إلى تشكيل فريق دعم وتلقي عدد معين من الإقرارات (ACKs) من المراجعين للدخول إلى مرحلة التدريج، فإنه يحتاج فقط إلى تلقي عدم الاعتراضات (NACKs) خلال فترة المراجعة التي تستمر أسبوعين للدخول إلى المرحلة التجريبية.

يتضمن مجموعة بروتوكولات wayland حاليًا البروتوكولات المستقرة التالية، والتي تتوافق مع الإصدارات السابقة:

  • "منفذ العرض" - يسمح للعميل بتنفيذ إجراءات القياس والقص على حواف السطح على جانب الخادم.
  • "وقت العرض" - يوفر عرض فيديو.
  • "xdg-shell" عبارة عن واجهة لإنشاء الأسطح والتفاعل معها كنوافذ، مما يسمح لك بنقلها حول الشاشة، وطيها، وتوسيعها، وتغيير حجمها، وما إلى ذلك.
  • "linux-dmabuf" - يوفر إمكانيات لإنشاء wl_buffers استنادًا إلى DMA-BUF.
  • "الكمبيوتر اللوحي" - تنظيم الإدخال من الأجهزة اللوحية الرسومية.

البروتوكولات التي تم اختبارها في فرع "التدريج":

  • drm-lease - يوفر الموارد اللازمة لتشكيل صورة مجسمة ذات مخازن مختلفة للعينين اليمنى واليسرى عند عرضها على خوذات الواقع الافتراضي.
  • "ext-session-lock" - يحدد وسائل قفل الجلسة ، على سبيل المثال ، أثناء تشغيل شاشة التوقف أو إخراج مربع حوار المصادقة.
  • "المخزن المؤقت أحادي البكسل" - يسمح لك بإنشاء مخازن مؤقتة أحادية البكسل تتضمن أربع قيم RGBA 32 بت.
  • «xdg-activation» — позволяет передать фокус между разными поверхностями первого уровня (например, при помощи
    xdg-activation одно приложение может переключить фокус на другое).
  • نوع المحتوى - يسمح للعملاء بتمرير معلومات حول المحتوى المعروض إلى الخادم المركب ، والتي يمكن استخدامها لتحسين السلوك المدرك للمحتوى ، مثل تعيين الخصائص الخاصة بإدارة الحقوق الرقمية مثل "نوع المحتوى". تم الإعلان عن دعم أنواع المحتوى التالية: لا شيء (لا توجد معلومات حول نوع البيانات) ، الصورة (إخراج الصور الرقمية التي تتطلب الحد الأدنى من المعالجة) ، الفيديو (الفيديو أو الرسوم المتحركة ، يلزم إجراء مزامنة أكثر دقة للتخلص من التأتأة) واللعبة (بدء الألعاب ، الإخراج من الحد الأدنى من التأخير).
  • ext-idle-notify - يسمح للخوادم المركبة بإرسال إشعارات عدم نشاط المستخدم إلى العملاء ، والتي يمكن استخدامها لتنشيط أوضاع توفير الطاقة الإضافية بعد قدر معين من عدم النشاط.
  • التحكم في التمزق - يسمح لك بتعطيل المزامنة الرأسية (VSync) مع نبض التخميد العمودي في تطبيقات ملء الشاشة، ويستخدم للحماية من التمزق في الإخراج. في تطبيقات الوسائط المتعددة، تعتبر الشوائب الناتجة عن التمزيق تأثيرًا غير مرغوب فيه، أما في برامج الألعاب فيمكن التسامح مع الشوائب إذا تسبب التعامل معها في تأخيرات إضافية.
  • ext-foreign-toplevel-list - يسترد معلومات حول الأسطح الموضوعة في المستوى الأعلى، مما يسمح لك بتنظيم النوافذ لتثبيتها فوق محتوى آخر، على سبيل المثال، لتوصيل اللوحات ومفاتيح النوافذ الخاصة بك.
  • سياق الأمان - يسمح لك بتحديد العملاء باستخدام عزل وضع الحماية. يمكن للعميل تسجيل اتصال جديد بخادم مركب قائم على Wayland وإرفاق سياق أمان به، وبعد ذلك سيحد المدير المركب من الإمكانيات المتاحة للاتصال القائم بناءً على سياق الأمان المحدد.
  • شكل المؤشر هو طريقة بديلة لتخصيص مظهر المؤشر، استنادًا إلى تمرير سلسلة من صور المؤشر بدلاً من التقاطها على سطح (wl_surface).
  • "مقعد عابر عابر" - مصمم لإنشاء جلسات مستقلة مؤقتة (مقاعد) مصممة للاستخدام مع أجهزة الإدخال الافتراضية. على سبيل المثال، عند تنفيذ القدرة على الاتصال بسطح مكتب بعيد، يتيح لك البروتوكول إنشاء جلسة منفصلة لكل مستخدم باستخدام لوحة مفاتيح وماوس افتراضية.
  • "xdg-toplevel-drag" - يوسع آلية "السحب والإفلات" مع القدرة على ربط نوافذ المستوى الأعلى بعملية السحب، والتي يمكن استخدامها، على سبيل المثال، لتنظيم سحب أشرطة الأدوات أو علامات تبويب المتصفح باستخدام الماوس. يتيح لك البروتوكول الجديد إنشاء أجزاء قابلة للفصل من النافذة والتي، عند سحبها من تلك النافذة، تصبح نوافذ جديدة ويمكن نقلها أعلى النافذة الحالية قبل إعادة إرفاقها.
  • "xdg-dialog" - يسمح لك بتعيين سمات خاصة بالحوار لأسطح المستوى الأعلى، على سبيل المثال، يمكنك إنشاء مربعات حوار مشروطة تمنع تفاعل المستخدم مع بقية الواجهة.
  • "linux-drm-syncobj" - يوفر أدوات لمزامنة المخزن المؤقت الصريحة باستخدام كائنات مزامنة DRM (مدير العرض المباشر). من المفترض أنه في سياق المزامنة عند العرض إلى المخزن المؤقت، فإن البروتوكول المقترح سيعمل على تحسين العمل مع برامج التشغيل استنادًا إلى واجهات برمجة تطبيقات الرسومات Vulkan وOpenGL (يعتمد التنفيذ على المعالجات الموجودة في برامج التشغيل). يتيح البروتوكول الجديد إمكانية التأكد من اكتمال عملية السحب إلى المخزن المؤقت قبل أن يعرض مدير التجميع هذا المخزن المؤقت.
  • معدل ألفا، والذي يسمح للعملاء بتغيير مستوى شفافية السطح وعمليات النقل لضمان الشفافية إلى جانب الخادم المركب، والذي بدوره يمكنه إعادة توجيه هذه العمليات إلى KMS.
  • xdg-toplevel-icon - يربط الرمز بنافذة المستوى الأعلى.
  • ext-image-capture-source وext-image-copy-capture - تنظيم التقاط المحتوى المعروض على الشاشة.
  • xdg-system-bell - يسمح لك بإخراج إشارة النظام، والتي يمكن استخدامها، على سبيل المثال، كتحذير في المحاكي الطرفي. يتم تحديد شكل إخراج الإشارة وفقًا لتقدير المدير المركب؛ ولا يمكن أن يكون صوتًا فحسب، بل استجابة مرئية.
  • fifo - يطبق آلية FIFO (الوارد أولاً يخرج أولاً) لمعالجة قائمة انتظار تحديث المحتوى للسطح المعروض. على الجانب العملي، يسمح البروتوكول للإخراج بالانتظار حتى يكتمل المسح الرأسي (vblank) بدلاً من استخدام مكالمات رد الاتصال في كل مرة يكون فيها جاهزًا لعرض إطار جديد، مما يحل مشكلة تحميل GPU العالي عند استخدام VSync.
  • توقيت الالتزام - يسمح لك بربط حد زمني لمحتوى السطح (يجب أن يعكس الخادم المركب تغيير المحتوى إن أمكن بعد الوقت المحدد، ولكن ليس قبل ذلك).
  • ext-data-control - يسمح للعملاء المميزين بالتحكم في معالجة البيانات، على سبيل المثال، تنفيذ مديري الحافظة.
  • ext-workspace - يطبق مفهوم أجهزة سطح المكتب الافتراضية ويقدم أحداثًا تحتوي على معلومات حول حالة أجهزة سطح المكتب، بالإضافة إلى إمكانيات تنشيط وإلغاء تنشيط أجهزة سطح المكتب. يمكن استخدام البروتوكول لإنشاء لوحات ومؤشرات تعرض قائمة بأجهزة سطح المكتب الافتراضية المتاحة وتسمح لك بالتبديل بينها.
  • إدارة الألوان — توفر إمكانيات لإدارة الألوان ودعم نطاق ديناميكي موسع من السطوع (HDR، النطاق الديناميكي العالي). باستخدام الامتداد المضاف، يمكن لتطبيقات العميل الحصول على معلومات حول خصائص الألوان المتعلقة بأجهزة الإخراج وتمرير البيانات حول خصائص الألوان المتعلقة بمحتواها الخاص إلى الخادم المركب. في الخادم المركب، يمكن استخدام هذه المعلومات لإدارة اللون تلقائيًا عند عرض المحتوى على أجهزة إخراج مختلفة، على سبيل المثال لتحويل المحتوى إلى عرض تقديمي مناسب للعرض على شاشات HDR. يتم استخدام ملفات تعريف ICC لوصف مساحات الألوان.
  • xdg-toplevel-tag — يسمح لعملاء Wayland بإرفاق علامات إلى الأسطح ذات المستوى الأعلى التي يمكن لخادم التجميع استخدامها لتحديد النوافذ بعد إعادة تشغيل التطبيق (على سبيل المثال، قد يقوم التطبيق بتعيين علامات "النافذة الرئيسية" و"الإعدادات" للنافذة الرئيسية ونافذة الإعدادات). يعد هذا التعريف مفيدًا لاستعادة موضع وحجم وخصائص النوافذ بعد إعادة التشغيل، ولتحديد قواعد خاصة لأنواع فردية من النوافذ.
  • تمثيل الألوان - يُحدد تمثيل ألوان سطح وايلاند. يمكن لعملاء وايلاند تمرير البيانات الوصفية اللازمة لتحديد الشفافية، ونموذج الألوان، والعينات الفرعية، ونطاق التكميم، ويُستخدم هذا عند تحويل مخزن مؤقت يحتوي على بيانات مطابقة لنموذج ألوان YCbCr إلى تمثيل RGB.
  • ext-background-effect - يطبق التأثيرات على الأجزاء شبه الشفافة من سطح Wayland، مثل ضبابية الخلفية.
  • pointer-warp - يسمح للتطبيق بنقل المؤشر على الفور إلى موضع محدد.
  • xdg-session-management — возможности для восстановления состояния и позиции окон прерванного сеанса, например, после аварийного завершения композитного сервера или приложения.

البروتوكولات التي يجري تطويرها في الفرع التجريبي:

  • xx-session-management - استعادة حالة النوافذ للجلسات المتقطعة (على سبيل المثال، بعد تعطل مدير مركب).
  • xx-input-method — يسمح للتطبيقات بتنفيذ طرق إدخال النصوص للخوادم المركبة وإنشاء النصوص المدخلة، والتي يمكن استخدامها، على سبيل المثال، لإنشاء لوحات مفاتيح افتراضية وطبقات IME (محرر طريقة الإدخال) لمعالجة الإدخال.
  • يسمح بروتوكول xx-text-input للخوادم المركبة بتنفيذ طرق الإدخال وإرسال النصوص إلى التطبيقات. ويعمل هذا البروتوكول على توحيد التفاعلات بين الخوادم المركبة والتطبيقات، ويتيح التحكم في ميزات مثل إرسال النصوص المدخلة، ومعالجة أحداث التركيز على الإدخال، ومراعاة خصائص حقول الإدخال (اللغة، وتحديد النص، ونوع المحتوى).
  • xx-cutouts — для получения информации о вырезах на экране (например, области под фронтальную камеру на экране смартфона).
  • xx-zones — для создания и добавления окон верхнего уровня в «зоны» — окружения со своим пространством координат. Протокол позволяет организовать логическую расстановку окон, в которой каждое окно размещается относительно другого окна.
  • xx-keyboard-filter — для перехвата клиентом выбранных событий клавиатуры, изменения событий ввода или блокирования передачи определённых событий в Wayland-поверхность, на которой установлен фокус ввода.

يجري تطوير البروتوكولات في الفرع "غير المستقر":

  • "ملء الشاشة شل" - التحكم في العمل في وضع ملء الشاشة.
  • "أسلوب الإدخال" - معالجة طرق الإدخال.
  • "منع الخمول" - منع إطلاق شاشة التوقف (شاشة التوقف).
  • "الإدخال - الطوابع الزمنية" - الطوابع الزمنية لأحداث الإدخال.
  • "keyboard-shortcuts-inhibit" - يتحكم في إرفاق اختصارات لوحة المفاتيح ومفاتيح الاختصار.
  • "linux-explicit-synchronization" خاص بـ Linux آلية لمزامنة المخازن المؤقتة بالنسبة للسطح.
  • "إيماءات المؤشر" - التحكم من شاشات اللمس.
  • "قيود المؤشر" - قيود المؤشر (الحظر).
  • "التحديد الأساسي" - بالقياس إلى X11 ، فإنه يوفر الحافظة الأساسية (التحديد الأساسي) ، ويتم عادةً إدخال المعلومات من خلال زر الماوس الأوسط.
  • "أحداث المؤشر النسبية" - أحداث المؤشر النسبية.
  • "إدخال النص" - تنظيم إدخال النص.
  • "xdg-foreign" هي واجهة للتفاعل مع أسطح عميل "مجاور".
  • "xdg-decoration" - عرض زخارف النوافذ على جانب الخادم.
  • "xdg-output" - معلومات إضافية حول إخراج الفيديو (يُستخدم في القياس الجزئي).
  • "xwayland-keyboard-grab" - التقاط المدخلات في تطبيقات XWayland.

المصدر: opennet.ru

شراء استضافة موثوقة للمواقع مع حماية DDoS وخوادم VPS VDS 🔥 اشترِ استضافة مواقع ويب موثوقة مع حماية من هجمات DDoS، وخوادم VPS وVDS | ProHoster