Enable showing some grab info.

SVN revision: 11160
This commit is contained in:
Kim Woelders 2004-08-05 23:08:34 +00:00
parent 57815445d1
commit d729f2c717
3 changed files with 28 additions and 31 deletions

View File

@ -1205,6 +1205,11 @@ typedef struct
int screens;
} display;
struct
{
char pointer_grab_active;
Window pointer_grab_window;
} grabs;
struct
{
char master; /* We are the master E */
char single; /* No slaves */
@ -1239,7 +1244,6 @@ typedef struct
char have_place_grab;
char action_inhibit;
char justclicked;
char click_focus_grabbed;
EWin *focuswin;
EWin *mouse_over_ewin;
int px, py, x, y;

View File

@ -22,8 +22,6 @@
*/
#include "E.h"
static Window grab_window;
void
GrabActionKey(Action * a)
{
@ -80,12 +78,12 @@ void
GrabTheButtons(Window win)
{
EDBUG(4, "GrabTheButtons");
if (Mode.click_focus_grabbed)
if (Mode.grabs.pointer_grab_active)
EDBUG_RETURN_;
XGrabPointer(disp, win, True, ButtonPressMask | ButtonReleaseMask,
GrabModeAsync, GrabModeAsync, None, None, CurrentTime);
grab_window = win;
Mode.click_focus_grabbed = 1;
Mode.grabs.pointer_grab_window = win;
Mode.grabs.pointer_grab_active = 1;
EDBUG_RETURN_;
}
@ -95,7 +93,7 @@ GrabThePointer(Window win, int csr)
int ret;
EDBUG(4, "GrabThePointer");
if (Mode.click_focus_grabbed)
if (Mode.grabs.pointer_grab_active)
EDBUG_RETURN(1);
ret =
XGrabPointer(disp, win, True,
@ -103,8 +101,8 @@ GrabThePointer(Window win, int csr)
ButtonMotionMask | EnterWindowMask | LeaveWindowMask,
GrabModeAsync, GrabModeAsync, None, ECsrGet(csr),
CurrentTime);
grab_window = win;
Mode.click_focus_grabbed = 1;
Mode.grabs.pointer_grab_window = win;
Mode.grabs.pointer_grab_active = 1;
EDBUG_RETURN(ret);
}
@ -114,7 +112,7 @@ GrabConfineThePointer(Window win, int csr)
int ret;
EDBUG(4, "GrabThePointer");
if (Mode.click_focus_grabbed)
if (Mode.grabs.pointer_grab_active)
EDBUG_RETURN(1);
ret =
XGrabPointer(disp, win, True,
@ -122,8 +120,8 @@ GrabConfineThePointer(Window win, int csr)
ButtonMotionMask | EnterWindowMask | LeaveWindowMask,
GrabModeAsync, GrabModeAsync, win, ECsrGet(csr),
CurrentTime);
grab_window = win;
Mode.click_focus_grabbed = 1;
Mode.grabs.pointer_grab_window = win;
Mode.grabs.pointer_grab_active = 1;
EDBUG_RETURN(ret);
}
@ -131,10 +129,10 @@ void
UnGrabTheButtons()
{
EDBUG(4, "UnGrabTheButtons");
if (!Mode.click_focus_grabbed)
if (!Mode.grabs.pointer_grab_active)
EDBUG_RETURN_;
XUngrabPointer(disp, CurrentTime);
Mode.click_focus_grabbed = 0;
grab_window = 0;
Mode.grabs.pointer_grab_active = 0;
Mode.grabs.pointer_grab_window = None;
EDBUG_RETURN_;
}

View File

@ -3522,7 +3522,7 @@ IPC_FocusMode(const char *params, Client * c)
if (!strcmp(params, "click"))
{
Conf.focus.mode = MODE_FOCUS_CLICK;
Mode.click_focus_grabbed = 1;
Mode.grabs.pointer_grab_active = 1;
}
else if (!strcmp(params, "pointer"))
{
@ -3535,14 +3535,14 @@ IPC_FocusMode(const char *params, Client * c)
else if (!strcmp(params, "clicknograb"))
{
Conf.focus.mode = MODE_FOCUS_CLICK;
Mode.click_focus_grabbed = 0;
Mode.grabs.pointer_grab_active = 0;
}
else if (!strcmp(params, "?"))
{
Esnprintf(buf, sizeof(buf), "Focus Mode: ");
if (Conf.focus.mode == MODE_FOCUS_CLICK)
{
if (Mode.click_focus_grabbed)
if (Mode.grabs.pointer_grab_active)
{
strcat(buf, "click");
}
@ -5839,23 +5839,18 @@ IPC_EwinInfo2(const char *params, Client * c __UNUSED__)
}
static void
IPC_MiscInfo(const char *params __UNUSED__, Client * c)
IPC_MiscInfo(const char *params __UNUSED__, Client * c __UNUSED__)
{
char buf[FILEPATH_LEN_MAX];
char buf3[FILEPATH_LEN_MAX];
IpcPrintf("stuff:\n");
Esnprintf(buf, sizeof(buf), "stuff:\n");
if (Mode.focuswin)
{
Esnprintf(buf3, sizeof(buf3), "mode.focuswin - %8x\n",
(unsigned)Mode.focuswin->client.win);
strcat(buf, buf3);
}
IpcPrintf(" mode.focuswin - %#lx\n", Mode.focuswin->client.win);
if (Mode.cur_menu_mode)
{
strcat(buf, "cur_menu_mode is set\n");
}
CommsSend(c, buf);
IpcPrintf(" cur_menu_mode is set\n");
IpcPrintf("Pointer grab on=%d win=%#lx\n",
Mode.grabs.pointer_grab_active, Mode.grabs.pointer_grab_window);
}
static void