summaryrefslogtreecommitdiff
path: root/dwl.c
AgeCommit message (Collapse)Author
2020-04-23use exit code macros everywhereDevin J. Pohly
2020-04-23some comments and remindersDevin J. Pohly
2020-04-23factor out renderclientsDevin J. Pohly
This will help once we get to implementing layer-shell
2020-04-23don't autoraiseDevin J. Pohly
Still raise in buttonpress and focusstack of course. Focus models honestly wouldn't be too hard to make into a config.h option.
2020-04-23use the focus stack to determine stacking orderDevin J. Pohly
Suddenly we have autoraise!
2020-04-23adopt a bit more dwm-like tersenessDevin J. Pohly
2020-04-23change focus(NULL, NULL) to mean unfocusDevin J. Pohly
"Focus the most recently focused window on selmon" is now refocus()
2020-04-23implement focusmon and tagmonDevin J. Pohly
2020-04-23focus follows mouseDevin J. Pohly
2020-04-23add incnmaster and setmfact commandsDevin J. Pohly
2020-04-23add toggletag and toggleviewDevin J. Pohly
2020-04-23don't detect non-visible clients under cursorDevin J. Pohly
2020-04-23add tag and view functionsDevin J. Pohly
2020-04-23refocus if focused client is unmappedDevin J. Pohly
focus(NULL, NULL) works like dwm's focus(NULL): focus the most recent visible client on selmon, or clear the existing focus if there are none.
2020-04-23implement floating windowsDevin J. Pohly
2020-04-23load scaled cursor theme with each outputDevin J. Pohly
2020-04-23turn focusnext into dwm's focusstackDevin J. Pohly
2020-04-23restrict focusnext to the same monitorDevin J. Pohly
2020-04-23styleDevin J. Pohly
2020-04-23add selclient() helperDevin J. Pohly
This may get inlined later, but it's nice for now. The focused client if any should always be both at the top of fstack and visible on selmon.
2020-04-22continue to focus monitor under mouse cursorDevin J. Pohly
2020-04-22focus monitor under mouse cursor initiallyDevin J. Pohly
2020-04-22grabbed_client was too long a nameDevin J. Pohly
2020-04-22inline moveresizeDevin J. Pohly
There were only two lines left in common
2020-04-22grabsx/y are only used by move nowDevin J. Pohly
2020-04-22calculate resize based just on cursor/windowDevin J. Pohly
This eliminates the need for grab_height and grab_width.
2020-04-22add setlayout functionDevin J. Pohly
2020-04-22Don't change tiling order in focusnext()Devin J. Pohly
Use the focus stack instead to determine which client is focused
2020-04-22add separate list of clients for focus orderDevin J. Pohly
Previously, clicking a client to focus it would change where it was in the tiled layout as well.
2020-04-22layouts: tile and floatingDevin J. Pohly
Behavior's still a little wonky but positioning is there.
2020-04-21"root" color was easy to make configurableDevin J. Pohly
2020-04-21fix rendering on scaled monitorsDevin J. Pohly
I have no idea why this takes the raw unscaled resolution, and then we have to multiply by the scale *again* in render(), but that's life.
2020-04-21introduce rules for monitor configurationDevin J. Pohly
(with dwm, this would already have been done by the X server)
2020-04-21no need to manage unmapped clientsDevin J. Pohly
is there?
2020-04-21consistent naming for coordinate variablesDevin J. Pohly
x and y are reserved (inasmuch as it's dwl's choice) for coordinates relative to the layout. ox and oy are used for output-relative coordinates. sx and sy are surface-relative. dx and dy are deltas. figuring this out the first time was kind of a Thing... just don't pay attention to what happens in render and you should be fine.
2020-04-21inline xytosurface in xytoclientDevin J. Pohly
It was a simpler function than it looked
2020-04-21comment updatesDevin J. Pohly
2020-04-21split out setup() and run()Devin J. Pohly
2020-04-21cherry-pick 25d0d1b from upstreamDevin J. Pohly
2020-04-21inline handlemove/handleresizeDevin J. Pohly
2020-04-21render_data only needs coordinates, not ClientDevin J. Pohly
2020-04-21abcDevin J. Pohly
2020-04-21give types some more dwm-like typedef namesDevin J. Pohly
2020-04-21use expressions in sizeof instead of type namesDevin J. Pohly
2020-04-21no longer need resize_edges (always bottom right)Devin J. Pohly
Also gets rid of the clunky move+resize code
2020-04-21ditch the moverequest/resizerequest xdg stuffDevin J. Pohly
dear window, you are not the window manager
2020-04-21No need for struct dwl_serverDevin J. Pohly
the only use was to hold global state, which is now actually global
2020-04-21make server a globalDevin J. Pohly
dwm isn't afraid of global variables
2020-04-21dwm-style enumDevin J. Pohly
2020-04-21alphabetize functionsDevin J. Pohly