Prevent keeping gnome-shell top panel when panel is already at top

This commit is contained in:
Charles Gagnon
2025-02-19 18:55:16 -05:00
parent 55ccb19a8d
commit fcb3b79c9d
3 changed files with 77 additions and 67 deletions

118
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 16:00-0500\n" "POT-Creation-Date: 2025-02-19 18:50-0500\n"
"PO-Revision-Date: 2025-02-19 16:04-0500\n" "PO-Revision-Date: 2025-02-19 18: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"
@@ -55,232 +55,236 @@ msgstr "Hauteur du bouton Afficher le Bureau (px)"
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:295 #: src/prefs.js:296
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:363 ui/SettingsPosition.ui.h:13 ui/SettingsStyle.ui.h:19 #: src/prefs.js:304
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"
#: src/prefs.js:372 ui/SettingsPosition.ui.h:13 ui/SettingsStyle.ui.h:19
msgid "Left" msgid "Left"
msgstr "Gauche" msgstr "Gauche"
#: src/prefs.js:364 #: src/prefs.js:373
msgid "Center" msgid "Center"
msgstr "Centre" msgstr "Centre"
#: src/prefs.js:365 ui/SettingsPosition.ui.h:14 ui/SettingsStyle.ui.h:20 #: src/prefs.js:374 ui/SettingsPosition.ui.h:14 ui/SettingsStyle.ui.h:20
msgid "Right" msgid "Right"
msgstr "Droit" msgstr "Droit"
#: src/prefs.js:367 ui/BoxWindowPreviewOptions.ui.h:38 #: src/prefs.js:376 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:368 src/prefs.js:373 ui/SettingsPosition.ui.h:22 #: src/prefs.js:377 src/prefs.js:382 ui/SettingsPosition.ui.h:22
msgid "Middle" msgid "Middle"
msgstr "Milieu" msgstr "Milieu"
#: src/prefs.js:369 ui/BoxWindowPreviewOptions.ui.h:37 #: src/prefs.js:378 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:372 ui/SettingsPosition.ui.h:21 #: src/prefs.js:381 ui/SettingsPosition.ui.h:21
msgid "Start" msgid "Start"
msgstr "Début" msgstr "Début"
#: src/prefs.js:374 ui/SettingsPosition.ui.h:23 #: src/prefs.js:383 ui/SettingsPosition.ui.h:23
msgid "End" msgid "End"
msgstr "Fin" msgstr "Fin"
#: src/prefs.js:500 #: src/prefs.js:509
msgid "Show Applications button" msgid "Show Applications button"
msgstr "Bouton Afficher les Applications" msgstr "Bouton Afficher les Applications"
#: src/prefs.js:501 #: src/prefs.js:510
msgid "Activities button" msgid "Activities button"
msgstr "Bouton Activités" msgstr "Bouton Activités"
#: src/prefs.js:502 #: src/prefs.js:511
msgid "Taskbar" msgid "Taskbar"
msgstr "Barre des tâches" msgstr "Barre des tâches"
#: src/prefs.js:503 #: src/prefs.js:512
msgid "Date menu" msgid "Date menu"
msgstr "Horloge" msgstr "Horloge"
#: src/prefs.js:504 #: src/prefs.js:513
msgid "System menu" msgid "System menu"
msgstr "Menu système" msgstr "Menu système"
#: src/prefs.js:505 #: src/prefs.js:514
msgid "Left box" msgid "Left box"
msgstr "Zone gauche" msgstr "Zone gauche"
#: src/prefs.js:506 #: src/prefs.js:515
msgid "Center box" msgid "Center box"
msgstr "Zone centre" msgstr "Zone centre"
#: src/prefs.js:507 #: src/prefs.js:516
msgid "Right box" msgid "Right box"
msgstr "Zone droite" msgstr "Zone droite"
#: src/prefs.js:508 #: src/prefs.js:517
msgid "Desktop button" msgid "Desktop button"
msgstr "Bouton Afficher le Bureau" msgstr "Bouton Afficher le Bureau"
#: src/prefs.js:518 #: src/prefs.js:527
msgid "Move up" msgid "Move up"
msgstr "Déplacer vers le haut" msgstr "Déplacer vers le haut"
#: src/prefs.js:520 #: src/prefs.js:529
msgid "Move down" msgid "Move down"
msgstr "Déplacer vers le bas" msgstr "Déplacer vers le bas"
#: src/prefs.js:526 #: src/prefs.js:535
msgid "Visible" msgid "Visible"
msgstr "Visible" msgstr "Visible"
#: src/prefs.js:530 #: src/prefs.js:539
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:544 #: src/prefs.js:553
msgid "Stacked to top" msgid "Stacked to top"
msgstr "Empilé en haut" msgstr "Empilé en haut"
#: src/prefs.js:544 #: src/prefs.js:553
msgid "Stacked to left" msgid "Stacked to left"
msgstr "Empilé à gauche" msgstr "Empilé à gauche"
#: src/prefs.js:548 #: src/prefs.js:557
msgid "Stacked to bottom" msgid "Stacked to bottom"
msgstr "Empilé en bas" msgstr "Empilé en bas"
#: src/prefs.js:548 #: src/prefs.js:557
msgid "Stacked to right" msgid "Stacked to right"
msgstr "Empilé à droite" msgstr "Empilé à droite"
#: src/prefs.js:550 #: src/prefs.js:559
msgid "Centered" msgid "Centered"
msgstr "Centré" msgstr "Centré"
#: src/prefs.js:551 #: src/prefs.js:560
msgid "Monitor Center" msgid "Monitor Center"
msgstr "Centre de l'écran " msgstr "Centre de l'écran "
#: src/prefs.js:578 #: src/prefs.js:587
msgid "More options" msgid "More options"
msgstr "Plus d'options" msgstr "Plus d'options"
#: src/prefs.js:613 #: src/prefs.js:622
msgid "Reset to defaults" msgid "Reset to defaults"
msgstr "Restaurer paramètres" msgstr "Restaurer paramètres"
#: src/prefs.js:636 #: src/prefs.js:645
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:659 #: src/prefs.js:668
msgid "Open icon" msgid "Open icon"
msgstr "Choisir l'icône" msgstr "Choisir l'icône"
#: src/prefs.js:724 #: src/prefs.js:733
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:816 #: src/prefs.js:825
msgid "Primary monitor" msgid "Primary monitor"
msgstr "Écran principal" msgstr "Écran principal"
#: src/prefs.js:817 #: src/prefs.js:826
msgid "Monitor " msgid "Monitor "
msgstr "Écran " msgstr "Écran "
#: src/prefs.js:944 #: src/prefs.js:953
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:1478 #: src/prefs.js:1487
msgid "Dynamic opacity options" msgid "Dynamic opacity options"
msgstr "Options d'opacité dynamique" msgstr "Options d'opacité dynamique"
#: src/prefs.js:1720 #: src/prefs.js:1729
msgid "Intellihide options" msgid "Intellihide options"
msgstr "Options du masquage intelligent" msgstr "Options du masquage intelligent"
#: src/prefs.js:1916 #: src/prefs.js:1925
msgid "Window preview options" msgid "Window preview options"
msgstr "Options de la prévisualisation" msgstr "Options de la prévisualisation"
#: src/prefs.js:2467 #: src/prefs.js:2476
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:2634 #: src/prefs.js:2643
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:2723 #: src/prefs.js:2732
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:2769 #: src/prefs.js:2778
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:2893 #: src/prefs.js:2902
msgid "Advanced hotkeys options" msgid "Advanced hotkeys options"
msgstr "Raccourcis avancés" msgstr "Raccourcis avancés"
#: src/prefs.js:2921 #: src/prefs.js:2930
msgid "Secondary Menu Options" msgid "Secondary Menu Options"
msgstr "Options du menu secondaire" msgstr "Options du menu secondaire"
#: src/prefs.js:2965 ui/SettingsFineTune.ui.h:23 #: src/prefs.js:2974 ui/SettingsFineTune.ui.h:23
msgid "Advanced Options" msgid "Advanced Options"
msgstr "Options avancées" msgstr "Options avancées"
#: src/prefs.js:3133 #: src/prefs.js:3142
#, javascript-format #, javascript-format
msgid "%d ms" msgid "%d ms"
msgstr "%d ms" msgstr "%d ms"
#: src/prefs.js:3139 #: src/prefs.js:3148
#, javascript-format #, javascript-format
msgid "%d °" msgid "%d °"
msgstr "%d °" msgstr "%d °"
#: src/prefs.js:3145 src/prefs.js:3151 #: src/prefs.js:3154 src/prefs.js:3160
#, javascript-format #, javascript-format
msgid "%d %%" msgid "%d %%"
msgstr "%d %%" msgstr "%d %%"
#: src/prefs.js:3157 #: src/prefs.js:3166
#, javascript-format #, javascript-format
msgid "%.1f" msgid "%.1f"
msgstr "%.1f" msgstr "%.1f"
#: src/prefs.js:3163 #: src/prefs.js:3172
#, 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:3290 #: src/prefs.js:3299
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:3413 #: src/prefs.js:3422
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:3508 #: src/prefs.js:3517
msgid "Export settings" msgid "Export settings"
msgstr "Exporter les paramètres" msgstr "Exporter les paramètres"
#: src/prefs.js:3529 #: src/prefs.js:3538
msgid "Import settings" msgid "Import settings"
msgstr "Importer des paramètres" msgstr "Importer des paramètres"

View File

@@ -284,17 +284,25 @@ const Preferences = class {
let monitorSync = this._settings.get_boolean( let monitorSync = this._settings.get_boolean(
'panel-element-positions-monitors-sync', 'panel-element-positions-monitors-sync',
) )
let topAvailable = let isPrimary = this.monitors[this._currentMonitorIndex].primary
!keepTopPanel || let topAvailable = !keepTopPanel || (!monitorSync && !isPrimary)
(!monitorSync && !this.monitors[this._currentMonitorIndex].primary) let topButton = this._builder.get_object('position_top_button')
let topRadio = this._builder.get_object('position_top_button') let keepGsPanelAvailable = !(topButton.get_active() && isPrimary)
let keepGsPanelSwitch = this._builder.get_object('stockgs_top_panel_switch')
topRadio.set_sensitive(topAvailable) topButton.set_sensitive(topAvailable)
topRadio.set_tooltip_text( topButton.set_tooltip_text(
!topAvailable !topAvailable
? _('Unavailable when gnome-shell top panel is present') ? _('Unavailable when gnome-shell top panel is present')
: '', : '',
) )
keepGsPanelSwitch.set_sensitive(keepGsPanelAvailable)
keepGsPanelSwitch.set_tooltip_text(
keepGsPanelAvailable
? ''
: _('Unavailable when the panel on the primary monitor is at the top'),
)
} }
_getPanelPosition(monitorIndex) { _getPanelPosition(monitorIndex) {
@@ -312,6 +320,7 @@ const Preferences = class {
PanelSettings.setPanelPosition(this._settings, monitorIndex, position) PanelSettings.setPanelPosition(this._settings, monitorIndex, position)
}) })
this._setAnchorLabels(this._currentMonitorIndex) this._setAnchorLabels(this._currentMonitorIndex)
this._maybeDisableTopPosition()
} }
_setPositionRadios(position) { _setPositionRadios(position) {

View File

@@ -495,10 +495,7 @@ export const PreviewMenu = GObject.registerClass(
(panelSize + previewSize) + (panelSize + previewSize) +
panelBoxTheme.get_padding(St.Side.LEFT) panelBoxTheme.get_padding(St.Side.LEFT)
} else if (geom.position == St.Side.TOP) { } else if (geom.position == St.Side.TOP) {
y = y = geom.y + panelSize - panelBoxTheme.get_padding(St.Side.BOTTOM)
this.panel.monitor.y +
panelSize -
panelBoxTheme.get_padding(St.Side.BOTTOM)
} else { } else {
//St.Side.BOTTOM //St.Side.BOTTOM
y = y =