summaryrefslogtreecommitdiff
path: root/dwl.c
AgeCommit message (Collapse)Author
2020-04-26save lines in keyboardfocusDevin J. Pohly
2020-04-26don't unfocus when mouse leaves a windowDevin J. Pohly
2020-04-25fix multi-dpi scalingDevin J. Pohly
2020-04-24clarify keyboardfocus vs pointerfocusDevin J. Pohly
2020-04-23draw window bordersDevin J. Pohly
Works with scaled/rotated displays too!
2020-04-23factor out scalebox()Devin J. Pohly
May switch to the version from sway if that seems like a good idea at some point.
2020-04-23note about cursor initDevin J. Pohly
2020-04-23configure monitor rotation/reflectionDevin J. Pohly
2020-04-23add chvt functionDevin J. Pohly
It truly isn't just a window manager anymore :-|
2020-04-23make space for window bordersDevin J. Pohly
2020-04-23change cursor during move and resizeDevin J. Pohly
2020-04-23style in buttonpressDevin J. Pohly
2020-04-23simplify move/resizemouse functionsDevin J. Pohly
2020-04-23funnel all resizing through resize()Devin J. Pohly
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