1 /* -*- indent-tabs-mode: nil; tab-width: 4; c-basic-offset: 4; -*-
3 mouse.h for the Openbox window manager
4 Copyright (c) 2003-2007 Dana Jansens
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 See the COPYING file for a copy of the GNU General Public License.
27 typedef struct _ObMouseButton ObMouseButton;
31 struct _ObMouseButton {
36 void mouse_startup(gboolean reconfig);
37 void mouse_shutdown(gboolean reconfig);
39 gboolean mouse_bind(const gchar *buttonstr, ObFrameContext context,
40 ObMouseAction mact, struct _ObActionList *actions);
41 void mouse_unbind_all(void);
43 gboolean mouse_event(struct _ObClient *client, XEvent *e);
45 void mouse_grab_for_client(struct _ObClient *client, gboolean grab);
47 ObFrameContext mouse_button_frame_context(ObFrameContext context,
48 guint button, guint state);
50 /*! If a replay pointer is needed, then do it. Call this when windows are
51 going to be moving/appearing/disappearing, so that you know the mouse click
52 will go to the right window */
53 void mouse_replay_pointer(void);