summaryrefslogtreecommitdiff
path: root/src/sxwm.c
AgeCommit message (Collapse)Author
2025-09-02(fix): Mistake when doing "rebase"L0Wigh
2025-09-02clean for pull requestL0Wigh
2025-09-02add: the window opacity is set to 100 when fullscreen and then reset when ↵L0Wigh
fullscreen is disabled
2025-09-01fix unconsistent castingdehroox
2025-09-01fix errx exit codesdehroox
2025-08-29make shiftor unsigned to prevent undefined behaviorAbhinav Prasai
2025-08-29allow custom layouts + other changes vvvAbhinav Prasai
* remove config.h * improve modifier mask cleaning * use keycode instead of sym when dealing with bindings * put <linux/limits.h> into ifdef __linux__
2025-08-28update Makefile + fix warningsAbhinav Prasai
2025-08-28remove duplicate _NET_WM_WINDOW_TYPE_DOCKAbhinav Prasai
2025-08-28calculate focused win current monitorAbhinav Prasai
2025-08-28fix fixed windows not being setAbhinav Prasai
problem: removed the c->fixed/floating = True; fix: added it back
2025-08-28new helper set_input_focus + better handling of eg. dialogue boxesAbhinav Prasai
2025-08-28remove this useless clauseAbhinav Prasai
2025-08-28add focused checking to prevent crash and make clangd optionAbhinav Prasai
2025-08-28tile() refactorAbhinav Prasai
2025-08-25remove cached variableAbhinav Prasai
there was no need, c (client variable) works fine
2025-08-25properly set monitor on workspace switchAbhinav Prasai
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
2025-08-24git rescue commitsAbhinav Prasai
previously lost code changes from lost commit
2025-08-24[2] refactoring + replace all 256 with MAX_ITEMSAbhinav Prasai
2025-08-08change usege -> usage - thanks g0ncaloc7Abhinav Prasai
2025-08-08rename current_monitor -> current_mon && fix focus_next_monAbhinav Prasai
focus_next_mon now focuses the next monitor regardless or if there is no window on that monitor or not.
2025-08-07[1] refactoringAbhinav
2025-08-06refactor add_clientAbhinav
2025-08-06add MAX_ITEMS, minimise XGrabButton -> grab_button functionAbhinav
2025-08-06clean up setup_atomsAbhinav
2025-08-06correct order of functionsAbhinav
2025-07-23fix closing client wont also warp cursor backAbhinav
fix closing client wont also warp cursor
2025-07-21fix scratchpad window ghost when switching worskpacesAbhinav
2025-07-21fix scratchpad windows cant tile after releasing themAbhinav
2025-07-21update atom namesAbhinav
2025-07-17add start_fullscreenAbhinav
now windows specifed can by default start fullscreened.
2025-07-17fix transparent borders with picomAbhinav
2025-07-17remove auto-fullscreen capabilitiesAbhinav
this feature was improperly implemented and causing problems. removing it for now
2025-07-01fix bottom bar struts taking half screen && windows killed on exitAbhinav
2025-07-01fix space reserved on monitors without bar/panelAbhinav
made reserve_(direction) monitor specific
2025-06-29add _NET_FRAME_EXTENTS atom supportAbhinav
this hopefully should allow programs like WINE and who spawn windows by them selves function properly
2025-06-29fix moving fullscreen windows disables fullscreenAbhinav
moving fullscreen windows to new workspace disables fullscreen on them. just removed redundant, old code
2025-06-29fix resizing bug on second monitorAbhinav
2025-06-26Merge pull request #109 from elbachir-one/mainAbhinav Prasai
Improve safety in toggle_scratchpad() and remove_scratchpad()
2025-06-25Improve safety in toggle_scratchpad() and remove_scratchpad()elbachir-one
- 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.
2025-06-25Merge pull request #107 from elbachir-one/mainAbhinav Prasai
Add window validity checks to swallow and unswallow functions
2025-06-24fix system hanging from waitingAbhinav
stop waiting for spawned procs
2025-06-24Add window validity checks to swallow and unswallow functionselbachir-one
- 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.
2025-06-24Merge pull request #104 from elbachir-one/mainAbhinav Prasai
Fix(spawn): support multiple piped commands
2025-06-24fix scratchpad focused on toggle offAbhinav
scratchpad now is out of focus when is toggled off so no problems where you accidentaly close it
2025-06-24add window centeringAbhinav
the user can now center any floating window with default bind centre_window
2025-06-24Fix(spawn): support multiple piped commandselbachir-one
- 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.
2025-06-24add open_in_workspaceAbhinav
user can now open specific windows in specific workspaces
2025-06-24add scratchpadsAbhinav
there are now i3 like scratchpads. all default binds added, mans updated
2025-06-23add new_win_masterAbhinav
new windows spawned can now be set as master window