| Age | Commit message (Collapse) | Author |
|
|
|
|
|
problem: removed the c->fixed/floating = True;
fix: added it back
|
|
|
|
|
|
|
|
|
|
there was no need, c (client variable) works fine
|
|
before it just used to focus on nothing if there was no window in the
other workspace, even if there was one on the other monitor. now it
focuses on the first window visible
|
|
previously lost code changes from lost commit
|
|
|
|
|
|
focus_next_mon now focuses the next monitor regardless or if there is no
window on that monitor or not.
|
|
|
|
|
|
|
|
|
|
|
|
fix closing client wont also warp cursor
|
|
|
|
|
|
|
|
now windows specifed can by default start fullscreened.
|
|
|
|
this feature was improperly implemented and causing problems. removing
it for now
|
|
|
|
made reserve_(direction) monitor specific
|
|
this hopefully should allow programs like WINE and who spawn windows by
them selves function properly
|
|
moving fullscreen windows to new workspace disables fullscreen on them.
just removed redundant, old code
|
|
|
|
Improve safety in toggle_scratchpad() and remove_scratchpad()
|
|
- Added bounds check using MAX_SCRATCHPADS to prevent out-of-range access.
- Stored scratchpad client in a local variable for clarity.
- Guarded against null `focused` pointer before using it.
- Enhances stability and prevents potential crashes.
|
|
Add window validity checks to swallow and unswallow functions
|
|
stop waiting for spawned procs
|
|
- Verify `swallowed->win` before resizing to avoid potential crashes with invalid windows.
- Updated `unswallow_window` to verify `swallower->win` before mapping, raising, and focusing.
- Prevents undefined behavior when client windows are not properly initialized.
|
|
Fix(spawn): support multiple piped commands
|
|
scratchpad now is out of focus when is toggled off so no problems where
you accidentaly close it
|
|
the user can now center any floating window with default bind
centre_window
|
|
- Rewrote spawn to handle arbitrary pipelines (e.g., cmd1 | cmd2 | cmd3).
- Dynamically parses and segments commands around pipe tokens.
- Manages multiple pipes and forks with proper resource cleanup.
|
|
user can now open specific windows in specific workspaces
|
|
there are now i3 like scratchpads. all default binds added, mans updated
|
|
new windows spawned can now be set as master window
|
|
|
|
the user can now specify which windows can swallow / can be swallowed.
|
|
- Moved memset after cleanup loop to preserve bind count before freeing
- Minor cleanup
|
|
|
|
- Fixed bug in DRAG_SWAP where `last_swap_target` reset each motion event
- Added `snap_coordinate()` helper to reduce code duplication in move logic
- Enforced minimum window size via `MIN_WINDOW_SIZE` define
- Clamped window resize to screen bounds
- Removed magic numbers for better configurability and clarity
|
|
- Reorganized code into clearer logical blocks
- Added bounds checks for MAXCLIENTS to avoid overflow
- Skipped redundant XConfigureWindow calls for unchanged geometry
- Ensured proper handling of stack heights under overfill and underfill
- Improved variable naming and structure for maintainability
|
|
before when a tray app, eg steam was closed, it would still be
focusable. now it only focuses if the window is mapped
|
|
when you click a link it used to summon the window to your workspace but
now it leaves everything be so you have to go there manually
|