1703 Commits (0bc8adf77d65a122e577edab77f9d50e4716561e)

Author SHA1 Message Date
David JULIEN 0bc8adf77d
feat: manage font and colors through xrdb
add dwm-xresources patch
2 years ago
David JULIEN 74962441df feat: add floating terminal rule 2 years ago
David JULIEN 7ec4c7f257 feat: remove default tags for certain applications
also remove icons in tagbar
2 years ago
David JULIEN 4003db56b3 feat: remove window title in statusbar 2 years ago
David 5737a571f7 feat: center (floating patch) + rule for ncmpcpp
ncmpcpp can be spawned in a centered floating window
2 years ago
David 1862e61846 fix: change floating toggle keybinding
was conflicting with another sxhkd keybinding
3 years ago
David 0fcae098e8 fixup: revert workspace 1 icon 3 years ago
David 926e456d74 feat: change font and workspace icons 3 years ago
swytch 2b430fd267 Merge branch 'upstream' 3 years ago
swytch 263182ac75 feat: update `make clean` directive
now deletes config.h
3 years ago
swytch e3628b783e fix: fix warning in manpage 3 years ago
swytch 7de0fb34aa feat: add `swallow` patch
`st` now "swallows" windows for programs like `mpv` or `sxiv`
    -> doesn't open a new window, displays it in place of terminal
    window instead

    -> updated README accordingly
3 years ago
swytch 047a2845be fix: fix a typo + explanation in manpage 3 years ago
swytch 9c08b51e34 fix: SUPER-= now resets the gapps 3 years ago
swytch fa2aa52e77 feat: change default gap size to 25 3 years ago
swytch ee18cbef48 feat: let go of Brave, use Firefox instead
change browser for tag#2
3 years ago
swytch d13b8977b1 feat: change colorscheme
gray is darker
3 years ago
swytch dc31e57692 feat: update README.md
add description of added patches
3 years ago
swytch 6b9ad72848 init fork 3 years ago
Hiltjo Posthuma bb2e7222ba dwm.1: fix wrong text in man page 3 years ago
Alex Flierl f04cac6d6e Fix memory leaks in drw
The function drw_fontset_free in drw.c was never called.
3 years ago
bakkeby f09418bbb6 dwm crashes when opening 50+ clients (tile layout)
Many users new to dwm find themselves caught out by being kicked out to the login manager (dwm crashing) when they open 50+ clients for demonstration purposes. The number of clients reported varies depending on the resolution of the monitor.

The cause of this is due to how the default tile layout calculates the height of the next client based on the position of the previous client. Because clients have a minimum size the (ty) position can exceed that of the window height, resulting in (m->wh - ty) becoming negative. The negative height stored as an unsigned int results in a very large height ultimately resulting in dwm crashing.

This patch adds safeguards to prevent the ty and my positions from exceeding that of the window height.
3 years ago
Chris Down ed3ab6b4fc drawbar: Don't shadow sw global
This jarred me a bit while reading the code, since "sw" usually refers
to the global screen geometry, but in drawbar() only it refers to
text-related geometry. Renaming it makes it more obvious that these are
not related.
3 years ago
Chris Down f087d20e6e getatomprop: Add forward declaration
No functional changes, but for every other function we have a forward
declaration here. getatomprop should be no exception.
3 years ago
Chris Down a8e9513783 setmfact: Unify bounds for compile-time and runtime mfact
There are two places that mfact can be set:

- In the mfact global, which is defined at compile time and passed
  into m->mfact during monitor setup. No bounds checks are performed,
  but the comment alongside it says that valid values are [0.05..0.95]:

      static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */

- By setmfact, which adjusts m->mfact at runtime. It also does some
  minimum and maximum bounds checks, allowing [0.1..0.9]. Values outside
  of that range are ignored, and mfact is not adjusted.

These different thresholds mean that one cannot setmfact 0.95 or 0.05,
despite the comment above that lists the legal range for mfact.

Clarify this by enforcing the same bounds in setmfact at runtime as
those listed for mfact at compile time.
3 years ago
Hiltjo Posthuma c82db690cc config.mk: fix POSIX_C_SOURCE macro for feature test for snprintf()
The feature test was incorrect:

"The value 2 or greater additionally exposes definitions for POSIX.2-1992."

A higher value is needed (atleast 1995):

FreeBSD feature test macro:
https://github.com/freebsd/freebsd/blob/master/include/stdio.h line 297

This was already fixed in dmenu.

This fixes a warning on FreeBSD, reported by Plasmoduck on IRC, thanks.
3 years ago
Anselm R Garbe cb3f58ad06 Prepare 6.2 release. 4 years ago
Hiltjo Posthuma b69c870a30 pledge: add rpath promise for the ugly Xft font fallback 5 years ago
Hiltjo Posthuma e78b4a9207 Makefile: just show the compiler output
Don't be fancy and just show the actual output so debugging is simpler.
5 years ago
Klemens Nanni 3cd4023fb3 Do not strip at link stage
Building with debug symbols is worthless unless LDFLAGS are manually
adjusted as well.
5 years ago
Klemens Nanni f40f86fa87 Pledge on OpenBSD 5 years ago
Hiltjo Posthuma c3a2e016bb config.def.h: ClkTagBar missing from comment
by Christopher Drelich <cd@cdrakka.com>

Patch was mangled on the ML, also adjusted the order to be the same as
the enum in dwm.c
5 years ago
Christopher Drelich c8e9479186 Function declarations in correct order.
In dwm.c function declarations are in alphabetical order except for
updategeom(). There doesn't appear to be any reason for this, so this
patch corrects that, and now all function declarations are in
alphabetical order.
5 years ago
Hiltjo Posthuma 10dfa65860 remove old TODO and BUGS entries
the bug in the dwm man page is an (ancient) Java issue.

Thanks David and quinq for the patches and feedback!
5 years ago
Hiltjo Posthuma 3bd8466e93 update README: remove mentioning the old dextra repo
Thanks Christopher Drelich <cd@cdrakka.com>
5 years ago
Christopher Drelich 76c8c16d79 All functions in alphabetical order except for this one. 5 years ago
Christopher Drelich 3cb34830eb ColBorder has been moved to the enum with ColFg and ColBg. 5 years ago
Hiltjo Posthuma db2236001c dont NUL terminate _NET_WM_NAME
Reported by Kernc, thanks!

"This makes a particular program that uses libwnck [1] fail after:

    Wnck-WARNING **: Property _NET_WM_NAME contained invalid UTF-8

in this code [2] because the returned string contains a '\0' and the
documentation for g_utf8_validate() [3] explicitly states that when
string length is provided, no nul bytes are allowed."

It is not entirely clear it is incorrect, other WM's seem to not
NUL terminate it either though.
6 years ago
Hiltjo Posthuma 3756f7f6b8 sync dmenu drw.{c,h} code: use Clr* (was Scm) 6 years ago
Hiltjo Posthuma 99f78fa553 gettextprop: check result of XGetTextProperty (undefined behaviour for XFree) 6 years ago
Omar Sandoval a9b6a312a7 Set class name on status bar
This is useful for configuring compositors to ignore the status bar
6 years ago
Daniel Cousens 6aa8e37efe simplify isfixed conditions 6 years ago
Anselm R Garbe ceac8c91ff yet another cleanup
The previous patches introduced some unclean space-based indentation
patterns. This patch fixes them.
6 years ago
Markus Teich 5b238c8dab Don't restrict snap in mousemove
This also fixes a bug where client windows only switch to floating mode when the
mouse is dragged in one specific direction.
6 years ago
Markus Teich 022d076054 Button passthrough when client is not focused
Before this change it is not possible to press a button in a client on the first
click if the client is not yet focused. The first click on the button would
only focus the client and a second click on the button is needed to activate it.
This situation can occur when moving the mouse over a client (therefore focusing
it) and then moving the focus to another client with keyboard shortcuts.

After this commit the behavior is fixed and button presses on unfocused clients
are passed to the client correctly.
6 years ago
Markus Teich 2952b68db8 cleanup
- unify multi-line expression alignment style.
- unify multi-line function call alignment style.
- simplify client moving on monitor count decrease.
- clarify comment for focusin().
- remove old confusing comment about input focus fix in focusmon(). The
  explanation is already in the old commit message, so no need to keep it in the
- remove old comment describing even older state of the code in focus().
- unify comment style.
- break up some long lines.
- fix some typos and grammar.
6 years ago
Anselm R Garbe bb3bd6fec3 applied Markus' tagset purge of alternative view on _NET_ACTIVE_WINDOW event 7 years ago
Anselm R Garbe e63bf22948 applied Ivan Delalande's NET_SUPPORTING_WM_CHECK patch for gtk3 compatibility 7 years ago
Anselm R Garbe 5376947571 applied Ian Remmler's man page adjustment suggestions 7 years ago
Anselm R Garbe 975c898376 applied Markus' decouple color-scheme patch 7 years ago