-/* -*- indent-tabs-mode: t; tab-width: 4; c-basic-offset: 4; -*-
+/* -*- indent-tabs-mode: nil; tab-width: 4; c-basic-offset: 4; -*-
mouse.h for the Openbox window manager
- Copyright (c) 2003 Ben Jansens
+ Copyright (c) 2003-2007 Dana Jansens
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#ifndef ob__mouse_h
#define ob__mouse_h
-#include "action.h"
#include "frame.h"
#include "misc.h"
#include <X11/Xlib.h>
+struct _ObActionsAct;
+
void mouse_startup(gboolean reconfig);
void mouse_shutdown(gboolean reconfig);
-gboolean mouse_bind(char *buttonstr, char *contextstr, ObMouseAction mact,
- ObAction *action);
+gboolean mouse_bind(const gchar *buttonstr, ObFrameContext context,
+ ObMouseAction mact, struct _ObActionsAct *action);
+void mouse_unbind_all(void);
-void mouse_event(struct _ObClient *client, XEvent *e);
+gboolean mouse_event(struct _ObClient *client, XEvent *e);
void mouse_grab_for_client(struct _ObClient *client, gboolean grab);
ObFrameContext mouse_button_frame_context(ObFrameContext context,
- guint button);
+ guint button, guint state);
+
+/*! If a replay pointer is needed, then do it. Call this when windows are
+ going to be moving/appearing/disappearing, so that you know the mouse click
+ will go to the right window */
+void mouse_replay_pointer(void);
#endif