پروژه گنوم نسخه Libadwaita 1.3 را منتشر کرده است که شامل مجموعهای از مؤلفهها برای استایل رابط کاربری است که از GNOME HIG (دستورالعملهای رابط انسانی) پیروی میکند. این کتابخانه شامل ویجتها و اشیاء آماده برای ساخت برنامههای کاربردی است که با سبک کلی GNOME مطابقت دارند، که رابط آن را میتوان به صورت تطبیقی با صفحههای نمایش با هر اندازه تنظیم کرد. کد کتابخانه به زبان C نوشته شده است و تحت مجوز LGPL 2.1+ توزیع شده است.
کتابخانه libadwaita همراه با GTK4 استفاده میشود و شامل اجزای تم Adwaita است که در GNOME استفاده میشود، که از GTK به یک کتابخانه جداگانه منتقل شدهاند. انتقال عناصر استایل گنوم به یک کتابخانه مجزا باعث می شود تا تغییرات خاص گنوم به طور جداگانه از GTK ایجاد شوند، و به توسعه دهندگان GTK اجازه می دهد تا روی چیزهای اصلی تمرکز کنند و توسعه دهندگان گنوم سریعتر و انعطاف پذیرتر تغییرات استایل مورد نظر خود را بدون تأثیرگذاری بر خود GTK به پیش ببرند.
این کتابخانه شامل ویجتهای استانداردی است که عناصر رابط مختلف را پوشش میدهد، مانند لیستها، پانلها، بلوکهای ویرایش، دکمهها، برگهها، فرمهای جستجو، کادرهای گفتگو و غیره. ویجتهای پیشنهادی به شما امکان میدهند رابطهای جهانی ایجاد کنید که هم بر روی صفحهنمایشهای بزرگ رایانههای شخصی و لپتاپها و هم در صفحههای لمسی کوچک تلفنهای هوشمند بهطور یکپارچه عمل کنند. رابط برنامه به صورت پویا بسته به اندازه صفحه نمایش و دستگاه های ورودی موجود تغییر می کند. این کتابخانه همچنین شامل مجموعهای از سبکهای Adwaita است که بدون نیاز به تطبیق دستی، ظاهر را با دستورالعملهای GNOME مطابقت میدهد.
تغییرات عمده در libadwaita 1.3:
- ویجت AdwBanner را پیاده سازی کرد که می تواند به جای ویجت GTK GtkInfoBar برای نمایش پنجره های بنر حاوی عنوان و یک دکمه اختیاری استفاده شود. محتوای ویجت بسته به اندازه آن تغییر می کند، و انیمیشن را می توان در هنگام نمایش و پنهان کردن اعمال کرد.
- ویجت AdwTabOverview را اضافه کرد که برای نمای کلی بصری برگه ها یا صفحات نمایش داده شده با استفاده از کلاس AdwTabView طراحی شده است. ویجت جدید را می توان برای سازماندهی کار با برگه ها در دستگاه های تلفن همراه بدون ایجاد اجرای سوئیچ خود استفاده کرد.
- ویجت AdwTabButton را برای نمایش دکمههایی با اطلاعاتی درباره تعداد برگههای باز در AdwTabView اضافه کرد که میتوان از آن در دستگاه تلفن همراه برای باز کردن نمای برگه استفاده کرد.
- ویجتهای AdwViewStack، AdwTabView و AdwEntryRow اکنون از ویژگیهای دسترسی پشتیبانی میکنند.
- یک ویژگی به کلاس AdwAnimation اضافه شده است تا غیرفعال کردن انیمیشن در تنظیمات سیستم را نادیده بگیرد.
- کلاس AdwActionRow اکنون توانایی برجسته کردن زیرنویس ها را دارد.
- ویژگی های title-lines و subtitle-lines به کلاس AdwExpanderRow اضافه شده است.
- متد grab_focus_without_selecting() به کلاس AdwEntryRow مشابه GtkEntry اضافه شده است.
- متد async select() مشابه GtkAlertDialog به کلاس AdwMessageDialog اضافه شده است.
- فراخوانی های API مربوط به رابط drag-n-drop به کلاس AdwTabBar اضافه شده است.
- کلاس AdwAvatar مقیاس بندی صحیح تصویر را تضمین می کند.
- قابلیت استفاده از سبک تاریک و حالت کنتراست بالا هنگام کار بر روی پلتفرم ویندوز اضافه شده است.
- عناصر انتخاب شده از لیست ها و شبکه ها اکنون با رنگ مورد استفاده برای برجسته کردن عناصر فعال (لهجه) برجسته می شوند.
منبع: opennet.ru