LINUX.ORG.RU

отловить момент появления окна


0

0

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

#!/bin/bash
firefox&
count=0
while [ $count == 0 ];do
  if [ `xwininfo -name "LINUX.ORG.RU - Русская информация об ОС Linux - Mozilla Firefox"| wc -l` != "0" ];then
    export count=1
    sleep 0.1
  fi
done
killall firefox
но оно киляет лису раньше чем окно успевает отрисоваться, т.к. параметры окна задаются раньше, чем окно реально отрисуется - потому xwininfo не годится
как?

★★★★
Ответ на: комментарий от vostrik

инструмент не принципиален - можно и поставить
но лучше всё-таки то, что в с вероятностью 99% искаропки присутствует

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

> LDTP

Вот тоже хотел предложить :) Помню надо было кое-какие операции в проге автоматизировать. Изменил прогу, а потом обнаружил, что если автоматизация касается только элементов ГУИ, то можно и не меняя исходников скриптик написать :)

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

т.е. стандартными фичами никак?
у всех предложенных или код не актуальный или куча зависимостей...

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

ну я, например, такого способа не знаю. хотя зависит от задачи.

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

Есть утилитки попроще LDTP, но и с меньшими возможностями. Хотя для обнаружения окна они и не нужны. Точно не помню, как она называлась. Искать в сторону xtst, xdotool.

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

чо? эта тулза похожа на то, о чем говорит gag, но я не уверен, что она не страдает той же болезнью, что и xwininfo

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

похоже страдает (
как и wmctrl, xdotool, xwinifno, xrestop
самое геморное то, что надо отследить хотя бы начало отрисовки морды
а все эти проги смотрят только параметры окна
тот же xdotool может легко кликнуть в окне, которого на монике ещё нет )
и появиться после «клика» по нему, оно может спустя пару сек

megabaks ★★★★
() автор топика

> нужно поймать момент, когда окно полностью отрисовалось

Поставленную задачу решить невозможно, т.к. нет такого состояния как «окно полностью отрисовалось». А если это видеопроигрыватель? Он только к концу фильма «полностью отрисуется»?

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

да
слабал нечто, проверяющее всё чо можно и нельзя
и qt и qtk софт понимает
но вот сцуко гуглоземля не подаётся никак

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

и хромой тоже
чой-то там гуголь намутил...

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