On 02/13/2010 11:10 AM, Carsten Haitzler (The Rasterman) wrote:
> On Sat, 13 Feb 2010 10:57:06 -0500 Christopher Michael<[email protected]>
> said:
>
>> The round trips are possibly necessary here tho :( In my tests I ran
>> into cases where the bd->client.icccm.title was NULL (when it should not
>> have been), hence the ecore_x calls to get the title....so these may
>> still be needed in some cases. A better fix (which is in the new code)
>> would have been to check bd->client.icccm.title first, and if (and only
>> if) that is NULL, than call the ecore_x function.
>
> oh.. i forgot - if icccm.title is null... netwm.name maay not be. in fact
> netwm.name should be pereferred - and if not set - uses icccm.title. :) so..
> round trips are not needed. if there was a property change - the border core
> will have fetched the new title. as such shouldnt call the title get cals at
> all - if border hasnt seen it yet - it wasnt set before mapping the window.
> any app not setting a title before a window is mapped is not going to reliably
> be detected - so blame there lies in the client - not the wm.
>

Ahhh, netwm.name...nice one :) Wasn't "blaming" the wm at all...just 
noting what was found in my tests ;)

dh

>> dh
>>
>> On 02/13/2010 06:42 AM, Enlightenment SVN wrote:
>>> Log:
>>>     why do  a server rount trip for every border to get title when it's
>>> already stored? bad bad bad! this will cause mucho slowness.
>>>
>>>
>>> Author:       raster
>>> Date:         2010-02-13 03:42:28 -0800 (Sat, 13 Feb 2010)
>>> New Revision: 46128
>>>
>>> Modified:
>>>     trunk/e/src/modules/illume2/e_illume_border.c
>>>
>>> Modified: trunk/e/src/modules/illume2/e_illume_border.c
>>> ===================================================================
>>> --- trunk/e/src/modules/illume2/e_illume_border.c   2010-02-13
>>> 11:37:57 UTC (rev 46127) +++
>>> trunk/e/src/modules/illume2/e_illume_border.c       2010-02-13 11:42:28
>>> UTC (rev 46128) @@ -38,11 +38,10 @@ char *title;
>>>            int ret = 0;
>>>
>>> -        title = ecore_x_icccm_title_get(bd->client.win);
>>> +        title = bd->client.icccm.title;
>>>            if ((title)&&
>>>                (!strcmp(title, il_cfg->policy.vkbd.title)))
>>>              ret = 1;
>>> -        if (title) free(title);
>>>            if (ret) return ret;
>>>         }
>>>       if (il_cfg->policy.vkbd.match.name)
>>> @@ -73,7 +72,7 @@
>>>            char *title;
>>>            int ret = 0;
>>>
>>> -        title = ecore_x_icccm_title_get(bd->client.win);
>>> +        title = bd->client.icccm.title;
>>>            if ((title)&&
>>>                (!strcmp(title, il_cfg->policy.softkey.title)))
>>>              ret = 1;
>>> @@ -106,7 +105,7 @@
>>>            char *title;
>>>            int ret = 0;
>>>
>>> -        title = ecore_x_icccm_title_get(bd->client.win);
>>> +        title = bd->client.icccm.title;
>>>            if ((title)&&
>>>                (!strcmp(title, il_cfg->policy.indicator.title)))
>>>              ret = 1;
>>> @@ -136,7 +135,7 @@
>>>            char *title;
>>>            int ret = 0;
>>>
>>> -        title = ecore_x_icccm_title_get(bd->client.win);
>>> +        title = bd->client.icccm.title;
>>>            if ((title)&&
>>>                (!strcmp(title, il_cfg->policy.home.title)))
>>>              ret = 1;
>>>
>>

------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to