On Mon, August 24, 2009, Carlos R. Mafra wrote:

> >>> diff --git a/src/wmspec.c b/src/wmspec.c
> >>> index 87c0a19..0ae9f25 100644
> >>> --- a/src/wmspec.c
> >>> +++ b/src/wmspec.c
> >>> @@ -1446,7 +1446,8 @@ Bool wNETWMProcessClientMessage(XClientMessageEvent 
> >>> * even
> >>>         if (!wwin)
> >>>                 return False;
> >>>  
> >>> -       if (event->message_type == net_active_window) {
> >>> +       if (wwin->frame->workspace == wwin->screen_ptr->current_workspace
> >>> +           && event->message_type == net_active_window) {
> >>>                 wNETWMShowingDesktop(scr, False);
> >>>                 wMakeWindowVisible(wwin);
> >>>         } else if (event->message_type == net_close_window) {

[...]

> Could you write a tentative changelog for this change? I could
> dig something from various pieces of your emails, but
> I guess it would be easier for you to do.

OK, how about this: 

New windows should only be focused if they are in the current
workspace. Not performing this check can lead to WM switching
workspaces if a window is opened which (a) is configured to
appear in a particular workspace and (b) sends a
_NET_ACTIVE_WINDOW message to give focus to something, e.g. a
sub window. This behaviour was observed with firefox if a
session with more than one tab open was restored at startup.

Feel free to edit it for more clarity :)

Cheers,

M'bert

-- 
----------- / http://herbert.the-little-red-haired-girl.org / -------------
=+= 
Its gone to meet its maker...  Its gone to join the choir invisible...
This Parrot is an Ex-Parrot!


-- 
To unsubscribe, send mail to [email protected].

Reply via email to