LINUX.ORG.RU

awesome rules callback

 ,


0

3

хочется понимания callback, но ничего, абсолютно ничего дельного я не нагуглил, а всё, что есть в интернете я уже изобрёл для себя до этого.

интересует: не только колбэк на запуск, но и на завершение, то есть, можно ли заставить осом что-то делать по завершению приложения именно из колбэка? (да, можно написать костыль, но это я оставлю на десерт, если с колбэком ничего не вырастет)

ещё: как организовать правила так, чтобы прибить к родительскому окну тайлинг гвоздями, а к дочерним — floating, причём, такими же гвоздями? реально ли? что-то я про регекспы не распарсил, плюс не понял, как оно вообще работает.

и наконец: свитчтутаг. если я вызвал приложение на пустой тег, потыкал его и закрыл, можно ли реализовать возврат на предыдущий тег, на котором я был до этого (откуда вызвал приложение)? или я таки многого хочу?

Какие callback'и имеются в виду? Те, которые можно добавить в awesome.rules?

Для отлова завершения есть сигналы https://awesome.naquadah.org/wiki/Signals

А дочерние окна... Иногда окна являются не дочерними, а полноправной частью интерфейса (например, окно чата в IM). Обычно диалоговые окна (открытие файла или например диалог фильтра в GIMP) сами становятся floating, т.к. awesome старается уважать стандарты. Короче, ты обрекаешь себя на головную боль если попробуешь этим рулить.

Про switch to tag не могу сказать точно, но в теории легко реализовать. Если под switch to tag имеется в виду комбинация клавиш вызывающая prompt например для запуска приложения, то ничто не мешает отловить закрытие приложения на этом тэге и вызов awful.tag.history.restore. Правда, нужно ещё убедиться, что после вызова приложения не был переключен тэг (потыкал прогу, но оставил работать).

jeuta ★★★★
()
Последнее исправление: jeuta (всего исправлений: 1)
Ответ на: комментарий от jeuta

Для отлова завершения есть сигналы

unmanage? он вроде для минимизированных (свёрнутых) клиентов (окон).

А дочерние окна... Иногда окна являются не дочерними, а полноправной частью интерфейса (например, окно чата в IM).

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

отловить закрытие приложения

читай выше.

Правда, нужно ещё убедиться, что после вызова приложения не был переключен тэг (потыкал прогу, но оставил работать).

поэтому и нужно научиться отлавливать закрытие, завершение приложения, даже через kill или при сегфолте. но если клиент просто свернули (но не в трей, с треем другая история, но это сейчас не суть), то ничего не должно произойти, ибо сигнал завершения осомом не получен.

funeralismatic ★★★
() автор топика
Ответ на: комментарий от funeralismatic

Вон же есть property::minimized..

Про дочерние окна я вообще толком не понял.

Всякие диалоги у меня плавающие всегда вроде и никаких особых нареканий на это нет.

jeuta ★★★★
()
Ответ на: комментарий от jeuta

Вон же есть property::minimized..

тогда не понял. в сишные исходники не полезу, ибо сей не знаю.

Всякие диалоги у меня плавающие всегда

это если ты в правилах не прибьёшь floating = false к классу/имени/роли гвоздями.

funeralismatic ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.