Commit graph

365 commits

Author SHA1 Message Date
Dave Davenport
4156d142fe Set PID and wm_client_machine hints on rofi window. 2017-04-10 09:27:22 +02:00
Dave Davenport
2953e3cb1f Test if case_indicator exists before setting it. 2017-03-31 18:06:41 +02:00
Dave Davenport
eeee200d8f Remove old theme support. (part 1) 2017-03-29 20:18:41 +02:00
Dave Davenport
61e537a05f ISSUE 576: Clutching at straws.
* Don't use atexit anymore. (what happens with g_spawn and atexit?
should be fine, but a test).
 * Even though not needed, force wait on running thread (of which there
should be none) when destroy thread pool.
2017-03-25 14:23:31 +01:00
Dave Davenport
5c42f7f626 Do an extra log before calling unmap and destroy window 2017-03-21 19:59:40 +01:00
Dave Davenport
6447ddf0d7 clang-check fixes 2017-03-17 14:27:08 +01:00
Dave Davenport
50477a0b99 [Keys] Cleanup view a bit. 2017-03-17 14:07:11 +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
3f4d58ef53 Indent code. 2017-03-04 19:41:06 +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
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
dc7e4aa96e Install some headers for use in plugins 2017-02-17 14:06:31 +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
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
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
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
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
c9d16d2eda Only pre-process input once. 2017-01-30 08:23:57 +01:00
Dave Davenport
6a01c9c9f8 Set WM_CLASS. Fixes #549 2017-01-29 21:29:26 +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
63d8bfb071 Updates 2017-01-11 23:19:29 +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
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
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
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
af8a6541a2 Order entries in box based on index, allow theme to override. 2017-01-06 16:41:23 +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
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
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
9dd3cb312e Support linestyle on border 2017-01-04 22:27:27 +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
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
953e260511 When order is reversed. reverse listview order fix #523 2017-01-03 20:33:30 +01:00
Dave Davenport
f9fc01b176 Add percentage option to border,padding 2017-01-03 19:23:09 +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
b60ca07f1f Remove border-width property from window. 2017-01-03 15:57:40 +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
37d99378dd cleanup some of sizing logic. 2017-01-02 21:19:27 +01:00
Dave Davenport
df74540624 Fix crasher in error message. update reference output. 2017-01-01 19:33:16 +01:00
Dave Davenport
47aa7c4900 Fix errors in doxygen comments 2017-01-01 18:40:49 +01:00
Dave Davenport
44534653bf Remove border from ViewState 2017-01-01 12:16:04 +01:00
Dave Davenport
5c547393b8 Repaint (if) needed before flipping xcb_copy_area 2017-01-01 02:57:04 +01:00
Dave Davenport
068592414e Support em format in padding 2016-12-31 22:47:22 +01:00
Dave Davenport
eafd4697a2 Fix some of the sizing issues. 2016-12-30 18:31:30 +01:00
Dave Davenport
eda70f337a Remove debug output. 2016-12-29 22:11:02 +01:00
Dave Davenport
c0e6e7c555 Redraw the window, if it moves 2016-12-29 22:06:31 +01:00
Dave Davenport
b0a8edc95a Fix resizing normal-window mode. 2016-12-29 21:58:32 +01:00
Dave Davenport
a2001d1b9c Add window widget, play with logic for sizing (broken) 2016-12-28 19:42:14 +01:00
Dave Davenport
2db879e979 Fix clicking 2016-12-28 14:23:43 +01:00
Dave Davenport
dfc8a31126 Redo some of the redrawing methods, better padding support 2016-12-28 00:37:32 +01:00
Dave Davenport
1c611b0eec First start at adding 4 sided padding 2016-12-27 22:19:15 +01:00
Dave Davenport
c5439118a7 Merge remote-tracking branch 'origin/master' into themer 2016-12-27 10:49:27 +01:00
Dave Davenport
0865e0f9d4 Directly queue a redraw on overlay change. 2016-12-26 20:57:33 +01:00
Dave Davenport
a0bab0e99a Merge remote-tracking branch 'origin/master' into themer 2016-12-26 13:10:19 +01:00
Dave Davenport
3be5791fb2 Use clipboard atom instead of XCB_ATOM_SECONDARY for pasting.
Should fix issue: #516
2016-12-24 14:13:31 +01:00
Dave Davenport
8793475501 Fix and document resolving. 2016-12-20 09:17:19 +01:00
Dave Davenport
9c6019d3d0 Allow theme to set background. 2016-12-19 17:49:52 +01:00
Dave Davenport
4858dad631 Merge remote-tracking branch 'origin/master' into themer 2016-12-15 09:17:55 +01:00
Dave Davenport
9b16f21ddc Remove extra newlines after log messages. 2016-12-15 09:09:14 +01:00
Dave Davenport
eef6fa6f95 Fix typo in widget class name. 2016-12-13 18:06:16 +01:00
Dave Davenport
fd64bb7a41 Improve lexer by adding support for modes. 2016-12-12 23:40:43 +01:00
Dave Davenport
be0677cf49 Update theme to new format.
- @class state {

}
- #name state {

}
2016-12-12 21:14:57 +01:00
Dave Davenport
6d9ce47974 Merge remote-tracking branch 'origin/master' into themer 2016-12-12 08:53:35 +01:00
Dave Davenport
47125daecf Reset user input on script selection.
Fixes: #513
2016-12-12 08:52:27 +01:00
Dave Davenport
a0096f52c4 Border width via new config system. 2016-12-11 17:13:26 +01:00
Dave Davenport
78abbeb710 Textbox uses new theme engine.. 2016-12-11 17:06:31 +01:00
Dave Davenport
5e371eedeb Change language parser to glr type, remove type prefix. 2016-12-11 14:08:28 +01:00
Dave Davenport
7ad0432d82 Set separator name 2016-12-11 12:55:09 +01:00
Dave Davenport
1dfac3c4da Update to new theme 2016-12-11 12:19:46 +01:00
Dave Davenport
5fd76b75b1 Add some color stuff 2016-12-10 19:48:44 +01:00
Dave Davenport
db248ea765 Merge remote-tracking branch 'origin/master' into themer 2016-12-10 18:34:30 +01:00
Dave Davenport
1879361250 Fix positioning of sidebar in the grand scheme of things. (this needs rewrite next release) 2016-12-10 18:27:36 +01:00
Dave Davenport
2d01d1566a Add some properties to themes 2016-12-09 22:16:31 +01:00
Dave Davenport
2220b75467 Fix two issues detected by coverty. 1.) copy /paste error. 2.) dead code 2016-11-30 08:41:47 +01:00
Dave Davenport
4f7e9b3811 Make resize look better. less flickering. 2016-11-29 11:20:52 +01:00
Dave Davenport
862c04ef61 Fix drawing order when widget is added at end. This simplifies bottom mode.
Fixes: #505
2016-11-27 16:02:37 +01:00
Dave Davenport
4f3c7f122e Fix check being the wrong way around. 2016-11-26 16:57:13 +01:00
Dave Davenport
b1a44cc65e Update code documentation 2016-11-15 21:54:31 +01:00
Dave Davenport
7e74d39a01 Fix indentation 2016-11-15 08:24:27 +01:00
Dave Davenport
c86a28ca70 Small code restructure 2016-11-15 08:24:06 +01:00
Dave Davenport
d450d02ad6 For redraw when rofi_view_set_active is called. 2016-11-14 16:31:26 +01:00
Dave Davenport
fcf3c33415 Fix keybinding with Shift in name. Alt-Shift-S -> Alt-S. Alt-Shift-1 -> Alt-exclam
+ indent.
2016-11-14 16:25:04 +01:00
Dave Davenport
f0bc7e3185 Fix #485: Correctly remove consumed masks. 2016-11-14 08:28:54 +01:00
Dave Davenport
27cef3c9ae Fix #497: Create cache dir if not exists. 2016-11-12 11:28:40 +01:00
Dave Davenport
cd0fedd0db If no fake background failed to load, still paint a background. Add debug info. 2016-11-11 22:11:32 +01:00
Dave Davenport
1d40782515 Re-work the expose, redraw system. Use XServer side pixmaps to do drawing and flipping.
- By server side drawing and flipping buffer time to draw buffer to window speed up by factor 1000+.
   Flipping is now one xcb_copy_area call.
 - Don't abuse Xserver expose events to singal internal drawings.
 - Queue redraws in idle time.
 - Avoid unneeded redraws.
2016-11-11 16:29:59 +01:00
Dave Davenport
545be58e40 Issue #454 pass our window id along in the change active window request 2016-11-07 09:15:04 +01:00
Dave Davenport
90c314f397 Re-add column, but not for dmenu when prompt is set 2016-11-07 08:51:23 +01:00
Dave Davenport
89e3e0e645 Grab keyboard as early as possible (#494) 2016-11-06 16:50:12 +01:00
Dave Davenport
ed6cb59b5d Fix crash on wrongly queued ViewState (thx to teto) 2016-11-02 18:24:20 +01:00
Dave Davenport
e72508b782 Remove opacity option. 2016-11-01 08:10:27 +01:00
Dave Davenport
4c5df96fcd Pull config option access from out of separator widget. 2016-11-01 08:04:39 +01:00
Dave Davenport
3c8b757930 Remove auto : 2016-10-28 21:52:22 +02:00
Dave Davenport
c598791aa4 Indent 2016-10-28 18:57:12 +02:00
Dave Davenport
8e0ced2378 Remove commented code 2016-10-28 18:32:29 +02:00
Dave Davenport
217290479e Merge two functions that no longer have a reason to be split.
Fixes: #491
2016-10-28 08:51:53 +02:00
Dave Davenport
163934fa8c Simplify some code, more comments. (90% docu) 2016-10-25 22:45:11 +02:00
Dave Davenport
a38ac9caf3 Update scrollbar behaviour, so dragging is more natural. (limit range from hw/2 to h-hw/2) 2016-10-25 21:19:39 +02:00
Dave Davenport
440756af94 Option to disable/enable the highlighting of match. 2016-10-24 21:47:36 +02:00
Dave Davenport
0ae0d50bbc Revert "Fix: #485 Remove used modifiers before figuring out keybinding."
This reverts commit 25c210b851.
2016-10-23 13:23:04 +02:00
Dave Davenport
25c210b851 Fix: #485 Remove used modifiers before figuring out keybinding. 2016-10-23 13:08:52 +02:00
Dave Davenport
881056ea9b Add some more tests, make some textbox api's private 2016-10-20 09:41:32 +02:00
Dave Davenport
b622a98d9c Fix some coverty found issues. 2016-10-17 20:54:41 +02:00
Dave Davenport
b4c599f022 Add more documentation.
Current state: 61% coverage.
2016-10-14 08:47:21 +02:00
Dave Davenport
3aa1922aa6 Remove padding from input bar: Fix #479 2016-10-13 08:53:22 +02:00
Dave Davenport
cc3bb30a7b Remove unneeded calls to tokenize. 2016-10-11 08:18:34 +02:00
Dave Davenport
07425fd10a Always refilter when switching modi. 2016-10-11 08:11:14 +02:00
Dave Davenport
f10bc5004f Make separator work in both directions ( hori/vert ). 2016-10-09 10:07:32 +02:00
Dave Davenport
3c64507f02 Qtk widgets (#478)
* Initial support for using boxes for packing widgets.

* Make CapiTalIzation more consistent

* Move widgets to subdirectory

* Removed nolonger needed resize function.

* Small cleanup

* When switching mode, reuse view, don't rebuild it. Reduces artifacts.

* Needs cleaning up.

* Remove separate prompt argument, use display_name

* Simplify run-switcher code.

* Add notion of parents, and trigger parent update on resize.

* Use widget_get_height wrapper, avoid crash

* Size separator width based on height. (indent)

 * TODO add margin to box.

* First draft version of listview.

* Add scrollbar to listview widget

* Add padding option to box

* Move access to global config out of widget. (1/2 done)

*  Remove printf

* Make listview not access global config

* Add click support, implement on mode buttons.

* Re-introduce mouse handling on list-view.

* TODO draggin on scrollbar.

* Fix multi-select

* Fix warnings

* Fix include
2016-10-08 18:57:59 +02:00
Dave Davenport
0da0587087 Make widget_free work on textbox and scrollbar, use widget specific free. 2016-09-27 22:38:26 +02:00
Dave Davenport
89acc7b6ed Make one widget_draw function, abstract rest (textbox, scrollbar) behind it. 2016-09-27 22:15:39 +02:00
Dave Davenport
769dab5f66 When view centered, don't change x,y. 2016-09-26 18:19:29 +02:00
Dave Davenport
6131329210 Fix for #467, don't count border twice, take right line-margin into account. 2016-09-18 22:23:39 +02:00
Dave Davenport
acdb6bdf53 Fix fprintf. 2016-09-18 14:44:03 +02:00
Dave Davenport
5ee5bb1e23 First rough version of async loading for dmenu. 2016-09-17 18:57:44 +02:00
Dave Davenport
6191662ccf Fix indenting view.c. 2016-09-17 18:35:03 +02:00
Dave Davenport
d4d757a7c0 Allow for reloading of window content (10fps), needed for async transfer.
* Resize window to fit rows if not num-fixed-lines is set.
 * If there is no entry to show, remove separator.
 * Store size/pos per State.
2016-09-17 18:06:25 +02:00
Dave Davenport
05600368ff Small cleanups.
Remove duplicate code to update window size, make error dialog use normal mainloop.
2016-09-16 20:28:59 +02:00
Ian Remmler
71f5f1ac54 Initialize mouse_seen. (#461)
* Add Ian Remmler to AUTHORS.

* Explicitly initialize mouse_seen.
2016-09-09 20:36:12 +02:00
Ian Remmler
91e2ecf212 Added click-to-exit option. (#460)
Exit if a mouse button is pressed and released outside of the rofi
window.
2016-09-08 22:42:41 +02:00
Dave Davenport
e3fb17a843 Ask window manager to hide decoration in normal-window mode.
Issue #485
2016-09-08 08:57:35 +02:00
Dave Davenport
43be4bd18f Fix keyboard grab normal-window mode 2016-09-06 09:06:02 +02:00