Рейтинг:2

Поместить «Выключение питания» в качестве последней опции в системном меню?

флаг si

Я использую Ubuntu 21.10 чуть больше месяца, и есть выбор дизайна, который меня раздражает.

Кнопка «Выйти» расположена под кнопкой «Выключить» в системном меню. Вы можете увидеть ссылку на изображение ниже.

Изображение, показывающее меню с «Блокировка», за которым следует разделитель, затем «Перезагрузка», «Выключение» и «Выход из системы».

Меня это раздражает, так как я привык нажимать последнюю опцию в меню, как в Mac OS. Есть ли способ поместить кнопку «Выключить» под «Выход из системы»?

Я установил несколько разных расширений, чтобы попытаться исправить это.

«Вывести подменю кнопки выключения/выхода из системы» введите описание изображения здесь Как видите, у меня нет возможности перестроиться. :/

"Лучший барный организатор"

Несколько других, но просто не удалось поместить кнопку выключения питания под кнопку выхода из системы. Кто-нибудь знает, как изменить порядок параметров?

Кроме того, я случайно наткнулся на несколько дизайнов меню, которые выглядят хорошо, как ссылка ниже.

Другой дизайн меню

Я полагаю, что это был Gnome3 в 18.04? Мне больше нравятся круглые кнопки. Я тоже буду в порядке, перейдя на этот образ.

Заранее спасибо за помощь!

флаг br
Привет, kelv.. можно настроить по своему усмотрению, отредактировав расширение Bringoutsubmenu. Вы все еще сохраняете это расширение?
флаг br
https://i.stack.imgur.com/v7uA8.jpg
vanadium avatar
флаг cn
@UnKNOWn лучше публиковать ответы в качестве ответа здесь.
флаг si
@UnKNOWn Не могли бы вы показать мне, как это сделать? Страница, которая появляется, кажется, что не может
флаг si
Я отредактировал вопрос, чтобы показать расширение Bringoutsubmenu
Рейтинг:1
флаг si

С новым обновлением расширения код немного изменился, поэтому для этого.

введите описание изображения здесь

Включите опцию

Затем с помощью команды из ответа @UnKNOWn

Откройте файл расширений extension.js с помощью приведенной ниже команды.

gedit $HOME/.local/share/gnome-shell/extensions/BringOutSubmenuOfPowerOffLogoutButton@pratap.fastmail.fm/extension.js

Измените порядок меню, как вы хотите, из функции _createMenu(), например

_createMenu () {
    let bindFlags = GObject.BindingFlags.DEFAULT | GObject.BindingFlags.SYNC_CREATE;
    let forceLockDown = this._settings.get_boolean('force-lock-down');
    пусть логическое;
    
    // Разделитель1
    
    boolean = this._settings.get_boolean('remove-separator-1');
    если (! boolean) { SystemMenu.addMenuItem (separator1); };
    
    // Приостановить
    

    приостановить = новый PopupMenu.PopupImageMenuItem(_('Приостановить'), 'медиа-воспроизведение-пауза-символ');
    suspend.connect('активировать', () => {
                        DefaultActions.activateSuspend();
                });
    
    если(!forceLockDown) {
            SystemMenu.addMenuItem (приостановить);
            DefaultActions.bind_property('можно приостановить', приостановить, 'видимый', bindFlags);
            } еще {
                boolean = this._settings.get_boolean («удалить кнопку приостановки»);
                если (!логическое) {
                SystemMenu.addMenuItem (приостановить);
                // DefaultActions.bind_property('can-suspend', suspend, 'visible', bindFlags);
                        }
                }
                
    
                
    // Рестарт

    перезагрузка = новый PopupMenu.PopupImageMenuItem(_('Перезагрузка...'), 'символическая перезагрузка системы');
    restart.connect('активировать', () => {
                            SHELL_MAJOR_VERSION >= 40 ? DefaultActions.activateRestart() : SessionManager.RebootRemote();
                    });
    
    если(!forceLockDown) {
            SystemMenu.addMenuItem(перезагрузка);
            SHELL_MAJOR_VERSION >= 40 ? DefaultActions.bind_property («можно перезапустить», перезапустить, «видимый», bindFlags):
                            DefaultActions.bind_property('can-power-off', reboot, 'visible', bindFlags);
            } еще {
                boolean = this._settings.get_boolean('кнопка удаления-перезапуска');
                если (!логическое) {
                SystemMenu.addMenuItem(перезагрузка);
                // SHELL_MAJOR_VERSION >= 40 ? DefaultActions.bind_property('can-restart', this._restartButton, 'visible', bindFlags):
                                // DefaultActions.bind_property('can-power-off', this._restartButton, 'visible', bindFlags);
                        }
                }
                
    // Выйти

    logout = new PopupMenu.PopupImageMenuItem(_('Выход из системы'), 'system-log-out-symbolic');
    logout.connect('активировать', () => { DefaultActions.activateLogout(); });
    
    если(!forceLockDown) {
            SystemMenu.addMenuItem (выход из системы);
            DefaultActions.bind_property('can-logout', logout, 'visible', bindFlags);
            } еще {
                boolean = this._settings.get_boolean('кнопка удаления-выхода');
                если (!логическое) {
                SystemMenu.addMenuItem (выход из системы);
                // DefaultActions.bind_property('can-logout', logout, 'visible', bindFlags);
                        }
                }
                
    
    // Разделитель2
    
    boolean = this._settings.get_boolean('remove-separator-2');
    если (! boolean) { SystemMenu.addMenuItem (separator2); };
    
    
                
    // Сила

    power = new PopupMenu.PopupImageMenuItem(_('Power Off...'), 'system-shutdown-symbolic');
    power.connect('активировать', () => { DefaultActions.activatePowerOff(); });
    
    если(!forceLockDown) {
            SystemMenu.addMenuItem (мощность);
            DefaultActions.bind_property('can-power-off', power, 'visible', bindFlags);
            } еще {
                boolean = this._settings.get_boolean («удалить кнопку питания»);
                если (!логическое) {
                SystemMenu.addMenuItem (мощность);
                // DefaultActions.bind_property('can-suspend', suspend, 'visible', bindFlags);
                        }
                }
                
                
    // Сменить пользователя

    switchUser = new PopupMenu.PopupImageMenuItem(_('Сменить пользователя...'), 'системный-переключатель-пользователь-символический');
    SystemMenu.addMenuItem(switchUser)
    switchUser.connect('активировать', () => { DefaultActions.activatSwitchUser(); });
    DefaultActions.bind_property('can-switch-user', switchUser, 'visible', bindFlags);
    
    Действия по умолчанию.forceUpdate();   

    }

У вас должно получиться примерно такое меню:

введите описание изображения здесь

флаг br
Хороший улов @kelv. Вы проверяли, не включая «Ключи принудительной блокировки», если порядок изменился? https://extensions.gnome.org/extension/4693/rounded-system-menu-buttons/ Посмотрите на это для круглых кнопок
Рейтинг:0
флаг br

вы можете настроить порядок, отредактировав расширения расширение.js файл.

Откройте расширения расширение.js файл с командой ниже

gedit $HOME/.local/share/gnome-shell/extensions/BringOutSubmenuOfPowerOffLogoutButton@pratap.fastmail.fm/extension.js

Изменить порядок меню, как вы хотите от _следующее действие() функция, например

_следующее действие () {
пусть логическое;
    // Разделитель1
boolean = this.gsettings.get_boolean('remove-separator-1');
если (! boolean) { SystemMenu.addMenuItem (separator1); };
    // Приостановить
boolean = this.gsettings.get_boolean('кнопка удаления-приостановки');
если (! boolean) { SystemMenu.addMenuItem (приостановить); };
    // Сменить пользователя
SystemMenu.addMenuItem(switchUser);
let bindFlags = GObject.BindingFlags.DEFAULT | GObject.BindingFlags.SYNC_CREATE;
DefaultActions.bind_property('can-switch-user', switchUser, 'visible', bindFlags);
    // Разделитель2
boolean = this.gsettings.get_boolean('remove-separator-2');
если (! boolean) { SystemMenu.addMenuItem (separator2); };
    // Выйти
boolean = this.gsettings.get_boolean('кнопка удаления-выхода');
если (! boolean) { SystemMenu.addMenuItem (выход из системы); };
    //Рестарт
boolean = this.gsettings.get_boolean('кнопка удаления-перезапуска');  
if (! boolean) { SystemMenu.addMenuItem (перезапуск); };
    // Сила
boolean = this.gsettings.get_boolean («удалить кнопку питания»);
если (! boolean) { SystemMenu.addMenuItem (сила); };
}

введите описание изображения здесь

флаг si
Это сработало чудесно! Большое спасибо @UnKNOWn

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.