diff options
-rw-r--r-- | AUTHORS | 1 | ||||
-rw-r--r-- | ChangeLog | 34 | ||||
-rw-r--r-- | NEWS | 15 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | data/arctica-greeter-check-hidpi.1 | 2 | ||||
-rw-r--r-- | data/arctica-greeter-enable-tap-to-click.1 | 2 | ||||
-rw-r--r-- | data/arctica-greeter-guest-account-script.8 | 2 | ||||
-rw-r--r-- | data/arctica-greeter-magnifier.1 | 2 | ||||
-rw-r--r-- | data/arctica-greeter-set-keyboard-layout.1 | 2 | ||||
-rw-r--r-- | data/arctica-greeter.1 | 2 | ||||
-rw-r--r-- | data/org.ArcticaProject.arctica-greeter.gschema.xml | 12 | ||||
-rw-r--r-- | debian/changelog | 14 | ||||
-rw-r--r-- | po/el.po | 142 | ||||
-rw-r--r-- | po/ta.po | 18 | ||||
-rw-r--r-- | src/main-window.vala | 40 | ||||
-rw-r--r-- | src/menubar.vala | 219 | ||||
-rw-r--r-- | src/prompt-box.vala | 75 | ||||
-rw-r--r-- | src/settings.vala | 2 |
18 files changed, 325 insertions, 261 deletions
@@ -48,6 +48,7 @@ Garreciq Gaurav Kumar Gayathri Das Geoff Paul +GiannosOB Giorgio Berardi Guntitat Sawadwuthikul Gvlfm78 @@ -1,6 +1,38 @@ +2025-04-30 Mike Gabriel + + * Release 0.99.9.0 (HEAD -> master, tag: 0.99.9.0) + * src/menubar.vala: Also apply menubar-bgcolor to menubar's shadow + style. (01b31d5) + * src/menubar.vala: Set LC_NUMERIC to C.UTF-8 more globally. + (17ab293) + * Merge branch 'tari01-pr/error-below-entry' (e6d5a9c) + +2025-04-28 Robert Tari + + * Fix and future-proof the menubar (e221a64) + * Allow error label to be displayed below the login entry (652c4d7) + +2025-04-28 Mike Gabriel + + * Release 0.99.8.11 (c6e0758) (tag: 0.99.8.11) + * Merge branch 'tari01-pr/message-wrap' (ca471e8) + +2025-04-27 Robert Tari + + * Rewrite Gtk.Alignment (0e7e568) + * src/prompt-box.vala: Add manual text wrapping (ead00fb) + +2025-04-24 தமிழ்நேரம் + + * Translated using Weblate (Tamil) (bb6492c) + +2025-04-24 GiannosOB + + * Translated using Weblate (Greek) (ef40d14) + 2025-04-24 Mike Gabriel - * Release 0.99.8.10 (HEAD -> master, tag: 0.99.8.10) + * Release 0.99.8.10 (43a3900) (tag: 0.99.8.10) 2025-04-22 Mike Gabriel @@ -1,3 +1,18 @@ +Overview of changes in arctica-greeter 0.99.9.0 + + - Allow error label to be displayed below the login entry. + - Fix and future-proof the menubar. + - src/menubar.vala: Also apply menubar-bgcolor to menubar's shadow + style. + - src/menubar.vala: Set LC_NUMERIC to C.UTF-8 more globally. + +Overview of changes in arctica-greeter 0.99.8.11 + + - Rewrite Gtk.Alignment. + - src/prompt-box.vala: Add manual text wrapping. + - Translation updates (thanks to all contributors on + hosted.weblate.org). + Overview of changes in arctica-greeter 0.99.8.10 - src/settings.vala: Drop unused safe_get_boolean. diff --git a/configure.ac b/configure.ac index 45bd24b..b76673f 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT(arctica-greeter, 0.99.8.10) +AC_INIT(arctica-greeter, 0.99.9.0) AC_CONFIG_MACRO_DIR(m4) AM_INIT_AUTOMAKE(subdir-objects) AM_PROG_CC_C_O diff --git a/data/arctica-greeter-check-hidpi.1 b/data/arctica-greeter-check-hidpi.1 index fbd6c8e..b595038 100644 --- a/data/arctica-greeter-check-hidpi.1 +++ b/data/arctica-greeter-check-hidpi.1 @@ -1,4 +1,4 @@ -.TH ARCTICA-GREETER 1 "Apr 2025" "Version 0.99.8.10" "LightDM Greeter" +.TH ARCTICA-GREETER 1 "Apr 2025" "Version 0.99.9.0" "LightDM Greeter" .SH NAME arctica-greeter-check-hidpi \- Check for HiDPI display in Arctica Greeter .SH SYNOPSIS diff --git a/data/arctica-greeter-enable-tap-to-click.1 b/data/arctica-greeter-enable-tap-to-click.1 index fb9dbb0..aeb82eb 100644 --- a/data/arctica-greeter-enable-tap-to-click.1 +++ b/data/arctica-greeter-enable-tap-to-click.1 @@ -1,4 +1,4 @@ -.TH ARCTICA-GREETER 1 "Apr 2025" "Version 0.99.8.10" "LightDM Greeter" +.TH ARCTICA-GREETER 1 "Apr 2025" "Version 0.99.9.0" "LightDM Greeter" .SH NAME arctica-greeter-enable-tap-to-click \- Enable tap-to-click in Arctica Greeter .SH SYNOPSIS diff --git a/data/arctica-greeter-guest-account-script.8 b/data/arctica-greeter-guest-account-script.8 index 48361ce..e0aa4af 100644 --- a/data/arctica-greeter-guest-account-script.8 +++ b/data/arctica-greeter-guest-account-script.8 @@ -1,4 +1,4 @@ -.TH ARCTICA-GREETER 8 "Apr 2025" "Version 0.99.8.10" "LightDM Greeter" +.TH ARCTICA-GREETER 8 "Apr 2025" "Version 0.99.9.0" "LightDM Greeter" .SH NAME arctica-greeter-guest-account-script \- Create temp user for an Arctica Greeter's Guest Session .SH SYNOPSIS diff --git a/data/arctica-greeter-magnifier.1 b/data/arctica-greeter-magnifier.1 index b0b4f59..3a57e9c 100644 --- a/data/arctica-greeter-magnifier.1 +++ b/data/arctica-greeter-magnifier.1 @@ -1,4 +1,4 @@ -.TH ARCTICA-GREETER 1 "Apr 2025" "Version 0.99.8.10" "LightDM Greeter" +.TH ARCTICA-GREETER 1 "Apr 2025" "Version 0.99.9.0" "LightDM Greeter" .SH NAME arctica-greeter-magnifier \- Magnifying glass for Arctica Greeter .SH SYNOPSIS diff --git a/data/arctica-greeter-set-keyboard-layout.1 b/data/arctica-greeter-set-keyboard-layout.1 index 9267346..cf16b74 100644 --- a/data/arctica-greeter-set-keyboard-layout.1 +++ b/data/arctica-greeter-set-keyboard-layout.1 @@ -1,4 +1,4 @@ -.TH ARCTICA-GREETER 1 "Apr 2025" "Version 0.99.8.10" "LightDM Greeter" +.TH ARCTICA-GREETER 1 "Apr 2025" "Version 0.99.9.0" "LightDM Greeter" .SH NAME arctica-greeter-set-keyboard-layout \- Tool to set the keyboard layout in Arctica Greeter .SH SYNOPSIS diff --git a/data/arctica-greeter.1 b/data/arctica-greeter.1 index 2373b95..3ee2577 100644 --- a/data/arctica-greeter.1 +++ b/data/arctica-greeter.1 @@ -1,4 +1,4 @@ -.TH ARCTICA-GREETER 1 "Apr 2025" "Version 0.99.8.10" "LightDM Greeter" +.TH ARCTICA-GREETER 1 "Apr 2025" "Version 0.99.9.0" "LightDM Greeter" .SH NAME arctica-greeter \- LightDM greeter for the modern desktop .SH SYNOPSIS diff --git a/data/org.ArcticaProject.arctica-greeter.gschema.xml b/data/org.ArcticaProject.arctica-greeter.gschema.xml index 38be872..03e3bce 100644 --- a/data/org.ArcticaProject.arctica-greeter.gschema.xml +++ b/data/org.ArcticaProject.arctica-greeter.gschema.xml @@ -227,8 +227,8 @@ <summary>Scaling factor for fonts that can be used to adjust the greeter's font sizes.</summary> </key> <key name="menubar-alpha" type="d"> - <default>0.5</default> - <summary>Alpha value for menubar, multiplied with the theme-provided transparency value. Not used in high contrast mode.</summary> + <default>0.2</default> + <summary>Alpha value for menubar. Not used in high contrast mode.</summary> </key> <key name="remote-service-configure-uri" type="s"> <default>''</default> @@ -335,5 +335,13 @@ <default>1</default> <summary>The vertical offset of the logo from the edge of the screen in grid units.</summary> </key> + <key name="error-below-entry" type="b"> + <default>false</default> + <summary>Whether to display the error label below the login entry.</summary> + </key> + <key name="menubar-bgcolor" type="s"> + <default>'#000000'</default> + <summary>The background color of the menubar in #RRGGBB format.</summary> + </key> </schema> </schemalist> diff --git a/debian/changelog b/debian/changelog index 9f9a509..60a25d9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,17 @@ +arctica-greeter (0.99.9.0) unstable; urgency=medium + + * Upstream-provided Debian package for arctica-greeter. See upstream + ChangeLog for recent changes. + + -- UBports developers <developers@ubports.com> Wed, 30 Apr 2025 15:45:50 +0200 + +arctica-greeter (0.99.8.11) unstable; urgency=medium + + * Upstream-provided Debian package for arctica-greeter. See upstream + ChangeLog for recent changes. + + -- UBports developers <developers@ubports.com> Mon, 28 Apr 2025 09:41:20 +0200 + arctica-greeter (0.99.8.10) unstable; urgency=medium * Upstream-provided Debian package for arctica-greeter. See upstream @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: arctica-greeter\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-10-12 22:13+0200\n" -"PO-Revision-Date: 2021-02-09 16:50+0000\n" -"Last-Translator: Michalis <michalisntovas@yahoo.gr>\n" +"PO-Revision-Date: 2025-04-24 14:06+0000\n" +"Last-Translator: GiannosOB <giannos2105@gmail.com>\n" "Language-Team: Greek <https://hosted.weblate.org/projects/arctica-framework/" "greeter/el/>\n" "Language: el\n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.5-dev\n" +"X-Generator: Weblate 5.11.1-dev\n" "X-Launchpad-Export-Date: 2015-08-05 05:27+0000\n" #: ../src/greeter-list.vala:306 @@ -27,7 +27,7 @@ msgstr "Εισάγετε κωδικό για %s" #: ../src/greeter-list.vala:308 msgid "Enter your username" -msgstr "" +msgstr "Εισάγετε το όνομα χρήστη σας" #: ../src/greeter-list.vala:837 ../src/user-list.vala:761 msgid "Password:" @@ -38,9 +38,8 @@ msgid "Username:" msgstr "Όνομα χρήστη:" #: ../src/greeter-list.vala:906 -#, fuzzy msgid "Invalid username or password, please try again" -msgstr "Λανθασμένος κωδικός, παρακαλώ δοκιμάστε ξανά" +msgstr "Μη έγκυρο όνομα χρήστη ή κωδικός πρόσβασης, δοκιμάστε ξανά" #: ../src/greeter-list.vala:917 msgid "Failed to authenticate" @@ -105,14 +104,17 @@ msgstr "Επανεκκίνηση" #. Fun begins here, actually trigger option. #: ../src/shutdown-dialog.vala:297 msgid "Executing selected action now." -msgstr "" +msgstr "Εκτέλεση της επιλεγμένης ενέργειας τώρα." #: ../src/shutdown-dialog.vala:331 #, c-format msgid "Waiting one more second before executing selected action …" msgid_plural "Waiting %u seconds before executing selected action …" msgstr[0] "" +"Αναμονή ενός ακόμη δευτερολέπτου πριν από την εκτέλεση της επιλεγμένης " +"ενέργειας …" msgstr[1] "" +"Αναμονή %u δευτερολέπτων πριν από την εκτέλεση της επιλεγμένης ενέργειας …" #. Translators: %s is a session name like KDE or Ubuntu #: ../src/toggle-box.vala:205 @@ -134,6 +136,8 @@ msgstr "Εκτέλεση σε λειτουργία δοκιμής" #: ../src/arctica-greeter.vala:1000 msgid "Run in test mode with a11y highcontrast theme enabled" msgstr "" +"Εκτέλεση σε δοκιμαστική λειτουργία με ενεργοποιημένο το θέμα υψηλής " +"αντίθεσης a11y" #. Arguments and description for --help text #: ../src/arctica-greeter.vala:1006 @@ -184,8 +188,8 @@ msgid "" "You need a Remote Logon account to use this service. Would you like to set " "up an account now?" msgstr "" -"Χρειάζεστε ένα λογαριασμό Απομακρυσμένης σύνδεσης για να χρησιμοποιήσετε " -"αυτή την υπηρεσία. Θα θέλατε να δημιουργήσετε ένα λογαριασμό τώρα;" +"Χρειάζεστε έναν λογαριασμό απομακρυσμένης σύνδεσης για να χρησιμοποιήσετε " +"αυτή την υπηρεσία. Θα θέλατε να δημιουργήσετε έναν λογαριασμό τώρα;" #: ../src/user-list.vala:613 msgid "OK" @@ -273,8 +277,8 @@ msgid "" "Another alternative is to save files in the\n" "/var/guest-data folder." msgstr "" -"Μία εναλλακτική λύση είναι να αποθηκεύσετε τα αρχεία στον φάκελο /var/guest-" -"data." +"Μια άλλη εναλλακτική λύση είναι να αποθηκεύετε αρχεία στο\n" +"/var/guest-data." #: ../data/arctica-greeter.desktop.in.h:1 msgid "Arctica Greeter" @@ -284,260 +288,315 @@ msgstr "Arctica Greeter" msgid "" "Background image file to use, either an image path or a color (e.g. #772953)." msgstr "" +"Αρχείο εικόνας φόντου που θέλετε να χρησιμοποιήσετε, είτε μια διαδρομή " +"εικόνας είτε ένα χρώμα (π.χ. #772953)." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:2 msgid "Background color (e.g. #772953), set before wallpaper is seen." msgstr "" +"Χρώμα φόντου (π.χ. #772953), που ορίζεται πριν από την εμφάνιση της " +"ταπετσαρίας." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:3 msgid "Background color (e.g. #000000 or #FFFFFF) for high contrast mode." -msgstr "" +msgstr "Χρώμα φόντου (π.χ. #000000 ή #FFFFFF) για λειτουργία υψηλής αντίθεσης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:4 msgid "" "Font foreground color (e.g. #A0A0A0) for non-active/-hovered and non-" "selected session names in the session list." msgstr "" +"Χρώμα προσκηνίου γραμματοσειράς (π.χ. #A0A0A0) για τα ονόματα μη ενεργών/" +"υπερυψωμένων και μη επιλεγμένων συνόδων στη λίστα συνόδων." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:5 msgid "" "Font foreground color (e.g. #A0A0A0) for the active/hovered-above session " "name in the session list." msgstr "" +"Χρώμα προσκηνίου γραμματοσειράς (π.χ. #A0A0A0) για το όνομα της ενεργής/" +"υπέρτατης συνεδρίας στη λίστα συνεδριών." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:6 msgid "" "Font foreground color (e.g. #A0A0A0) for the selected session name in the " "session list." msgstr "" +"Χρώμα προσκηνίου γραμματοσειράς (π.χ. #A0A0A0) για το επιλεγμένο όνομα " +"συνεδρίας στη λίστα συνεδριών." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:7 msgid "" "Background color (e.g. #391C31) for non-active/-hovered and non-selected " "session names in the session list." msgstr "" +"Χρώμα φόντου (π.χ. #391C31) για τα ονόματα μη ενεργών/υπερυψωμένων και μη " +"επιλεγμένων συνόδων στη λίστα συνόδων." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:8 msgid "" "Background color (e.g. #391C31) for the active/hovered-above session name in " "the session list." msgstr "" +"Χρώμα φόντου (π.χ. #391C31) για το όνομα της ενεργής/υπέρτατης συνεδρίας στη " +"λίστα συνεδριών." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:9 msgid "" "Background color (e.g. #391C31) for the selected session name in the session " "list." msgstr "" +"Χρώμα φόντου (π.χ. #391C31) για το επιλεγμένο όνομα συνεδρίας στη λίστα " +"συνεδριών." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:10 msgid "" "Border color (e.g. #391C31) for non-active/-hovered and non-selected session " "names in the session list." msgstr "" +"Χρώμα περιθωρίου (π.χ. #391C31) για τα ονόματα μη ενεργών/υπερυψωμένων και " +"μη επιλεγμένων συνόδων στη λίστα συνόδων." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:11 msgid "" "Border color (e.g. #391C31) for the active/hovered-above session name in the " "session list." msgstr "" +"Χρώμα περιθωρίου (π.χ. #391C31) για το ενεργό/υπέρτατο όνομα συνεδρίας στη " +"λίστα συνεδριών." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:12 msgid "" "Border color (e.g. #391C31) for the selected session name in the session " "list." msgstr "" +"Χρώμα περιθωρίου (π.χ. #391C31) για το επιλεγμένο όνομα συνεδρίας στη λίστα " +"συνεδριών." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:13 msgid "" "Background color (e.g. #391C31) of flat buttons (e.g. the session chooser " "icon)." msgstr "" +"Χρώμα φόντου (π.χ. #391C31) των επίπεδων κουμπιών (π.χ. το εικονίδιο " +"επιλογής συνεδρίας)." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:14 msgid "" "Border color (e.g. #391C31) of flat buttons (e.g. the session chooser icon)." msgstr "" +"Χρώμα περιγράμματος (π.χ. #391C31) των επίπεδων κουμπιών (π.χ. το εικονίδιο " +"επιλογής συνεδρίας)." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:15 msgid "Determines how the background image is rendered." -msgstr "" +msgstr "Καθορίζει τον τρόπο απόδοσης της εικόνας φόντου." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:16 msgid "Whether to draw user backgrounds." -msgstr "" +msgstr "Αν θα σχεδιάζονται φόντα χρηστών." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:17 msgid "Whether to draw an overlay grid." -msgstr "" +msgstr "Εάν θέλετε να σχεδιάσετε ένα πλέγμα επικάλυψης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:18 msgid "Whether to show the hostname in the menubar." -msgstr "" +msgstr "Εάν θα εμφανίζεται το όνομα κεντρικού υπολογιστή στη γραμμή μενού." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:19 msgid "" "Whether to show 'Username:' and 'Password:' labels (etc.) in the login box." msgstr "" +"Αν θα εμφανίζονται οι ετικέτες 'Όνομα χρήστη:' και 'Κωδικός πρόσβασης:' " +"(κ.λπ.) στο πλαίσιο σύνδεσης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:20 msgid "Logo file to use." -msgstr "" +msgstr "Αρχείο λογότυπου προς χρήση." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:21 msgid "Alpha value for blending the logo onto the background." -msgstr "" +msgstr "Τιμή άλφα για την ανάμειξη του λογότυπου στο φόντο." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:22 msgid "GTK+ theme to use." -msgstr "" +msgstr "Θέμα GTK+ για χρήση." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:23 msgid "GTK+ theme to use in high contrast mode." -msgstr "" +msgstr "Θέμα GTK+ για χρήση σε λειτουργία υψηλής αντίθεσης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:24 msgid "Icon theme to use." -msgstr "" +msgstr "Θέμα εικονιδίων για χρήση." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:25 msgid "Icon theme to use in high contrast mode." -msgstr "" +msgstr "Θέμα εικονιδίων για χρήση σε λειτουργία υψηλής αντίθεσης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:26 msgid "Cursor theme to use." -msgstr "" +msgstr "Θέμα δρομέα για χρήση." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:27 msgid "Size to use for cursors." -msgstr "" +msgstr "Μέγεθος που χρησιμοποιείται για τους δρομείς." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:28 msgid "Font to use." -msgstr "" +msgstr "Γραμματοσειρά προς χρήση." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:29 msgid "Whether to antialias Xft fonts." -msgstr "" +msgstr "Αν θέλετε να κάνετε antialias στις γραμματοσειρές Xft." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:30 msgid "Resolution for Xft in dots per inch." -msgstr "" +msgstr "Ανάλυση για το Xft σε κουκκίδες ανά ίντσα." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:31 msgid "What degree of hinting to use." -msgstr "" +msgstr "Ποιος βαθμός υπαινιγμού πρέπει να χρησιμοποιηθεί." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:32 msgid "Type of subpixel antialiasing." -msgstr "" +msgstr "Τύπος αντιδιαστολής υποεικονοστοιχείων." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:33 msgid "Whether to enable the onscreen keyboard." -msgstr "" +msgstr "Ενεργοποίηση του πληκτρολογίου οθόνης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:34 msgid "Whether to use a high contrast theme." -msgstr "" +msgstr "Αν θα χρησιμοποιήσετε ένα θέμα υψηλής αντίθεσης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:35 msgid "Whether to enable the screen reader." -msgstr "" +msgstr "Εάν θέλετε να ενεργοποιήσετε το πρόγραμμα ανάγνωσης οθόνης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:36 msgid "Whether to play sound when greeter is ready." -msgstr "" +msgstr "Αν θα αναπαράγεται ήχος όταν ο χαιρετιστής είναι έτοιμος." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:37 msgid "Which indicators to load." -msgstr "" +msgstr "Ποιους δείκτες να φορτώσετε." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:38 msgid "" "List of usernames that are hidden until a special key combination is hit." msgstr "" +"Λίστα με ονόματα χρηστών που είναι κρυμμένα μέχρι να πατηθεί ένας ειδικός " +"συνδυασμός πλήκτρων." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:39 msgid "" "List of groups that users must be part of to be shown (empty list shows all " "users)." msgstr "" +"Λίστα των ομάδων στις οποίες πρέπει να ανήκουν οι χρήστες για να " +"εμφανίζονται (η κενή λίστα εμφανίζει όλους τους χρήστες)." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:40 msgid "" "Number of seconds of inactivity before blanking the screen. Set to 0 to " "never timeout." msgstr "" +"Αριθμός δευτερολέπτων αδράνειας πριν από το σβήσιμο της οθόνης. Ορίστε την " +"τιμή 0 για να μην υπάρχει ποτέ timeout." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:41 msgid "Whether to enable HiDPI support" -msgstr "" +msgstr "Ενεργοποίηση της υποστήριξης HiDPI" #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:42 msgid "" "Scaling factor for fonts that can be used to adjust the greeter's font sizes." msgstr "" +"Συντελεστής κλιμάκωσης για γραμματοσειρές που μπορεί να χρησιμοποιηθεί για " +"την προσαρμογή των μεγεθών γραμματοσειράς του χαιρετιστή." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:43 msgid "" "Alpha value for menubar, multiplied with the theme-provided transparency " "value. Not used in high contrast mode." msgstr "" +"Τιμή άλφα για τη γραμμή μενού, πολλαπλασιασμένη με την τιμή διαφάνειας που " +"παρέχεται από το θέμα. Δεν χρησιμοποιείται σε λειτουργία υψηλής αντίθεσης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:44 msgid "Default FQDN for host offering Remote Logon Service." msgstr "" +"Προεπιλεγμένο FQDN για τον κεντρικό υπολογιστή που προσφέρει την υπηρεσία " +"απομακρυσμένης σύνδεσης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:45 msgid "" "Whether to activate numlock. This features requires the installation of " "numlockx." msgstr "" +"Εάν θα ενεργοποιηθεί το numlock. Αυτή η λειτουργία απαιτεί την εγκατάσταση " +"του numlockx." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:46 msgid "Monitor on which to show the Login GUI." -msgstr "" +msgstr "Οθόνη στην οποία θα εμφανιστεί το γραφικό περιβάλλον σύνδεσης." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:47 msgid "" "Name of the onscreen keyboard layout (see /usr/share/onboard/layouts/*." "onboard for available layout names)." msgstr "" +"Όνομα της διάταξης πληκτρολογίου οθόνης (δείτε /usr/share/onboard/layouts/*" +".onboard για τα διαθέσιμα ονόματα διάταξης)." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:48 msgid "" "Name of the onscreen keyboard theme (see /usr/share/onboard/themes/*.theme " "for available theme names)." msgstr "" +"Όνομα του θέματος του πληκτρολογίου οθόνης (δείτε /usr/share/onboard/themes/*" +".theme για τα διαθέσιμα ονόματα θεμάτων)." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:49 msgid "" "Name of the onscreen keyboard theme when in high contrast mode (see /usr/" "share/onboard/themes/*.theme for available theme names)." msgstr "" +"Όνομα του θέματος του πληκτρολογίου οθόνης όταν βρίσκεται σε λειτουργία " +"υψηλής αντίθεσης (δείτε /usr/share/onboard/themes/*.theme για τα διαθέσιμα " +"ονόματα θεμάτων)." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:50 msgid "Whether to hide the 'lightdm-xsession' default X11 session type." msgstr "" +"Εάν θέλετε να αποκρύψετε τον προεπιλεγμένο τύπο συνόδου X11 'lightdm-" +"xsession'." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:51 msgid "Whether to hide X11 sessions." -msgstr "" +msgstr "Εάν θέλετε να αποκρύψετε συνεδρίες X11." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:52 msgid "Whether to hide Wayland sessions." -msgstr "" +msgstr "Εάν θέλετε να αποκρύψετε συνεδρίες Wayland." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:53 msgid "" "Ordered list of preferred desktop sessions (for detecting the default " "session type)." msgstr "" +"Ταξινομημένος κατάλογος προτιμώμενων συνόδων εργασίας (για τον εντοπισμό του " +"προεπιλεγμένου τύπου συνόδου)." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:54 msgid "" "Time in seconds until the shutdown dialog forcefully selects the default " "action. Set to 0 to disable." msgstr "" +"Χρόνος σε δευτερόλεπτα έως ότου το παράθυρο διαλόγου τερματισμού επιλέξει " +"αναγκαστικά την προεπιλεγμένη ενέργεια. Ορίστε την τιμή 0 για απενεργοποίηση." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:55 msgid "" @@ -545,6 +604,10 @@ msgid "" "explicitly listed sessions types will be offered by the greeter). Takes " "precedence over the excluded-sessions list." msgstr "" +"Μη διατεταγμένη λίστα των συνόδων επιφάνειας εργασίας που περιλαμβάνουν μόνο " +"τις συνεδρίες (αν δεν είναι κενές, μόνο οι τύποι συνεδριών που αναφέρονται " +"ρητά θα προσφερθούν από την υπηρεσία υποδοχής). Έχει προτεραιότητα έναντι " +"της λίστας excluded-sessions." #: ../data/org.ArcticaProject.arctica-greeter.gschema.xml:56 msgid "" @@ -552,6 +615,9 @@ msgid "" "types will not be offered by the greeter). Only used if includeonly-sessions " "is empty." msgstr "" +"Μη διατεταγμένη λίστα των αποκλεισμένων συνόδων γραφείου (αν δεν είναι κενή, " +"οι τύποι συνόδων που παρατίθενται δεν θα προσφέρονται από την υπηρεσία " +"υποδοχής). Χρησιμοποιείται μόνο αν το includeonly-sessions είναι κενό." #~ msgid "Onscreen keyboard" #~ msgstr "Πληκτρολόγιο οθόνης" @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: arctica-greeter\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-10-12 22:14+0200\n" -"PO-Revision-Date: 2024-11-09 13:00+0000\n" +"PO-Revision-Date: 2025-04-25 09:29+0000\n" "Last-Translator: தமிழ்நேரம் <anishprabu.t@gmail.com>\n" "Language-Team: Tamil <https://hosted.weblate.org/projects/arctica-framework/" "greeter/ta/>\n" @@ -17,13 +17,13 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8.2\n" +"X-Generator: Weblate 5.11.1-dev\n" "X-Launchpad-Export-Date: 2015-08-05 05:27+0000\n" #: ../src/greeter-list.vala:306 #, c-format msgid "Enter password for %s" -msgstr "%S க்கு கடவுச்சொல்லை உள்ளிடவும்" +msgstr "%s க்கு கடவுச்சொல்லை உள்ளிடவும்" #: ../src/greeter-list.vala:308 msgid "Enter your username" @@ -31,7 +31,7 @@ msgstr "உங்கள் பயனர்பெயரை உள்ளிடவ� #: ../src/greeter-list.vala:837 ../src/user-list.vala:761 msgid "Password:" -msgstr "கடவு சொல்" +msgstr "கடவுசொல்:" #: ../src/greeter-list.vala:842 ../src/user-list.vala:755 msgid "Username:" @@ -51,7 +51,7 @@ msgstr "அமர்வை தொடக்குவதில் தோல்� #: ../src/greeter-list.vala:979 msgid "Logging in…" -msgstr "உள்நுழைகிறது..." +msgstr "உள்நுழைகிறது…" #: ../src/main-window.vala:56 msgid "Login Screen" @@ -71,7 +71,7 @@ msgstr "திசைமேசை சூளலை தேர்ந்தெடு" #: ../src/shutdown-dialog.vala:146 msgid "Goodbye. Would you like to…" -msgstr "நன்றி வணக்கம். நீங்கள் விரும்புகிறீர்களா..." +msgstr "நன்றி வணக்கம். நீங்கள் விரும்புகிறீர்களா…" #: ../src/shutdown-dialog.vala:152 ../src/shutdown-dialog.vala:252 msgid "Shut Down" @@ -177,7 +177,7 @@ msgstr "இரத்துசெய்" #: ../src/user-list.vala:607 msgid "Set Up…" -msgstr "அமைக்க..." +msgstr "அமைக்க…" #: ../src/user-list.vala:609 msgid "" @@ -207,7 +207,7 @@ msgstr "" #: ../src/user-list.vala:739 msgid "Server type not supported." -msgstr "சேவகன் வகை ஆதரிக்கப்படதாதது" +msgstr "சேவகன் வகை ஆதரிக்கப்படதாதது." #: ../src/user-list.vala:767 msgid "X2Go Session:" @@ -229,7 +229,7 @@ msgstr "புகுபதிகை" #: ../src/user-list.vala:899 #, c-format msgid "Login as %s" -msgstr "%S ஆக உள்நுழைக" +msgstr "%s ஆக உள்நுழைக" #: ../src/user-list.vala:903 msgid "Retry" diff --git a/src/main-window.vala b/src/main-window.vala index e1e39d2..621b115 100644 --- a/src/main-window.vala +++ b/src/main-window.vala @@ -129,40 +129,30 @@ public class MainWindow : Gtk.Window login_box.add (content_box); var content_align = AGSettings.get_string(AGSettings.KEY_CONTENT_ALIGN); - var x_align = 0.5f; + var x_align = Gtk.Align.CENTER; if (content_align == "left") { - x_align = 0.0f; + x_align = Gtk.Align.START; } else if (content_align == "right") { - x_align = 1.0f; + x_align = Gtk.Align.END; } - var align = new Gtk.Alignment (x_align, 0.0f, 0.0f, 1.0f); + hbox = new Gtk.Box (Gtk.Orientation.HORIZONTAL, 0); + hbox.expand = true; + hbox.show (); + hbox.halign = x_align; + hbox.valign = Gtk.Align.CENTER; if (content_align == "center") { // offset for back button - align.margin_end = greeter.grid_size; + hbox.margin_end = greeter.grid_size; } - align.show (); - content_box.add (align); - - hbox = new Gtk.Box (Gtk.Orientation.HORIZONTAL, 0); - hbox.expand = true; - hbox.show (); - align.add (hbox); - - align = new Gtk.Alignment (0.5f, 0.5f, 0.0f, 0.0f); - align.resize_mode = Gtk.ResizeMode.QUEUE; - align.set_size_request (greeter.grid_size, -1); - align.margin_bottom = greeter.menubar_height; /* offset for menubar at top */ - align.show (); - hbox.add (align); - + content_box.add (hbox); back_button = new FlatButton (); back_button.get_accessible ().set_name (_("Back")); Gtk.button_set_focus_on_click (back_button, false); @@ -191,8 +181,14 @@ public class MainWindow : Gtk.Window back_button.add (image); back_button.clicked.connect (pop_list); - - align.add (back_button); + back_button.halign = Gtk.Align.CENTER; + back_button.valign = Gtk.Align.CENTER; + back_button.hexpand = false; + back_button.vexpand = false; + back_button.resize_mode = Gtk.ResizeMode.QUEUE; + back_button.set_size_request (greeter.grid_size, -1); + back_button.margin_bottom = greeter.menubar_height; + hbox.add (back_button); stack = new ListStack (); stack.show (); diff --git a/src/menubar.vala b/src/menubar.vala index 8ce73d7..f449afa 100644 --- a/src/menubar.vala +++ b/src/menubar.vala @@ -101,7 +101,7 @@ private class IndicatorMenuItem : Gtk.MenuItem } } -public class MenuBar : Gtk.MenuBar +public class MenuBar : Gtk.Grid { public Background? background { get; construct; default = null; } public Gtk.Window? keyboard_window { get; private set; default = null; } @@ -112,70 +112,6 @@ public class MenuBar : Gtk.MenuBar Object (background: bg, accel_group: ag); } - public override bool draw (Cairo.Context c) - { - if (background != null) - { - /* Disable background drawing to see how it changes the visuals. */ - /* - int x, y; - background.translate_coordinates (this, 0, 0, out x, out y); - c.save (); - c.translate (x, y); - background.draw_full (c, Background.DrawFlags.NONE); - c.restore (); - */ - } - - /* Get the style and dimensions. */ - var style_ctx = this.get_style_context (); - - var w = this.get_allocated_width (); - var h = this.get_allocated_height (); - - /* Add a group. */ - c.push_group (); - - /* Draw the background normally. */ - style_ctx.render_background (c, 0, 0, w, h); - - /* Draw the frame normally. */ - style_ctx.render_frame (c, 0, 0, w, h); - - /* Go back to the original widget. */ - c.pop_group_to_source (); - - var agsettings = new AGSettings (); - if (agsettings.high_contrast) { - /* - * In case the high contrast mode is enabled, do not add any - * transparency. While the GTK theme might define one (even though - * it better should not, given that we are also switching to a - * high contrast theme), we certainly do not want to make the look - * fuzzy. - */ - c.paint (); - } - else { - /* - * And finally repaint it with additional transparency. - * Note that most GTK styles already define a transparency for OSD - * menus. We want to have something more transparent, but also - * make sure that it is not too transparent, so do not choose a - * value that is too low here - certainly not your desired final - * alpha value. - */ - c.paint_with_alpha (AGSettings.get_double (AGSettings.KEY_MENUBAR_ALPHA)); - } - - foreach (var child in get_children ()) - { - propagate_draw (child, c); - } - - return false; - } - public static void add_style_class (Gtk.Widget widget) { /* @@ -187,32 +123,60 @@ public class MenuBar : Gtk.MenuBar } private List<Indicator.Object> indicator_objects; + private Gtk.MenuBar pMenubar; construct { + this.pMenubar = new Gtk.MenuBar (); + this.pMenubar.halign = Gtk.Align.END; + this.pMenubar.hexpand = true; + this.pMenubar.pack_direction = Gtk.PackDirection.RTL; + this.pMenubar.show (); + this.attach (this.pMenubar, 1, 0, 1, 1); + this.show (); add_style_class (this); + Gtk.CssProvider pGridProvider = new Gtk.CssProvider (); + string sBackGround = AGSettings.get_string (AGSettings.KEY_MENUBAR_BGCOLOR); + Gdk.RGBA pBackGround = Gdk.RGBA (); + pBackGround.parse (sBackGround); + int nRed = (int)(pBackGround.red * 255.0); + int nGreen = (int)(pBackGround.green * 255.0); + int nBlue = (int)(pBackGround.blue * 255.0); + double fApha = AGSettings.get_double (AGSettings.KEY_MENUBAR_ALPHA); + + // Assure that printf operates in C.UTF-8 locale for float-to-string conversions. + Intl.setlocale(LocaleCategory.NUMERIC, "C.UTF-8"); + + try + { + pGridProvider.load_from_data ("* { background-color: rgba(%i, %i, %i, %f); } *.high_contrast { background-color: #ffffff; color: #000000; text-shadow: none; }".printf (nRed, nGreen, nBlue, fApha), -1); + } + catch (Error pError) + { + error ("Panic: Failed loading menubar grid colours: %s", pError.message); + } - /* Handle high contrast background color */ - var menubar_style = new Gtk.CssProvider (); + this.get_style_context ().add_provider (pGridProvider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); + + Gtk.CssProvider pMenubarProvider = new Gtk.CssProvider (); try { - menubar_style.load_from_data ("*.high_contrast { background-color: #ffffff; }", -1); + pMenubarProvider.load_from_data ("* { background-color: transparent; } *.high_contrast { color: #000000; text-shadow: none; }", -1); } catch (Error pError) { - error ("Panic: Failed adding high contrast background-color: %s", pError.message); + error ("Panic: Failed loading menubar colours: %s", pError.message); } - this.get_style_context ().add_provider (menubar_style, - Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); + + this.pMenubar.get_style_context ().add_provider (pMenubarProvider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); /* Add shadow. */ var shadow_style = new Gtk.CssProvider (); try { - Intl.setlocale(LocaleCategory.NUMERIC, "C.UTF-8"); - shadow_style.load_from_data ("* { box-shadow: 0px 0px 5px 5px rgba(0.2,0.2,0.2,%f); }".printf(AGSettings.get_double (AGSettings.KEY_MENUBAR_ALPHA)), -1); + shadow_style.load_from_data ("* { box-shadow: 0px 0px 5px 5px rgba(%i, %i, %i, %f); }".printf (nRed, nGreen, nBlue, fApha), -1); } catch (Error pError) { @@ -222,97 +186,13 @@ public class MenuBar : Gtk.MenuBar this.get_style_context ().add_provider (shadow_style, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); - pack_direction = Gtk.PackDirection.RTL; - if (AGSettings.get_boolean (AGSettings.KEY_SHOW_HOSTNAME)) { - var hostname_item = new Gtk.MenuItem.with_label (Posix.utsname ().nodename); - append (hostname_item); - hostname_item.show (); - - /* - * Even though this (menu) item is insensitive, we want its label - * text to have the sensitive color as to not look out of place - * and difficult to read. - * - * There's a really weird bug that leads to always fetch the - * sensitive color after the widget (menuitem in this case) has - * been set to insensitive once - at least in this constructor. - * - * I haven't found a way to fix that, or, for that matter, what is - * actually causing the issue. Even waiting on the main event loop - * until all events are processed didn't help. - * - * We'll work around this issue by fetching the color before - * setting the widget to insensitive and call it proper. - */ - var insensitive_override_style = new Gtk.CssProvider (); - - /* - * First, fetch the associated GtkStyleContext and save the state, - * we'll override the state later on. - */ - var hostname_item_ctx = hostname_item.get_style_context (); - hostname_item_ctx.save (); - - try { - /* Get the actual color. */ - var sensitive_color = hostname_item_ctx.get_color (Gtk.StateFlags.NORMAL); - debug ("Directly fetched sensitive color: %s", sensitive_color.to_string ()); - - insensitive_override_style.load_from_data ("*:disabled { color: %s; } - *.high_contrast:disabled { color: #000000; }".printf(sensitive_color.to_string ()), -1); - } - catch (Error e) - { - debug ("Internal error loading hostname menu item text color: %s", e.message); - } - finally { - /* - * Restore the context, which we might have changed through the - * previous get_color () call. - */ - hostname_item_ctx.restore (); - } - - try { - /* And finally override the insensitive color. */ - hostname_item_ctx.add_provider (insensitive_override_style, - Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); - - /* - * Just overriding the color for the Gtk.MenuItem widget - * doesn't help, we'll also apply it to the children. - * - * In theory, we could just use the get_child () method to - * fetch the only child we should ever have on that widget, - * namely a GtkAccelLabel, but that isn't future-proof enough, - * especially if that is ever extended into having a submenu. - * - * Thus, iterate over all children and override the style for - * all of them. - */ - if (gtk_is_container (hostname_item)) { - var children = hostname_item.get_children (); - foreach (Gtk.Widget element in children) { - var child_ctx = element.get_style_context (); - debug ("Adding override style provider to child widget %s", element.name); - child_ctx.add_provider (insensitive_override_style, - Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); - } - } - } - catch (Error e) - { - debug ("Internal error overriding hostname menu item text color: %s", e.message); - } - - hostname_item.set_sensitive (false); - - /* The below does not work, so for now we need to stick to "set_right_justified" - hostname_item.set_hexpand (true); - hostname_item.set_halign (Gtk.Align.END);*/ - hostname_item.set_right_justified (true); + Gtk.Label pLabel = new Gtk.Label (Posix.utsname ().nodename); + pLabel.vexpand = true; + pLabel.margin_start = 6; + pLabel.show (); + this.attach (pLabel, 0, 0, 1, 1); } /* Prevent dragging the window by the menubar */ @@ -320,7 +200,7 @@ public class MenuBar : Gtk.MenuBar { var style = new Gtk.CssProvider (); style.load_from_data ("* {-GtkWidget-window-dragging: false;}", -1); - get_style_context ().add_provider (style, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); + this.pMenubar.get_style_context ().add_provider (style, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); } catch (Error e) { @@ -330,6 +210,11 @@ public class MenuBar : Gtk.MenuBar setup_indicators (); } + public void select_first (bool bSearchSensitive) + { + this.pMenubar.select_first (bSearchSensitive); + } + public override void get_preferred_height (out int min, out int nat) { var greeter = new ArcticaGreeter (); @@ -482,7 +367,7 @@ public class MenuBar : Gtk.MenuBar { var index = get_indicator_index (object); var pos = 0; - foreach (var child in get_children ()) + foreach (var child in this.pMenubar.get_children ()) { if (!(child is IndicatorMenuItem)) break; @@ -499,19 +384,19 @@ public class MenuBar : Gtk.MenuBar var menuitem = new IndicatorMenuItem (entry); menuitem.set_data ("indicator-object", object); - insert (menuitem, pos); + this.pMenubar.insert (menuitem, pos); } private void indicator_removed_cb (Indicator.Object object, Indicator.ObjectEntry entry) { debug ("Removing indicator object %p", entry); - foreach (var child in get_children ()) + foreach (var child in this.pMenubar.get_children ()) { var menuitem = (IndicatorMenuItem) child; if (menuitem.entry == entry) { - remove (child); + this.pMenubar.remove (child); return; } } diff --git a/src/prompt-box.vala b/src/prompt-box.vala index b102887..fb3d4ab 100644 --- a/src/prompt-box.vala +++ b/src/prompt-box.vala @@ -247,13 +247,12 @@ public class PromptBox : FadableBox message_image = new CachedImage (null); message_image.set_from_icon_name("mail-unread", Gtk.IconSize.BUTTON); - - var align = new Gtk.Alignment (0.5f, 0.5f, 0.0f, 0.0f); - align.valign = Gtk.Align.START; - align.set_size_request (-1, greeter.grid_size); - align.add (message_image); - align.show (); - name_grid.attach (align, COL_NAME_MESSAGE, ROW_NAME, 1, 1); + message_image.halign = Gtk.Align.CENTER; + message_image.valign = Gtk.Align.START; + message_image.hexpand = false; + message_image.vexpand = false; + message_image.set_size_request (-1, greeter.grid_size); + name_grid.attach (message_image, COL_NAME_MESSAGE, ROW_NAME, 1, 1); option_button = new FlatButton (); var option_button_ctx = option_button.get_style_context (); @@ -343,12 +342,12 @@ public class PromptBox : FadableBox small_message_image = new CachedImage (null); small_message_image.set_from_icon_name("mail-unread", Gtk.IconSize.BUTTON); - - var align = new Gtk.Alignment (0.5f, 0.5f, 0.0f, 0.0f); - align.set_size_request (-1, greeter.grid_size); - align.add (small_message_image); - align.show (); - small_name_grid.attach (align, 2, 0, 1, 1); + small_message_image.halign = Gtk.Align.CENTER; + small_message_image.valign = Gtk.Align.CENTER; + small_message_image.hexpand = false; + small_message_image.vexpand = false; + small_message_image.set_size_request (-1, greeter.grid_size); + small_name_grid.attach (small_message_image, 2, 0, 1, 1); small_name_grid.show (); return small_name_grid; @@ -560,7 +559,19 @@ public class PromptBox : FadableBox ArcticaGreeter.add_style_class (w); last_row += 1; - box_grid.attach (w, COL_ENTRIES_START, last_row, COL_ENTRIES_WIDTH, 1); + bool bErrorBelow = AGSettings.get_boolean (AGSettings.KEY_ERROR_BELOW_ENTRY); + + if (has_errors && bErrorBelow) + { + Gtk.Widget pChild = box_grid.get_child_at (COL_ENTRIES_START, last_row-1); + box_grid.remove (pChild); + box_grid.attach (w, COL_ENTRIES_START, last_row-1, COL_ENTRIES_WIDTH, 1); + box_grid.attach (pChild, COL_ENTRIES_START, last_row, COL_ENTRIES_WIDTH, 1); + } + else + { + box_grid.attach (w, COL_ENTRIES_START, last_row, COL_ENTRIES_WIDTH, 1); + } update_prompt_visibility (w); queue_resize (); @@ -568,7 +579,7 @@ public class PromptBox : FadableBox public void add_message (string text, bool is_error) { - var label = new FadingLabel (text); + var label = new FadingLabel (""); var style_ctx = label.get_style_context(); @@ -601,6 +612,40 @@ public class PromptBox : FadableBox label.xalign = 0.0f; label.set_data<bool> ("prompt-box-is-error", is_error); + // Wrap the text if needed + ArcticaGreeter pGreeter = new ArcticaGreeter (); + Pango.Context pContext = label.get_pango_context (); + Pango.Layout pLayout = new Pango.Layout (pContext); + Pango.FontDescription pDescription = null; + Gtk.StateFlags nFlags = style_ctx.get_state (); + style_ctx.get (nFlags, "font", out pDescription, null); + pLayout.set_font_description (pDescription); + StringBuilder pBuilder = new StringBuilder (); + string[] lWords = text.split (" "); + string sLine = ""; + + foreach (string sWord in lWords) + { + string sTest = sLine == "" ? sWord : sLine + " " + sWord; + pLayout.set_text (sTest, -1); + int nWidth = 0; + pLayout.get_size (out nWidth, null); + + if (nWidth / Pango.SCALE > (pGreeter.grid_size * GreeterList.BOX_WIDTH - (int)(GreeterList.BORDER * pGreeter.scaling_factor_widgets * 8)) && sLine != "") + { + pBuilder.append (sLine + "\n"); + sLine = sWord; + } + else + { + sLine = sTest; + } + } + + pBuilder.append (sLine); + label.set_text (pBuilder.str); + //~Wrap the text if needed + attach_item (label); if (is_error) diff --git a/src/settings.vala b/src/settings.vala index 414020d..12c1265 100644 --- a/src/settings.vala +++ b/src/settings.vala @@ -98,6 +98,8 @@ public class AGSettings : Object public const string KEY_LOGO_POSITION = "logo-position"; public const string KEY_LOGO_OFFSET_HORIZONTAL = "logo-offset-horizontal"; public const string KEY_LOGO_OFFSET_VERTICAL = "logo-offset-vertical"; + public const string KEY_ERROR_BELOW_ENTRY = "error-below-entry"; + public const string KEY_MENUBAR_BGCOLOR = "menubar-bgcolor"; public static bool get_boolean (string key) { |