From 9bdc8f5fe8909e822bb1d185aa2de5f35b296e4a Mon Sep 17 00:00:00 2001 From: Matthias Hentges Date: Fri, 24 Mar 2006 17:40:14 +0000 Subject: zaurusd: Honor user-preferences when starting / killing mbinputmgr on rotation --- packages/zaurusd/files/.mtn2git_empty | 0 .../files/mbinputmgr-honor-user-prefs.patch | 65 ++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 packages/zaurusd/files/.mtn2git_empty create mode 100644 packages/zaurusd/files/mbinputmgr-honor-user-prefs.patch (limited to 'packages/zaurusd/files') diff --git a/packages/zaurusd/files/.mtn2git_empty b/packages/zaurusd/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/zaurusd/files/mbinputmgr-honor-user-prefs.patch b/packages/zaurusd/files/mbinputmgr-honor-user-prefs.patch new file mode 100644 index 0000000000..f4ef7c5aee --- /dev/null +++ b/packages/zaurusd/files/mbinputmgr-honor-user-prefs.patch @@ -0,0 +1,65 @@ +--- zaurusd/scripts/zaurus-hinge.in 2006-03-24 18:23:15.000000000 +0100 ++++ zaurusd/scripts/zaurus-hinge 2006-03-24 18:33:24.480748696 +0100 +@@ -18,6 +18,10 @@ + exit 1 + fi + ++panel_user="`ps aux|grep matchbox-panel|grep -v grep | awk '{print $2}'`" ++ ++ ++ + STATE=$1 + + if [ $STATE = "3" ]; then +@@ -29,8 +33,21 @@ + fi + + if [ $STATE = "0" ]; then +- #echo "lanscape" +- killproc @bindir@/mbinputmgr ++ #echo "landscape" ++ ++ # As matchbox-panel updates its written configuration right after an applet dies / is killed, we can not be sure ++ # whether the user had gpe-panel in his preferences after rotating to portrait. And since there is a slim chance ++ # that a user changes his preferences from time to time, we renew that dumped configuration every now and then ;) ++ ++ if ! test -e "/tmp/gpe-panel.session-$panel_user" ++ then ++ cp /home/$panel_user/.matchbox/mbdock.session "/tmp/gpe-panel.session-$panel_user" ++ cat "/tmp/gpe-panel.session-$panel_user" | grep -q panel || killproc @bindir@/mbinputmgr ++ else ++ cat "/tmp/gpe-panel.session-$panel_user" | grep -q panel || killproc @bindir@/mbinputmgr ++ rm "/tmp/gpe-panel.session-$panel_user" ++ fi ++ + # urg mbinputmgr should kill below + killproc @bindir@/matchbox-keyboard + killproc @bindir@/matchbox-stroke +@@ -47,8 +64,25 @@ + fi + # just to be extra safe + sleep 1 +- if [ -x @bindir@/mbinputmgr ]; then +- @bindir@/mbinputmgr & ++ ++ echo "panel_user = [$panel_user]" ++ ++ if ! test -e "/tmp/gpe-panel.session-$panel_user" ++ then ++ cp /home/$panel_user/.matchbox/mbdock.session "/tmp/gpe-panel.session-$panel_user" ++ else ++ rm "/tmp/gpe-panel.session-$panel_user" + fi ++ ++ if test -n "$panel_user" ++ then ++ echo "Running panel as user [$panel_user]" ++ ps aux | grep "$panel_user" | grep -q "mbinputmgr " || su $panel_user -c @bindir@/mbinputmgr & ++ else ++ # A failsafe can't hurt ++ echo "Warning: Running mbinputmgr as root!" ++ ps aux | grep -q "mbinputmgr " || @bindir@/mbinputmgr & ++ fi ++ + exit 0 + fi -- cgit v1.2.3