aboutsummaryrefslogtreecommitdiffstats
path: root/calmwm.h
diff options
context:
space:
mode:
authorokan2016-10-06 14:41:19 +0000
committerokan2016-10-06 14:41:19 +0000
commit9d358af1dd11a75cf4778e096df8f52cb1ca690b (patch)
tree9e40148cf90de010622f87a77f515231ffaf5a21 /calmwm.h
parent97f575bc42f2f8f9458adf55d1fc29e8bd021c83 (diff)
downloadcwm-9d358af1dd11a75cf4778e096df8f52cb1ca690b.tar.gz
Add an argument to the callbacks to pass the xevent context, button or
key press. This allows to remove a few hacks to duplicate functions only for behaviour changes; now differing behaviours are pushed down to the callback. Also will allow for previously unavailable actions to be bind-able down the road.
Diffstat (limited to 'calmwm.h')
-rw-r--r--calmwm.h76
1 files changed, 38 insertions, 38 deletions
diff --git a/calmwm.h b/calmwm.h
index 79656eb..ac10851 100644
--- a/calmwm.h
+++ b/calmwm.h
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $OpenBSD: calmwm.h,v 1.325 2016/10/05 13:10:59 okan Exp $
+ * $OpenBSD: calmwm.h,v 1.326 2016/10/06 14:41:19 okan Exp $
*/
#ifndef _CALMWM_H_
@@ -74,8 +74,8 @@
#define CWM_GAP 0x0001
#define CWM_NOGAP 0x0002
-#define CWM_KBD 0x0001
-#define CWM_MOUSE 0x0002
+#define CWM_KEY 0x0001
+#define CWM_BTN 0x0002
#define CWM_CONTEXT_NONE 0x0000
#define CWM_CONTEXT_CLIENT 0x0001
@@ -245,7 +245,7 @@ TAILQ_HEAD(screen_ctx_q, screen_ctx);
struct binding {
TAILQ_ENTRY(binding) entry;
- void (*callback)(struct client_ctx *, union arg *);
+ void (*callback)(struct client_ctx *, union arg *, int);
union arg argument;
unsigned int modmask;
union press press;
@@ -457,52 +457,52 @@ void screen_update_geometry(struct screen_ctx *);
void screen_updatestackingorder(struct screen_ctx *);
void screen_assert_clients_within(struct screen_ctx *);
-void kbfunc_client_cycle(struct client_ctx *, union arg *);
-void kbfunc_client_delete(struct client_ctx *, union arg *);
+void kbfunc_client_cycle(struct client_ctx *, union arg *, int);
+void kbfunc_client_delete(struct client_ctx *, union arg *, int);
void kbfunc_client_grouptoggle(struct client_ctx *,
- union arg *);
-void kbfunc_client_hide(struct client_ctx *, union arg *);
-void kbfunc_client_label(struct client_ctx *, union arg *);
-void kbfunc_client_lower(struct client_ctx *, union arg *);
-void kbfunc_client_move(struct client_ctx *, union arg *);
+ union arg *, int);
+void kbfunc_client_hide(struct client_ctx *, union arg *, int);
+void kbfunc_client_label(struct client_ctx *, union arg *, int);
+void kbfunc_client_lower(struct client_ctx *, union arg *, int);
+void kbfunc_client_move(struct client_ctx *, union arg *, int);
void kbfunc_client_movetogroup(struct client_ctx *,
- union arg *);
-void kbfunc_client_raise(struct client_ctx *, union arg *);
-void kbfunc_client_rcycle(struct client_ctx *, union arg *);
-void kbfunc_client_resize(struct client_ctx *, union arg *);
-void kbfunc_client_tile(struct client_ctx *, union arg *);
+ union arg *, int);
+void kbfunc_client_raise(struct client_ctx *, union arg *, int);
+void kbfunc_client_rcycle(struct client_ctx *, union arg *, int);
+void kbfunc_client_resize(struct client_ctx *, union arg *, int);
+void kbfunc_client_tile(struct client_ctx *, union arg *, int);
void kbfunc_client_toggle_freeze(struct client_ctx *,
- union arg *);
+ union arg *, int);
void kbfunc_client_toggle_fullscreen(struct client_ctx *,
- union arg *);
+ union arg *, int);
void kbfunc_client_toggle_hmaximize(struct client_ctx *,
- union arg *);
+ union arg *, int);
void kbfunc_client_toggle_maximize(struct client_ctx *,
- union arg *);
+ union arg *, int);
void kbfunc_client_toggle_sticky(struct client_ctx *,
- union arg *);
+ union arg *, int);
void kbfunc_client_toggle_vmaximize(struct client_ctx *,
- union arg *);
-void kbfunc_cwm_status(struct client_ctx *, union arg *);
-void kbfunc_exec(struct client_ctx *, union arg *);
-void kbfunc_exec_lock(struct client_ctx *, union arg *);
-void kbfunc_exec_term(struct client_ctx *, union arg *);
+ union arg *, int);
+void kbfunc_cwm_status(struct client_ctx *, union arg *, int);
+void kbfunc_exec(struct client_ctx *, union arg *, int);
+void kbfunc_exec_lock(struct client_ctx *, union arg *, int);
+void kbfunc_exec_term(struct client_ctx *, union arg *, int);
void kbfunc_group_alltoggle(struct client_ctx *,
- union arg *);
-void kbfunc_group_cycle(struct client_ctx *, union arg *);
-void kbfunc_group_only(struct client_ctx *, union arg *);
-void kbfunc_group_toggle(struct client_ctx *, union arg *);
-void kbfunc_menu_exec(struct client_ctx *, union arg *);
-void kbfunc_menu_client(struct client_ctx *, union arg *);
-void kbfunc_menu_cmd(struct client_ctx *, union arg *);
-void kbfunc_menu_group(struct client_ctx *, union arg *);
-void kbfunc_menu_ssh(struct client_ctx *, union arg *);
-void kbfunc_ptrmove(struct client_ctx *, union arg *);
+ union arg *, int);
+void kbfunc_group_cycle(struct client_ctx *, union arg *, int);
+void kbfunc_group_only(struct client_ctx *, union arg *, int);
+void kbfunc_group_toggle(struct client_ctx *, union arg *, int);
+void kbfunc_menu_exec(struct client_ctx *, union arg *, int);
+void kbfunc_menu_client(struct client_ctx *, union arg *, int);
+void kbfunc_menu_cmd(struct client_ctx *, union arg *, int);
+void kbfunc_menu_group(struct client_ctx *, union arg *, int);
+void kbfunc_menu_ssh(struct client_ctx *, union arg *, int);
+void kbfunc_ptrmove(struct client_ctx *, union arg *, int);
void mousefunc_client_move(struct client_ctx *,
- union arg *);
+ union arg *, int);
void mousefunc_client_resize(struct client_ctx *,
- union arg *);
+ union arg *, int);
void menu_windraw(struct screen_ctx *, Window,
const char *, ...);