discomfitor pushed a commit to branch master.
commit d95369726b76ecee284990fa77b16dcb97d467ac
Author: Mike Blumenkrantz <[email protected]>
Date: Thu May 30 11:05:58 2013 +0100
start a new "hacks" section for border clients to reduce repeated match
attempts against broken clients
---
src/bin/e_border.c | 9 +++++----
src/bin/e_border.h | 5 +++++
2 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/src/bin/e_border.c b/src/bin/e_border.c
index b03fbba..bfbcf3d 100644
--- a/src/bin/e_border.c
+++ b/src/bin/e_border.c
@@ -4811,8 +4811,7 @@ _e_border_free(E_Border *bd)
bd->client.icccm.name = NULL;
if (bd->client.icccm.class)
{
- if ((!strcasecmp(bd->client.icccm.class, "vmplayer")) ||
- (!strcasecmp(bd->client.icccm.class, "vmware")))
+ if (bd->client.hacks.mapping_change)
e_bindings_mapping_change_enable(EINA_TRUE);
eina_stringshare_del(bd->client.icccm.class);
bd->client.icccm.class = NULL;
@@ -7138,8 +7137,10 @@ _e_border_eval0(E_Border *bd)
pclass = bd->client.icccm.class;
bd->client.icccm.name = eina_stringshare_add(nname);
bd->client.icccm.class = eina_stringshare_add(nclass);
- if ((!e_util_strcasecmp(bd->client.icccm.class, "vmplayer")) ||
- (!e_util_strcasecmp(bd->client.icccm.class, "vmware")))
+ bd->client.hacks.mapping_change =
+ ((!e_util_strcasecmp(bd->client.icccm.class, "vmplayer")) ||
+ (!e_util_strcasecmp(bd->client.icccm.class, "vmware")));
+ if (bd->client.hacks.mapping_change)
e_bindings_mapping_change_enable(EINA_FALSE);
free(nname);
free(nclass);
diff --git a/src/bin/e_border.h b/src/bin/e_border.h
index 3364d7a..e1aea39 100644
--- a/src/bin/e_border.h
+++ b/src/bin/e_border.h
@@ -201,6 +201,11 @@ struct _E_Border
struct
{
+ Eina_Bool mapping_change : 1;
+ } hacks;
+
+ struct
+ {
unsigned char changed : 1;
unsigned char user_selected : 1;
Eina_Stringshare *name;
--
------------------------------------------------------------------------------
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1