Hello,Attached is a patch to allow users with multiple screens to optionally view the full list of clients across those screens.
-- Regards, Ravenlock
Index: e17/apps/e/src/bin/e_config.c =================================================================== RCS file: /var/cvs/e/e17/apps/e/src/bin/e_config.c,v retrieving revision 1.227 diff -u -r1.227 e_config.c --- e17/apps/e/src/bin/e_config.c 21 Feb 2007 00:05:27 -0000 1.227 +++ e17/apps/e/src/bin/e_config.c 21 Feb 2007 15:39:34 -0000 @@ -505,6 +505,7 @@ E_CONFIG_VAL(D, T, dpms_off_timeout, INT); E_CONFIG_VAL(D, T, clientlist_group_by, INT); + E_CONFIG_VAL(D, T, clientlist_include_all_zones, INT); E_CONFIG_VAL(D, T, clientlist_separate_with, INT); E_CONFIG_VAL(D, T, clientlist_sort_by, INT); E_CONFIG_VAL(D, T, clientlist_separate_iconified_apps, INT); @@ -1335,6 +1336,10 @@ e_config->clientlist_warp_to_iconified_desktop = 0; IFCFGEND; + IFCFG(0x0111); + e_config->clientlist_include_all_zones = 0; + IFCFGEND; + e_config->config_version = E_CONFIG_FILE_VERSION; #if 0 /* example of new config */ @@ -1448,6 +1453,7 @@ E_CONFIG_LIMIT(e_config->screensaver_expose, 0, 2); E_CONFIG_LIMIT(e_config->clientlist_group_by, 0, 2); + E_CONFIG_LIMIT(e_config->clientlist_include_all_zones, 0, 1); E_CONFIG_LIMIT(e_config->clientlist_separate_with, 0, 2); E_CONFIG_LIMIT(e_config->clientlist_sort_by, 0, 3); E_CONFIG_LIMIT(e_config->clientlist_separate_iconified_apps, 0, 2); Index: e17/apps/e/src/bin/e_config.h =================================================================== RCS file: /var/cvs/e/e17/apps/e/src/bin/e_config.h,v retrieving revision 1.142 diff -u -r1.142 e_config.h --- e17/apps/e/src/bin/e_config.h 21 Feb 2007 00:05:27 -0000 1.142 +++ e17/apps/e/src/bin/e_config.h 21 Feb 2007 15:39:34 -0000 @@ -52,7 +52,7 @@ /* increment this whenever a new set of config values are added but the users * config doesn't need to be wiped - simply new values need to be put in */ -#define E_CONFIG_FILE_GENERATION 0x0110 +#define E_CONFIG_FILE_GENERATION 0x0111 #define E_CONFIG_FILE_VERSION ((E_CONFIG_FILE_EPOCH << 16) | E_CONFIG_FILE_GENERATION) #define E_EVAS_ENGINE_DEFAULT 0 @@ -248,6 +248,7 @@ int dpms_off_timeout; int clientlist_group_by; + int clientlist_include_all_zones; int clientlist_separate_with; int clientlist_sort_by; int clientlist_separate_iconified_apps; Index: e17/apps/e/src/bin/e_int_config_clientlist.c =================================================================== RCS file: /var/cvs/e/e17/apps/e/src/bin/e_int_config_clientlist.c,v retrieving revision 1.1 diff -u -r1.1 e_int_config_clientlist.c --- e17/apps/e/src/bin/e_int_config_clientlist.c 21 Feb 2007 00:05:27 -0000 1.1 +++ e17/apps/e/src/bin/e_int_config_clientlist.c 21 Feb 2007 15:39:34 -0000 @@ -12,6 +12,7 @@ struct _E_Config_Dialog_Data { int group_by; + int include_all_zones; int separate_with; int sort_by; int separate_iconified_apps; @@ -44,6 +45,7 @@ _fill_data(E_Config_Dialog_Data *cfdata) { cfdata->group_by = e_config->clientlist_group_by; + cfdata->include_all_zones = e_config->clientlist_include_all_zones; cfdata->separate_with = e_config->clientlist_separate_with; cfdata->sort_by = e_config->clientlist_sort_by; cfdata->separate_iconified_apps = e_config->clientlist_separate_iconified_apps; @@ -70,6 +72,7 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) { e_config->clientlist_group_by = cfdata->group_by; + e_config->clientlist_include_all_zones = cfdata->include_all_zones; e_config->clientlist_separate_with = cfdata->separate_with; e_config->clientlist_sort_by = cfdata->sort_by; e_config->clientlist_separate_iconified_apps = cfdata->separate_iconified_apps; @@ -94,6 +97,8 @@ e_widget_framelist_object_append(of, ob); ob = e_widget_radio_add(evas, _("Window Class"), E_CLIENTLIST_GROUP_CLASS, rg); e_widget_framelist_object_append(of, ob); + ob = e_widget_check_add(evas, _("Include windows from other screens"), &(cfdata->include_all_zones)); + e_widget_framelist_object_append(of, ob); e_widget_list_object_append(o, of, 1, 1, 0.5); of = e_widget_framelist_add(evas, _("Separate Groups By"), 0); Index: e17/apps/e/src/bin/e_int_menus.c =================================================================== RCS file: /var/cvs/e/e17/apps/e/src/bin/e_int_menus.c,v retrieving revision 1.197 diff -u -r1.197 e_int_menus.c --- e17/apps/e/src/bin/e_int_menus.c 21 Feb 2007 00:05:27 -0000 1.197 +++ e17/apps/e/src/bin/e_int_menus.c 21 Feb 2007 15:39:35 -0000 @@ -1074,7 +1074,8 @@ border = l->data; if (border->client.netwm.state.skip_taskbar) continue; if (border->user_skip_winlist) continue; - if ((border->zone == zone) || (border->iconic)) + if ((border->zone == zone) || (border->iconic) || + (border->zone != zone && e_config->clientlist_include_all_zones)) borders = evas_list_append(borders, border); }
------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel