Enlightenment CVS committal
Author : raster
Project : e17
Module : apps/e
Dir : e17/apps/e/src/bin
Modified Files:
e_border.c e_border.h e_config.c e_remember.c e_remember.h
e_winlist.c
Log Message:
TODO--
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v
retrieving revision 1.318
retrieving revision 1.319
diff -u -3 -r1.318 -r1.319
--- e_border.c 8 Jul 2005 08:43:26 -0000 1.318
+++ e_border.c 9 Jul 2005 14:55:40 -0000 1.319
@@ -87,6 +87,7 @@
static void _e_border_menu_cb_on_top(void *data, E_Menu *m, E_Menu_Item *mi);
static void _e_border_menu_cb_borderless(void *data, E_Menu *m, E_Menu_Item
*mi);
static void _e_border_menu_cb_fullscreen(void *data, E_Menu *m, E_Menu_Item
*mi);
+static void _e_border_menu_cb_skip_winlist(void *data, E_Menu *m, E_Menu_Item
*mi);
static void _e_border_menu_cb_sendto_pre(void *data, E_Menu *m, E_Menu_Item
*mi);
static void _e_border_menu_cb_sendto(void *data, E_Menu *m, E_Menu_Item *mi);
@@ -4098,6 +4099,10 @@
bd->lock_focus_out = rem->prop.lock_focus_out;
bd->lock_life = rem->prop.lock_life;
}
+ if (rem->apply & E_REMEMBER_APPLY_SKIP_WINLIST)
+ {
+ bd->user_skip_winlist = rem->prop.skip_winlist;
+ }
}
}
@@ -5480,6 +5485,29 @@
}
static void
+_e_border_menu_cb_remember_apply_skip_winlist(void *data, E_Menu *m,
E_Menu_Item *mi)
+{
+ E_Border *bd;
+ bd = data;
+ if (!bd->remember)
+ {
+ bd->remember = e_remember_new();
+ if (bd->remember)
+ {
+ e_remember_use(bd->remember);
+ e_remember_update(bd->remember, bd);
+ }
+ else
+ return;
+ }
+ if (e_menu_item_toggle_get(mi))
+ bd->remember->apply |= E_REMEMBER_APPLY_SKIP_WINLIST;
+ else
+ bd->remember->apply &= ~E_REMEMBER_APPLY_SKIP_WINLIST;
+ e_config_save_queue();
+}
+
+static void
_e_border_menu_cb_remember_apply_run(void *data, E_Menu *m, E_Menu_Item *mi)
{
E_Border *bd;
@@ -5562,33 +5590,34 @@
e_menu_item_callback_set(mi, cb, bd);
mi = e_menu_item_new(m);
- e_menu_item_label_set(mi, _("Remember this window")); \
+ e_menu_item_label_set(mi, _("Remember This Window")); \
e_menu_item_check_set(mi, 1);
if (bd->remember)
e_menu_item_toggle_set(mi, 1);
e_menu_item_callback_set(mi, _e_border_menu_cb_remember, bd);
mi = e_menu_item_new(m);
e_menu_item_separator_set(mi, 1);
- NEW_REMEMBER_MI(_("Remember this instance only"), apply_first_only, 1,
_e_border_menu_cb_remember_first);
+ NEW_REMEMBER_MI(_("Remember This Instance Only"), apply_first_only, 1,
_e_border_menu_cb_remember_first);
mi = e_menu_item_new(m);
e_menu_item_separator_set(mi, 1);
- NEW_REMEMBER_MI(_("Match by name"), match, E_REMEMBER_MATCH_NAME,
_e_border_menu_cb_remember_match_name);
- NEW_REMEMBER_MI(_("Match by class"), match, E_REMEMBER_MATCH_CLASS,
_e_border_menu_cb_remember_match_class);
- NEW_REMEMBER_MI(_("Match by title"), match, E_REMEMBER_MATCH_TITLE,
_e_border_menu_cb_remember_match_title);
- NEW_REMEMBER_MI(_("Match by role"), match, E_REMEMBER_MATCH_ROLE,
_e_border_menu_cb_remember_match_role);
- NEW_REMEMBER_MI(_("Match by window type"), match, E_REMEMBER_MATCH_TYPE,
_e_border_menu_cb_remember_match_type);
- NEW_REMEMBER_MI(_("Match by transient status"), match,
E_REMEMBER_MATCH_TRANSIENT, _e_border_menu_cb_remember_match_transient);
+ NEW_REMEMBER_MI(_("Match by Name"), match, E_REMEMBER_MATCH_NAME,
_e_border_menu_cb_remember_match_name);
+ NEW_REMEMBER_MI(_("Match by Class"), match, E_REMEMBER_MATCH_CLASS,
_e_border_menu_cb_remember_match_class);
+ NEW_REMEMBER_MI(_("Match by Title"), match, E_REMEMBER_MATCH_TITLE,
_e_border_menu_cb_remember_match_title);
+ NEW_REMEMBER_MI(_("Match by Role"), match, E_REMEMBER_MATCH_ROLE,
_e_border_menu_cb_remember_match_role);
+ NEW_REMEMBER_MI(_("Match by Window Type"), match, E_REMEMBER_MATCH_TYPE,
_e_border_menu_cb_remember_match_type);
+ NEW_REMEMBER_MI(_("Match by Transient Status"), match,
E_REMEMBER_MATCH_TRANSIENT, _e_border_menu_cb_remember_match_transient);
mi = e_menu_item_new(m);
e_menu_item_separator_set(mi, 1);
- NEW_REMEMBER_MI(_("Remember position"), apply, E_REMEMBER_APPLY_POS,
_e_border_menu_cb_remember_apply_pos);
- NEW_REMEMBER_MI(_("Remember size"), apply, E_REMEMBER_APPLY_SIZE,
_e_border_menu_cb_remember_apply_size);
- NEW_REMEMBER_MI(_("Remember stacking"), apply, E_REMEMBER_APPLY_LAYER,
_e_border_menu_cb_remember_apply_layer);
- NEW_REMEMBER_MI(_("Remember locks"), apply, E_REMEMBER_APPLY_LOCKS,
_e_border_menu_cb_remember_apply_locks);
- NEW_REMEMBER_MI(_("Remember border"), apply, E_REMEMBER_APPLY_BORDER,
_e_border_menu_cb_remember_apply_border);
- NEW_REMEMBER_MI(_("Remember stickiness"), apply, E_REMEMBER_APPLY_STICKY,
_e_border_menu_cb_remember_apply_sticky);
- NEW_REMEMBER_MI(_("Remember desktop"), apply, E_REMEMBER_APPLY_DESKTOP,
_e_border_menu_cb_remember_apply_desktop);
- NEW_REMEMBER_MI(_("Remember shaded state"), apply, E_REMEMBER_APPLY_SHADE,
_e_border_menu_cb_remember_apply_shade);
- NEW_REMEMBER_MI(_("Remember zone"), apply, E_REMEMBER_APPLY_ZONE,
_e_border_menu_cb_remember_apply_zone);
+ NEW_REMEMBER_MI(_("Remember Position"), apply, E_REMEMBER_APPLY_POS,
_e_border_menu_cb_remember_apply_pos);
+ NEW_REMEMBER_MI(_("Remember Size"), apply, E_REMEMBER_APPLY_SIZE,
_e_border_menu_cb_remember_apply_size);
+ NEW_REMEMBER_MI(_("Remember Stacking"), apply, E_REMEMBER_APPLY_LAYER,
_e_border_menu_cb_remember_apply_layer);
+ NEW_REMEMBER_MI(_("Remember Locks"), apply, E_REMEMBER_APPLY_LOCKS,
_e_border_menu_cb_remember_apply_locks);
+ NEW_REMEMBER_MI(_("Remember Border"), apply, E_REMEMBER_APPLY_BORDER,
_e_border_menu_cb_remember_apply_border);
+ NEW_REMEMBER_MI(_("Remember Stickiness"), apply, E_REMEMBER_APPLY_STICKY,
_e_border_menu_cb_remember_apply_sticky);
+ NEW_REMEMBER_MI(_("Remember Desktop"), apply, E_REMEMBER_APPLY_DESKTOP,
_e_border_menu_cb_remember_apply_desktop);
+ NEW_REMEMBER_MI(_("Remember Shaded State"), apply, E_REMEMBER_APPLY_SHADE,
_e_border_menu_cb_remember_apply_shade);
+ NEW_REMEMBER_MI(_("Remember Zone"), apply, E_REMEMBER_APPLY_ZONE,
_e_border_menu_cb_remember_apply_zone);
+ NEW_REMEMBER_MI(_("Remember Skip Window List"), apply,
E_REMEMBER_APPLY_SKIP_WINLIST, _e_border_menu_cb_remember_apply_skip_winlist);
/*
mi = e_menu_item_new(m);
e_menu_item_separator_set(mi, 1);
@@ -5715,6 +5744,20 @@
"widgets/border/default/fullscreen");
}
+ if ((bd->client.icccm.accepts_focus) &&
+ (!bd->client.netwm.state.skip_taskbar))
+ {
+ mi = e_menu_item_new(m);
+ e_menu_item_label_set(mi, _("Skip Window List"));
+ e_menu_item_check_set(mi, 1);
+ e_menu_item_toggle_set(mi, bd->user_skip_winlist);
+ e_menu_item_callback_set(mi, _e_border_menu_cb_skip_winlist, bd);
+ e_menu_item_icon_edje_set(mi,
+ (char
*)e_theme_edje_file_get("base/theme/borders",
+
"widgets/border/default/skip_winlist"),
+ "widgets/border/default/skip_winlist");
+ }
+
mi = e_menu_item_new(m);
e_menu_item_separator_set(mi, 1);
@@ -5953,6 +5996,23 @@
}
static void
+_e_border_menu_cb_skip_winlist(void *data, E_Menu *m, E_Menu_Item *mi)
+{
+ E_Border *bd;
+ int toggle;
+
+ bd = data;
+ if (!bd) return;
+
+ if ((bd->client.icccm.accepts_focus) &&
+ (!bd->client.netwm.state.skip_taskbar))
+ bd->user_skip_winlist = e_menu_item_toggle_get(mi);
+ else
+ bd->user_skip_winlist = 0;
+ if (bd->remember) e_remember_update(bd->remember, bd);
+}
+
+static void
_e_border_menu_cb_sendto_pre(void *data, E_Menu *m, E_Menu_Item *mi)
{
E_Menu *subm;
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.h,v
retrieving revision 1.91
retrieving revision 1.92
diff -u -3 -r1.91 -r1.92
--- e_border.h 8 Jul 2005 08:43:26 -0000 1.91
+++ e_border.h 9 Jul 2005 14:55:40 -0000 1.92
@@ -285,6 +285,7 @@
unsigned int ping_ok : 1;
unsigned int hung : 1;
unsigned int take_focus : 1;
+ unsigned int user_skip_winlist : 1;
E_Maximize maximized;
unsigned int lock_user_location : 1; /*DONE*/
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_config.c,v
retrieving revision 1.76
retrieving revision 1.77
diff -u -3 -r1.76 -r1.77
--- e_config.c 8 Jul 2005 04:42:50 -0000 1.76
+++ e_config.c 9 Jul 2005 14:55:40 -0000 1.77
@@ -164,6 +164,7 @@
E_CONFIG_VAL(D, T, prop.border, STR);
E_CONFIG_VAL(D, T, prop.sticky, UCHAR);
E_CONFIG_VAL(D, T, prop.shaded, UCHAR);
+ E_CONFIG_VAL(D, T, prop.skip_winlist, UCHAR);
E_CONFIG_VAL(D, T, prop.desk_x, INT);
E_CONFIG_VAL(D, T, prop.desk_y, INT);
E_CONFIG_VAL(D, T, prop.zone, INT);
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_remember.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- e_remember.c 8 Jul 2005 04:42:50 -0000 1.5
+++ e_remember.c 9 Jul 2005 14:55:40 -0000 1.6
@@ -206,6 +206,8 @@
rem->prop.shaded = bd->shaded;
+ rem->prop.skip_winlist = bd->user_skip_winlist;
+
e_desk_xy_get(bd->desk, &rem->prop.desk_x, &rem->prop.desk_y);
rem->prop.zone = bd->zone->num;
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_remember.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- e_remember.h 8 Jul 2005 04:42:50 -0000 1.3
+++ e_remember.h 9 Jul 2005 14:55:40 -0000 1.4
@@ -22,6 +22,7 @@
#define E_REMEMBER_APPLY_SHADE (1 << 7)
#define E_REMEMBER_APPLY_ZONE (1 << 8)
#define E_REMEMBER_APPLY_RUN (1 << 9)
+#define E_REMEMBER_APPLY_SKIP_WINLIST (1 << 10)
#else
#ifndef E_REMEMBER_H
@@ -76,6 +77,8 @@
unsigned char shaded;
+ unsigned char skip_winlist;
+
int desk_x, desk_y;
int zone;
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_winlist.c,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -3 -r1.25 -r1.26
--- e_winlist.c 4 Jul 2005 10:24:22 -0000 1.25
+++ e_winlist.c 9 Jul 2005 14:55:40 -0000 1.26
@@ -350,6 +350,7 @@
ok = 1;
if ((!bd->client.icccm.accepts_focus)) ok = 0;
if (bd->client.netwm.state.skip_taskbar) ok = 0;
+ if (bd->user_skip_winlist) ok = 0;
if (bd->iconic)
{
if (!e_config->winlist_list_show_iconified) ok = 0;
-------------------------------------------------------
This SF.Net email is sponsored by the 'Do More With Dual!' webinar happening
July 14 at 8am PDT/11am EDT. We invite you to explore the latest in dual
core and dual graphics technology at this free one hour event hosted by HP,
AMD, and NVIDIA. To register visit http://www.hp.com/go/dualwebinar
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs