Commit graph

1473 commits

Author SHA1 Message Date
Dave Davenport
d52c80d76f [Textbox] Remove unneeded calls to pango_layout_get_pixel_size.
This was 21% of the widget update time.
2017-03-14 17:02:03 +01:00
Dave Davenport
9cfb075bc4 Add filename to location in error message. 2017-03-13 16:42:17 +01:00
Dave Davenport
be036f086d Reset location when importing, correctly resolve relative path 2017-03-13 08:54:55 +01:00
Dave Davenport
b7f4b7484f Some initial support for @import in theme and try to fall back when theme fails to load 2017-03-11 17:06:06 +01:00
Dave Davenport
13bac230a2 [SSH] Fix missing parameter documentation 2017-03-11 13:40:05 +01:00
Dave Davenport
652749081a Fix missing doxygen documentation 2017-03-11 13:20:46 +01:00
Dave Davenport
cee753bd3c Zeltakmadness (#572)
* Allow modi to set extra pango attributes on displayed rows

* Fix some documentation, only highlight the mode name with color.

* Small rename.
2017-03-10 23:39:29 +01:00
Dave Davenport
25678d7a59 Floor the result, so we do not get 1/2 pixel gaps. 2017-03-09 19:00:26 +01:00
Dave Davenport
b72a010908 Issue570 (#571)
* First start issue #570

* Implement (glob style) includes.

* Add glob check to configure.

* If expanding path, use it
2017-03-08 16:56:28 +01:00
Dave Davenport
88cde09055 Merge remote-tracking branch 'gitcreate/master' 2017-03-06 10:35:20 +01:00
Dave Davenport
9938317dc5 Don't g_strsplit everytime, use strtok. 2017-03-06 09:56:02 +01:00
Dave Davenport
cb9255bbea Allow slice allocator for theme 2017-03-04 20:09:19 +01:00
Dave Davenport
3f4d58ef53 Indent code. 2017-03-04 19:41:06 +01:00
Dave Davenport
8ee37012d1 Add dir parser function 2017-03-04 12:22:28 +01:00
Dave Davenport
86dc1e1448 Detect plugins on startup. 2017-03-04 12:00:59 +01:00
Dave Davenport
45c70cbecf Allow modes to set message box, instead of view creation argument. 2017-03-01 09:57:54 +01:00
Dave Davenport
8aac855fe0 Remove replace test. (Don't do commit -a ) 2017-03-01 09:50:23 +01:00
Dave Davenport
8bd7db31d2 Add message box to view structure. Always add it, disable it when not showing anything 2017-03-01 09:37:20 +01:00
Dave Davenport
9ee61a6447 Use new get_desired_height to determine height of error message dialog 2017-02-27 17:40:36 +01:00
Dave Davenport
0cd257f554 Add missing point in container name. 2017-02-27 16:50:56 +01:00
Dave Davenport
1de6239616 Also parse global config for dynamic options 2017-02-27 09:01:59 +01:00
Dave Davenport
3d2491556e Fix small issue positioning top of text in entrybox. (I hope) 2017-02-24 09:54:11 +01:00
Dave Davenport
8608a46633 Fix missing capital. (sorry not awake yet) 2017-02-18 12:12:51 +01:00
Dave Davenport
ed7cfcb6aa Add openbox to the naughty list 2017-02-18 10:47:53 +01:00
Dave Davenport
85bd47e42f Quick 'n dirty hack to find plugin in plugin dir 2017-02-17 20:02:12 +01:00
Dave Davenport
dc7e4aa96e Install some headers for use in plugins 2017-02-17 14:06:31 +01:00
Dave Davenport
f7b4bebb9b Rename token_match to helper_token_match. 2017-02-17 09:58:47 +01:00
Dave Davenport
9bd4096346 Add quick'n dirty abi check. 2017-02-14 18:12:07 +01:00
Dave Davenport
fb05409365 Start of making SardemFF7 happy
Allow mode's to be loaded as dynamic plugins.
2017-02-14 08:52:17 +01:00
Dave Davenport
97be4e9c72 Use xcb_ewmh_get_supporting_wm to get window to get wm name on 2017-02-11 19:51:02 +01:00
Dave Davenport
a579c86c1f Only switch to the desktop first if we are on AweSome WM 2017-02-11 17:12:07 +01:00
Dave Davenport
c386521574 Add an window manager detection function to startup.
current_window_manager now is an enum of known window managers.
2017-02-11 16:53:37 +01:00
Dave Davenport
0ea74e5c7f Update function check configure.ac 2017-02-09 08:45:15 +01:00
Dave Davenport
87251a991c Indent 2017-02-09 08:27:26 +01:00
Dave Davenport
ef4d09be1f Tweaking corner case when box is small 2017-02-08 19:48:15 +01:00
Dave Davenport
1d6b1494e9 Fiddle with the corners again.. less complecated is good 2017-02-08 10:15:38 +01:00
Dave Davenport
7b3e0918cf Reduce amount of paths created 2017-02-06 23:45:46 +01:00
Dave Davenport
d3b050e1f1 First draw widget, then draw border around it.. extend clipmask by 0.5 a pixel in the corner. 2017-02-06 23:30:39 +01:00
Dave Davenport
3056064e68 Fix missing - in clip mask 2017-02-06 23:02:19 +01:00
Dave Davenport
b51a20c433 limit radius when height/weight gets to small 2017-02-06 21:31:13 +01:00
Dave Davenport
db92ff1f41 Add border radius to border around widget. 2017-02-06 21:17:56 +01:00
Dave Davenport
c5506e4cdd Allow bang to match multiple modes when incomplete to select single. Fixes #552 2017-02-04 10:54:15 +01:00
Dave Davenport
8ef7b4b794 Don't recreate every string everytime. 2017-02-03 20:49:16 +01:00
Dave Davenport
2fe22cb7e2 Return to default border when nothing set after state update 2017-02-03 15:44:52 +01:00
Dave Davenport
8f4a4d51c6 Don't apply fonts that don't result in family name or have size 0.
Issue: 554
2017-02-03 09:54:18 +01:00
Dave Davenport
42a1eba275 Remove the extra layer each textbox keeps for drawing its text. (#553) 2017-02-02 20:31:47 +01:00
Dave Davenport
8392b207a9 Enable lazy-grab by default. 2017-02-02 19:00:45 +01:00
Dave Davenport
601a20aba5 Speedup drun by 10% by reducing number of reallocs. 2017-02-02 08:36:55 +01:00
Dave Davenport
cc0ab10833 Fix malloc in textbox 2017-02-02 08:36:55 +01:00
Dave Davenport
1ee67e8bba Always set size, to work better in floating window manager in normal window mode 2017-02-01 21:17:45 +01:00
Dave Davenport
f10b879cac Async pre-read 25 entries by default, to make it feel more snappy. Fixes #550 2017-02-01 21:07:40 +01:00
Dave Davenport
8e64885c55 Set default language on pango context. 2017-02-01 08:47:43 +01:00
Dave Davenport
cbea7e3337 Add more debug output to timing on creating window 2017-01-31 17:58:23 +01:00
Dave Davenport
954288ab81 Give overlay widget a parent, queue widget redraw on enable/disable 2017-01-31 08:09:55 +01:00
Dave Davenport
714b5968d5 Allow user to set number of rows to pre-read async. 2017-01-30 17:15:34 +01:00
Dave Davenport
c9d16d2eda Only pre-process input once. 2017-01-30 08:23:57 +01:00
Dave Davenport
0a31175da5 If no filter specified, match everything with default matcher 2017-01-30 08:23:33 +01:00
Dave Davenport
6a01c9c9f8 Set WM_CLASS. Fixes #549 2017-01-29 21:29:26 +01:00
Moritz Maxeiner
6b9dc1d081 Combi mode: Bang mode prefixes with len>1 (#542)
* Combi mode: Bang mode prefixes with len>1

This is required to match on modes that share a prefix.
Let 'power' and 'pass' be such modes for the following explanation:
Previously, only the first character of after the bang was compared,
so '!p' would always be matched to the 'pass' mode and there was no
way to limit selection in combi mode to the 'power' mode.
Now we can use prefixes of arbitrary length following the bang
such as '!po' (matches 'power' mode), or '!pa' (matches 'pass' mode).
Prefixes of length 1 are unchanged compared to the previous
behaviour, i.e. '!p' will still match 'pass'.

* Combi-mode prefixes should be utf-8 aware
2017-01-26 19:46:46 +01:00
Dave Davenport
b63e417e38 Add configurable fonts for testing. #544 2017-01-24 08:40:37 +01:00
Dave Davenport
46db427735 Update DPI detection method. 2017-01-22 14:58:59 +01:00
Dave Davenport
2306e58a25 Output detected DPI to debug system. 2017-01-21 13:05:57 +01:00
Dave Davenport
0ebd6a260b Add auto-detect option to DPI setting. 2017-01-21 12:58:52 +01:00
Dave Davenport
be9ae4490c Don't release keyboard on FOCUS-out event.. for some reason we do not always get focus-in event 2017-01-19 19:12:28 +01:00
Dave Davenport
13a83e3495 Give a visible (popup) error message when failed to open theme 2017-01-19 18:49:55 +01:00
Dave Davenport
b5d094fa35 Update theme specifcation documentation. 2017-01-18 09:43:58 +01:00
Dave Davenport
253724c85c Ignore empty path.
Not in spec. but lets ignore it.

Fix: #539
2017-01-17 20:00:00 +01:00
Dave Davenport
30f7846e4c Give error when multiple (non-modifier) keys are hit. 2017-01-15 21:14:43 +01:00
Dave Davenport
63d8bfb071 Updates 2017-01-11 23:19:29 +01:00
Dave Davenport
d8ca3e01de fzf matching remove debug 2017-01-11 09:43:24 +01:00
Dave Davenport
19b023b221 Split sorting option. one for sorting. One to force levenshtein. 2017-01-11 09:42:37 +01:00
Dave Davenport
4452b08288 Move fzf matcher into helper 2017-01-11 09:20:19 +01:00
Dave Davenport
56c787690f Move full algorithm in function. 2017-01-11 09:14:01 +01:00
Dave Davenport
bfae111579 Fix indenting and header commenting. 2017-01-11 09:11:19 +01:00
Fangrui Song
d1edf0dc08 Revise fuzzy finding algorithm for -matching fuzzy 2017-01-11 08:59:34 +01:00
Dave Davenport
17155867a1 Add a quick theme tutorial. 2017-01-10 11:20:38 +01:00
Dave Davenport
268b0fa3b0 Super-1..10 keybinding activates row 1..10.
Allowing fore quick switching to entry.
https://forum.qtools.org/t/select-entry-by-offset/84/5
2017-01-10 07:41:37 +01:00
Dave Davenport
a5d2db256e Clear theme memory on close, free temporary widget 2017-01-09 23:08:11 +01:00
Dave Davenport
cf1940f8cb Reset theme if parsing fails, so we don't display using 1/2 parsed theme 2017-01-09 23:01:09 +01:00
Dave Davenport
25dff63006 Improve error handling string. 2017-01-09 22:40:11 +01:00
Dave Davenport
ca01af6338 Try to improve error handling and messages 2017-01-09 22:29:31 +01:00
Dave Davenport
854aa55453 Better error reporting (1) 2017-01-09 18:32:26 +01:00
Dave Davenport
a199fa3275 Improve error message theme a little bit 2017-01-09 08:55:51 +01:00
Dave Davenport
5188e36147 Remove unused functions and other small fixes 2017-01-09 08:39:02 +01:00
Dave Davenport
f42e4ffbd7 Remove old cairo color set functions 2017-01-09 08:32:16 +01:00
Dave Davenport
78916c6a94 Give up and quit rofi after failed to grab keyboard in <5 sec. 2017-01-09 08:17:16 +01:00
Dave Davenport
713d41f619 Allow matching highlighting to be set. Fixes #522 2017-01-09 00:09:02 +01:00
Dave Davenport
baab2047ad Indent magic, rework makefile so lexer and yacc file are not passed. 2017-01-08 21:36:06 +01:00
Dave Davenport
8c0c43952d Make 'text' override foreground color for rendering text 2017-01-08 20:39:37 +01:00
Dave Davenport
35a9b04f87 Print position as textual in dump-theme. 2017-01-08 18:03:31 +01:00
Dave Davenport
5d1fa66c30 Fix dumping of theme 2017-01-08 17:50:42 +01:00
Dave Davenport
97d96fdabd Add fullscreen option to theme 2017-01-08 17:38:21 +01:00
Dave Davenport
26efbecbc3 Fix multiple -theme-str lines parsing, fix num lines 2017-01-08 17:18:49 +01:00
Dave Davenport
ce2cf6b2d9 Make error dialog widget layout match normal one 2017-01-08 16:49:46 +01:00
Dave Davenport
8543ac8438 Fix doxygen. 2017-01-08 16:23:17 +01:00
Dave Davenport
c57e7348d2 Add some better error message. Allow -theme-str option to override part of theme 2017-01-08 16:09:24 +01:00
Dave Davenport
8124cfb023 Merge remote-tracking branch 'origin/master' into themer 2017-01-07 10:38:47 +01:00
Dave Davenport
c98b67ed0d Make lazy-key-grab an option, add --release for i3 to manpage. 2017-01-07 10:35:36 +01:00
Dave Davenport
361d5c62d7 Draw scrollbar when list is empty. 2017-01-06 22:12:24 +01:00
Dave Davenport
02dafeeccc Fix percentual margin. 2017-01-06 20:36:06 +01:00
Dave Davenport
06c5f51e7d Allow to set anchor position on normitor and anchor position on window. 2017-01-06 19:04:25 +01:00
Dave Davenport
8bc1831d17 Allow window width to be set in theme 2017-01-06 17:21:21 +01:00
Dave Davenport
9aaf21cd85 Fix theme converter and check. 2017-01-06 16:53:21 +01:00
Dave Davenport
af8a6541a2 Order entries in box based on index, allow theme to override. 2017-01-06 16:41:23 +01:00
Dave Davenport
5078034672 Add scrollbar 'handle-width' and 'handle-color' remove old syntax 2017-01-06 15:36:06 +01:00
Dave Davenport
52f4f32d89 Listview: hide widget when no row is visible and dynamic is enabled. 2017-01-06 13:42:00 +01:00
Dave Davenport
0e037237f8 Only queue redraw when state actually changes 2017-01-06 13:26:26 +01:00
Dave Davenport
f45e910a1b Q'nD: Update border and force redraw on state change 2017-01-06 13:24:35 +01:00
Dave Davenport
7e13bd8658 Quick 'n Dirty work around for handle color in scrollbar. 2017-01-06 13:13:03 +01:00
Dave Davenport
add0e2f801 Merge remote-tracking branch 'origin/master' into themer 2017-01-06 11:07:14 +01:00
Dave Davenport
051be0cfe6 Change keyboard grabbing behaviour, if you fail, continue running and try in background to get them. 2017-01-06 11:00:27 +01:00
Dave Davenport
a02de2c410 Textbox take height set, when bigger then desired in autowidth mode 2017-01-05 22:56:32 +01:00
Dave Davenport
f2a4049991 Remove separator 2017-01-05 22:07:50 +01:00
Dave Davenport
3eb450c37e Add generic container (renamed window widget) put container around message. 2017-01-05 18:33:57 +01:00
Dave Davenport
e6a6d5f894 Fix printing of link element. 2017-01-05 18:23:27 +01:00
Dave Davenport
4cc21b93a5 Allow linking to top level properties. 2017-01-05 18:22:34 +01:00
Dave Davenport
a4bab4654a Scrollbarwidth is a Distance. 2017-01-04 23:14:43 +01:00
Dave Davenport
b8ff85adb6 Improve exporting of theme. 2017-01-04 23:11:25 +01:00
Dave Davenport
5d70985bb9 Reset line style, reset state after drawing border. 2017-01-04 22:46:46 +01:00
Dave Davenport
9dd3cb312e Support linestyle on border 2017-01-04 22:27:27 +01:00
Dave Davenport
b618cd63d8 Fix transparency in theme converter.
Implicitely convert P_INTEGER to P_PADDING if asked for a padding.
2017-01-04 15:18:12 +01:00
Dave Davenport
85a0e1a57e Remove class system from new theme format. Fix theme converter. 2017-01-04 15:05:39 +01:00
Dave Davenport
645fe24890 Add debug output to themer that indicates unset properties. 2017-01-04 14:01:28 +01:00
Dave Davenport
44581fd90b Allow packing order to be set using theme. 2017-01-04 13:34:02 +01:00
Dave Davenport
8bbf1b36d5 Don't draw widget when size is 0 or less. 2017-01-04 10:47:37 +01:00
Dave Davenport
8f6a323ed6 Merge remote-tracking branch 'origin/master' into themer 2017-01-04 10:39:50 +01:00
Dave Davenport
129d96928a Quick when failed to grab keyboard. #524 2017-01-04 10:37:05 +01:00
Dave Davenport
6305bbbf39 Fix border with margin. take 2. 2017-01-04 00:36:33 +01:00
Dave Davenport
c96e95c766 Hopefully fix border with margin setting 2017-01-04 00:06:13 +01:00
Dave Davenport
495dfb4c20 Add support for margin. 2017-01-03 23:51:15 +01:00
Dave Davenport
953e260511 When order is reversed. reverse listview order fix #523 2017-01-03 20:33:30 +01:00
Dave Davenport
3f8c5378c4 Reverse scrollbar when listview is reversed. 2017-01-03 20:28:19 +01:00
Dave Davenport
a836346968 Allow listview to be reversed in order.
Issue: #523
2017-01-03 20:22:29 +01:00
Dave Davenport
f9fc01b176 Add percentage option to border,padding 2017-01-03 19:23:09 +01:00
Dave Davenport
7600668bff Update window copyright 2017-01-03 18:06:21 +01:00
Dave Davenport
9f294437f0 Merge remote-tracking branch 'origin/master' into themer 2017-01-03 18:02:51 +01:00
Dave Davenport
4f4770ee4f Fix wrong sed replace. 2017-01-03 18:02:21 +01:00
Dave Davenport
8163204320 Merge remote-tracking branch 'origin/master' into themer 2017-01-03 18:00:12 +01:00
Dave Davenport
22e2d7587d Update copyright to 2017. 2017-01-03 17:59:28 +01:00
Dave Davenport
3435599939 Allow for different color handle 2017-01-03 16:05:00 +01:00
Dave Davenport
b60ca07f1f Remove border-width property from window. 2017-01-03 15:57:40 +01:00
Dave Davenport
861b52a523 Add support for borders around widgets. 2017-01-03 15:39:19 +01:00
Dave Davenport
e982a439fb Fix spacing in listview and box. 2017-01-03 14:25:24 +01:00
Dave Davenport
30726b6c6e Fix pasting of multi-line clipboard.
Previous newline removal only removed trailing newline.
2017-01-03 12:20:21 +01:00
Dave Davenport
0307a14984 Fix compile warning different architectures where long long unsigned != uint64_t 2017-01-03 12:19:52 +01:00
Dave Davenport
23e1bf9566 Resize widgets in width before determining initial height.
- Solves Rasi weird sizing issue.
2017-01-03 12:19:07 +01:00
Dave Davenport
f82129aab8 Box: static widget should get their desired height. 2017-01-03 12:18:11 +01:00
Dave Davenport
a41d6c4ab4 textbox, draw better cursor, fix desired height query.
- update layout before query.
 - Correct autoheight logic.
2017-01-03 12:17:17 +01:00
Dave Davenport
9c7b5fe7a9 Restructure for readability. no change 2017-01-03 00:59:37 +01:00
Dave Davenport
37d99378dd cleanup some of sizing logic. 2017-01-02 21:19:27 +01:00