Openbox: запустить максимально развернутое приложение через меню ob

Я пытаюсь настроить menu.xml моего openbox, и я хотел бы определить пункт меню, который запускает приложение максимизации, например Firefox.

<menu id="root-menu" label="OpenBox 3">
    <item label="firefox">
        <action name="Execute">
            <execute>firefox</execute>
        </action>
        <action name="Maximize" />
    </item>
</menu>

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

У кого-то есть решение?

7
задан 29 March 2013 в 19:47

1 ответ

Вот способ открыть все приложения, максимизируемые при использовании менеджера окон Openbox. (Я не знаю, какой дистрибутив OP использует и таким образом, два немного отличающихся маршрута предлагаются.)

Для дистрибутивов кроме Lubuntu:
Сделайте резервное копирование /etc/xdg/openbox/rc.xml для безопасности
Открытый /etc/xdg/openbox/rc.xml с текстовым редактором
Перейдите к нижней части файла. Необходимо видеть:
</applications>
</openbox_config>

Чуть выше строки с </applications>, вставьте следующее:
<application class="*">
<maximized>yes</maximized>
</application>
Сохранить rc.xml
Откройте терминал и работайте openbox --reconfigure. Это сделает Openbox, знающий об изменениях. Если не эффективный, выйдите из системы и въезжайте задним ходом. С этого времени все приложения откроются максимизируемый.

(Источник)


Для пользователей Lubuntu 12.10, редактирования ~/.config/openbox/lubuntu-rc.xml вместо /etc/xdg/openbox/rc.xml. (Я проверил это, потому что я использую Lubuntu 12.10.)
Если Вы решите, что не хотите, чтобы все приложения открылись максимизируемый, но просто некоторые определенные, то Вам будет нужен следующий код вместо того выше для каждого приложения, которое Вы хотите максимизируемый:
<application class="......"> (См. ниже),
<maximized>yes</maximized>
</application>
  • Обратите внимание что способ узнать application class через xprop.
  • У Вас должно будет быть открытое окно терминала, а также окно приложения, класс которого необходимо найти.
  • Ввести xprop _OB_APP_CLASS в окне терминала и нажимают Enter.
  • Заметьте, что курсор изменит свое появление на крест нитей.
  • Теперь, с помощью мыши, нажмите в окне приложения, в котором Вы нуждаетесь.
  • Затем оглянитесь назад на вывод в терминале. Например, если я работаю xprop _OB_APP_CLASS и нажмите на окно, принадлежащее Google Chrome, я вижу: _OB_APP_CLASS(UTF8_STRING) = "Google-chrome" и "Google Chrome", включая кавычки, точно, что должно быть введено как класс приложений.
  • Необходимо будет сделать это для каждого приложения, которое Вы требуете иметь открытый максимизируемый.
    Один побочный эффект <maximized>yes</maximized> это не только главное окно, но и другие окна, открытые максимизируемый. Например, в Firefox, нажатие Alt> Edit> Preferences или Alt> Help> About приведет к максимизируемым областям. То же происходит в Диспетчере задач Chrome (Shift+Esc).

Если такое поведение является нежелательным, xprop должен будет быть выполнен и для основных и для вторичных окон, чтобы видеть, можно ли их отличить.
Для Chrome, Firefox, Opera и браузеров Seamonkey, следующий код максимизирует только надлежащее окно браузера и не "внутренние" окна:
<application role="browser">
<maximized>yes</maximized>
</application>

8
ответ дан 29 March 2013 в 19:47

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

Похожие вопросы: