Commit graph

1253 commits

Author SHA1 Message Date
Andrea Bolognani
eda7e76df6 NEWS: Add release notes
Since 3.0.0, release notes for spectrwm are already being
compiled and ultimately published at

  https://github.com/conformal/spectrwm/releases

but it would be useful if they were included in the release
tarball themselves as well.

The contents of the NEWS.md file are taken straight from the
page mentioned above, with only very minor editing.
2018-08-17 08:16:24 -05:00
orbea
e40e0282a7 Whitespace 2018-05-09 08:18:41 +08:00
Reginald Kennedy
c554299020 Additional spectrwm.1 fixes.
Fix sentences that were not starting on a new line.

Fix author section macros.

Cleanup 80 col.
2018-03-29 10:00:04 +08:00
orbea
123016c534 spectrwm.1: Silence mandoc warnings
man: /usr/man/man1/spectrwm.1.gz:231:18: WARNING: new sentence, new line
  man: /usr/man/man1/spectrwm.1.gz:986:71: WARNING: new sentence, new line

  new sentence, new line
  (mdoc) A new sentence starts in the middle of a text line. Start it on a
  new input line to help formatters produce correct spacing

  https://man.openbsd.org/mandoc.1
2018-03-29 09:09:37 +08:00
Matthias von Faber
1291a720e1 Fix config file parsing on musl libc
On the musl libc, autorun, layout and workspace name settings were
always rejected as invalid. As it turns out, parsing those was relying
on sscanf incorrectly matching %Nc as long as there is at least one
character. This is fixed by matching only the initial part of the string
via sscanf and skipping ahead by the amount of bytes consumed. This also
avoids unnecessary zeroing, copying and possible implicit truncation.

Relevant glibc bug:
https://sourceware.org/bugzilla/show_bug.cgi?id=12701
2018-03-28 18:31:43 +08:00
orbea
b34cb01ed6 spectrwm.1: Silence mandoc style warnings.
This silences the following warnings reported by mandoc.

  man: /usr/man/man1/spectrwm.1.gz:653:10: STYLE: no blank before trailing delimiter: Cm M-,
  man: /usr/man/man1/spectrwm.1.gz:655:10: STYLE: no blank before trailing delimiter: Cm M-.
  man: /usr/man/man1/spectrwm.1.gz:657:12: STYLE: no blank before trailing delimiter: Cm M-S-,
  man: /usr/man/man1/spectrwm.1.gz:659:12: STYLE: no blank before trailing delimiter: Cm M-S-.
  man: /usr/man/man1/spectrwm.1.gz:761:10: STYLE: no blank before trailing delimiter: Cm M-]
  man: /usr/man/man1/spectrwm.1.gz:765:12: STYLE: no blank before trailing delimiter: Cm M-S-]
2018-03-28 11:41:10 +08:00
Reginald Kennedy
5804b95a71 Fix pointer offset calculation on move action. 2018-03-21 15:46:08 +08:00
Reginald Kennedy
82e40ed7a7 Fix windows in stacking area sometimes being hidden.
fixes #196
2018-03-03 16:12:48 +08:00
Reginald Kennedy
308f61d58d Cleanup and improve debug output by utilizing C99 __func__. 2018-02-20 22:52:22 +08:00
Andrea Bolognani
9caab3f155 Add keywords to desktop file 2018-02-20 12:11:18 +08:00
Christoph Weiss
cd44d668d6 fix segmentation fault in font creation 2017-12-27 22:41:01 +08:00
Tobias Stoeckmann
ea3e6da622 Fix OOB while reading bar input.
If the status bar script returns NUL as the first character through
stdin, spectrwm is prone to an out of boundary access. Depending on
the memory layout of the machine, it could turn into an OOB write.

The fix is simple: If the string is empty, do not further check for
newline character.

Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
2017-10-14 16:39:44 +08:00
Reginald Kennedy
1ec03c62be Remove stray empty line and fix typo. 2017-10-13 10:52:39 +08:00
Niclas Zeising
0ba908c6f4 Update config with new color options
Update example configuration file with new options bar_color_selected
and bar_font_color_selected.
Also update the example with dmenu to use the new colors.
Add two other dmenu examples, search and name_workspace, that was added
to the manual with the same commit as the new color options.
2017-10-12 19:14:52 +02:00
Marco Peereboom
81a7846935 whitespace 2017-10-03 13:45:40 -05:00
Marco Peereboom
7cd1e4dfb0 Prepare for release 3.1.0. 2017-10-03 13:36:39 -05:00
Reginald Kennedy
6b80d23815 Change bar_format +R region index to start at 1 for consistency. 2017-10-04 00:09:46 +08:00
Mike Meyer
79d583b791 Add +R for region index to bar formatting. 2017-10-03 23:52:42 +08:00
Reginald Kennedy
22167bcf2f Add new bar_color_selected and bar_font_color_selected options.
Allows for the convenient customization of dmenu selection colors.
Defaults to bar_border and bar_color, respectively.

closes #168
2017-10-03 21:36:33 +08:00
Reginald Kennedy
82efe69576 Add new 'ws_empty' action.
Switches to the first empty workspace.
Unbound by default.
2017-10-03 20:30:26 +08:00
Reginald Kennedy
ddf4d6609a Pacify Clang Static Analyzer false-positives.
Fix memory leak when parsing an invalid button bind.

Cleanup tree/queue init.
2017-10-03 16:22:46 +08:00
Reginald Kennedy
0a56e7740e Fix handling of invalid character sequences in bar_format.
fixes #35
2017-10-03 16:21:55 +08:00
K M Masum Habib
0b3636551c Enable padding in the bar_format using '_' character 2017-09-28 23:35:54 +08:00
Reginald Kennedy
bcef4a2d68 Remove java_workaround from man page since it is no longer used.
Some cleanup.
2017-09-07 22:20:37 +08:00
Reginald Kennedy
aefcce8a87 Fix initial region focus when focus_mode = follow. 2017-08-31 17:04:52 +08:00
orbea
1b7dffbed0 Silence -Wformat-truncation= warning with gcc7 2017-06-30 16:08:05 +08:00
Brenton Horne
c10368bbe6 Fixing link for xmonad
The name of the program xmonad was also provided where the link was meant to (according to Markdown syntax) be provided.
2017-05-31 10:18:21 -05:00
James Bunton
94b5bca182 Trim trailing whitespace when loading config 2017-04-25 04:44:24 +08:00
Reginald Kennedy
ba474302eb Handle MappingNotify during startup.
fixes #128
2017-04-21 20:02:14 +08:00
leonardo rojas
177767c2e5 remove linebreaks to fix image links 2017-04-01 12:07:46 +08:00
Reginald Kennedy
2646d004bf Fix LICENSE.md formatting issue.
Added trailing double-spaces to indicate single line breaks.

fixes #160
2016-12-09 20:42:35 +08:00
Reginald Kennedy
54c9d608c0 Add LICENSE.md
closes #158
2016-12-09 11:08:56 +08:00
Reginald Kennedy
79473c1e77 Fix _NET_WM_STATE_FULLSCREEN window geometry in fullscreen layout.
fixes #155
2016-11-24 00:46:59 +08:00
Marco Peereboom
82e9341888 Merge pull request #157 from natano/reset_sigpipe
Reset SIGPIPE before execvp().
2016-11-23 07:56:26 -06:00
Martin Natano
dd1b73634f Reset SIGPIPE before execvp().
Otherwise child processes inherit SIG_IGN for SIGPIPE, which can have
unexpected consequences. e.g. when performing pkg_add -ui in an xterm
spawned by spectrwm some spurious EPIPE errors find their way to the
output due to pkg_add expecting a sane default signal environment.

$ pkg_add -nuix vim
quirks-2.261 signed on 2016-10-11T14:06:48Z
Error from http://ftp.fr.openbsd.org/pub/OpenBSD/snapshots/packages/amd64/vim-8.0.0004-gtk2-perl-python3-ruby.tgz
signify: write to stdout: Broken pipe
Error from http://ftp.fr.openbsd.org/pub/OpenBSD/snapshots/packages/amd64/vim-8.0.0004-gtk2-lua.tgz
signify: write to stdout: Broken pipe
[...]
2016-11-23 11:18:55 +01:00
Marco Peereboom
0c8fb09385 Merge pull request #154 from ideasman42/patch-1
Correct size for WM_STATE
2016-11-22 10:58:37 -06:00
Campbell Barton
bc96e0b5ee Correct size for WM_STATE
Match the type of the array to the `format` argument (32).

Could change the format to 16, but the value is documented to be a `CARD32`, so may as well use 32 bit input.
2016-11-20 09:12:47 +11:00
Andrea Bolognani
9d338b286b Fix man errors
Remove all uses of the .Cm macro that are immediately followed
by another macro, such as .Ns or .Aq.

[rk@rejii.com: tweak commit message; resolves 'man --warnings']
closes #138
2016-08-26 13:09:38 +08:00
Andrea Bolognani
914d8f4c46 Include the top level header of each xcb module used
One xcb module, one header file: <xcb/xcb.h> should to be
included directly, instead of relying on other modules dragging
it in; on the other hand, it's okay to include just the top
level <xcb/xcb_util.h> instead of the three separate sub-headers.

[rk@rejii.com: skip xcb_util.h since it breaks xcb-util < 0.3.8]
closes #142
2016-08-26 13:06:25 +08:00
Andrea Bolognani
092e5c269f linux: Enable PIE
PIE (position-independent executables) is a security feature
that has been made reasonably cheap by recent improvements in
GCC; as a result, more and more Linux distributions are pushing
for its adoption.

Unfortunately, PIE and PIC are not compatible, so we have to
manage the CFLAGS and LDFLAGS used to compile the library and
the executable indipendently.
2016-07-31 19:05:10 +02:00
Andrea Bolognani
2c2034e3bf linux: Use -fPIC instead of -fpic
According to GCC's documentation, -fpic can have compatibility
issues on some platforms. Use -fPIC instead, which generates
slightly bigger objects but is generally more likely to work.

Get rid of -DPIC, since the symbol is not used anywhere.
2016-07-31 19:03:38 +02:00
Andrea Bolognani
ac945112ba linux: Use --as-needed when linking
Using this flag will cause the linker to ignore any libraries
that have been listed on the command line but whose symbols are
not actually used.

Right now, it just gets rid of the unnecessary linking against
xcb-render (see https://bugs.debian.org/829709), but it might
catch missing dependencies in the future, and it will generally
keep the resulting binaries nice and tidy.

Ubuntu and Arch are both using --as-needed by default already,
and other distributions will probably switch at some point.
2016-07-05 16:40:48 +02:00
Andrea Bolognani
857820719e linux: Use pkg-config for dependencies' CPPFLAGS and LDLIBS
Instead of hardcoding the information needed to compile and link
against libraries, call pkg-config to retrieve them at runtime.
2016-07-03 22:48:18 +02:00
Andrea Bolognani
831173e62a linux: Split off dependencies' CPPFLAGS
Use MAINT_CPPFLAGS only for stuff used directly by spectrwm, and
move all the stuff needed by dependencies to the newly-defined
BIN_CPPFLAGS and LIB_CPPFLAGS.
2016-07-03 22:46:16 +02:00
Andrea Bolognani
c85236d67f linux: Reduce linking for libswmhack
The libswmhack library uses dlopen() and friends, so it needs
to link against libdl; on the other hand, it doesn't use nearly
as many library as spectrwm itself, so linking against them is
pointless.

Split MAINT_LDLIBS into BIN_LDLIBS and LIB_LDLIBS, and use them
for spectrwm and libswmhack respectively.
2016-07-03 22:45:04 +02:00
James Campos
ef627eb8aa update man page link 2016-06-23 16:09:29 -07:00
Reginald Kennedy
26d564b750 Add .gitattributes to exclude some files from release archives. 2016-06-10 12:02:07 +08:00
Marco Peereboom
9bd9b9f49f Prepare for release 3.0.2. 2016-05-23 11:45:08 -05:00
Reginald Kennedy
96a9efc6dd Ensure iconic windows stay iconic when reparenting. 2016-05-18 00:39:01 +08:00
Reginald Kennedy
68a43ba16a Fix workspace cleanup on RandR screenchange.
Fixes #127 and #120
2016-05-09 23:21:01 +08:00