mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-24 18:43:37 +00:00
More precise identification of the lyx window (by id, instead of the buggy by title).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37410 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
82aa99f551
commit
ac7572f366
@ -224,7 +224,7 @@ def RaiseWindow():
|
|||||||
#os.system("echo x-session-manager open files: `lsof -p $X_PID | grep ICE-unix | wc -l`")
|
#os.system("echo x-session-manager open files: `lsof -p $X_PID | grep ICE-unix | wc -l`")
|
||||||
####os.system("wmctrl -l | ( grep '"+lyx_window_name+"' || ( killall lyx ; sleep 1 ; killall -9 lyx ))")
|
####os.system("wmctrl -l | ( grep '"+lyx_window_name+"' || ( killall lyx ; sleep 1 ; killall -9 lyx ))")
|
||||||
#os.system("wmctrl -R '"+lyx_window_name+"' ;sleep 0.1")
|
#os.system("wmctrl -R '"+lyx_window_name+"' ;sleep 0.1")
|
||||||
system_retry(30, "wmctrl -R '"+lyx_window_name+"'")
|
system_retry(30, "wmctrl -a '"+lyx_window_name+"'")
|
||||||
|
|
||||||
|
|
||||||
lyx_pid = os.environ.get('LYX_PID')
|
lyx_pid = os.environ.get('LYX_PID')
|
||||||
@ -274,7 +274,7 @@ else:
|
|||||||
|
|
||||||
outfile = open(outfilename, 'w')
|
outfile = open(outfilename, 'w')
|
||||||
|
|
||||||
if lyx_pid != "":
|
if not lyx_pid is None:
|
||||||
RaiseWindow()
|
RaiseWindow()
|
||||||
sendKeystring("\Afn", lyx_pid)
|
sendKeystring("\Afn", lyx_pid)
|
||||||
|
|
||||||
@ -298,6 +298,8 @@ while not failed:
|
|||||||
if lyx_pid != "":
|
if lyx_pid != "":
|
||||||
print "Found running instance(s) of LyX: " + lyx_pid + ": killing them all\n"
|
print "Found running instance(s) of LyX: " + lyx_pid + ": killing them all\n"
|
||||||
os.system("killall lyx")
|
os.system("killall lyx")
|
||||||
|
time.sleep(0.5)
|
||||||
|
os.system("killall -KILL lyx")
|
||||||
time.sleep(0.2)
|
time.sleep(0.2)
|
||||||
print "Starting LyX . . ."
|
print "Starting LyX . . ."
|
||||||
if lyx_userdir is None:
|
if lyx_userdir is None:
|
||||||
@ -306,17 +308,15 @@ while not failed:
|
|||||||
os.system(lyx_exe + " -userdir " + lyx_userdir + " " + c[9:] + "&")
|
os.system(lyx_exe + " -userdir " + lyx_userdir + " " + c[9:] + "&")
|
||||||
while True:
|
while True:
|
||||||
lyx_pid=os.popen("pidof lyx").read().rstrip()
|
lyx_pid=os.popen("pidof lyx").read().rstrip()
|
||||||
lyx_window_name=os.popen("wmctrl -l -p | grep ' " + str(lyx_pid) + " ' | cut -d ' ' -f 1").read().rstrip()
|
if lyx_pid != "":
|
||||||
if lyx_window_name != "":
|
lyx_window_name=os.popen("wmctrl -l -p | grep ' " + str(lyx_pid) + " ' | cut -d ' ' -f 1").read().rstrip()
|
||||||
break
|
if lyx_window_name != "":
|
||||||
|
break
|
||||||
print 'lyx_win: ' + lyx_window_name + '\n'
|
print 'lyx_win: ' + lyx_window_name + '\n'
|
||||||
print "Waiting for LyX to show up . . ."
|
print "Waiting for LyX to show up . . ."
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
print 'lyx_pid: ' + lyx_pid + '\n'
|
print 'lyx_pid: ' + lyx_pid + '\n'
|
||||||
print 'lyx_win: ' + lyx_window_name + '\n'
|
print 'lyx_win: ' + lyx_window_name + '\n'
|
||||||
time.sleep(1)
|
|
||||||
#RaiseWindow()
|
|
||||||
#sendKeystring("\Afn", lyx_pid)
|
|
||||||
elif c[0:5] == 'Sleep':
|
elif c[0:5] == 'Sleep':
|
||||||
print "\nSleeping for " + c[6:] + "\n"
|
print "\nSleeping for " + c[6:] + "\n"
|
||||||
time.sleep(float(c[6:]))
|
time.sleep(float(c[6:]))
|
||||||
|
@ -16,7 +16,10 @@ if [ "$1" != "" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
export MAX_DROP=0
|
export MAX_DROP=0
|
||||||
export LYX_WINDOW_NAME=$(wmctrl -l | grep -v Mozilla | grep -v Firefox | grep LyX | sed -e 's/.*\(LyX: .*\)$/\1/')
|
if [ "$(pidof lyx)" != "" ]; then
|
||||||
|
export LYX_PID=$(pidof lyx)
|
||||||
|
export LYX_WINDOW_NAME=$(wmctrl -l | grep " $LYX_PID " | cut -d ' ' -f 1);
|
||||||
|
fi
|
||||||
export MAX_LOOPS=1
|
export MAX_LOOPS=1
|
||||||
export LYX_EXE=${LYX_EXE:-../../src/lyx}
|
export LYX_EXE=${LYX_EXE:-../../src/lyx}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user