Быстрое переключение раскладки в аплете переключения раскладок

Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Для начала воспользуйтесь поиском форума. 2. Укажите версию ОС вместе с разрядностью. Пример: LM 19.3 x64, LM Sarah x32 3. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 4. Какое железо. (достаточно вывод inxi -Fxz в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 5. Суть. Желательно с выводом консоли, логами. 6. Скрин. Просьба указывать 2, 3 и 4 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
Аватара пользователя

hellonet
Сообщения: 3386
Зарегистрирован: 11 окт 2016, 12:58
Решено: 17
Откуда: Новосибирск
Благодарил (а): 1228 раз
Поблагодарили: 524 раза
Контактная информация:

Быстрое переключение раскладки в аплете переключения раскладок

#21

13 май 2024, 10:21

Dja писал(а):
11 май 2024, 13:14
А вот в кедах ведет себя некорректно
Возможно, ничего не скажу - ни разу кеды не ставил

Аватара пользователя

symon2014
Сообщения: 5997
Зарегистрирован: 16 дек 2017, 21:59
Решено: 40
Откуда: Феодосия
Благодарил (а): 32 раза
Поблагодарили: 763 раза
Контактная информация:

Быстрое переключение раскладки в аплете переключения раскладок

#22

13 май 2024, 10:26

Проблема высосана даже не из пальца. В мате по левой кнопке меняется раскладка без всяких меню. Все менюшки на правой кнопке.
Изображение
Мой телеграм - https://t.me/+fy8nIWRI30A0NTZi

Аватара пользователя

Dja
Сообщения: 7069
Зарегистрирован: 27 авг 2016, 20:03
Решено: 30
Откуда: Voskresensk
Благодарил (а): 1368 раз
Поблагодарили: 734 раза
Контактная информация:

Быстрое переключение раскладки в аплете переключения раскладок

#23

13 май 2024, 13:50

symon2014, в крысе тоже ) А в корице меню и по лкм и по пкм :-D

Аватара пользователя

symon2014
Сообщения: 5997
Зарегистрирован: 16 дек 2017, 21:59
Решено: 40
Откуда: Феодосия
Благодарил (а): 32 раза
Поблагодарили: 763 раза
Контактная информация:

Быстрое переключение раскладки в аплете переключения раскладок

#24

13 май 2024, 15:14

Dja писал(а):
13 май 2024, 13:50
А в корице меню и по лкм и по пкм
Вот пусть и жрут корицу , которую мацают своими шаловливыми руками 97 процентов пользователей и разрабов.
Изображение
Мой телеграм - https://t.me/+fy8nIWRI30A0NTZi

Аватара пользователя

Skullckoor
Сообщения: 6
Зарегистрирован: 27 мар 2024, 00:47
Благодарил (а): 2 раза
Контактная информация:

Быстрое переключение раскладки в аплете переключения раскладок

#25

11 июл 2025, 08:40

Некропостинг, но вдруг кому то пригодится.
Что бы не гадить во всю систему скопируйте апплет себе в хомяка:

Код: Выделить всё

cp -r "/usr/share/cinnamon/applets/keyboard@cinnamon.org" "${HOME}/.local/share/cinnamon/applets/"
Далее откройте файл апплета в любимом текстовом редакторе:

Код: Выделить всё

xdg-open "${HOME}/.local/share/cinnamon/applets/keyboard@cinnamon.org/applet.js"
Там есть, как раз рядом стоящие, вот такие блоки (ищется по «click», сейчас ~ 300 строка):

Код: Выделить всё

    _onButtonPressEvent(actor, event) {
        // Cycle to the next layout
        if (event.get_button() === 2) {
            const selected_group = this._controller.get_current_layout_idx();
            const new_group = (selected_group + 1) % this._layoutItems.length;
            this._controller.set_current_layout_idx(new_group);
        }
        return Applet.Applet.prototype._onButtonPressEvent.call(this, actor, event);
    }

    on_applet_clicked(event) {
        this.menu.toggle();
    }
Поменяйте «this.menu.toggle();» и 3 вызова функций сверху местами. Должно получится:

Код: Выделить всё

    _onButtonPressEvent(actor, event) {
        // Cycle to the next layout
        if (event.get_button() === 2) {
            this.menu.toggle();
        }
        return Applet.Applet.prototype._onButtonPressEvent.call(this, actor, event);
    }

    on_applet_clicked(event) {
        const selected_group = this._controller.get_current_layout_idx();
        const new_group = (selected_group + 1) % this._layoutItems.length;
        this._controller.set_current_layout_idx(new_group);
    }
Не забудьте перезапустить Cinnamon. По умолчанию [Ctrl+Alt+Esc]. Или из контекстного меню панели.
Не так страшен мир, как его обитатели.

Ответить

Вернуться в «Cinnamon»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость