Repository navigation
·
17 commits
to quickshell
since this release
🚀 Release Notes / ملاحظات الإصدار (v1.10.0)
🇺🇸 English Version
✨ Key Improvements
-
⚡ Full Animation Pipeline & Scene Graph Overhaul
- Static Pre-blur Crossfade: Replaced per-frame fullscreen
MultiEffect.blurre-evaluations with a static blurred layer crossfade, cutting GPU fill-rate load drastically during menu toggles. - FBO & Layer Churn Cleanup: Eliminated redundant and bogus off-screen layers (
layer.enabled) across window containers and suppressed fullscreen4x MSAApasses on iGPU environments. - Transition Caching: Implemented dedicated flat-texture caching (
isAnimating) for sliding menus so complex component trees render once rather than repainting every single frame. - Dock & Navigation Optimizations: Converted dock layout-thrashing animations from
anchors.horizontalCenterOffsetto matrix-onlytransform: Translate, and eliminated redundantscaletransforms across menu page transitions.
- Static Pre-blur Crossfade: Replaced per-frame fullscreen
-
🖥️ Smart Multi-Monitor Scoping & IPC Decoupling
- Focused Monitor Isolation: Menu open events and desktop background effects (blur, translation, dimming) are now strictly scoped to the active monitor (
isFocusedMonitor), keeping secondary displays completely static and eliminating PCIe bandwidth saturation. - Compositor IPC Sequencing: Delayed
hyprctl gaps_outmodifications by340mson menu open to prevent window-relayout storms from colliding with the QML slide-in animation. - Redundant Call Guarding: Added in-session debouncing and sentinels to drop duplicate IPC invocations to Hyprland.
- Focused Monitor Isolation: Menu open events and desktop background effects (blur, translation, dimming) are now strictly scoped to the active monitor (
-
🔔 OSD Notifications Optimization
- Decoupled
MultiEffectshadows into a dedicatedshadowSilhouette(z: -1,visible: true), stopping continuous 4-second progress bar updates from invalidating the shadow layer on each frame. - Tuned and bounded notification stack physics (
SpringAnimation) to eliminate lingering sub-pixel jitter.
- Decoupled
🇾🇪 النسخة العربية
✨ أبرز التحسينات
-
⚡ إعادة هيكلة شاملة لمحرك الرسوميات والأنيميشن
- تلاشي البلور الثابت (Static Pre-blur Crossfade): إيقاف حساب بلور الشاشة الكاملة إطاراً بإطار واستبداله بطبقة بلور ثابتة مسبقة المعالجة تتلاشى بسلاسة، مما خفف العبء الرسومي على كرت الشاشة (GPU Fill-rate) بشكل جذري أثناء فتح القوائم.
- تنظيف طبقات التصيير الوهمية (FBO Cleanup): التخلص من الـ
layer.enabledالزائدة في الحاويات وحذف عينات التنعيم المفرطة (MSAA 4x) لتسريع المعالجة على الكروت المدمجة (iGPU). - تفعيل الكاش أثناء الحركة (Transition Caching): تحويل القوائم المتحركة إلى نسيج مسطح (Flat Texture) يُرسم مرة واحدة أثناء الانزلاق بدلاً من إعادة رسم العناصر الحية في كل إطار.
- تسريع شريط المهام والتنقل: تحويل حركة إزاحة الـ Dock من حسابات الـ
Anchorsالمرهقة للمعالج إلى نقل مباشر بالمصفوفات (Translate)، مع إزالة الـscaleالمزدوج من صفحات القوائم.
-
🖥️ حصر التأثيرات على الشاشة النشطة وعزل استدعاءات الكومبوزيتر
- عزل الشاشات المتعددة (Multi-Monitor Scoping): حصر تأثيرات فتح القائمة (البلور، الإزاحة، والتعتيم) على الشاشة التي يتواجد فيها الماوس فقط (
isFocusedMonitor)، مما أبقى الشاشات الثانوية ساكنة تماماً وقضى على اختناق ممر الـ PCIe وتعارض الترددات (120Hz مقابل 72Hz). - تأخير تغيير فجوات النوافذ (IPC Sequencing): جدولة تغيير فجوات Hyprland (
gaps_out) بعد انتهاء انزلاق القائمة بـ340msلتفادي تصادم تحريك نوافذ النظام مع فريمات القائمة في اللحظة ذاتها. - حارس الأوامر المكررة: إضافة حواجز فحص (Sentinels & Debounce) لمنع إرسال أوامر
hyprctlمتكررة بدون تغيير حقيقي في الحالة.
- عزل الشاشات المتعددة (Multi-Monitor Scoping): حصر تأثيرات فتح القائمة (البلور، الإزاحة، والتعتيم) على الشاشة التي يتواجد فيها الماوس فقط (
-
🔔 تحسين كفاءة إشعارات الشاشة (OSD)
- فصل طبقة الظل في عنصر مخصص (
shadowSilhouette) بـz: -1وvisible: true، مما منع شريط التقدم (4 ثوانٍ) من إعادة تصيير الظل في كل إطار. - ضبط فيزياء ارتداد قائمة الإشعارات (
SpringAnimation) لتهدأ حركة الكروت بسرعة وتتوقف عن استهلاك المعالجة الدقيقة.
- فصل طبقة الظل في عنصر مخصص (