Commit Graph

565 Commits

Author SHA1 Message Date
Michael Carlberg
09808e99f9 refactor(tray): Cleanup 2017-01-25 23:37:16 +01:00
Michael Carlberg
d8d007aa9c refactor(cairo): Cleanup 2017-01-25 23:37:13 +01:00
Michael Carlberg
886d0f4ff3 fix(renderer): Round floatig point numbers
Refs #378
2017-01-25 21:46:18 +01:00
Michael Carlberg
8fa879c8d8 fix(cmake): Require xcb-proto>=1.12 for monitor support
Refs #344
2017-01-25 20:16:04 +01:00
Michael Carlberg
017abee679 fix(cmake): Require randproto>=1.5 for monitor support
Refs #344
2017-01-25 17:36:40 +01:00
Michael Carlberg
95d5b03fa2 refactor(file_util): Expand tilde manually 2017-01-25 17:07:55 +01:00
Michael Carlberg
02ab1b9a81 fix: Allow explicit override with property shorthand
Refs #375
2017-01-25 15:13:03 +01:00
Michael Carlberg
eae612ce95 fix: Use correct name for padding shorthand
Refs #375
2017-01-25 15:03:57 +01:00
Michael Carlberg
f37ecfe959 fix(renderer): Falloff gradient 2017-01-25 15:00:34 +01:00
Michael Carlberg
1ca71ce401 fix(ci): Remove unused function 2017-01-25 12:20:06 +01:00
Michael Carlberg
c7f33e2567 refactor(renderer): Use redirection groups instead of pixmaps 2017-01-25 09:54:18 +01:00
Michael Carlberg
1a25be374f refactor(xworkspaces): Cleanup 2017-01-25 04:35:56 +01:00
Chase Geigle
6364bb4385 feature(renderer): Allow dpi-x and dpi-y configuration
Negative values for any of the DPI settings are used to mean "auto",
which will attempt to compute an appropriate DPI from monitor settings.
2017-01-25 04:35:35 +01:00
Chase Geigle
e7dc6b8bbb fix(renderer): Use proper font scaling based on DPI
This tries to mimic the old renderer's behavior as closely as possible.
In the absence of any information, DPI is assumed to be 96x96. DPI can
be configured on a per-bar basis using the configuration key "dpi".

To use the DPI configuration from Xresources (if built with support),
one can specify the following in the bar config:

dpi = ${xrdb:Xft.dpi:96}
2017-01-25 04:35:35 +01:00
Michael Carlberg
8d79b582ec fix(renderer): Default all comp. operators to OVER 2017-01-24 14:25:01 +01:00
Michael Carlberg
1a5246e940 refactor(cairo): Use shared_ptr for font list 2017-01-24 11:50:26 +01:00
Michael Carlberg
3e37b9ec8e fix(cairo): Increment textblock bg extents 2017-01-24 11:07:18 +01:00
Michael Carlberg
6692b4a8da refactor(x11): Cleanup 2017-01-24 10:49:14 +01:00
Michael Carlberg
a5d6670121 refactor(clang-tidy): Apply fixes 2017-01-24 08:01:04 +01:00
Michael Carlberg
8b9461e63e wip(refactor): Cairo drawing 2017-01-24 07:41:46 +01:00
Michael Carlberg
13633f715d fix(main): Exit on unrecognized positional arg 2017-01-24 07:11:14 +01:00
Michael Carlberg
d6a34717bf fix(ipc): Remove existing fifo file 2017-01-24 07:11:14 +01:00
Michael Carlberg
4558893c37 docs: Update manpage 2017-01-24 07:11:14 +01:00
Michael Carlberg
a59e115622 wip(refactor): Cairo drawing 2017-01-24 07:11:14 +01:00
Michael Carlberg
452afcdc68 refactor: Integral types 2017-01-24 07:11:14 +01:00
Michael Carlberg
5e1886a312 wip(refactor): Cairo drawing 2017-01-24 07:11:14 +01:00
Chase Geigle
47a2cce03d fix: Ensure reloading when IN_IGNORED fired on config (#371)
This fixes a "bug" where polybar wouldn't reload on a configuration
file change on some configurations of vim, which don't actually issue
any IN_MODIFY events because they choose to move the file, replace it
with a new one, and then delete the file instead.

To work around this, we now also listen for IN_IGNORED which fires when
the file we are watching is destroyed. When this happens, we re-attach
the configuration file watcher to the new file and reload.
2017-01-24 07:10:55 +01:00
Michael Carlberg
1fdc742606 fix(command): Decrease log verbosity
Refs #362
2017-01-23 17:11:07 +01:00
Patrick Yates
2dfdbd240e feat(bspwm,i3): Fuzzy-matching names for icons
Added support for fuzzy matching workspace names when assigning icons.
This feature is enabled/disabled through a new option, 'fuzzy-match'.
It is disabled by default.
2017-01-23 17:01:30 +01:00
Michael Carlberg
48749b12d8 fix(bar): Improve error message for unparsable color 2017-01-20 02:32:52 +01:00
Michael Carlberg
892673c405 fix(config): Require value reference without fallback 2017-01-20 02:31:55 +01:00
Michael Carlberg
5ad0081e76 fix(command_line): Filter positional args 2017-01-20 02:30:05 +01:00
Michael Carlberg
e1483c3f65 refactor(xresources): Use xcb-util-xrm
Drop the Xlib version and handle X resource
lookups using xcb-util-xrm

Refs #356
2017-01-20 02:26:01 +01:00
Michael Carlberg
100c64a20c refactor: Make xresource_manager a singleton
Refs #356
2017-01-19 21:27:01 +01:00
Michael Carlberg
90d1fff4e2 fix(xresources): Avoid continuous reconstruction
Refs #356
2017-01-19 20:37:02 +01:00
Michael Carlberg
374ad655ae fix(xrsources): Safety check
Refs #356
2017-01-19 20:19:18 +01:00
Michael Carlberg
9e3a7cf06c fix(label): Add missing character 2017-01-17 15:38:28 +01:00
Michael Carlberg
e0e9cae2eb fix(label): Improve false positive token filtering 2017-01-17 15:28:52 +01:00
Michael Carlberg
0f87d37137 fix(fs): Set bytes_avail
Refs #343
2017-01-17 15:20:46 +01:00
Elohim Falcón
132b832c52 fix(xwindow): Give priority to _NET_WM_NAME (#342) 2017-01-17 14:59:32 +01:00
Michael Carlberg
826e125c80 fix(menu): Broadcast tree reset
Fixes #327
2017-01-15 03:46:31 +01:00
Michael Carlberg
40d482d039 fix: By-pass double click timers if no handlers are defined
Fixes #338
2017-01-15 02:00:35 +01:00
Michael Carlberg
3292cea786 refactor(tokens): Move token suffix to configuration 2017-01-14 18:00:35 +01:00
Michael Carlberg
b395285a68 refactor(ipc): More state checks 2017-01-14 18:00:29 +01:00
Alexander Polynomdivision
d3d3f3e6fa Modify the 'volume' module to load the name of the soundcards of the master, speaker and headphone mixer 2017-01-14 17:59:47 +01:00
Alexander Polynomdivision
22e255747a Update the mixer class to support setting the name of the soundcard we want to get the mixer of 2017-01-14 17:59:47 +01:00
Michael Carlberg
6250a2b746 fix(streambuf): Buffer size 2017-01-14 09:57:09 +01:00
Michael Carlberg
dceb3606b1 refactor(stringstream): Shorten to sstream 2017-01-14 06:11:51 +01:00
Michael Carlberg
977efd15e5 fix(ci): Compiler errors 2017-01-14 06:02:43 +01:00
Michael Carlberg
53772e9c32 feat(ipc): Add pid token 2017-01-14 00:56:43 +01:00
Michael Carlberg
480c2cb44b controller: Lower verbosity of uncaught event msg 2017-01-14 00:34:35 +01:00
Michael Carlberg
dacf36b981 refactor(ipc): Cleanup 2017-01-14 00:27:29 +01:00
Michael Carlberg
ed87a8924f fix(ipc): And double-click handlers 2017-01-14 00:10:55 +01:00
Michael Carlberg
ef2ad7a504 fix(volume): Fixed action blocks
Refs #329
2017-01-13 17:08:16 +01:00
Michael Carlberg
2fea813c3d fix(github): Clear label on empty notifications
Fixes #278
2017-01-13 14:57:31 +01:00
Michael Carlberg
57e8914fa6 fix: Force update after running input command 2017-01-13 14:33:16 +01:00
Michael Carlberg
989e4c3039 cmake: MinSizeRel flags 2017-01-13 13:17:11 +01:00
Michael Carlberg
f52a3c1389 fix(ipc): Tool cleanup 2017-01-13 13:05:32 +01:00
Michael Carlberg
15f880eba4 fix(mpd): Handle broken connections 2017-01-13 13:02:51 +01:00
Michael Carlberg
22140f7db9 refactor(builder): Action wrapped labels 2017-01-13 13:01:46 +01:00
Michael Carlberg
e1dbd98c40 feat(string_util): Custom stringstream 2017-01-13 13:01:22 +01:00
Michael Carlberg
6fb48c8e6f feat(build): Add flag for drawing visible whitespace 2017-01-13 11:04:43 +01:00
Michael Carlberg
a26a15d485 fix(config): Type mismatch 2017-01-13 10:57:43 +01:00
Michael Carlberg
8d355f8255 fix(ipc): Avoid clearing module content
Refs #324
2017-01-13 05:33:34 +01:00
Michael Carlberg
cacc11e3a2 fix: Do not require bar name to list monitors
Refs #208
2017-01-13 04:50:33 +01:00
Michael Carlberg
b48a275235 feat(command_line): Properly handle positional args 2017-01-13 04:47:25 +01:00
Michael Carlberg
761b224f7c fix(xrandr): Merge outputs and 1-output monitors
Refs #280
2017-01-13 04:31:54 +01:00
Michael Carlberg
081578b168 fix(cmake): Require XRandR 1.5+ for monitor support
Refs #280
2017-01-13 04:13:46 +01:00
Michael Carlberg
506ac3e4ac fix(xrandr): Enable monitor support by default
Refs #280
2017-01-13 04:02:27 +01:00
Michael Carlberg
385572ec64 feat(xrandr): Support for monitors
Refs #280
2017-01-13 03:52:57 +01:00
Michael Carlberg
40493497de fix: Allow size_t narrowing 2017-01-13 01:14:50 +01:00
Michael Carlberg
0a24dc4912 fix(cmake): Use target_compile_options for libflags
Refs #308
2017-01-13 01:05:10 +01:00
Michael Carlberg
6dd72aa6f7 refactor(fs): Read /proc/self/mountinfo
Refs #271
2017-01-12 23:33:32 +01:00
Michael Carlberg
c2ac7fde67 refactor: Filesize strings 2017-01-12 20:28:44 +01:00
Michael Carlberg
9184a8b046 fix(memory): Safety check 2017-01-12 20:25:57 +01:00
Michael Carlberg
2cde3f31a0 fix(config): Comply to parameter naming scheme 2017-01-12 18:09:56 +01:00
Michael Carlberg
d49b1cacd3 fix(config): Rename parameter for individual border size
Rename `border-{left,top,right,bottom}` to `border-{left,top,right,bottom}-size`
to follow the naming scheme used for other size parameters
2017-01-12 17:55:56 +01:00
Michael Carlberg
ca1aac2ed6 feat(config): Shorthand for {padding,module-margin}-{left,right} 2017-01-12 17:32:11 +01:00
Michael Carlberg
f72ddf9294 refactor(signals): Use full namespace 2017-01-12 16:34:14 +01:00
Michael Carlberg
da9f1d90f4 fix(controller): Ensure module runstate 2017-01-12 16:33:41 +01:00
Michael Carlberg
f33d383726 refactor: Wait with tray initialization until ready 2017-01-12 16:12:54 +01:00
Michael Carlberg
ef6f649579 fix(fs): Make sure to match with correct mtab entry
Fixes #321
2017-01-12 15:30:47 +01:00
Michael Carlberg
5773b08cf8 fix(script): Poll file descriptors 2017-01-11 18:21:58 +01:00
Michael Carlberg
d7d0fbcae4 fix(battery): Safety check
Make sure returned label is valid before access.

Refs #318
2017-01-11 15:01:39 +01:00
Michael Carlberg
30201bac38 fix(env_util): Add missing header 2017-01-11 09:28:39 +01:00
Michael Carlberg
e441332f40 fix(xbacklight): Value type 2017-01-11 09:23:27 +01:00
Michael Carlberg
5b33ada576 refactor(common): Cleanup 2017-01-11 07:17:54 +01:00
Michael Carlberg
568837d06a fix(x11): Preload the _NET_WM_WINDOW_OPACITY atom 2017-01-11 05:00:23 +01:00
Michael Carlberg
5c9bfc147c fix(xbacklight): Lower inc/dec value to 5 and fix flooring 2017-01-11 04:40:10 +01:00
Michael Carlberg
8cc885c316 refactor: Cleanup 2017-01-11 03:07:28 +01:00
Michael Carlberg
c1aa3319a1 fix(menu): Close tree when item commands are invoked 2017-01-11 02:44:44 +01:00
Michael Carlberg
30f516dd7d fix(formatting): Make formats parse specs as-is
This removes the spacing tinkering when parsing format specs.
The following example uses the old behavoir:

    format-test = <label-foo>  <label-bar>
    format-breaks = <label-foo><label-bar>/<bar-test>

`format-test` would replace all occurences of ' ' with the
a space string with defined `spacing` as its width. `format-breaks` would
not validate as the tags where split with ' ' as delimiter.

All that nonsense has been removed and each tag is extracted as is.
The `spacing` parameter can still be used to apply N extra whitespaces
between the tags, but it is now 0 by default.
2017-01-11 02:43:37 +01:00
Michael Carlberg
f4e8051e9e refactor(script): Merge back script handling 2017-01-10 05:12:53 +01:00
Michael Carlberg
946843ff59 feat(script): Configurable condition using exec-if
Add new config parameter `exec-if = cmd` that needs to
exit successfully before the main exec command will be invoked.

Closes #298
2017-01-10 03:02:00 +01:00
Michael Carlberg
79856d7ed2 feat(ipc): Add polybar-msg to facilitate ipc messaging 2017-01-10 02:09:33 +01:00
Michael Carlberg
0f0d786cbd fix(ipc): Always close file descriptor on receive 2017-01-09 23:09:16 +01:00
Michael Carlberg
7a26254844 feat(ipc): Initial exec of configured hook
Adds a new config parameter `initial = N` that will
make the hook at defined index N execute on start.
2017-01-09 23:06:41 +01:00
Michael Carlberg
f4406783e2 fix(signals): Use pointer to value
Only pass pointers to emitted signal value since the signal receivers
will be called on the same thread as the signal emitter.

Refs #302
2017-01-09 18:52:04 +01:00
Michael Carlberg
5f6a1f5ae6 fix(xkeyboard): Use separate throttle timers 2017-01-09 16:40:26 +01:00
Michael Carlberg
3d6084f0c0 fix(controller): Always process forced update events 2017-01-09 16:35:28 +01:00