Скрыть верхнюю панель в обзоре

Что я хочу сделать:

Скройте панель GNOME, когда открыт обзор/сетка приложений, но покажите ее на рабочем столе. Поэтому, когда я перехожу к обзору своих действий или просматриваю свои приложения, панели нет. Но когда я смотрю на рабочий стол, он там, и я могу взаимодействовать с ним и все такое.

Что я пробовал:

Я безуспешно пробовал варианты расширений Hide Top Bar.

Теоретически

Вы должны быть в состоянии сделать расширение, чтобы сделать это, верно? У меня очень мало знаний о том, как сделать расширение для GNOME, поэтому буду признателен за любую помощь.

3 ответа

Для родной панели

Установите расширение Hide Panel от fthx

открыть ~/.local/share/gnome-shell/extensions/ hide-panel@fthx/extension.js

изменить AppMenu.container.hide()

              this.showing = Overview.connect('showing', this._show_panel.bind(this));
        this.hiding = Overview.connect('hiding', this._hide_panel.bind(this));

к

              this.showing = Overview.connect('hiding', this._show_panel.bind(this));
        this.hiding = Overview.connect('showing', this._hide_panel.bind(this));

Вуаля.

Теперь это расширение скрывает панель от обзора.

Я предлагаю только частичное решение, которое подразумевает использование расширения приборной панели с включенной функцией Intellihide.

Intellihide работает отлично, за исключением того, что панель открывается в обзоре.

Ответственный находится в ~/.local/share/gnome-shell/extensions/dash-to-panel@jderose9.github.com/intellihide.js

          _checkIfShouldBeVisible: function(fromRevealMechanism) {
        if (Main.overview.visibleTarget || this._dtpPanel.taskbar.previewMenu.opened || 
            this._panelBox.get_hover() || this._checkIfGrab()) {
            return true;
        }

Изменение _checkIfShouldBeVisibleк

          _checkIfShouldBeVisible: function(fromRevealMechanism) {
        if (Main.overview.visibleTarget) {
            return false;
        }
        else if (Main.overview.visibleTarget || this._panelBox.get_hover() || this._checkIfGrab() || this._dtpPanel.taskbar.previewMenu.opened) {
            return true;
        }

скрывает панель от обзора.

Это работает для gnome 3.36, 41 и, я думаю, для всех остальных версий.

Я еще не знаю, как использовать Intellihide для взаимодействия с панелью только для обзора, и это было моей основной целью. На данный момент я в порядке с этим.

РЕДАКТИРОВАТЬ:

Я нашел лучшее решение с выключенным Intellihide.

~/.local/share/gnome-shell/extensions/dash-to-panel@jderose9.github.com/panel.js

_adjustForOverview: function()

сдача

this.panelBox[isShown ? 'show' : 'hide']();

к

this.panelBox[isShown ? 'hide' : 'hide']();

но теперь нет хорошей плавной анимации.. думаю, ничего страшного

вы можете сделать это, установив это расширение . Попробуйте sudo apt install gnome-shellкоманду перед установкой.

Другие вопросы по тегам