[maemo-commits] [maemo-commits] r17661 - in projects/haf/trunk/libmatchbox2: . matchbox/core
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Thu Mar 12 19:20:04 EET 2009
- Previous message: [maemo-commits] r17660 - in projects/haf/trunk/hildon-control-panel: . data debian src
- Next message: [maemo-commits] r17662 - in projects/haf/trunk/hildon-control-panel: . src
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: tthurman Date: 2009-03-12 19:20:01 +0200 (Thu, 12 Mar 2009) New Revision: 17661 Modified: projects/haf/trunk/libmatchbox2/ChangeLog projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-root-window.c Log: Root window handler gets to examine all the ClientMessages sent (in accordance with the TODO) rather than special-casing. Fixes: NB#105405 * matchbox/core/mb-wm-main-context.c: * matchbox/core/mb-wm-root-window.c: Modified: projects/haf/trunk/libmatchbox2/ChangeLog =================================================================== --- projects/haf/trunk/libmatchbox2/ChangeLog 2009-03-12 17:16:55 UTC (rev 17660) +++ projects/haf/trunk/libmatchbox2/ChangeLog 2009-03-12 17:20:01 UTC (rev 17661) @@ -1,3 +1,13 @@ +2009-03-12 Thomas Thurman <thomas.thurman at collabora.co.uk> + + Root window handler gets to examine all the ClientMessages + sent (in accordance with the TODO) rather than special-casing. + + Fixes: NB#105405 + + * matchbox/core/mb-wm-main-context.c: + * matchbox/core/mb-wm-root-window.c: + 2009-03-12 Kimmo Hämäläinen <kimmo.hamalainen at nokia.com> Release 0.2.21 Modified: projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c =================================================================== --- projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c 2009-03-12 17:16:55 UTC (rev 17660) +++ projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c 2009-03-12 17:20:01 UTC (rev 17661) @@ -226,35 +226,27 @@ switch (xev->type) { case ClientMessage: - /* - * TODO -- perhaps this should not be special-cased. - */ - if (xev->xany.window == wm->root_win->xwindow || - ((XClientMessageEvent *)xev)->message_type == - wm->atoms[MBWM_ATOM_NET_ACTIVE_WINDOW] || - ((XClientMessageEvent *)xev)->message_type == - wm->atoms[MBWM_ATOM_NET_WM_STATE]) + /* give the EWMH handler the first crack at it */ + if (!mb_wm_root_window_handle_message (wm->root_win, + (XClientMessageEvent *)xev)) { - mb_wm_root_window_handle_message (wm->root_win, - (XClientMessageEvent *)xev); - } + iter = ctx->event_funcs.client_message; - iter = ctx->event_funcs.client_message; - - while (iter) - { - Window msg_xwin = XE_ITER_GET_XWIN(iter); - MBWMList * next = iter->next; - - if (msg_xwin == None || msg_xwin == xwin) + while (iter) { - if (!(MBWindowManagerClientMessageFunc)XE_ITER_GET_FUNC(iter) - ((XClientMessageEvent*)&xev->xclient, - XE_ITER_GET_DATA(iter))) - break; + Window msg_xwin = XE_ITER_GET_XWIN(iter); + MBWMList * next = iter->next; + + if (msg_xwin == None || msg_xwin == xwin) + { + if (!(MBWindowManagerClientMessageFunc)XE_ITER_GET_FUNC(iter) + ((XClientMessageEvent*)&xev->xclient, + XE_ITER_GET_DATA(iter))) + break; + } + + iter = next; } - - iter = next; } break; case Expose: Modified: projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-root-window.c =================================================================== --- projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-root-window.c 2009-03-12 17:16:55 UTC (rev 17660) +++ projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-root-window.c 2009-03-12 17:20:01 UTC (rev 17661) @@ -416,6 +416,7 @@ case IconicState: if ((c = mb_wm_managed_client_from_xwindow (wm, e->window))) mb_wm_client_iconize (c); + return 1; default: MBWM_DBG ("Unhandled value %d for WM_CHANGE_STATE ClientMessage", @@ -438,22 +439,23 @@ { case MB_CMD_EXIT: exit(0); + return 1; /* keep the compiler from getting confused */ case MB_CMD_NEXT: mb_wm_cycle_apps (wm, False); - break; + return 1; case MB_CMD_PREV: mb_wm_cycle_apps (wm, True); - break; + return 1; case MB_CMD_DESKTOP: mb_wm_toggle_desktop (wm); - break; + return 1; #if ENABLE_COMPOSITE case MB_CMD_COMPOSITE: if (mb_wm_compositing_enabled (wm)) mb_wm_compositing_off (wm); else mb_wm_compositing_on (wm); - break; + return 1; #endif default: /*FIXME -- not implemented yet */ @@ -461,8 +463,6 @@ ; } } - else - g_debug ("%s: unknown ClientMessage", __FUNCTION__); return 0; }
- Previous message: [maemo-commits] r17660 - in projects/haf/trunk/hildon-control-panel: . data debian src
- Next message: [maemo-commits] r17662 - in projects/haf/trunk/hildon-control-panel: . src
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]