diff options
author | Matthias Hentges <oe@hentges.net> | 2006-03-24 17:40:14 +0000 |
---|---|---|
committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2006-03-24 17:40:14 +0000 |
commit | 9bdc8f5fe8909e822bb1d185aa2de5f35b296e4a (patch) | |
tree | 5706d643fa686f7af7183c801fed3afcfbed60a3 /packages/zaurusd | |
parent | 90fffaa45e80badf0314d82e921ad98fc5d77da6 (diff) |
zaurusd: Honor user-preferences when starting / killing mbinputmgr on rotation
Diffstat (limited to 'packages/zaurusd')
-rw-r--r-- | packages/zaurusd/files/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/zaurusd/files/mbinputmgr-honor-user-prefs.patch | 65 | ||||
-rw-r--r-- | packages/zaurusd/zaurusd_svn.bb | 5 |
3 files changed, 68 insertions, 2 deletions
diff --git a/packages/zaurusd/files/.mtn2git_empty b/packages/zaurusd/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/zaurusd/files/.mtn2git_empty 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 diff --git a/packages/zaurusd/zaurusd_svn.bb b/packages/zaurusd/zaurusd_svn.bb index d36fc1c118..4f20dc23c5 100644 --- a/packages/zaurusd/zaurusd_svn.bb +++ b/packages/zaurusd/zaurusd_svn.bb @@ -3,10 +3,11 @@ SECTION = "base" MAINTAINER = "Richard Purdie <rpurdie@openedhand.com>" DESCRIPTION = "Daemon to handle device specifc features." PV = "0.0+svn${SRCDATE}" -PR = "r0" +PR = "r1" DEPENDS = "tslib" -SRC_URI = "svn://svn.o-hand.com/repos/misc/trunk;module=zaurusd;proto=http" +SRC_URI = "svn://svn.o-hand.com/repos/misc/trunk;module=zaurusd;proto=http \ + file://mbinputmgr-honor-user-prefs.patch;patch=1" S = "${WORKDIR}/${PN}" PACKAGE_ARCH = "${MACHINE_ARCH}" |