Add options to customize context menu

gh-1858 gh-1926 gh-2005 gh-2151
This commit is contained in:
Charles Gagnon
2025-02-20 17:59:09 -05:00
parent f9662e6931
commit 7fc23f516d
5 changed files with 339 additions and 200 deletions

288
po/fr.po
View File

@@ -9,8 +9,8 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Dash To Panel\n" "Project-Id-Version: Dash To Panel\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-19 18:50-0500\n" "POT-Creation-Date: 2025-02-20 17:49-0500\n"
"PO-Revision-Date: 2025-02-19 18:51-0500\n" "PO-Revision-Date: 2025-02-20 17:51-0500\n"
"Last-Translator: Charles Gagnon <charlesg99@outlook.com>\n" "Last-Translator: Charles Gagnon <charlesg99@outlook.com>\n"
"Language-Team: French\n" "Language-Team: French\n"
"Language: fr\n" "Language: fr\n"
@@ -39,323 +39,319 @@ msgstr ""
"X-Poedit-SearchPath-16: desktopIconsIntegration.js\n" "X-Poedit-SearchPath-16: desktopIconsIntegration.js\n"
"X-Poedit-SearchPath-17: appIcons.js\n" "X-Poedit-SearchPath-17: appIcons.js\n"
#: src/extension.js:87 #: src/extension.js:88
msgid "Dash to Panel has been updated!" msgid "Dash to Panel has been updated!"
msgstr "Dash to Panel a été mis à jour!" msgstr "Dash to Panel a été mis à jour!"
#: src/extension.js:91 #: src/extension.js:92
msgid "See what's new" msgid "See what's new"
msgstr "Voir les nouveautés" msgstr "Voir les nouveautés"
#: src/prefs.js:275 #: src/prefs.js:276
msgid "Show Desktop button height (px)" msgid "Show Desktop button height (px)"
msgstr "Hauteur du bouton Afficher le Bureau (px)" msgstr "Hauteur du bouton Afficher le Bureau (px)"
#: src/prefs.js:276 #: src/prefs.js:277
msgid "Show Desktop button width (px)" msgid "Show Desktop button width (px)"
msgstr "Longueur du bouton Afficher le Bureau (px)" msgstr "Longueur du bouton Afficher le Bureau (px)"
#: src/prefs.js:296 #: src/prefs.js:297
msgid "Unavailable when gnome-shell top panel is present" msgid "Unavailable when gnome-shell top panel is present"
msgstr "Indisponible quand le panneau de gnome-shell est présent" msgstr "Indisponible quand le panneau de gnome-shell est présent"
#: src/prefs.js:304 #: src/prefs.js:305
msgid "Unavailable when the panel on the primary monitor is at the top" msgid "Unavailable when the panel on the primary monitor is at the top"
msgstr "Indisponible quand le panneau sur l'écran principal est au haut" msgstr "Indisponible quand le panneau sur l'écran principal est au haut"
#: src/prefs.js:372 ui/SettingsPosition.ui.h:13 ui/SettingsStyle.ui.h:19 #: src/prefs.js:373 ui/SettingsPosition.ui.h:13 ui/SettingsStyle.ui.h:19
msgid "Left" msgid "Left"
msgstr "Gauche" msgstr "Gauche"
#: src/prefs.js:373 #: src/prefs.js:374
msgid "Center" msgid "Center"
msgstr "Centre" msgstr "Centre"
#: src/prefs.js:374 ui/SettingsPosition.ui.h:14 ui/SettingsStyle.ui.h:20 #: src/prefs.js:375 ui/SettingsPosition.ui.h:14 ui/SettingsStyle.ui.h:20
msgid "Right" msgid "Right"
msgstr "Droit" msgstr "Droit"
#: src/prefs.js:376 ui/BoxWindowPreviewOptions.ui.h:38 #: src/prefs.js:377 ui/BoxWindowPreviewOptions.ui.h:38
#: ui/SettingsPosition.ui.h:12 ui/SettingsStyle.ui.h:18 #: ui/SettingsPosition.ui.h:12 ui/SettingsStyle.ui.h:18
msgid "Top" msgid "Top"
msgstr "Haut" msgstr "Haut"
#: src/prefs.js:377 src/prefs.js:382 ui/SettingsPosition.ui.h:22 #: src/prefs.js:378 src/prefs.js:383 ui/SettingsPosition.ui.h:22
msgid "Middle" msgid "Middle"
msgstr "Milieu" msgstr "Milieu"
#: src/prefs.js:378 ui/BoxWindowPreviewOptions.ui.h:37 #: src/prefs.js:379 ui/BoxWindowPreviewOptions.ui.h:37
#: ui/SettingsPosition.ui.h:11 ui/SettingsStyle.ui.h:17 #: ui/SettingsPosition.ui.h:11 ui/SettingsStyle.ui.h:17
msgid "Bottom" msgid "Bottom"
msgstr "Bas" msgstr "Bas"
#: src/prefs.js:381 ui/SettingsPosition.ui.h:21 #: src/prefs.js:382 ui/SettingsPosition.ui.h:21
msgid "Start" msgid "Start"
msgstr "Début" msgstr "Début"
#: src/prefs.js:383 ui/SettingsPosition.ui.h:23 #: src/prefs.js:384 ui/SettingsPosition.ui.h:23
msgid "End" msgid "End"
msgstr "Fin" msgstr "Fin"
#: src/prefs.js:509 #: src/prefs.js:510
msgid "Show Applications button" msgid "Show Applications button"
msgstr "Bouton Afficher les Applications" msgstr "Bouton Afficher les Applications"
#: src/prefs.js:510 #: src/prefs.js:511
msgid "Activities button" msgid "Activities button"
msgstr "Bouton Activités" msgstr "Bouton Activités"
#: src/prefs.js:511 #: src/prefs.js:512
msgid "Taskbar" msgid "Taskbar"
msgstr "Barre des tâches" msgstr "Barre des tâches"
#: src/prefs.js:512 #: src/prefs.js:513
msgid "Date menu" msgid "Date menu"
msgstr "Horloge" msgstr "Horloge"
#: src/prefs.js:513 #: src/prefs.js:514
msgid "System menu" msgid "System menu"
msgstr "Menu système" msgstr "Menu système"
#: src/prefs.js:514 #: src/prefs.js:515
msgid "Left box" msgid "Left box"
msgstr "Zone gauche" msgstr "Zone gauche"
#: src/prefs.js:515 #: src/prefs.js:516
msgid "Center box" msgid "Center box"
msgstr "Zone centre" msgstr "Zone centre"
#: src/prefs.js:516 #: src/prefs.js:517
msgid "Right box" msgid "Right box"
msgstr "Zone droite" msgstr "Zone droite"
#: src/prefs.js:517 #: src/prefs.js:518
msgid "Desktop button" msgid "Desktop button"
msgstr "Bouton Afficher le Bureau" msgstr "Bouton Afficher le Bureau"
#: src/prefs.js:527 #: src/prefs.js:528 src/prefs.js:2798
msgid "Move up" msgid "Move up"
msgstr "Déplacer vers le haut" msgstr "Déplacer vers le haut"
#: src/prefs.js:529 #: src/prefs.js:530 src/prefs.js:2806
msgid "Move down" msgid "Move down"
msgstr "Déplacer vers le bas" msgstr "Déplacer vers le bas"
#: src/prefs.js:535 #: src/prefs.js:536
msgid "Visible" msgid "Visible"
msgstr "Visible" msgstr "Visible"
#: src/prefs.js:539 #: src/prefs.js:540
msgid "Select element position" msgid "Select element position"
msgstr "Sélectionner la position de l'élément" msgstr "Sélectionner la position de l'élément"
#: src/prefs.js:553 #: src/prefs.js:554
msgid "Stacked to top" msgid "Stacked to top"
msgstr "Empilé en haut" msgstr "Empilé en haut"
#: src/prefs.js:553 #: src/prefs.js:554
msgid "Stacked to left" msgid "Stacked to left"
msgstr "Empilé à gauche" msgstr "Empilé à gauche"
#: src/prefs.js:557 #: src/prefs.js:558
msgid "Stacked to bottom" msgid "Stacked to bottom"
msgstr "Empilé en bas" msgstr "Empilé en bas"
#: src/prefs.js:557 #: src/prefs.js:558
msgid "Stacked to right" msgid "Stacked to right"
msgstr "Empilé à droite" msgstr "Empilé à droite"
#: src/prefs.js:559 #: src/prefs.js:560
msgid "Centered" msgid "Centered"
msgstr "Centré" msgstr "Centré"
#: src/prefs.js:560 #: src/prefs.js:561
msgid "Monitor Center" msgid "Monitor Center"
msgstr "Centre de l'écran " msgstr "Centre de l'écran "
#: src/prefs.js:587 #: src/prefs.js:588
msgid "More options" msgid "More options"
msgstr "Plus d'options" msgstr "Plus d'options"
#: src/prefs.js:622 #: src/prefs.js:623
msgid "Reset to defaults" msgid "Reset to defaults"
msgstr "Restaurer paramètres" msgstr "Restaurer paramètres"
#: src/prefs.js:645 #: src/prefs.js:646
msgid "Show Applications options" msgid "Show Applications options"
msgstr "Options du bouton Afficher les Applications" msgstr "Options du bouton Afficher les Applications"
#: src/prefs.js:668 #: src/prefs.js:669
msgid "Open icon" msgid "Open icon"
msgstr "Choisir l'icône" msgstr "Choisir l'icône"
#: src/prefs.js:733 #: src/prefs.js:734
msgid "Show Desktop options" msgid "Show Desktop options"
msgstr "Options du bouton Afficher le Bureau" msgstr "Options du bouton Afficher le Bureau"
#: src/prefs.js:825 #: src/prefs.js:826
msgid "Primary monitor" msgid "Primary monitor"
msgstr "Écran principal" msgstr "Écran principal"
#: src/prefs.js:826 #: src/prefs.js:827
msgid "Monitor " msgid "Monitor "
msgstr "Écran " msgstr "Écran "
#: src/prefs.js:953 #: src/prefs.js:954
msgid "Running Indicator Options" msgid "Running Indicator Options"
msgstr "Options de l'indicateur d'activité" msgstr "Options de l'indicateur d'activité"
#: src/prefs.js:1487 #: src/prefs.js:1488
msgid "Dynamic opacity options" msgid "Dynamic opacity options"
msgstr "Options d'opacité dynamique" msgstr "Options d'opacité dynamique"
#: src/prefs.js:1729 #: src/prefs.js:1730
msgid "Intellihide options" msgid "Intellihide options"
msgstr "Options du masquage intelligent" msgstr "Options du masquage intelligent"
#: src/prefs.js:1925 #: src/prefs.js:1926
msgid "Window preview options" msgid "Window preview options"
msgstr "Options de la prévisualisation" msgstr "Options de la prévisualisation"
#: src/prefs.js:2476 #: src/prefs.js:2477
msgid "Ungrouped application options" msgid "Ungrouped application options"
msgstr "Options des applications dégroupées" msgstr "Options des applications dégroupées"
#: src/prefs.js:2643 #: src/prefs.js:2644
msgid "Customize middle-click behavior" msgid "Customize middle-click behavior"
msgstr "Modifier l'action du clic de la molette" msgstr "Modifier l'action du clic de la molette"
#: src/prefs.js:2732 #: src/prefs.js:2773
msgid "Text"
msgstr "Texte"
#: src/prefs.js:2782
msgid "Command"
msgstr "Commande"
#: src/prefs.js:2814
msgid "Remove"
msgstr "Retirer"
#: src/prefs.js:2842
msgid "Customize panel scroll behavior" msgid "Customize panel scroll behavior"
msgstr "Modifier l'action du défilement de la souris sur le panneau" msgstr "Modifier l'action du défilement de la souris sur le panneau"
#: src/prefs.js:2778 #: src/prefs.js:2888
msgid "Customize icon scroll behavior" msgid "Customize icon scroll behavior"
msgstr "Modifier l'action du défilement de la souris sur une application" msgstr "Modifier l'action du défilement de la souris sur une application"
#: src/prefs.js:2902 #: src/prefs.js:3012
msgid "Advanced hotkeys options" msgid "Advanced hotkeys options"
msgstr "Raccourcis avancés" msgstr "Raccourcis avancés"
#: src/prefs.js:2930 #: src/prefs.js:3040
msgid "Secondary Menu Options" msgid "Secondary Menu Options"
msgstr "Options du menu secondaire" msgstr "Options du menu secondaire"
#: src/prefs.js:2974 ui/SettingsFineTune.ui.h:23 #: src/prefs.js:3084 ui/SettingsFineTune.ui.h:23
msgid "Advanced Options" msgid "Advanced Options"
msgstr "Options avancées" msgstr "Options avancées"
#: src/prefs.js:3142 #: src/prefs.js:3252
#, javascript-format #, javascript-format
msgid "%d ms" msgid "%d ms"
msgstr "%d ms" msgstr "%d ms"
#: src/prefs.js:3148 #: src/prefs.js:3258
#, javascript-format #, javascript-format
msgid "%d °" msgid "%d °"
msgstr "%d °" msgstr "%d °"
#: src/prefs.js:3154 src/prefs.js:3160 #: src/prefs.js:3264 src/prefs.js:3270
#, javascript-format #, javascript-format
msgid "%d %%" msgid "%d %%"
msgstr "%d %%" msgstr "%d %%"
#: src/prefs.js:3166 #: src/prefs.js:3276
#, javascript-format #, javascript-format
msgid "%.1f" msgid "%.1f"
msgstr "%.1f" msgstr "%.1f"
#: src/prefs.js:3172 #: src/prefs.js:3282
#, javascript-format #, javascript-format
msgid "%d icon" msgid "%d icon"
msgid_plural "%d icons" msgid_plural "%d icons"
msgstr[0] "%d icône" msgstr[0] "%d icône"
msgstr[1] "%d icônes" msgstr[1] "%d icônes"
#: src/prefs.js:3299 #: src/prefs.js:3409
msgid "App icon animation options" msgid "App icon animation options"
msgstr "Options d'animation des icônes d'application" msgstr "Options d'animation des icônes d'application"
#: src/prefs.js:3422 #: src/prefs.js:3532
msgid "App icon highlight options" msgid "App icon highlight options"
msgstr "Options d'animation du surlignement des icônes d'application" msgstr "Options d'animation du surlignement des icônes d'application"
#: src/prefs.js:3517 #: src/prefs.js:3627
msgid "Export settings" msgid "Export settings"
msgstr "Exporter les paramètres" msgstr "Exporter les paramètres"
#: src/prefs.js:3538 #: src/prefs.js:3648
msgid "Import settings" msgid "Import settings"
msgstr "Importer des paramètres" msgstr "Importer des paramètres"
#: src/appIcons.js:1919 src/appIcons.js:1930 ui/BoxMiddleClickOptions.ui.h:11 #: src/appIcons.js:1918 src/appIcons.js:1929 ui/BoxMiddleClickOptions.ui.h:11
msgid "Quit" msgid "Quit"
msgstr "Quitter" msgstr "Quitter"
#: src/appIcons.js:1933 #: src/appIcons.js:1932
#, javascript-format #, javascript-format
msgid "Quit %d Window" msgid "Quit %d Window"
msgid_plural "Quit %d Windows" msgid_plural "Quit %d Windows"
msgstr[0] "Fermer %d fenêtre" msgstr[0] "Fermer %d fenêtre"
msgstr[1] "Fermer %d fenêtres" msgstr[1] "Fermer %d fenêtres"
#: src/appIcons.js:2240 #: src/appIcons.js:2239
msgid "Power options" msgid "Power options"
msgstr "Options d'alimentation" msgstr "Options d'alimentation"
#: src/appIcons.js:2245 #: src/appIcons.js:2244
msgid "Event logs" msgid "Event logs"
msgstr "Journaux d'évènements" msgstr "Journaux d'évènements"
#: src/appIcons.js:2250 #: src/appIcons.js:2249
msgid "System" msgid "System"
msgstr "Système" msgstr "Système"
#: src/appIcons.js:2255 #: src/appIcons.js:2254
msgid "Device Management" msgid "Device Management"
msgstr "Gestionnaire de périphériques" msgstr "Gestionnaire de périphériques"
#: src/appIcons.js:2260 #: src/appIcons.js:2259
msgid "Disk Management" msgid "Disk Management"
msgstr "Gestionnaire de disques" msgstr "Gestionnaire de disques"
#: src/appIcons.js:2273 #: src/appIcons.js:2286
msgid "Terminal" msgid "Gnome Settings"
msgstr "Terminal" msgstr "Paramètres Gnome"
#: src/appIcons.js:2278 #: src/appIcons.js:2292
msgid "System monitor"
msgstr "Moniteur système"
#: src/appIcons.js:2283
msgid "Files"
msgstr "Fichiers"
#: src/appIcons.js:2288
msgid "Extensions"
msgstr "Extensions"
#: src/appIcons.js:2293
msgid "Settings"
msgstr "Paramètres"
#: src/appIcons.js:2306
msgid "Unlock taskbar" msgid "Unlock taskbar"
msgstr "Déverrouiller la barre des tâches" msgstr "Déverrouiller la barre des tâches"
#: src/appIcons.js:2307 #: src/appIcons.js:2293
msgid "Lock taskbar" msgid "Lock taskbar"
msgstr "Verrouiller la barre des tâches" msgstr "Verrouiller la barre des tâches"
#: src/appIcons.js:2316 #: src/appIcons.js:2302
msgid "Dash to Panel Settings" msgid "Dash to Panel Settings"
msgstr "Paramètres Dash to Panel" msgstr "Paramètres Dash to Panel"
#: src/appIcons.js:2323 #: src/appIcons.js:2309
msgid "Restore Windows" msgid "Restore Windows"
msgstr "Restaurer les fenêtres" msgstr "Restaurer les fenêtres"
#: src/appIcons.js:2324 #: src/appIcons.js:2310
msgid "Show Desktop" msgid "Show Desktop"
msgstr "Afficher le bureau" msgstr "Afficher le bureau"
@@ -659,7 +655,7 @@ msgstr ""
"Quand minimiser est sélectionné, un double-clic réduit toutes les fenêtres " "Quand minimiser est sélectionné, un double-clic réduit toutes les fenêtres "
"de l'application." "de l'application."
#: ui/BoxMiddleClickOptions.ui.h:3 ui/SettingsAction.ui.h:10 #: ui/BoxMiddleClickOptions.ui.h:3
msgid "Raise windows" msgid "Raise windows"
msgstr "Montrer les fenêtres" msgstr "Montrer les fenêtres"
@@ -667,27 +663,27 @@ msgstr "Montrer les fenêtres"
msgid "Minimize window" msgid "Minimize window"
msgstr "Réduire la fenêtre" msgstr "Réduire la fenêtre"
#: ui/BoxMiddleClickOptions.ui.h:5 ui/SettingsAction.ui.h:11 #: ui/BoxMiddleClickOptions.ui.h:5
msgid "Launch new instance" msgid "Launch new instance"
msgstr "Lancer une nouvelle instance" msgstr "Lancer une nouvelle instance"
#: ui/BoxMiddleClickOptions.ui.h:6 ui/SettingsAction.ui.h:5 #: ui/BoxMiddleClickOptions.ui.h:6
msgid "Cycle through windows" msgid "Cycle through windows"
msgstr "Cycler sur les fenêtres" msgstr "Cycler sur les fenêtres"
#: ui/BoxMiddleClickOptions.ui.h:7 ui/SettingsAction.ui.h:4 #: ui/BoxMiddleClickOptions.ui.h:7
msgid "Cycle windows + minimize" msgid "Cycle windows + minimize"
msgstr "Cycler sur les fenêtres + réduire" msgstr "Cycler sur les fenêtres + réduire"
#: ui/BoxMiddleClickOptions.ui.h:8 ui/SettingsAction.ui.h:6 #: ui/BoxMiddleClickOptions.ui.h:8
msgid "Toggle single / Preview multiple" msgid "Toggle single / Preview multiple"
msgstr "Prévisualisation simple / multiple" msgstr "Prévisualisation simple / multiple"
#: ui/BoxMiddleClickOptions.ui.h:9 ui/SettingsAction.ui.h:7 #: ui/BoxMiddleClickOptions.ui.h:9
msgid "Toggle single / Cycle multiple" msgid "Toggle single / Cycle multiple"
msgstr "Prévisualisation simple / cycle multiple" msgstr "Prévisualisation simple / cycle multiple"
#: ui/BoxMiddleClickOptions.ui.h:10 ui/SettingsAction.ui.h:8 #: ui/BoxMiddleClickOptions.ui.h:10
msgid "Toggle single / Spread multiple" msgid "Toggle single / Spread multiple"
msgstr "Prévisualisation simple / diffusion de l'application" msgstr "Prévisualisation simple / diffusion de l'application"
@@ -1136,59 +1132,31 @@ msgstr "Action du clic"
msgid "Behaviour when clicking on the icon of a running application." msgid "Behaviour when clicking on the icon of a running application."
msgstr "Comportement lors du clic sur l'icône d'une application lancée." msgstr "Comportement lors du clic sur l'icône d'une application lancée."
#: ui/SettingsAction.ui.h:9 #: ui/SettingsAction.ui.h:4
msgid "Toggle windows"
msgstr "Basculer les fenêtres"
#: ui/SettingsAction.ui.h:12
msgid "Scroll action" msgid "Scroll action"
msgstr "Action du défilement de la souris" msgstr "Action du défilement de la souris"
#: ui/SettingsAction.ui.h:13 #: ui/SettingsAction.ui.h:5
msgid "Scroll panel action"
msgstr "Action du défilement de la souris sur le panneau"
#: ui/SettingsAction.ui.h:14
msgid "Behavior when mouse scrolling over the panel." msgid "Behavior when mouse scrolling over the panel."
msgstr "Comportement lors du défilement de la souris sur le panneau" msgstr "Comportement lors du défilement de la souris sur le panneau"
#: ui/SettingsAction.ui.h:15 #: ui/SettingsAction.ui.h:6
msgid "Do nothing" msgid "Scroll panel action"
msgstr "Ne rien faire" msgstr "Action du défilement de la souris sur le panneau"
#: ui/SettingsAction.ui.h:16 #: ui/SettingsAction.ui.h:7
msgid "Switch workspace"
msgstr "Défiler les espaces de travail"
#: ui/SettingsAction.ui.h:17
msgid "Cycle windows"
msgstr "Défiler les fenêtres"
#: ui/SettingsAction.ui.h:18
msgid "Change volume"
msgstr "Changer le volume"
#: ui/SettingsAction.ui.h:19
msgid "Scroll icon action"
msgstr "Action du défilement de la souris sur une application"
#: ui/SettingsAction.ui.h:20
msgid "Behavior when mouse scrolling over an application icon." msgid "Behavior when mouse scrolling over an application icon."
msgstr "Comportement lors du défilement de la souris sur une application" msgstr "Comportement lors du défilement de la souris sur une application"
#: ui/SettingsAction.ui.h:21 #: ui/SettingsAction.ui.h:8
msgid "Same as panel" msgid "Scroll icon action"
msgstr "Comme le panneau" msgstr "Action du défilement de la souris sur une application"
#: ui/SettingsAction.ui.h:22 #: ui/SettingsAction.ui.h:9
msgid "Hotkey overlay" msgid "Hotkey overlay"
msgstr "Superposition des nombres" msgstr "Superposition des nombres"
#: ui/SettingsAction.ui.h:23 #: ui/SettingsAction.ui.h:10
msgid "Use hotkeys to activate apps"
msgstr "Utiliser des raccourcis pour lancer les applications"
#: ui/SettingsAction.ui.h:24
msgid "" msgid ""
"Enable Super+(0-9) as shortcuts to activate apps. It can also be used " "Enable Super+(0-9) as shortcuts to activate apps. It can also be used "
"together with Shift and Ctrl." "together with Shift and Ctrl."
@@ -1196,6 +1164,18 @@ msgstr ""
"Activer Super+(0-9) comme raccourcis pour lancer les applications. Maj et " "Activer Super+(0-9) comme raccourcis pour lancer les applications. Maj et "
"Ctrl peuvent aussi être utilisés." "Ctrl peuvent aussi être utilisés."
#: ui/SettingsAction.ui.h:11
msgid "Use hotkeys to activate apps"
msgstr "Utiliser des raccourcis pour lancer les applications"
#: ui/SettingsAction.ui.h:12
msgid "Context menu entries"
msgstr "Entrées menu contextuel"
#: ui/SettingsAction.ui.h:13
msgid "Add entry"
msgstr "Ajouter entrée"
#: ui/SettingsBehavior.ui.h:1 #: ui/SettingsBehavior.ui.h:1
msgid "Behavior" msgid "Behavior"
msgstr "Comportement" msgstr "Comportement"
@@ -1608,6 +1588,36 @@ msgstr "Couleur et opacité (%) du haut du gradient"
msgid "Gradient bottom color and opacity (%)" msgid "Gradient bottom color and opacity (%)"
msgstr "Couleur et opacité (%) du bas du gradient" msgstr "Couleur et opacité (%) du bas du gradient"
#~ msgid "Terminal"
#~ msgstr "Terminal"
#~ msgid "System monitor"
#~ msgstr "Moniteur système"
#~ msgid "Files"
#~ msgstr "Fichiers"
#~ msgid "Extensions"
#~ msgstr "Extensions"
#~ msgid "Toggle windows"
#~ msgstr "Basculer les fenêtres"
#~ msgid "Do nothing"
#~ msgstr "Ne rien faire"
#~ msgid "Switch workspace"
#~ msgstr "Défiler les espaces de travail"
#~ msgid "Cycle windows"
#~ msgstr "Défiler les fenêtres"
#~ msgid "Change volume"
#~ msgstr "Changer le volume"
#~ msgid "Same as panel"
#~ msgstr "Comme le panneau"
#~ msgid "Top Bar" #~ msgid "Top Bar"
#~ msgstr "Panneau du haut" #~ msgstr "Panneau du haut"

View File

@@ -688,6 +688,29 @@
<summary>Action when scrolling over the panel</summary> <summary>Action when scrolling over the panel</summary>
<description>Set the action that is executed when scrolling over the panel</description> <description>Set the action that is executed when scrolling over the panel</description>
</key> </key>
<key type="s" name="context-menu-entries">
<default>'
[
{
"title": "Terminal",
"cmd": "gnome-terminal"
},
{
"title": "System monitor",
"cmd": "gnome-system-monitor"
},
{
"title": "Files",
"cmd": "nautilus"
},
{
"title": "Extensions",
"cmd": "gnome-extensions-app"
}
]'
</default>
<summary>User defined context menu entries</summary>
</key>
<key type="i" name="scroll-panel-delay"> <key type="i" name="scroll-panel-delay">
<default>0</default> <default>0</default>
<summary>Delay between panel mouse scroll events</summary> <summary>Delay between panel mouse scroll events</summary>

View File

@@ -46,7 +46,6 @@ import {
DTP_EXTENSION, DTP_EXTENSION,
SETTINGS, SETTINGS,
DESKTOPSETTINGS, DESKTOPSETTINGS,
TERMINALSETTINGS,
EXTENSION_PATH, EXTENSION_PATH,
} from './extension.js' } from './extension.js'
import { import {
@@ -2248,7 +2247,7 @@ export const MyShowAppsIconMenu = class extends PopupMenu.PopupMenu {
this._appendItem({ this._appendItem({
title: _('System'), title: _('System'),
cmd: ['gnome-control-center', 'info-overview'], cmd: ['gnome-control-center', 'system'],
}) })
this._appendItem({ this._appendItem({
@@ -2269,30 +2268,12 @@ export const MyShowAppsIconMenu = class extends PopupMenu.PopupMenu {
this._appendSeparator() this._appendSeparator()
} }
this._appendItem({ JSON.parse(SETTINGS.get_string('context-menu-entries')).forEach((e) =>
title: _('Terminal'), this._appendItem({
cmd: [TERMINALSETTINGS.get_string('exec')], title: e.title,
}) cmd: e.cmd.split(' '),
}),
this._appendItem({ )
title: _('System monitor'),
cmd: ['gnome-system-monitor'],
})
this._appendItem({
title: _('Files'),
cmd: ['nautilus'],
})
this._appendItem({
title: _('Extensions'),
cmd: ['gnome-extensions-app'],
})
this._appendItem({
title: _('Settings'),
cmd: ['gnome-control-center'],
})
this._appendList( this._appendList(
SETTINGS.get_strv('panel-context-menu-commands'), SETTINGS.get_strv('panel-context-menu-commands'),
@@ -2301,6 +2282,11 @@ export const MyShowAppsIconMenu = class extends PopupMenu.PopupMenu {
this._appendSeparator() this._appendSeparator()
this._appendItem({
title: _('Gnome Settings'),
cmd: ['gnome-control-center'],
})
let lockTaskbarMenuItem = this._appendMenuItem( let lockTaskbarMenuItem = this._appendMenuItem(
SETTINGS.get_boolean('taskbar-locked') SETTINGS.get_boolean('taskbar-locked')
? _('Unlock taskbar') ? _('Unlock taskbar')

View File

@@ -20,6 +20,7 @@
* Some code was also adapted from the upstream Gnome Shell source code. * Some code was also adapted from the upstream Gnome Shell source code.
*/ */
import Adw from 'gi://Adw'
import GdkPixbuf from 'gi://GdkPixbuf' import GdkPixbuf from 'gi://GdkPixbuf'
import Gio from 'gi://Gio' import Gio from 'gi://Gio'
import GioUnix from 'gi://GioUnix' import GioUnix from 'gi://GioUnix'
@@ -2722,6 +2723,115 @@ const Preferences = class {
this._settings.set_string('scroll-icon-action', widget.get_active_id()) this._settings.set_string('scroll-icon-action', widget.get_active_id())
}) })
let expanders = []
let contextMenuGroup = this._builder.get_object('context_menu_group')
let contextMenuActions = JSON.parse(
this._settings.get_string('context-menu-entries'),
)
let contextMenuAddButton = this._builder.get_object(
'context_menu_add_button',
)
contextMenuAddButton.connect('clicked', () => {
contextMenuActions.push({
title: '',
cmd: '',
})
createContextMenuEntries()
})
let createButton = (icon, tooltip_text, clicked) => {
let btn = new Gtk.Button({ tooltip_text })
btn.set_icon_name(icon)
btn.add_css_class('circular')
btn.set_has_frame(false)
btn.connect('clicked', clicked)
return btn
}
let updateContextMenuEntries = (rebuild) => {
contextMenuActions = contextMenuActions.filter((a) => a.title || a.cmd)
this._settings.set_string(
'context-menu-entries',
JSON.stringify(contextMenuActions),
)
if (rebuild) createContextMenuEntries()
}
let createContextMenuEntries = () => {
expanders.forEach((e) => contextMenuGroup.remove(e))
expanders = []
contextMenuActions.forEach((a, i) => {
let expander = new Adw.ExpanderRow()
let textRow = new Adw.EntryRow()
let commandRow = new Adw.EntryRow()
textRow.set_title(_('Text'))
textRow.set_text(a.title)
textRow.set_show_apply_button(true)
textRow.connect('apply', () => {
a.title = textRow.text
expander.set_title(a.title)
updateContextMenuEntries()
})
commandRow.set_title(_('Command'))
commandRow.set_text(a.cmd)
commandRow.set_show_apply_button(true)
commandRow.connect('apply', () => {
a.cmd = commandRow.text
expander.set_subtitle(a.cmd)
updateContextMenuEntries()
})
expander.add_row(textRow)
expander.add_row(commandRow)
expander.set_title(a.title)
expander.set_subtitle(a.cmd)
let box = new Gtk.Box()
let upBtn = createButton('go-up-symbolic', _('Move up'), () => {
contextMenuActions.splice(
i - 1,
0,
contextMenuActions.splice(i, 1)[0],
)
updateContextMenuEntries(true)
})
let downBtn = createButton('go-down-symbolic', _('Move down'), () => {
contextMenuActions.splice(
i + 1,
0,
contextMenuActions.splice(i, 1)[0],
)
updateContextMenuEntries(true)
})
let deleteBtn = createButton('user-trash-symbolic', _('Remove'), () => {
contextMenuActions.splice(i, 1)
updateContextMenuEntries(true)
})
if (i == 0) upBtn.set_sensitive(false)
if (i == contextMenuActions.length - 1) downBtn.set_sensitive(false)
box.append(upBtn)
box.append(downBtn)
expander.add_suffix(deleteBtn)
expander.add_prefix(box)
contextMenuGroup.add(expander)
expanders.push(expander)
})
}
createContextMenuEntries()
// Create dialog for panel scroll options // Create dialog for panel scroll options
this._builder this._builder
.get_object('scroll_panel_options_button') .get_object('scroll_panel_options_button')

View File

@@ -1,27 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version='1.0' encoding='UTF-8'?>
<interface> <interface>
<!-- interface-name SettingsAction.ui -->
<requires lib="gtk" version="4.0"/> <requires lib="gtk" version="4.0"/>
<requires lib="libadwaita" version="1.6"/>
<object class="AdwPreferencesPage" id="action"> <object class="AdwPreferencesPage" id="action">
<property name="icon-name">input-mouse-symbolic</property>
<property name="title" translatable="yes">Action</property> <property name="title" translatable="yes">Action</property>
<property name="icon_name">input-mouse-symbolic</property>
<!-- group click action -->
<child> <child>
<object class="AdwPreferencesGroup" id="action_group_click_action"> <object class="AdwPreferencesGroup" id="action_group_click_action">
<property name="title" translatable="yes">Click action</property> <property name="title" translatable="yes">Click action</property>
<child> <child>
<object class="AdwActionRow"> <object class="AdwActionRow">
<property name="title" translatable="yes">Click action</property>
<property name="subtitle" translatable="yes">Behaviour when clicking on the icon of a running application.</property> <property name="subtitle" translatable="yes">Behaviour when clicking on the icon of a running application.</property>
<property name="title" translatable="yes">Click action</property>
<child> <child>
<object class="GtkButton" id="middle_click_options_button"> <object class="GtkButton" id="middle_click_options_button">
<property name="receives_default">True</property> <property name="receives-default">True</property>
<property name="valign">center</property> <property name="valign">center</property>
<child> <child>
<object class="GtkImage" id="middle_click_image"> <object class="GtkImage" id="middle_click_image">
<property name="icon_name">emblem-system-symbolic</property> <property name="icon-name">emblem-system-symbolic</property>
</object> </object>
</child> </child>
<style> <style>
@@ -46,29 +44,25 @@
</child> </child>
</object> </object>
</child> </child>
</object> </object>
</child> </child>
<!-- group scroll action -->
<child> <child>
<object class="AdwPreferencesGroup" id="action_group_scroll_action"> <object class="AdwPreferencesGroup" id="action_group_scroll_action">
<property name="title" translatable="yes">Scroll action</property> <property name="title" translatable="yes">Scroll action</property>
<child> <child>
<object class="AdwActionRow"> <object class="AdwActionRow">
<property name="title" translatable="yes">Scroll panel action</property>
<property name="subtitle" translatable="yes">Behavior when mouse scrolling over the panel.</property> <property name="subtitle" translatable="yes">Behavior when mouse scrolling over the panel.</property>
<property name="title" translatable="yes">Scroll panel action</property>
<child> <child>
<object class="GtkButton" id="scroll_panel_options_button"> <object class="GtkButton" id="scroll_panel_options_button">
<property name="visible">True</property>
<property name="receives_default">True</property>
<property name="halign">end</property> <property name="halign">end</property>
<property name="receives-default">True</property>
<property name="valign">center</property> <property name="valign">center</property>
<property name="visible">True</property>
<child> <child>
<object class="GtkImage" id="scroll_panel_options_button_image"> <object class="GtkImage" id="scroll_panel_options_button_image">
<property name="icon-name">emblem-system-symbolic</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="icon_name">emblem-system-symbolic</property>
</object> </object>
</child> </child>
<style> <style>
@@ -78,9 +72,9 @@
</child> </child>
<child> <child>
<object class="GtkComboBoxText" id="scroll_panel_combo"> <object class="GtkComboBoxText" id="scroll_panel_combo">
<property name="visible">True</property>
<property name="valign">center</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
<property name="valign">center</property>
<property name="visible">True</property>
<items> <items>
<item id="NOTHING" translatable="yes">Do nothing</item> <item id="NOTHING" translatable="yes">Do nothing</item>
<item id="SWITCH_WORKSPACE" translatable="yes">Switch workspace</item> <item id="SWITCH_WORKSPACE" translatable="yes">Switch workspace</item>
@@ -91,19 +85,18 @@
</child> </child>
</object> </object>
</child> </child>
<child> <child>
<object class="AdwActionRow"> <object class="AdwActionRow">
<property name="title" translatable="yes">Scroll icon action</property>
<property name="subtitle" translatable="yes">Behavior when mouse scrolling over an application icon.</property> <property name="subtitle" translatable="yes">Behavior when mouse scrolling over an application icon.</property>
<property name="title" translatable="yes">Scroll icon action</property>
<child> <child>
<object class="GtkButton" id="scroll_icon_options_button"> <object class="GtkButton" id="scroll_icon_options_button">
<property name="receives_default">True</property> <property name="receives-default">True</property>
<property name="valign">center</property> <property name="valign">center</property>
<child> <child>
<object class="GtkImage" id="scroll_icon_options_button_image"> <object class="GtkImage" id="scroll_icon_options_button_image">
<property name="icon-name">emblem-system-symbolic</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="icon_name">emblem-system-symbolic</property>
</object> </object>
</child> </child>
<style> <style>
@@ -113,8 +106,8 @@
</child> </child>
<child> <child>
<object class="GtkComboBoxText" id="scroll_icon_combo"> <object class="GtkComboBoxText" id="scroll_icon_combo">
<property name="valign">center</property>
<property name="hexpand">True</property> <property name="hexpand">True</property>
<property name="valign">center</property>
<items> <items>
<item id="NOTHING" translatable="yes">Do nothing</item> <item id="NOTHING" translatable="yes">Do nothing</item>
<item id="CYCLE_WINDOWS" translatable="yes">Cycle windows</item> <item id="CYCLE_WINDOWS" translatable="yes">Cycle windows</item>
@@ -124,26 +117,22 @@
</child> </child>
</object> </object>
</child> </child>
</object> </object>
</child> </child>
<!-- group hotkey -->
<child> <child>
<object class="AdwPreferencesGroup" id="action_group_hotkry"> <object class="AdwPreferencesGroup" id="action_group_hotkey">
<property name="title" translatable="yes">Hotkey overlay</property> <property name="title" translatable="yes">Hotkey overlay</property>
<child> <child>
<object class="AdwActionRow"> <object class="AdwActionRow">
<property name="title" translatable="yes">Use hotkeys to activate apps</property>
<property name="subtitle" translatable="yes">Enable Super+(0-9) as shortcuts to activate apps. It can also be used together with Shift and Ctrl.</property> <property name="subtitle" translatable="yes">Enable Super+(0-9) as shortcuts to activate apps. It can also be used together with Shift and Ctrl.</property>
<property name="title" translatable="yes">Use hotkeys to activate apps</property>
<child> <child>
<object class="GtkButton" id="overlay_button"> <object class="GtkButton" id="overlay_button">
<property name="receives_default">True</property> <property name="receives-default">True</property>
<property name="valign">center</property> <property name="valign">center</property>
<child> <child>
<object class="GtkImage" id="image_overlay"> <object class="GtkImage" id="image_overlay">
<property name="icon_name">emblem-system-symbolic</property> <property name="icon-name">emblem-system-symbolic</property>
</object> </object>
</child> </child>
<style> <style>
@@ -158,9 +147,30 @@
</child> </child>
</object> </object>
</child> </child>
</object> </object>
</child> </child>
<child>
<object class="AdwPreferencesGroup" id="context_menu_group">
<property name="title" translatable="yes">Context menu entries</property>
<child>
<object class="GtkButton" id="context_menu_add_button">
<property name="halign">center</property>
<property name="margin-top">10</property>
<property name="receives-default">True</property>
<property name="valign">center</property>
<property name="width-request">100</property>
<child>
<object class="GtkImage">
<property name="icon-name">list-add-symbolic</property>
<property name="tooltip-text" translatable="yes">Add entry</property>
</object>
</child>
<style>
<class name="circular"/>
</style>
</object>
</child>
</object>
</child>
</object> </object>
</interface> </interface>