Έκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOME

Το Έργο GNOME δημοσίευσε την πρώτη σταθερή έκδοση της βιβλιοθήκης Libadwaita, η οποία περιλαμβάνει ένα σύνολο στοιχείων για το στυλ της διεπαφής χρήστη που ακολουθεί το GNOME HIG (Οδηγίες ανθρώπινης διεπαφής). Η βιβλιοθήκη περιλαμβάνει έτοιμα widget και αντικείμενα για τη δημιουργία εφαρμογών που συμμορφώνονται με το γενικό στυλ GNOME, η διεπαφή των οποίων μπορεί να προσαρμοστεί προσαρμοστικά σε οθόνες οποιουδήποτε μεγέθους. Ο κώδικας της βιβλιοθήκης είναι γραμμένος σε C και διανέμεται με την άδεια LGPL 2.1+.

Έκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOME

Η βιβλιοθήκη libadwaita χρησιμοποιείται σε συνδυασμό με το GTK4 και περιλαμβάνει στοιχεία του θέματος Adwaita που χρησιμοποιούνται στο GNOME, τα οποία έχουν μετακινηθεί από το GTK σε ξεχωριστή βιβλιοθήκη. Ο κώδικας libadwaita βασίζεται στη βιβλιοθήκη libhandy και τοποθετείται ως διάδοχος αυτής της βιβλιοθήκης, η οποία δημιουργήθηκε αρχικά για τη δημιουργία μιας προσαρμοστικής διεπαφής σε κινητές πλατφόρμες βασισμένη στις τεχνολογίες GNOME και εξελίχθηκε στο περιβάλλον Phosh GNOME για το smartphone Librem 5.

Η βιβλιοθήκη περιλαμβάνει τυπικά γραφικά στοιχεία που καλύπτουν διάφορα στοιχεία διεπαφής, όπως λίστες, πίνακες, μπλοκ επεξεργασίας, κουμπιά, καρτέλες, φόρμες αναζήτησης, πλαίσια διαλόγου κ.λπ. Τα προτεινόμενα widget σάς επιτρέπουν να δημιουργείτε καθολικές διεπαφές που λειτουργούν απρόσκοπτα τόσο σε μεγάλες οθόνες υπολογιστών και φορητών υπολογιστών όσο και σε μικρές οθόνες αφής smartphone. Η διεπαφή της εφαρμογής αλλάζει δυναμικά ανάλογα με το μέγεθος της οθόνης και τις διαθέσιμες συσκευές εισόδου. Η βιβλιοθήκη περιλαμβάνει επίσης ένα σύνολο στυλ Adwaita που ευθυγραμμίζουν την εμφάνιση με τις οδηγίες του GNOME χωρίς να απαιτείται χειροκίνητη προσαρμογή.

Η μετακίνηση στοιχείων στυλ GNOME σε μια ξεχωριστή βιβλιοθήκη επιτρέπει την ανάπτυξη αλλαγών για το GNOME ξεχωριστά από το GTK, επιτρέποντας στους προγραμματιστές του GTK να επικεντρωθούν στο βασικό υλικό και στους προγραμματιστές του GNOME να προωθήσουν πιο γρήγορα και πιο ευέλικτα τις αλλαγές στυλ που θέλουν χωρίς να επηρεάζουν το ίδιο το GTK. Ωστόσο, αυτή η προσέγγιση δημιουργεί δυσκολίες στους προγραμματιστές τρίτων περιβαλλόντων χρηστών που βασίζονται σε GTK, οι οποίοι αναγκάζονται είτε να χρησιμοποιήσουν το libadwaita και να προσαρμοστούν στις δυνατότητες του GNOME και να αναπαράγουν τη σχεδίασή του, είτε να αναπτύξουν τη δική τους έκδοση της βιβλιοθήκης στυλ GTK και να αποδεχτούν το εμφάνιση ετερογενών εφαρμογών GNOME σε περιβάλλοντα που βασίζονται σε βιβλιοθήκες στυλ τρίτων.

Το κύριο παράπονο από τρίτους προγραμματιστές πλαισίου αφορά προβλήματα με την παράκαμψη των χρωμάτων των στοιχείων διεπαφής, αλλά οι προγραμματιστές του libadwaita εργάζονται για την παροχή ενός API για ευέλικτη διαχείριση χρωμάτων, το οποίο θα συμπεριληφθεί σε μελλοντική έκδοση. Μεταξύ των ανεπίλυτων προβλημάτων, αναφέρεται επίσης η σωστή λειτουργία των γραφικών στοιχείων ελέγχου χειρονομιών μόνο σε οθόνες αφής - για τα touchpad, η σωστή λειτουργία τέτοιων γραφικών στοιχείων θα διασφαλιστεί αργότερα, καθώς απαιτούν αλλαγές στο GTK.

Σημαντικές αλλαγές στο libadwaita σε σύγκριση με το libhandy:

  • Πλήρως επανασχεδιασμένο σύνολο στυλ. Το θέμα Adwaita που χρησιμοποιείται στο GNOME έχει αφαιρεθεί από το GTK και έχει εκσυγχρονιστεί και το παλιό θέμα έχει διορθωθεί στο GTK με το όνομα "Προεπιλογή". Μία από τις πιο αξιοσημείωτες διαφορές μεταξύ του libadwaita και του θέματος "Προεπιλογή" είναι η αλλαγή στη σχεδίαση των κεφαλίδων παραθύρων.
    Έκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOME
  • Οι μηχανισμοί σύνδεσης χρωμάτων σε στοιχεία και αλλαγής χρωμάτων κατά την εκτέλεση της εφαρμογής έχουν αλλάξει (τα προβλήματα οφείλονται στο γεγονός ότι το libadwaita άλλαξε σε SCSS, το οποίο απαιτεί ανακατασκευή για να αλλάξει τα χρώματα). Για την αλλαγή των χρωμάτων των στοιχείων, που απαιτείται για παράδειγμα στο GNOME Web για την επισήμανση της μετάβασης σε κατάσταση ανώνυμης περιήγησης, χρησιμοποιείται η μέθοδος που προτείνεται στο βασικό λειτουργικό σύστημα και βασίζεται στον καθορισμό μιας σταθερής λίστας ονομασμένων χρωμάτων μέσω του "@define-color". Ωστόσο, τα χρώματα πολλών στοιχείων διεπαφής υπολογίζονται πλέον σε σχέση με το βασικό χρώμα του κειμένου και αλλάζουν αυτόματα, γεγονός που δεν επιτρέπει στις εφαρμογές να ελέγχουν πλήρως τον συνδυασμό χρωμάτων (οι προγραμματιστές εργάζονται για την εξάλειψη αυτού του περιορισμού).
    Έκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOMEΈκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOME
  • Η ποιότητα της οθόνης έχει αυξηθεί κατά τη χρήση σκούρων θεμάτων λόγω της μεγαλύτερης αντίθεσης τονισμού των στοιχείων. Το χρώμα έμφασης έχει γίνει πιο φωτεινό και έχει προστεθεί ένα άλλο χρώμα τονισμού, το οποίο μπορεί να αλλάξει για σκούρα και ανοιχτά θέματα.
    Έκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOMEΈκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOME
  • Προστέθηκε ένα μεγάλο μέρος νέων τάξεων στυλ για χρήση σε εφαρμογές. Για παράδειγμα, ".pill" για μεγάλα στρογγυλεμένα κουμπιά, δυνατότητα χρήσης ".flat" στο GtkHeaderBar, ".accent" για τον καθορισμό χρώματος έμφασης στις ετικέτες, ".numeric" για τυπογραφία πίνακα, ".card" για χρήση φόντου και σκιά όπως σε λίστες.
    Έκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOME
  • Τα μεγάλα μονολιθικά αρχεία SCSS χωρίζονται σε μια συλλογή μικρότερων αρχείων στυλ.
  • Προστέθηκε API για ρύθμιση στυλ σκούρου σχεδιασμού και λειτουργίας υψηλής αντίθεσης.
    Έκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOME
  • Η τεκμηρίωση έχει επεξεργαστεί εκ νέου· η εργαλειοθήκη gi-docgen χρησιμοποιείται τώρα για τη δημιουργία της.
    Έκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOME
  • Προστέθηκε ένα API κινούμενων εικόνων, το οποίο μπορεί να χρησιμοποιηθεί για τη δημιουργία μεταβατικών εφέ κατά την αντικατάσταση μιας κατάστασης με μια άλλη, καθώς και για τη δημιουργία κινούμενων εαρινών.
    Έκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOME
  • Για καρτέλες που βασίζονται στο AdwViewSwitcher, έχει προστεθεί η δυνατότητα εμφάνισης ετικετών με τον αριθμό των ειδοποιήσεων που δεν έχουν προβληθεί.
    Έκδοση της βιβλιοθήκης Libadwaita 1.0 για τη δημιουργία διεπαφών τύπου GNOME
  • Προστέθηκε η κλάση AdwApplication (υποκατηγορία του GtkApplication) για αυτόματη προετοιμασία του Libadwaita και φόρτωση στυλ.
  • Προστέθηκε μια επιλογή γραφικών στοιχείων για την απλούστευση των τυπικών λειτουργιών: AdwWindowTitle για τη ρύθμιση του τίτλου του παραθύρου, AdwBin για απλοποίηση της δημιουργίας θυγατρικών υποκλάσεων, AdwSplitButton για συνδυασμένα κουμπιά, AdwButtonContent για κουμπιά με εικονίδιο και ετικέτα.
  • Το API καθαρίστηκε.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο