/[oroborus]/oroborus/src/events.c
ViewVC logotype

Diff of /oroborus/src/events.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.40 by dreamind, Mon May 19 01:00:56 2003 UTC revision 1.41 by dreamind, Thu Jun 26 12:11:04 2003 UTC
# Line 431  void Line 431  void
431  handleDestroyNotify (XDestroyWindowEvent * ev)  handleDestroyNotify (XDestroyWindowEvent * ev)
432  {  {
433    Client *c;    Client *c;
   int not_warp_to_next;  
434    
435  #ifdef DEBUG  #ifdef DEBUG
436    printf ("entering handleDestroyNotify\n");    printf ("entering handleDestroyNotify\n");
# Line 440  handleDestroyNotify (XDestroyWindowEvent Line 439  handleDestroyNotify (XDestroyWindowEvent
439    c = clientGetFromWindow (ev->window, WINDOW);    c = clientGetFromWindow (ev->window, WINDOW);
440    if (c)    if (c)
441      {      {
       not_warp_to_next = c->not_warp_to_next || c->transientFor;  
442        clientUnframe (c, False);        clientUnframe (c, False);
443        if (clients)        if (clients)
444          {          {
# Line 449  handleDestroyNotify (XDestroyWindowEvent Line 447  handleDestroyNotify (XDestroyWindowEvent
447              c = clientGetTopMost (WIN_LAYER_NORMAL);              c = clientGetTopMost (WIN_LAYER_NORMAL);
448    
449            clientSetFocus (c, True);            clientSetFocus (c, True);
           if (c && !(not_warp_to_next || c->non_focusing))  
             clientWarpMouse (c);  
450          }          }
451        else        else
452          clientSetFocus (NULL, True);          clientSetFocus (NULL, True);
# Line 461  void Line 457  void
457  handleUnmapNotify (XUnmapEvent * ev)  handleUnmapNotify (XUnmapEvent * ev)
458  {  {
459    Client *c;    Client *c;
   int not_warp_to_next;  
460    
461  #ifdef DEBUG  #ifdef DEBUG
462    printf ("entering handleUnmapNotify\n");    printf ("entering handleUnmapNotify\n");
# Line 470  handleUnmapNotify (XUnmapEvent * ev) Line 465  handleUnmapNotify (XUnmapEvent * ev)
465    c = clientGetFromWindow (ev->window, WINDOW);    c = clientGetFromWindow (ev->window, WINDOW);
466    if (c)    if (c)
467      {      {
       not_warp_to_next = c->not_warp_to_next || c->transientFor;  
468        if (c->ignore_unmap)        if (c->ignore_unmap)
469          c->ignore_unmap--;          c->ignore_unmap--;
470        else        else
# Line 482  handleUnmapNotify (XUnmapEvent * ev) Line 476  handleUnmapNotify (XUnmapEvent * ev)
476                if (!c)                if (!c)
477                  c = clientGetTopMost (WIN_LAYER_NORMAL);                  c = clientGetTopMost (WIN_LAYER_NORMAL);
478                clientSetFocus (c, True);                clientSetFocus (c, True);
               if (c && !(not_warp_to_next || c->non_focusing))  
                 clientWarpMouse (c);  
479              }              }
480            else            else
481              clientSetFocus (NULL, True);              clientSetFocus (NULL, True);

Legend:
Removed from v.1.40  
changed lines
  Added in v.1.41

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26