summaryrefslogtreecommitdiff
path: root/wm.scm
diff options
context:
space:
mode:
authorSamuel Fadel <samuel@nihil.ws>2022-12-11 13:03:04 +0100
committerSamuel Fadel <samuel@nihil.ws>2022-12-11 13:03:04 +0100
commit99b00bcb3b2803bde4d24f9273a6b81909df5f47 (patch)
tree68049903273811000f837cb8105d877e12085d77 /wm.scm
parent74b5ca26448788d61d61efce61650529e00befed (diff)
Implemented remaining C core functions.
* main.scm: Updated function name * wm.scm: Bind remaining C core functions * schewm.c: Updated/implemented remaining core functions
Diffstat (limited to 'wm.scm')
-rw-r--r--wm.scm99
1 files changed, 69 insertions, 30 deletions
diff --git a/wm.scm b/wm.scm
index bdbc6dd..3dd4797 100644
--- a/wm.scm
+++ b/wm.scm
@@ -26,7 +26,7 @@
wm-toggle-bottom-left
wm-toggle-bottom-right
wm-set-workspace
- wm-set-client-workspace
+ wm-set-focused-client-workspace
wm-client-monitor-prev
wm-client-monitor-next
wm-run
@@ -121,41 +121,80 @@
(wm-grab-key-with-mod key))
(wm-grab-keys (cdr keybindings)))))
-(define wm-focus-prev
- (schewm-func void "wm_focus_prev" '()))
-
-(define wm-focus-next
- (schewm-func void "wm_focus_next" '()))
-
(define c/wm-set-key-press-handler
(schewm-func void
"wm_set_key_press_handler"
(list '*)))
(define (wm-set-key-press-handler! handler)
- ;; mod (state, uint16)
- ;; keysym (detail, uint8)
+ ;; Event handler args are:
+ ;; - mod (`ev.state' clean from noise, uint16)
+ ;; - keysym (`ev.detail' converted to keysym, uint32)
(c/wm-set-key-press-handler
(procedure->pointer void
handler
- (list uint16 uint8))))
-
-;; XXX: Dummy
-(define (wm-focus-close) '())
-(define (wm-pack-left) '())
-(define (wm-pack-right) '())
-(define (wm-pack-top) '())
-(define (wm-pack-bottom) '())
-(define (wm-toggle-maximize) '())
-(define (wm-toggle-half-left) '())
-(define (wm-toggle-half-right) '())
-(define (wm-toggle-half-top) '())
-(define (wm-toggle-half-bottom) '())
-(define (wm-toggle-top-left) '())
-(define (wm-toggle-top-right) '())
-(define (wm-toggle-bottom-left) '())
-(define (wm-toggle-bottom-right) '())
-(define (wm-set-workspace) '())
-(define (wm-set-client-workspace) '())
-(define (wm-client-monitor-prev) '())
-(define (wm-client-monitor-next) '())
+ (list uint16 uint32))))
+
+(define wm-focus-prev
+ (schewm-func void "wm_focus_prev" '()))
+
+(define wm-focus-next
+ (schewm-func void "wm_focus_next" '()))
+
+(define wm-focus-close
+ (schewm-func void "wm_focus_close" '()))
+
+(define wm-pack-left
+ (schewm-func void "wm_pack_left" '()))
+
+(define wm-pack-right
+ (schewm-func void "wm_pack_right" '()))
+
+(define wm-pack-top
+ (schewm-func void "wm_pack_top" '()))
+
+(define wm-pack-bottom
+ (schewm-func void "wm_pack_bottom" '()))
+
+(define wm-toggle-maximize
+ (schewm-func void "wm_toggle_maximize" '()))
+
+(define wm-toggle-half-left
+ (schewm-func void "wm_toggle_half_left" '()))
+
+(define wm-toggle-half-right
+ (schewm-func void "wm_toggle_half_right" '()))
+
+(define wm-toggle-half-top
+ (schewm-func void "wm_toggle_half_top" '()))
+
+(define wm-toggle-half-bottom
+ (schewm-func void "wm_toggle_half_bottom" '()))
+
+(define wm-toggle-top-left
+ (schewm-func void "wm_toggle_top_left" '()))
+
+(define wm-toggle-top-right
+ (schewm-func void "wm_toggle_top_right" '()))
+
+(define wm-toggle-bottom-left
+ (schewm-func void "wm_toggle_bottom_left" '()))
+
+(define wm-toggle-bottom-right
+ (schewm-func void "wm_toggle_bottom_right" '()))
+
+(define wm-set-workspace
+ (schewm-func void
+ "wm_set_workspace"
+ (list uint32)))
+
+(define wm-set-focused-client-workspace
+ (schewm-func void
+ "wm_set_focused_client_workspace"
+ (list uint32)))
+
+(define wm-client-monitor-prev
+ (schewm-func void "wm_client_monitor_prev" '()))
+
+(define wm-client-monitor-next
+ (schewm-func void "wm_client_monitor_next" '()))