Commit Graph

75 Commits

Author SHA1 Message Date
977a8df56b read config file, early return in wm_layout when there are no clients 2023-07-05 22:36:25 +02:00
c85bbd8f09 add config file implementation 2023-07-05 22:33:35 +02:00
f4aa263368 initialize client field to NULL in wm_treenode_new 2023-07-05 20:38:46 +02:00
72663656e4 swap assertions for if checks 2023-07-05 20:36:08 +02:00
f98f9e6826 move config-related variables and functions to config.c 2023-07-04 19:31:38 +02:00
12351bdf99 add config.h and config.c 2023-07-04 19:30:37 +02:00
6db707686a fix treenode removal edge case 2023-07-04 16:08:04 +02:00
3252773ff7 fix borders 2023-07-04 16:07:24 +02:00
bcbe755176 move setting supported ewmh atoms to new function 2023-07-03 18:07:46 +02:00
32d4a52800 fix workspace switching 2023-07-03 18:02:12 +02:00
784fd89cf8 move source files to src/ directory 2023-07-02 23:36:22 +02:00
6778471950 Merge branch 'tree' 2023-07-02 23:26:15 +02:00
bee34c02c0 fix various warnings 2023-07-02 22:53:45 +02:00
57ad7142bb fix warning about different signedness integer comparison 2023-07-02 22:44:06 +02:00
ebaa9734dc fix a problem when removing a node that has another split as their sibling 2023-07-02 22:40:37 +02:00
463d095aa0 focus new clients 2023-07-02 21:21:30 +02:00
24a8cf1856 add function and keybinds to switch split mode 2023-07-02 19:53:27 +02:00
1f07ccbfd6 add function to convert tree structure to graphviz tree (DOT file) 2023-07-02 17:08:56 +02:00
921813176d remove unnecessary DEBUG_PRINT statements 2023-07-01 20:19:03 +02:00
e350587aa2 rewrite wm_treenode_ptr_find_client_node, return sibling from wm_treenode_remove_client 2023-07-01 20:16:54 +02:00
64d2adbe49 update directional focus to work with tree structure, focus another client after closing one 2023-07-01 20:10:27 +02:00
867757734f update wm_client_get_focused to find focused client in tree structure 2023-06-01 15:52:09 +02:00
1298543661 use updated util function signatures 2023-06-01 15:23:45 +02:00
cf3bea02da add id field to TreeNode, add debug logs, fixes 2023-06-01 15:22:58 +02:00
e1620b452a change wm_client_to_xwchanges parameter to Client*, remove client from tree when killed 2023-06-01 15:21:58 +02:00
00821acf12 insert client into tree on map request 2023-06-01 15:20:51 +02:00
6ae7143655 update wm_layout function to handle tree structure 2023-05-28 17:35:03 +02:00
ea2c1dcfbd add function to find addresses of client tree nodes 2023-05-28 17:25:39 +02:00
ca70f08995 update DEBUG_PRINT to include file name and line number 2023-05-28 17:21:47 +02:00
38f03105bd add function to insert new client into tree structure 2023-05-28 17:19:34 +02:00
254b6d2ffb add "focused" field to Client struct 2023-05-28 17:17:10 +02:00
7734411ba6 add function for splitting node space, add function to remove client from tree 2023-05-28 17:15:38 +02:00
f17eae5fb0 add PtrArray struct and functions, add function to find focused treenode 2023-05-28 16:22:23 +02:00
c5990665f5 add breadth-first search function to find client nodes in a tree 2023-05-26 20:33:59 +02:00
92a5dc5cf1 change array_init to array_new, working as a constructor 2023-05-26 20:01:27 +02:00
c66eb85cc6 add ClientArray struct and functions, add _free() functions 2023-05-26 19:29:19 +02:00
434e83d570 move Client struct definition to client.h 2023-05-26 19:19:02 +02:00
683354bbd6 change ws field in Client struct from ws index to Workspace struct pointer 2023-05-26 18:49:15 +02:00
c580905144 add SplitMode enum to Workspace struct 2023-05-26 18:40:27 +02:00
88a788d5f4 add workspace struct 2023-05-26 17:08:15 +02:00
71ee3fd10c add "NODE_" prefix to NodeType enum 2023-05-26 17:04:29 +02:00
60829dd1c1 add util.h and util.c 2023-05-26 16:45:49 +02:00
9bb7c645aa update Makefile, move wmc.c to seperate folder 2023-05-26 15:56:35 +02:00
98ff93e7c0 add function and keybind to exit wm, improve main loop 2023-03-26 18:20:28 +02:00
a80fcebf04 move client creation to maprequest_handler 2023-03-23 11:18:35 +01:00
3375a1af46 add function to handle window types 2023-03-23 11:14:35 +01:00
02d598107b Merge branch 'main' into split_source 2023-03-19 18:54:26 +01:00
6422c54803 update wm_client_kill: kill window properly using WM_DELETE_WINDOW event 2023-03-19 18:43:40 +01:00
3702b5be15 update DestroyNotify handler: if client with destroyed window exists, free it 2023-03-19 18:37:46 +01:00
70dd4aa93d update layout function: handle when 0 client on ws 2023-03-19 18:31:02 +01:00