--
There ain't no cure for the summertime blues.
----------focus-patch------------------------------
*** misc.h.orig Tue Mar 19 21:44:59 1996
--- misc.h Tue Mar 19 21:45:05 1996
***************
*** 274,280 ****
void KeepOnTop(void);
void show_panner(void);
void WaitForButtonsUp(void);
! void FocusOn(FvwmWindow *t,int DeIconifyOnly);
Bool PlaceWindow(FvwmWindow *tmp_win, unsigned long flags,int Desk);
void free_window_names (FvwmWindow *tmp, Bool nukename, Bool nukeicon);
--- 274,280 ----
void KeepOnTop(void);
void show_panner(void);
void WaitForButtonsUp(void);
! void FocusOn(FvwmWindow *t,int DeIconifyOnly,int percentX,int percentY);
Bool PlaceWindow(FvwmWindow *tmp_win, unsigned long flags,int Desk);
void free_window_names (FvwmWindow *tmp, Bool nukename, Bool nukeicon);
*** builtins.c.orig Tue Mar 19 21:23:28 1996
--- builtins.c Tue Mar 19 23:12:58 1996
***************
*** 150,156 ****
* Moves focus to specified window
*
*************************************************************************/
! void FocusOn(FvwmWindow *t,int DeIconifyOnly)
{
#ifndef NON_VIRTUAL
int dx,dy;
--- 150,156 ----
* Moves focus to specified window
*
*************************************************************************/
! void FocusOn(FvwmWindow *t,int DeIconifyOnly,int percentX, int percentY)
{
#ifndef NON_VIRTUAL
int dx,dy;
***************
*** 191,198 ****
}
else
{
! x = t->frame_x;
! y = t->frame_y;
}
if(!(t->flags & ClickToFocus))
XWarpPointer(dpy, None, Scr.Root, 0, 0, 0, 0, x+2,y+2);
--- 191,200 ----
}
else
{
! x = t->frame_x + (t->frame_width * percentX) / 100;
! y = t->frame_y + (t->frame_height * percentY) / 100;
! if (x == t->frame_x + t->frame_width) x--;
! if (y == t->frame_y + t->frame_height) y--;
}
if(!(t->flags & ClickToFocus))
XWarpPointer(dpy, None, Scr.Root, 0, 0, 0, 0, x+2,y+2);
***************
*** 705,715 ****
if(val1 != 0)
{
! FocusOn((FvwmWindow *)val1,0);
if (((FvwmWindow *)(val1))->flags & ICONIFIED)
{
DeIconify((FvwmWindow *)val1);
! FocusOn((FvwmWindow *)val1,0);
}
}
}
--- 707,717 ----
if(val1 != 0)
{
! FocusOn((FvwmWindow *)val1,0,0,0);
if (((FvwmWindow *)(val1))->flags & ICONIFIED)
{
DeIconify((FvwmWindow *)val1);
! FocusOn((FvwmWindow *)val1,0,0,0);
}
}
}
***************
*** 718,727 ****
void focus_func(XEvent *eventp,Window w,FvwmWindow *tmp_win,
unsigned long context, char *action, int *Module)
{
if (DeferExecution(eventp,&w,&tmp_win,&context,SELECT,ButtonRelease))
return;
! FocusOn(tmp_win,0);
}
--- 720,738 ----
void focus_func(XEvent *eventp,Window w,FvwmWindow *tmp_win,
unsigned long context, char *action, int *Module)
{
+ int val1, val2, val1_unit, val2_unit, n;
+
+ n = GetTwoArguments(action, &val1, &val2, &val1_unit, &val2_unit);
+
+ if (n != 2 || val1 < 0 || val1 > 100 || val2 < 0 || val2 > 100) {
+ val1 = 0;
+ val2 = 0;
+ }
+
if (DeferExecution(eventp,&w,&tmp_win,&context,SELECT,ButtonRelease))
return;
! FocusOn(tmp_win,0,val1,val2);
}
*** icons.c.orig Tue Mar 19 21:43:11 1996
--- icons.c Tue Mar 19 21:43:13 1996
***************
*** 730,741 ****
}
if(tmp_win->flags & ClickToFocus)
! FocusOn(tmp_win,1);
KeepOnTop();
return;
! }
/****************************************************************************
--- 730,743 ----
}
if(tmp_win->flags & ClickToFocus)
! FocusOn(tmp_win,1,0,0);
KeepOnTop();
return;
! }
!
!
/****************************************************************************
----------end-----------------------------------
--
Visit the official FVWM web page at <URL:http://www.hpc.uh.edu/fvwm/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to majordomo_at_hpc.uh.edu.
To report problems, send mail to fvwm-owner_at_hpc.uh.edu.
Received on Mon Apr 15 1996 - 08:42:44 BST
This archive was generated by hypermail 2.3.0 : Mon Aug 29 2016 - 19:37:58 BST