Age | Commit message (Collapse) | Author |
|
|
|
* wm.scm: Minor formatting adjustment
|
|
* schewm.c: wm_set_client_state(): Call dpy_draw_borders() as needed
|
|
|
|
* init.scm: Launcher impl and helpers
* wm.scm: Launcher with fork & execlp (execvp)
* schewm.c: Fix border by explicitly calling border drawing proc after
restoring window size
|
|
* .envrc: Setup env using guix shell
|
|
|
|
* schewm.c: Also fixed num_workspaces (w/ minor refactor) and intial
window mapping repositioning.
|
|
* Makefile: Add optimization flag
* init.scm: Use correct indices for workspaces
* schewm.c: Many lines of repeated code removed
|
|
* schewm.c: Fix sizing when maximizing, investigate managing existing
windows
|
|
|
|
* main.scm: Added wm-reconifgure call to set initial config
* wm.scm: Added wiring to call C code for reconfiguration
* schewm.c: bugfix in ev_unmap_notify(); new wm_reconfigure() function
|
|
|
|
Callbacks can be fully setup via Scheme code; the C code assumes
callbacks have no args and return no values. Within Scheme we setup
callbacks via some lambda functions that capture args when needed (see
make-callback example).
Key press handler operates on the C side using a hash map to find the
callback to be called. Everything is set up on the Scheme side, which
is less verbose and more convenient to read.
* main.scm: Setup callbacks for keypresses
* schewm.c: Callbacks hash maps for keys and buttons, handlers for
keys
* wm.scm: Minor reorganization (key grab also now takes the callback
directly)
|
|
* main.scm: Updated function name
* wm.scm: Bind remaining C core functions
* schewm.c: Updated/implemented remaining core functions
|
|
* main.scm: Code cleanup
* wm.scm: Cleanup and moving of more functions
* schewm.c: Implemented more utility functions
|
|
* schewm.c: Implemented focus prev/next and minor helper func
* main.scm and wm.scm: Added focus prev/next calls to C
|
|
* main.scm: Added utility and keybinding calls
* wm.scm: Added necessary bindings to C code
* schewm.c: Some utility functions for grabbing keys
|
|
* .manifest.scm: Added libx11
* Makefile: Add x11 to pkg-config calls
* main.scm: Add more config, including some keybinding stuff
* wm.scm: Add key-from-str function
* schewm.c: keysym_from_str() and others implemented/refactored
|
|
|
|
* schewm.c: Mostly added utility functions not yet wired to wm.
|
|
* schewm.c: Separate more clearly dpy-specific and wm-specific code.
|
|
* schewm.c: Extract client-ignoring logic into the
dpy_should_ignore_window function.
|
|
* schewm.c: dpy_make_client: Improve logic to avoid cleanup in two
places.
|
|
|
|
* main.scm: Added key press handler
* wm.scm: Added key press handler
* schewm.c: Added key grabbing, output management, client
initialization (initial grab)
|
|
* Makefile: Add pkg-config flags to properly link some symbols
* wm.scm: Added wm-run and cleanup
* schewm.c: Ported a lot more stuff, still missing key features
* main.scm: Call wm-run
|
|
* schewm.c: Merge/port a lot of old code.
|
|
|
|
|
|
Sketching Scheme/C interop.
|