Enlightenment CVS committal Author : devilhorns Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_actions.c e_border.h e_int_config_keybindings.c e_zone.h Log Message: Patch from saturn_vk for adding an action and key-binding (set through config dialog) which allows to "Show Desktop" by iconifying/uniconifying all active borders. (Tested heavily, no problems.) =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_actions.c,v retrieving revision 1.59 retrieving revision 1.60 diff -u -3 -r1.59 -r1.60 --- e_actions.c 31 May 2006 18:43:48 -0000 1.59 +++ e_actions.c 3 Jun 2006 10:19:11 -0000 1.60 @@ -1315,8 +1315,44 @@ else e_gadman_mode_set(((E_Container *)obj)->gadman, E_GADMAN_MODE_NORMAL); } +/***************************************************************************/ /***************************************************************************/ +ACT_FN_GO(zone_deskshow_toggle) +{ + E_Border *bd; + E_Border_List *bl; + E_Zone *zone; + + zone = _e_actions_zone_get(obj); + if (!zone) zone = e_util_zone_current_get(e_manager_current_get()); + if (zone) + { + bl = e_container_border_list_first(zone->container); + while ((bd = e_container_border_list_next(bl))) + { + if (bd->desk == e_desk_current_get(bd->zone)) + { + if (zone->deskshow_toggle) + { + if (bd->deskshow) e_border_uniconify(bd); + bd->deskshow = 0; + } + else + { + if (bd->iconic) continue; + if (bd->client.netwm.state.skip_taskbar) continue; + if (bd->user_skip_winlist) continue; + e_border_iconify(bd); + bd->deskshow = 1; + } + } + } + zone->deskshow_toggle = zone->deskshow_toggle ? 0 : 1; + e_container_border_list_free(bl); + } +} +/***************************************************************************/ static void _e_actions_cb_exit_dialog_ok(void *data, E_Dialog *dia) @@ -1553,6 +1589,12 @@ EDIT_RESTRICT_ACTION | EDIT_RESTRICT_PARAMS, 0); e_register_action_predef_name(_("Desktop"), _("Flip Desktop By..."), "desk_flip_by", NULL, EDIT_RESTRICT_ACTION, 0); + + /* zone_deskshow_toggle */ + ACT_GO(zone_deskshow_toggle); + e_register_action_predef_name(_("Desktop"), _("Show the desktop"), + "zone_deskshow_toggle", NULL, + EDIT_RESTRICT_ACTION | EDIT_RESTRICT_PARAMS, 0); /* desk_linear_flip_to */ ACT_GO(desk_flip_to); =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_border.h,v retrieving revision 1.134 retrieving revision 1.135 diff -u -3 -r1.134 -r1.135 --- e_border.h 22 May 2006 20:28:32 -0000 1.134 +++ e_border.h 3 Jun 2006 10:19:11 -0000 1.135 @@ -294,6 +294,7 @@ unsigned int shading : 1; unsigned int shaded : 1; unsigned int iconic : 1; + unsigned int deskshow : 1; unsigned int sticky : 1; unsigned int shaped : 1; unsigned int need_shape_merge : 1; =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_keybindings.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -3 -r1.26 -r1.27 --- e_int_config_keybindings.c 31 May 2006 18:58:26 -0000 1.26 +++ e_int_config_keybindings.c 3 Jun 2006 10:19:11 -0000 1.27 @@ -1076,7 +1076,7 @@ if (!cfdata) return; - snprintf(buf, sizeof(buf), _("You requested to delte \"%s\" keybinding.<br>" + snprintf(buf, sizeof(buf), _("You requested to delete \"%s\" keybinding.<br>" "<br>" "Are you sure you want to delete it?"), e_widget_ilist_selected_label_get(cfdata->gui.binding_ilist)); =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_zone.h,v retrieving revision 1.35 retrieving revision 1.36 diff -u -3 -r1.35 -r1.36 --- e_zone.h 2 Mar 2006 12:03:48 -0000 1.35 +++ e_zone.h 3 Jun 2006 10:19:11 -0000 1.36 @@ -26,6 +26,7 @@ unsigned int num; E_Container *container; int fullscreen; + unsigned int deskshow_toggle : 1; Evas_Object *bg_object; Evas_Object *bg_event_object; _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs