Daniel Liu [Wed, 30 Sep 2020 19:18:58 +0000 (15:18 -0400)]
config
Daniel Liu [Wed, 30 Sep 2020 19:15:35 +0000 (15:15 -0400)]
resize hints
Daniel Liu [Wed, 30 Sep 2020 19:13:03 +0000 (15:13 -0400)]
applied gap
Daniel Liu [Fri, 11 Sep 2020 01:14:22 +0000 (21:14 -0400)]
xresources
Daniel Liu [Fri, 11 Sep 2020 01:12:25 +0000 (21:12 -0400)]
fix monitor
Daniel Liu [Fri, 11 Sep 2020 01:11:32 +0000 (21:11 -0400)]
fix monitor
Daniel Liu [Thu, 10 Sep 2020 20:39:23 +0000 (16:39 -0400)]
xresources
Daniel Liu [Thu, 10 Sep 2020 20:39:12 +0000 (16:39 -0400)]
removed xresources for dmenu
Daniel Liu [Wed, 26 Aug 2020 04:39:42 +0000 (00:39 -0400)]
removed bindings for changing gap size
Daniel Liu [Wed, 12 Aug 2020 21:02:04 +0000 (17:02 -0400)]
bar font
Daniel Liu [Wed, 12 Aug 2020 20:58:01 +0000 (16:58 -0400)]
oops
Daniel Liu [Wed, 12 Aug 2020 20:54:53 +0000 (16:54 -0400)]
change font
Daniel Liu [Thu, 30 Jul 2020 03:31:32 +0000 (23:31 -0400)]
xresources
Daniel Liu [Thu, 30 Jul 2020 03:29:32 +0000 (23:29 -0400)]
oops
Daniel Liu [Thu, 30 Jul 2020 03:22:46 +0000 (23:22 -0400)]
applied xresources patch
Daniel Liu [Thu, 30 Jul 2020 01:20:57 +0000 (21:20 -0400)]
applied autostart
Daniel Liu [Sun, 26 Jul 2020 01:01:42 +0000 (21:01 -0400)]
apply gap patch
Hiltjo Posthuma [Wed, 8 Jul 2020 16:05:50 +0000 (18:05 +0200)]
dwm.1: fix wrong text in man page
Alex Flierl [Thu, 11 Jun 2020 13:28:32 +0000 (15:28 +0200)]
Fix memory leaks in drw
The function drw_fontset_free in drw.c was never called.
bakkeby [Thu, 23 Apr 2020 07:50:54 +0000 (09:50 +0200)]
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.
Chris Down [Wed, 22 Apr 2020 14:48:27 +0000 (15:48 +0100)]
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.
Chris Down [Wed, 22 Apr 2020 14:48:08 +0000 (15:48 +0100)]
getatomprop: Add forward declaration
No functional changes, but for every other function we have a forward
declaration here. getatomprop should be no exception.
Chris Down [Mon, 20 Apr 2020 15:41:52 +0000 (16:41 +0100)]
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.
Hiltjo Posthuma [Fri, 3 Apr 2020 13:36:32 +0000 (15:36 +0200)]
config.mk: fix POSIX_C_SOURCE macro for feature test for snprintf()
The feature test was incorrect:
_POSIX_C_SOURCE=2
"The value 2 or greater additionally exposes definitions for POSIX.2-1992."
http://man7.org/linux/man-pages/man7/feature_test_macros.7.html
A higher value is needed (atleast 1995):
https://pubs.opengroup.org/onlinepubs/
9699919799/functions/snprintf.html
FreeBSD feature test macro:
on
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.
Anselm R Garbe [Sat, 2 Feb 2019 12:50:42 +0000 (04:50 -0800)]
Prepare 6.2 release.
Hiltjo Posthuma [Sat, 2 Jun 2018 15:15:42 +0000 (17:15 +0200)]
pledge: add rpath promise for the ugly Xft font fallback
Hiltjo Posthuma [Sat, 2 Jun 2018 15:04:44 +0000 (17:04 +0200)]
Makefile: just show the compiler output
Don't be fancy and just show the actual output so debugging is simpler.
Klemens Nanni [Sat, 2 Jun 2018 13:12:42 +0000 (15:12 +0200)]
Do not strip at link stage
Building with debug symbols is worthless unless LDFLAGS are manually
adjusted as well.
Klemens Nanni [Fri, 25 May 2018 05:56:27 +0000 (07:56 +0200)]
Pledge on OpenBSD
Hiltjo Posthuma [Fri, 25 May 2018 04:56:36 +0000 (06:56 +0200)]
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
Christopher Drelich [Wed, 2 May 2018 22:09:50 +0000 (18:09 -0400)]
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.
Hiltjo Posthuma [Sat, 12 May 2018 17:14:19 +0000 (19:14 +0200)]
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!
Hiltjo Posthuma [Wed, 14 Mar 2018 20:03:11 +0000 (21:03 +0100)]
update README: remove mentioning the old dextra repo
Thanks Christopher Drelich <cd@cdrakka.com>
Christopher Drelich [Wed, 14 Mar 2018 17:58:06 +0000 (13:58 -0400)]
All functions in alphabetical order except for this one.
Christopher Drelich [Wed, 14 Mar 2018 16:44:53 +0000 (17:44 +0100)]
ColBorder has been moved to the enum with ColFg and ColBg.
Hiltjo Posthuma [Wed, 27 Dec 2017 12:36:53 +0000 (13:36 +0100)]
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.
Hiltjo Posthuma [Fri, 3 Nov 2017 20:20:48 +0000 (21:20 +0100)]
sync dmenu drw.{c,h} code: use Clr* (was Scm)
Hiltjo Posthuma [Fri, 3 Nov 2017 15:36:32 +0000 (16:36 +0100)]
gettextprop: check result of XGetTextProperty (undefined behaviour for XFree)
Omar Sandoval [Fri, 3 Nov 2017 16:58:38 +0000 (09:58 -0700)]
Set class name on status bar
This is useful for configuring compositors to ignore the status bar
window.
Daniel Cousens [Tue, 10 Oct 2017 21:10:45 +0000 (08:10 +1100)]
simplify isfixed conditions
Anselm R Garbe [Mon, 8 May 2017 19:08:27 +0000 (21:08 +0200)]
yet another cleanup
The previous patches introduced some unclean space-based indentation
patterns. This patch fixes them.
Markus Teich [Sat, 7 Jan 2017 16:21:30 +0000 (17:21 +0100)]
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.
Markus Teich [Sat, 7 Jan 2017 16:21:29 +0000 (17:21 +0100)]
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.
Markus Teich [Sat, 7 Jan 2017 16:21:28 +0000 (17:21 +0100)]
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
code.
- 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.
Anselm R Garbe [Mon, 5 Dec 2016 09:16:46 +0000 (10:16 +0100)]
applied Markus' tagset purge of alternative view on _NET_ACTIVE_WINDOW event
Anselm R Garbe [Mon, 5 Dec 2016 09:09:49 +0000 (10:09 +0100)]
applied Ivan Delalande's NET_SUPPORTING_WM_CHECK patch for gtk3 compatibility
Anselm R Garbe [Mon, 5 Dec 2016 09:05:00 +0000 (10:05 +0100)]
applied Ian Remmler's man page adjustment suggestions
Anselm R Garbe [Mon, 5 Dec 2016 09:01:33 +0000 (10:01 +0100)]
applied Markus' decouple color-scheme patch
Anselm R Garbe [Mon, 5 Dec 2016 08:54:20 +0000 (09:54 +0100)]
applied Markus' clarify status text padding patch
Quentin Rameau [Mon, 14 Nov 2016 10:49:17 +0000 (11:49 +0100)]
LICENSE: update people
Quentin Rameau [Mon, 14 Nov 2016 10:18:27 +0000 (11:18 +0100)]
dwm.1: add keybinding for spawning dmenu
Hiltjo Posthuma [Sat, 5 Nov 2016 10:34:52 +0000 (11:34 +0100)]
die() on calloc failure
thanks Markus Teich and David!
Hiltjo Posthuma [Fri, 12 Aug 2016 12:35:25 +0000 (14:35 +0200)]
die() consistency: always add newline
Hiltjo Posthuma [Tue, 28 Jun 2016 16:04:56 +0000 (18:04 +0200)]
config.def.h: style improvement, use color Scheme enum
Markus Teich [Sun, 22 May 2016 20:33:56 +0000 (22:33 +0200)]
import new drw from libsl and minor fixes.
- better scaling for occupied tag squares.
- draw statusline first to omitt some complicated calculations.
Eric Pruitt [Wed, 25 May 2016 23:33:11 +0000 (16:33 -0700)]
Configure geometry before applying rules
Configuring geometry before applying rules makes it possible to have
more complex constraints in applyrules that depend on the initial window
dimensions and location.
Hiltjo Posthuma [Sat, 19 Dec 2015 19:25:26 +0000 (20:25 +0100)]
fix fullscreen clients not resized on X display resolution change
patch provided by Bert Münnich <ber.t_AT_posteo.de>, thanks!
Quentin Rameau [Sat, 19 Dec 2015 19:04:19 +0000 (20:04 +0100)]
Shut up glibc about _BSD_SOURCE being deprecated
Hiltjo Posthuma [Sun, 8 Nov 2015 22:11:48 +0000 (23:11 +0100)]
code-style consistency
Hiltjo Posthuma [Sun, 8 Nov 2015 21:48:43 +0000 (22:48 +0100)]
unboolification
Hiltjo Posthuma [Sun, 8 Nov 2015 19:38:00 +0000 (20:38 +0100)]
sort include + whitespace fix
Hiltjo Posthuma [Sat, 7 Nov 2015 13:04:49 +0000 (14:04 +0100)]
separate program-specific c99 bool and X11
True, False are X11-specific (int), make sure to use c99 stdbool for
program-specific things.
Hiltjo Posthuma [Sun, 8 Nov 2015 15:52:53 +0000 (16:52 +0100)]
Makefile: package all files with make dist
Quentin Rameau [Sat, 7 Nov 2015 13:09:08 +0000 (14:09 +0100)]
setfullscreen: don't process the property twice
Some clients try to set _NET_WM_STATE_FULLSCREEN even when the window is
already in fullscreen.
For example, c->oldstate was set two times in a raw and window would
then always be floating.
We must check that it's not the case before processing it.
(original patch modified with suggestion from Markus Teich
<markus.teich@stusta.mhn.de>)
Hiltjo Posthuma [Tue, 20 Oct 2015 21:34:49 +0000 (23:34 +0200)]
sync updated drw code from dmenu
important:
- drw_rect: didn't use w and h, change the dwm code accordingly.
- drw_text: text is NULL is not allowed, use drw_rect().
Hiltjo Posthuma [Tue, 20 Oct 2015 21:30:31 +0000 (23:30 +0200)]
dwm: use ecalloc, prevent theoretical overflow
Hiltjo Posthuma [Tue, 20 Oct 2015 21:28:30 +0000 (23:28 +0200)]
cleanup, dont use c++ style comments
- signal: print error string.
- die: start message with lower-case (consistency).
- bump version to 2015.
Hiltjo Posthuma [Tue, 20 Oct 2015 21:27:31 +0000 (23:27 +0200)]
dwm: cleanup: free schemes and cursors as array
Hiltjo Posthuma [Tue, 20 Oct 2015 21:10:54 +0000 (23:10 +0200)]
config.h: use common default font, pass Xft font name to dmenu
dmenu uses Xft now (soon to be released).
Hiltjo Posthuma [Tue, 20 Oct 2015 21:01:49 +0000 (23:01 +0200)]
config.mk: add $FREETYPELIBS and $FREETYPEINC, simpler to override (ports and *BSDs)
Eric Pruitt [Fri, 6 Mar 2015 04:26:11 +0000 (20:26 -0800)]
Add Xft and follback-fonts support to graphics lib
Anselm R Garbe [Sun, 23 Nov 2014 14:25:35 +0000 (15:25 +0100)]
removed .hgtags, thanks Dimitris for spotting
Anselm R Garbe [Mon, 11 Aug 2014 05:24:29 +0000 (07:24 +0200)]
applied Hiltjo's resize/move limitation
"Limit the amount of updates when resizing or moving a window in floating
mode to 60 times per second. This makes resizing and moving alot smoother
and by limiting it it also uses alot less resources on my machine.
Anselm R Garbe [Thu, 29 May 2014 16:05:17 +0000 (18:05 +0200)]
same as before with dwm.c as well
Anselm R Garbe [Thu, 29 May 2014 16:02:12 +0000 (18:02 +0200)]
updated copyright notice in LICENSE file
Anselm R Garbe [Tue, 27 Aug 2013 18:39:21 +0000 (20:39 +0200)]
applied Lukas' focus suggestion at startup, thanks
Anselm R Garbe [Fri, 2 Aug 2013 20:40:20 +0000 (22:40 +0200)]
applied improved version of Martti Kühne's dmenu/multi monitor approach from dwm, no dmenuspawn required
Anselm R Garbe [Sat, 20 Jul 2013 07:08:46 +0000 (09:08 +0200)]
do not take our font declaration as default for st
Anselm R Garbe [Sun, 23 Jun 2013 19:53:09 +0000 (21:53 +0200)]
applied Jochen's drw_text patch, thanks
Anselm R Garbe [Wed, 19 Jun 2013 17:35:33 +0000 (19:35 +0200)]
applied Julian's enum approach,
however renamed theme into scheme resp. Theme into ClrScheme
Anselm R Garbe [Sun, 16 Jun 2013 13:20:29 +0000 (15:20 +0200)]
finished libsl/drw integration
Anselm R Garbe [Thu, 2 May 2013 15:31:22 +0000 (17:31 +0200)]
include font argument for st by default
Anselm R Garbe [Wed, 1 May 2013 13:45:32 +0000 (15:45 +0200)]
added st to SEE ALSO section
Anselm R Garbe [Wed, 1 May 2013 13:41:44 +0000 (15:41 +0200)]
use st as default terminal from now on
Anselm R Garbe [Wed, 1 May 2013 13:39:06 +0000 (15:39 +0200)]
shut up about deprecated Xlib functions
Anselm R Garbe [Wed, 17 Apr 2013 19:21:47 +0000 (21:21 +0200)]
renamed draw into drw
Anselm R Garbe [Sun, 9 Dec 2012 18:11:11 +0000 (19:11 +0100)]
continued with draw.c and draw.h implementation, now the integration begins
Anselm R Garbe [Sat, 8 Dec 2012 09:13:01 +0000 (10:13 +0100)]
continued with draw.c abstraction, also started util.{h,c} implementation, that will be used by draw.c as well
anselm@garbe.us [Sun, 18 Nov 2012 16:52:42 +0000 (17:52 +0100)]
removed DDC, all is Draw-dependent
anselm@garbe.us [Sun, 18 Nov 2012 16:26:12 +0000 (17:26 +0100)]
continued, distinction of Draw and DDC is bad, needs to be merged
anselm@garbe.us [Sun, 18 Nov 2012 15:39:56 +0000 (16:39 +0100)]
reverting the xkb dependency, I don't care if this function is deprecated, it seems it breaks other stuff instead.
anselm@garbe.us [Sun, 18 Nov 2012 11:04:29 +0000 (12:04 +0100)]
basic draw.c structure
anselm@garbe.us [Sun, 18 Nov 2012 09:56:54 +0000 (10:56 +0100)]
reverting to plain X11 fonts in order to implement draw.c default
anselm@garbe.us [Sat, 17 Nov 2012 19:04:04 +0000 (20:04 +0100)]
removed obsolete bugs from BUGS file
anselm@garbe.us [Sat, 17 Nov 2012 18:12:10 +0000 (19:12 +0100)]
compile fix
anselm@garbe.us [Sat, 17 Nov 2012 18:10:39 +0000 (19:10 +0100)]
applied Neil Klopfstein's patch, slightly modified
anselm@garbe.us [Sat, 17 Nov 2012 18:01:22 +0000 (19:01 +0100)]
starting with initial draw.h
anselm@garbe.us [Fri, 2 Nov 2012 11:17:50 +0000 (12:17 +0100)]
incorporating Xft instead of cairo, cairo provides far too many options
anselm@garbe.us [Sun, 8 Jul 2012 07:45:53 +0000 (09:45 +0200)]
keep 6.1 intact
anselm@garbe.us [Sun, 8 Jul 2012 07:43:11 +0000 (09:43 +0200)]
reverted to old updategeom() after several complains, we need to optimize the old way