GNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishi

GNOME loyihasi Libadwaita kutubxonasining birinchi barqaror versiyasini nashr etdi, u GNOME HIG (Inson interfeysi bo'yicha ko'rsatmalar) ga amal qiladigan foydalanuvchi interfeysi uslublari uchun komponentlar to'plamini o'z ichiga oladi. Kutubxona umumiy GNOME uslubiga mos keladigan ilovalarni yaratish uchun tayyor vidjetlar va ob'ektlarni o'z ichiga oladi, ularning interfeysi har qanday o'lchamdagi ekranlarga moslashtiriladi. Kutubxona kodi C tilida yozilgan va LGPL 2.1+ litsenziyasi ostida tarqatiladi.

GNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishi

Libadwaita kutubxonasi GTK4 bilan birgalikda ishlatiladi va GNOME-da ishlatiladigan Adwaita mavzusining tarkibiy qismlarini o'z ichiga oladi, ular GTK-dan alohida kutubxonaga ko'chirilgan. Libadwaita kodi libhandy kutubxonasiga asoslangan va dastlab GNOME texnologiyalari asosida mobil platformalarda moslashuvchan interfeys yaratish uchun yaratilgan va Librem 5 smartfoni uchun Phosh GNOME muhitida sayqallangan ushbu kutubxonaning davomchisi sifatida joylashtirilgan.

Kutubxona ro'yxatlar, panellar, tahrirlash bloklari, tugmalar, yorliqlar, qidiruv shakllari, dialog oynalari va boshqalar kabi turli xil interfeys elementlarini o'z ichiga olgan standart vidjetlarni o'z ichiga oladi. Taklif etilayotgan vidjetlar katta kompyuter va noutbuk ekranlarida ham, smartfonlarning kichik sensorli ekranlarida ham muammosiz ishlaydigan universal interfeyslarni yaratishga imkon beradi. Ilova interfeysi ekran o'lchamiga va mavjud kiritish qurilmalariga qarab dinamik ravishda o'zgaradi. Kutubxona, shuningdek, qo'lda moslashtirmasdan ko'rinishni GNOME ko'rsatmalariga moslashtiradigan Adwaita uslublari to'plamini o'z ichiga oladi.

GNOME uslubi elementlarini alohida kutubxonaga ko‘chirish GNOME-ga xos o‘zgarishlarni GTK-dan alohida ishlab chiqish imkonini beradi, bu esa GTK ishlab chiquvchilariga asosiy narsalarga e’tibor qaratishga va GNOME ishlab chiquvchilariga GTKning o‘ziga ta’sir qilmasdan xohlagan uslub o‘zgarishlarini tezroq va moslashuvchan tarzda oldinga surishga imkon beradi. Biroq, bu yondashuv libadwaita-dan foydalanishga va GNOME xususiyatlariga moslashishga va uning dizaynini ko'paytirishga yoki GTK uslubi kutubxonasining o'z versiyasini ishlab chiqishga majbur bo'lgan uchinchi tomon GTK-ga asoslangan foydalanuvchi muhitlarini ishlab chiquvchilar uchun qiyinchiliklar tug'diradi. GNOME ilovalarining tashqi ko'rinishi uchinchi tomon uslubi kutubxonalariga asoslangan muhitda heterojen.

Uchinchi tomon ramka ishlab chiqaruvchilarining asosiy shikoyati interfeys elementlarining ranglarini bekor qilish bilan bog'liq muammolar bilan bog'liq, ammo libadwaita ishlab chiquvchilari moslashuvchan ranglarni boshqarish uchun API taqdim etish ustida ishlamoqda, bu esa kelajakdagi nashrga kiritiladi. Yechilmagan muammolar orasida imo-ishoralarni boshqarish vidjetlarining faqat sensorli ekranlarda to‘g‘ri ishlashi ham qayd etilgan – sensorli panellar uchun bunday vidjetlarning to‘g‘ri ishlashi keyinchalik ta’minlanadi, chunki ular GTK ga o‘zgartirishlar kiritishni talab qiladi.

Libadvaytadagi libhandy bilan solishtirganda katta o'zgarishlar:

  • To'liq qayta ishlangan uslublar to'plami. GNOME-da ishlatiladigan Adwaita mavzusi GTK-dan olib tashlandi va modernizatsiya qilindi va eski mavzu GTK-da "Standart" nomi bilan o'rnatildi. Libadwaita va "Standart" mavzusi o'rtasidagi eng sezilarli farqlardan biri bu oyna sarlavhalari dizaynidagi o'zgarishdir.
    GNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishi
  • Ilova ishlayotgan vaqtda elementlarga ranglarni bog'lash va ranglarni o'zgartirish mexanizmlari o'zgartirildi (muammolar libadwaita ranglarini o'zgartirish uchun qayta qurishni talab qiluvchi SCSS ga o'tganligi bilan bog'liq). Elementlarning ranglarini o'zgartirish uchun, masalan, GNOME Web-da inkognito rejimiga o'tishni belgilash uchun talab qilinadi, elementar OTda tavsiya etilgan usul qo'llaniladi va "@define-color" orqali belgilangan ranglar ro'yxatini belgilashga asoslangan. Biroq, ko'plab interfeys elementlarining ranglari endi asosiy matn rangiga nisbatan hisoblab chiqiladi va avtomatik ravishda o'zgaradi, bu esa ilovalarga ranglar sxemasini to'liq nazorat qilish imkonini bermaydi (ishlab chiquvchilar ushbu cheklovni bartaraf etish ustida ishlamoqda).
    GNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishiGNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishi
  • Elementlarning ko'proq kontrastli ta'kidlashi tufayli qorong'u mavzulardan foydalanganda displey sifati oshirildi. Urg'u rangi yanada yorqinroq bo'lib, quyuq va ochiq mavzular uchun o'zgarishi mumkin bo'lgan yana bir yorqin rang qo'shildi.
    GNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishiGNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishi
  • Ilovalarda foydalanish uchun yangi uslublar sinflarining katta qismi qo'shildi. Masalan, katta yumaloq tugmalar uchun ".pill", GtkHeaderBar da ".flat" dan foydalanish imkoniyati, teglarda urg'u rangini o'rnatish uchun ".accent", jadval tipografiyasi uchun ".numeric", fondan foydalanish uchun ".card" va ro'yxatlardagi kabi soya qiling.
    GNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishi
  • Katta monolit SCSS fayllari kichikroq uslubdagi fayllar to'plamiga bo'lingan.
  • Qorong'i dizayn uslubi va yuqori kontrast rejimini o'rnatish uchun API qo'shildi.
    GNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishi
  • Hujjatlar qayta ishlandi; endi uni yaratish uchun gi-docgen asboblar to'plamidan foydalanilmoqda.
    GNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishi
  • Animatsiya API qo‘shildi, undan bir holatni boshqasiga almashtirishda o‘tish effektlarini yaratish, shuningdek, bahor animatsiyasini yaratish uchun foydalanish mumkin.
    GNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishi
  • AdwViewSwitcher-ga asoslangan yorliqlarga ko'rilmagan bildirishnomalar soni bilan teglarni ko'rsatish imkoniyati qo'shildi.
    GNOME uslubidagi interfeyslarni yaratish uchun Libadwaita 1.0 kutubxonasining chiqarilishi
  • Libadwaita-ni avtomatik ravishda ishga tushirish va uslublarni yuklash uchun AdwApplication klassi (GtkApplication quyi klassi) qo'shildi.
  • Standart operatsiyalarni soddalashtirish uchun vidjetlar tanlovi qo‘shildi: oyna sarlavhasini o‘rnatish uchun AdwWindowTitle, kichik kichik sinflarni yaratishni soddalashtirish uchun AdwBin, birlashtirilgan tugmalar uchun AdwSplitButton, belgi va yorliqli tugmalar uchun AdwButtonContent.
  • API tozalandi.

Manba: opennet.ru

a Izoh qo'shish