[maemo-commits] [maemo-commits] r11875 - in projects/haf/trunk/hildon-desktop: . data libhildondesktop
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Fri May 25 19:17:39 EEST 2007
- Previous message: [maemo-commits] r11874 - projects/haf/trunk/hildon-fm
- Next message: [maemo-commits] r11876 - projects/connectivity/osso-gwobex/trunk/src
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: moimart Date: 2007-05-25 19:17:36 +0300 (Fri, 25 May 2007) New Revision: 11875 Added: projects/haf/trunk/hildon-desktop/data/install_sbapplet.sh Modified: projects/haf/trunk/hildon-desktop/ChangeLog projects/haf/trunk/hildon-desktop/configure.ac projects/haf/trunk/hildon-desktop/data/Makefile.am projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-menu.c projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-window.c Log: 2007-05-25 Moises Martinez <moises.martinez at nokia.com> * configure.ac: Added HAVE_XTEST condition for libhildondesktop * libhildondesktop/hildon-desktop-popup-window.c: - Send additional fake press/release event for overriding the grabbing. * configure.ac (working copy) * data/Makefile.am: * data/install_sbapplet.sh: - Added helper script for installing statusbar applets and to be used in postinst .deb scripts * ChangeLog updated. Modified: projects/haf/trunk/hildon-desktop/ChangeLog =================================================================== --- projects/haf/trunk/hildon-desktop/ChangeLog 2007-05-25 15:51:52 UTC (rev 11874) +++ projects/haf/trunk/hildon-desktop/ChangeLog 2007-05-25 16:17:36 UTC (rev 11875) @@ -1,5 +1,17 @@ 2007-05-25 Moises Martinez <moises.martinez at nokia.com> + * configure.ac: Added HAVE_XTEST condition for libhildondesktop + * libhildondesktop/hildon-desktop-popup-window.c: + - Send additional fake press/release event for overriding the + grabbing. + * configure.ac (working copy) + * data/Makefile.am: + * data/install_sbapplet.sh: + - Added helper script for installing statusbar applets and to be used + in postinst .deb scripts + +2007-05-25 Moises Martinez <moises.martinez at nokia.com> + * src/hd-switcher-menu.c: - Highlight next application when menu is opened and home key is pressed. Fixes: NB#57666 Modified: projects/haf/trunk/hildon-desktop/configure.ac =================================================================== --- projects/haf/trunk/hildon-desktop/configure.ac 2007-05-25 15:51:52 UTC (rev 11874) +++ projects/haf/trunk/hildon-desktop/configure.ac 2007-05-25 16:17:36 UTC (rev 11875) @@ -199,6 +199,7 @@ PKG_CHECK_MODULES(XTEST, xtst) AC_SUBST(XTEST_LIBS) AC_SUBST(XTEST_CFLAGS) +AC_DEFINE(HAVE_XTEST, [], [Whether XTest is present]) #+++++++++++++++++++ # Directories setup Modified: projects/haf/trunk/hildon-desktop/data/Makefile.am =================================================================== --- projects/haf/trunk/hildon-desktop/data/Makefile.am 2007-05-25 15:51:52 UTC (rev 11874) +++ projects/haf/trunk/hildon-desktop/data/Makefile.am 2007-05-25 16:17:36 UTC (rev 11875) @@ -17,4 +17,6 @@ hildondesktopstartup_SCRIPTS = \ hildon-desktop.sh +bin_SCRIPTS = install_sbapplet.sh + CLEANFILES = *~ Added: projects/haf/trunk/hildon-desktop/data/install_sbapplet.sh =================================================================== --- projects/haf/trunk/hildon-desktop/data/install_sbapplet.sh 2007-05-25 15:51:52 UTC (rev 11874) +++ projects/haf/trunk/hildon-desktop/data/install_sbapplet.sh 2007-05-25 16:17:36 UTC (rev 11875) @@ -0,0 +1,51 @@ +#!/bin/sh -e +# moimart + +if [ ! "$#" -eq "1" ]; +then + echo "1 args required" + echo "desktopfile" + exit 1; +fi + +DESKTOP_FILE=$1 + +if [ "`uname -m`" == "armv6l" ]; +then + SB_HOME_DIR=/home/user + USER=user +else + SB_HOME_DIR=$HOME + USER=`basename $HOME` +fi + +SB_CONF=statusbar.conf +SB_USRDIRCONF=$SB_HOME_DIR/.osso/hildon-desktop/$SB_CONF +SB_SYSDIRCONF=/etc/hildon-desktop/$SB_CONF +SB_PATH=$SB_USRDIRCONF + +if [ ! -r $SB_PATH ]; +then + cp $SB_SYSDIRCONF $SB_USRDIRCONF + echo "cp $SB_SYSDIRCONF $SB_USRDIRCONF" +fi + +if [ ! -r $SB_PATH ]; +then + echo "Can't access configuration" + exit 0 +fi + +chown $USER $SB_USRDIRCONF && echo "Setting owner" + +if [ "`cat $SB_PATH|grep \"\[$DESKTOP_FILE\]\"|wc -l`" -gt "0" ]; +then + echo "Entry already configured" + echo "" >> $SB_PATH + exit 0; +fi + +echo "Creating entry..." + +echo -e "[$DESKTOP_FILE]\n\ +Mandatory=$MANDATORY\n" >> $SB_PATH Modified: projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-menu.c =================================================================== --- projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-menu.c 2007-05-25 15:51:52 UTC (rev 11874) +++ projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-menu.c 2007-05-25 16:17:36 UTC (rev 11875) @@ -875,8 +875,6 @@ g_list_free (children); } - - GtkMenuItem * hildon_desktop_popup_menu_get_selected_item (HildonDesktopPopupMenu *menu) { Modified: projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-window.c =================================================================== --- projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-window.c 2007-05-25 15:51:52 UTC (rev 11874) +++ projects/haf/trunk/hildon-desktop/libhildondesktop/hildon-desktop-popup-window.c 2007-05-25 16:17:36 UTC (rev 11875) @@ -29,6 +29,14 @@ #include <gdk/gdkx.h> #include <gdk/gdkwindow.h> +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#ifdef HAVE_XTEST +#include <X11/extensions/XTest.h> +#endif + #define HILDON_DESKTOP_POPUP_WINDOW_GET_PRIVATE(object) \ (G_TYPE_INSTANCE_GET_PRIVATE ((object), HILDON_DESKTOP_TYPE_POPUP_WINDOW, HildonDesktopPopupWindowPrivate)) @@ -83,15 +91,21 @@ GdkEventCrossing *event, HildonDesktopPopupWindow *popup); +static gboolean hildon_desktop_popup_window_composited_button_press (GtkWidget *widget, + GdkEventButton *event, + HildonDesktopPopupWindow *popup); + static gboolean hildon_desktop_popup_window_composited_button_release (GtkWidget *widget, GdkEventButton *event, HildonDesktopPopupWindow *popup); static gboolean popup_grab_on_window (GdkWindow *window, guint32 activate_time, gboolean grab_keyboard); -static gboolean -hildon_desktop_popup_window_button_release_event (GtkWidget *widget, GdkEventButton *event); - +static gboolean hildon_desktop_popup_window_button_press_event (GtkWidget *widget, GdkEventButton *event); +static gboolean hildon_desktop_popup_window_button_release_event (GtkWidget *widget, GdkEventButton *event); +#ifdef HAVE_XTEST +static void hildon_desktop_popup_menu_fake_button_event (GdkEventButton *event, gboolean press); +#endif struct _HildonDesktopPopupWindowPrivate { GtkWidget **extra_panes; @@ -157,6 +171,7 @@ widget_class->motion_notify_event = hildon_desktop_popup_window_motion_notify; widget_class->leave_notify_event = hildon_desktop_popup_window_leave_notify; + widget_class->button_press_event = hildon_desktop_popup_window_button_press_event; widget_class->button_release_event = hildon_desktop_popup_window_button_release_event; widget_class->key_press_event = hildon_desktop_popup_window_key_press_event; @@ -260,6 +275,11 @@ GDK_WINDOW_TYPE_HINT_MENU); g_signal_connect (popup->priv->extra_panes[i], + "button-press-event", + G_CALLBACK (hildon_desktop_popup_window_composited_button_press), + (gpointer)popup); + + g_signal_connect (popup->priv->extra_panes[i], "button-release-event", G_CALLBACK (hildon_desktop_popup_window_composited_button_release), (gpointer)popup); @@ -583,6 +603,20 @@ } static gboolean +hildon_desktop_popup_window_composited_button_press (GtkWidget *widget, + GdkEventButton *event, + HildonDesktopPopupWindow *popup) +{ + if (!event) + return FALSE; +#ifdef HAVE_XTEST + hildon_desktop_popup_menu_fake_button_event (event, TRUE); +#endif + + return TRUE; +} + +static gboolean hildon_desktop_popup_window_composited_button_release (GtkWidget *widget, GdkEventButton *event, HildonDesktopPopupWindow *popup) @@ -633,10 +667,27 @@ if (!in_panes_area || in_window_area) hildon_desktop_popup_window_popdown (popup); +#ifdef HAVE_XTEST + hildon_desktop_popup_menu_fake_button_event (event, FALSE); +#endif return TRUE; } static gboolean +hildon_desktop_popup_window_button_press_event (GtkWidget *widget, + GdkEventButton *event) +{ + if (!event) + return FALSE; + +#ifdef HAVE_XTEST + hildon_desktop_popup_menu_fake_button_event (event, TRUE); +#endif + + return TRUE; +} + +static gboolean hildon_desktop_popup_window_button_release_event (GtkWidget *widget, GdkEventButton *event) { @@ -675,6 +726,9 @@ if (!in_panes_area || in_window_area) hildon_desktop_popup_window_popdown (popup); +#ifdef HAVE_XTEST + hildon_desktop_popup_menu_fake_button_event (event, FALSE); +#endif return TRUE; } @@ -801,6 +855,13 @@ } } +#ifdef HAVE_XTEST +static void +hildon_desktop_popup_menu_fake_button_event (GdkEventButton *event, gboolean press) +{ + XTestFakeButtonEvent (GDK_DISPLAY (), event->button, press, CurrentTime); +} +#endif static GdkWindow * popup_window_grab_transfer_window_get (HildonDesktopPopupWindow *popup) {
- Previous message: [maemo-commits] r11874 - projects/haf/trunk/hildon-fm
- Next message: [maemo-commits] r11876 - projects/connectivity/osso-gwobex/trunk/src
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]