Michael Carlberg
c7f33e2567
refactor(renderer): Use redirection groups instead of pixmaps
2017-01-25 09:54:18 +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
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
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
480c2cb44b
controller: Lower verbosity of uncaught event msg
2017-01-14 00:34:35 +01:00
Michael Carlberg
57e8914fa6
fix: Force update after running input command
2017-01-13 14:33:16 +01:00
Michael Carlberg
22140f7db9
refactor(builder): Action wrapped labels
2017-01-13 13:01:46 +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
b48a275235
feat(command_line): Properly handle positional args
2017-01-13 04:47:25 +01:00
Michael Carlberg
385572ec64
feat(xrandr): Support for monitors
...
Refs #280
2017-01-13 03:52: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
568837d06a
fix(x11): Preload the _NET_WM_WINDOW_OPACITY atom
2017-01-11 05:00:23 +01:00
Michael Carlberg
8cc885c316
refactor: Cleanup
2017-01-11 03:07:28 +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
0f0d786cbd
fix(ipc): Always close file descriptor on receive
2017-01-09 23:09:16 +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
3d6084f0c0
fix(controller): Always process forced update events
2017-01-09 16:35:28 +01:00
Michael Carlberg
6925415501
fix(tray): Force bar update on change
...
Refs #295
2017-01-09 14:27:56 +01:00
Michael Carlberg
6341c7ab25
refactor(config): Defer xrm initialization
2017-01-01 21:12:38 +01:00
Michael Carlberg
a2bcb1a627
refactor(signals): Avoid reinterpret_cast
2017-01-01 20:31:09 +01:00
Michael Carlberg
d9c035381e
refactor(i3): Restack above global root window
...
Refs #293
2017-01-01 19:34:48 +01:00
Michael Carlberg
796cdb52cc
refactor: Rename restack function
2017-01-01 15:45:18 +01:00
Michael Carlberg
dd960cc5b5
refactor(fd_streambuf): Cleanup
2016-12-31 15:42:46 +01:00
Michael Carlberg
210695d377
refactor(x11): Merge xlib/xutils with connection
2016-12-31 10:02:32 +01:00
Michael Carlberg
e3a51b235a
refactor(clang-tidy): Apply fixes
2016-12-31 04:32:11 +01:00
Michael Carlberg
a989d401d9
fix(renderer): Content shifting bounds
2016-12-31 03:01:22 +01:00
Michael Carlberg
31608bb706
refactor(renderer): Cast signal data
2016-12-31 01:27:37 +01:00
Michael Carlberg
78bb3695e6
refactor(config): Deduce return type from default value
2016-12-30 23:32:05 +01:00
Michael Carlberg
a0f1d97c2b
fix(controller): UB sanitizer patch
2016-12-30 23:28:58 +01:00
Michael Carlberg
e1c6a4e5a3
fix(command_line): End with empty line
2016-12-30 21:14:22 +01:00
Michael Carlberg
dffdc6a20b
fix(builder): Sub-string check
...
Fixes #282
2016-12-30 20:34:23 +01:00
Michael Carlberg
18cf9df86c
refactor: Cleanup
2016-12-27 04:58:41 +01:00
Michael Carlberg
f101a303bd
fix(bar): Only initialize config values when using --print-wmname
2016-12-27 04:15:01 +01:00
Michael Carlberg
db7aa7c490
fix(format): Ignore empty contents
2016-12-27 04:03:46 +01:00
Michael Carlberg
7b780a3201
refactor(builder): Cleanup
2016-12-26 17:06:28 +01:00
Michael Carlberg
b9f9092bbe
refactor: Cleanup
2016-12-26 10:37:14 +01:00
Michael Carlberg
baaba4adf9
refactor(ipc): Rename signals
2016-12-26 10:36:14 +01:00
Michael Carlberg
00ac4bea63
refactor(x11): Header cleanup
2016-12-26 10:27:30 +01:00
Michael Carlberg
11aabac227
refactor(connection: Use custom base
2016-12-26 09:46:48 +01:00
Michael Carlberg
789800a68f
refactor(signals): Simple types
2016-12-23 22:19:42 +01:00
Michael Carlberg
b422d1d1a4
refactor(modules): Input handling
2016-12-23 20:43:52 +01:00
Michael Carlberg
92424f0d49
refactor(cmake): Install components
2016-12-23 18:10:19 +01:00
Michael Carlberg
9c14531542
fix(config): Require wrapping quotes to trim
2016-12-23 14:39:12 +01:00
Michael Carlberg
1cb8e455fb
fix(controller): Invalid move constructions
...
Refs #268 , #265
2016-12-23 13:03:05 +01:00
Michael Carlberg
e551dbfea9
fix(controller): Raise signal on quit from eventqueue
2016-12-23 05:51:33 +01:00
Michael Carlberg
debb3534c7
concurrency_ytil: Thread id
2016-12-23 05:18:58 +01:00
Michael Carlberg
8cc275ccd1
refactor(controller): Process eventqueue concurrently
2016-12-23 05:10:40 +01:00
Michael Carlberg
8cff01e3d8
refactor(event_handler): Abstract sink attaching
2016-12-23 05:08:19 +01:00
Michael Carlberg
d4e3891ab6
refactor(connection): Listen for property notify by default
2016-12-23 01:05:36 +01:00
Michael Carlberg
417d90f411
refactor(controller): Store module input handlers locally
...
Refs #265 , #262
2016-12-23 00:54:14 +01:00
Michael Carlberg
e47e439954
refactor(modules): Replace callbacks with signals
...
Refs #265
2016-12-22 22:11:30 +01:00
Michael Carlberg
a914526949
fix(config): Use strtoul
...
Refs #267
2016-12-22 18:37:23 +01:00
Michael Carlberg
bc9b9f0d12
refactor: Cleanup
2016-12-21 23:22:02 +01:00
Michael Carlberg
185363056a
refactor(x11): Cleanup
2016-12-21 15:04:16 +01:00
Michael Carlberg
7979f5b3d4
refactor(modules): Handle events using signal_receiver
2016-12-21 08:38:44 +01:00
Michael Carlberg
c01f111e34
refactor(modules): Move setup to constructor
2016-12-21 08:00:09 +01:00
Michael Carlberg
81e6fb062f
wip: Window autohide
2016-12-21 04:50:43 +01:00
Michael Carlberg
3aa7c3b106
fix(taskqueue): Type error
2016-12-20 18:14:43 +01:00
Michael Carlberg
abd30860e0
fix(button_press): Use correct double click button
2016-12-20 15:51:45 +01:00
Michael Carlberg
c14c46b998
refactor: Font index cleanup
2016-12-20 15:09:11 +01:00
Michael Carlberg
8ef8900ca2
refactor: Defer buttonpress using taskqueue
2016-12-20 13:03:46 +01:00
Michael Carlberg
b8ff0da693
feat: Add taskqueue component
2016-12-20 12:54:17 +01:00
Michael Carlberg
3a01bcf308
fix: Apply x position once to action blocks
2016-12-20 08:00:08 +01:00
Michael Carlberg
1cccd100bb
fix(bar): Remove double click
2016-12-20 07:46:30 +01:00
Michael Carlberg
cd31d92713
fix(controller): Check eventpipe reads/writes
2016-12-20 05:36:10 +01:00
Michael Carlberg
a89c4ef2dd
refactor: Move all event handling to the controller
2016-12-20 05:16:04 +01:00
NBonaparte
e72f85079f
feat(monitor): Add monitor-fallback option #243
...
Adds new parameter monitor-fallback, which allows the bar to revert to a
specified monitor. Polybar should now be compatible with dynamic
multi-monitor setups when using screenchange-reload = true (no need to
stop and restart the bar with a different environment variable).
Closes #243
2016-12-16 13:09:19 +01:00
Michael Carlberg
519172b6ec
feat(xkeyboard): Switch layout group on click
...
When serveral layout groups are defined for the keyboard
they can be cycled when clicking on the module.
For example:
$ setxkbmap -layout us,sv,fr
Ref #84
2016-12-16 11:31:08 +01:00
Michael Carlberg
f50f43af02
refactor: Cleanup
2016-12-16 10:23:54 +01:00
Michael Carlberg
697638db2b
fix(tray): Follow window fade
2016-12-16 07:10:45 +01:00
Michael Carlberg
a7005be82c
feat: Fade if unfocused and handle double clicks
2016-12-16 06:44:55 +01:00
Michael Carlberg
b90856157b
fix: Update font visual if depth changes
2016-12-15 18:22:34 +01:00
Michael Carlberg
b2e8428550
wip(refactor): Improve parsing and font glyph caching
2016-12-15 17:28:58 +01:00
Michael Carlberg
9f9f438fae
refactor: Remove last usage of boost::optional
...
Since it's the only thing boost was used for at the moment
we drop it to be able to get rid of a dependency.
2016-12-15 17:13:16 +01:00