Commit graph

551 commits

Author SHA1 Message Date
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
96b09b8fff Merge remote-tracking branch 'origin/master' into themer 2016-12-20 09:26:21 +01:00
Dave Davenport
49f58a33f5 Hit 100% doxy coverage again, remove attribute it chokes on 2016-12-20 09:25:56 +01:00
Dave Davenport
b8e58b0342 Make parser more flexible, allow global properties to be anywhere in file and allow multiple similar entries. 2016-12-16 09:28:13 +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
95667e60d9 Add theme option to config system. 2016-12-11 18:06:35 +01:00
Dave Davenport
78abbeb710 Textbox uses new theme engine.. 2016-12-11 17:06:31 +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
2d01d1566a Add some properties to themes 2016-12-09 22:16:31 +01:00
Dave Davenport
d18f037d1c Add lex/bison parser for theme. 2016-12-09 19:49:49 +01:00
Dave Davenport
31115dd312 Print compile options (window, drun,timing, asan, gcov) in -help
Issue: #506
2016-11-25 20:00:27 +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
29cacd0e83 Try to improve parsing of Keybinding. Give more specific error of what failed.
+ Implementation is slower. but is one time, so should be fine.
2016-11-14 18:32:22 +01:00
Dave Davenport
62879ee739 Continue parsing when keybinding fail, only show errors after all are done. 2016-11-14 16:53:01 +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
27cef3c9ae Fix #497: Create cache dir if not exists. 2016-11-12 11:28:40 +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
ed6cb59b5d Fix crash on wrongly queued ViewState (thx to teto) 2016-11-02 18:24:20 +01:00
Dave Davenport
3b698038d7 Document enum of separator.h 2016-11-01 21:19:13 +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
e3ab39ea6f add more details to timing log 2016-10-31 08:07:02 +01:00
Dave Davenport
86b6beb1e9 Update some code. 2016-10-28 23:28:49 +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
fb459e1660 Make scrollbar behave better 2016-10-26 08:24:34 +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
881056ea9b Add some more tests, make some textbox api's private 2016-10-20 09:41:32 +02:00
Dave Davenport
7b3b68462e Fix memory leak in box and listview widget, add coverage make target. (ggcov and lcov) 2016-10-18 13:49:24 +02:00
Dave Davenport
0e176199fc Fix some possible null pointer dereference. (clang-check) 2016-10-17 18:21:03 +02:00
Dave Davenport
e95b2047bd Fix stupid missing */ in commit 2016-10-15 15:45:28 +02:00
Dave Davenport
f0981d6697 Indenting, comments 2016-10-15 15:39:08 +02:00
Dave Davenport
9293c8b8ce More docu updates 2016-10-14 18:56:09 +02:00
Dave Davenport
ce341f6885 Document more headers. 2016-10-14 16:46:54 +02:00
Dave Davenport
b4c599f022 Add more documentation.
Current state: 61% coverage.
2016-10-14 08:47:21 +02:00
Dave Davenport
1cd94c27c7 Update documentation, tests for widget 2016-10-13 09:22:08 +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
f3298801f3 Split internal widget into separate file 2016-10-09 10:13:15 +02:00
Dave Davenport
f10bc5004f Make separator work in both directions ( hori/vert ). 2016-10-09 10:07:32 +02:00
Dave Davenport
ad02f8f0b7 Small docu update. 2016-10-09 09:40:21 +02:00
Dave Davenport
1dc32727b3 Document box public api. 2016-10-09 09:30:57 +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
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
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
4379f3be7c Ctrl-click does alternate accept entry.
Fixes #429
2016-09-02 18:19:16 +02:00
Dave Davenport
c099aaeabf Add debug output. 2016-08-30 21:24:04 +02:00
Dave Davenport
5646adc34d Add option to set padding within a line.
Fixes: #449
2016-08-30 18:07:34 +02:00
Dave Davenport
51eac318fd Test #454 unmap window before switching. 2016-08-30 08:14:53 +02:00
Dave Davenport
e79361e890 Fix configure script a bit. 2016-08-29 21:38:29 +02:00
Dave Davenport
5cfe9a89b3 Improve DRun handling a bit.
- Remove entries that are deprecated or unsupported.
 - Handle field codes %c and %k

TODO:
 - Detect multiple identical field code entries and throw error.
2016-08-29 21:14:03 +02:00
Dave Davenport
e4cab560f4 First hack at fixing Desktop file parser. 2016-08-28 22:43:42 +02:00
Dave Davenport
20e55e1e4e Add fuzzy matching, make a -matching option.
* -matching *method* option instead of -regex, -glob, -fuzzy.
 * Re-add fuzzy matching pattern.
 * When there are substrings in regex, only highlight those matches.

Fixes: #447
2016-08-25 21:17:58 +02:00
Dave Davenport
ef3c773097 Constness. 2016-08-24 00:39:56 +02:00
Dave Davenport
df7468b491 Use XRandr to get monitor layout instead of xinerama.
* You can now specify monitor by name, or primary status.
2016-08-19 10:46:38 +02:00
Dave Davenport
eb0bfc60c4 Indicate what set an option, comment default options in dump-xresources. 2016-08-04 20:24:01 +02:00
Dave Davenport
604b4cb619 Fix memory leak, re-indent 2016-07-31 23:28:31 +02:00
Dave Davenport
4be25abad7 Fix some doxygen warnings. 2016-07-29 08:32:34 +02:00
Dave Davenport
8478b427f1 Fix Control+u behaviour 2016-07-27 08:10:55 +02:00
Dave Davenport
fe230eb95c Fix #432, Control+k removes till eol. 2016-07-25 11:32:30 +02:00
Dave Davenport
59635919ea Add selection indicator to dmenu mode. 2016-07-18 23:49:26 +02:00
Dave Davenport
fc24fcca22 Update Changelog 2016-07-14 07:48:28 +02:00
Dave Davenport
b47e9c3846 Allow for more advanced window 'line' formatting 2016-07-12 10:44:43 +02:00
Dave Davenport
342192b4ed Remove work-around for older i3 version (< 4.9)
- I3 got ewhm support in Feb. 2015.
2016-07-06 08:34:47 +02:00
Dave Davenport
9f25a975ae Fix windowcd command and allow custom Window string format 2016-06-28 23:07:48 +02:00
Dave Davenport
6e2d0b6319 Add selection counter in dmenu mode 2016-06-26 15:48:12 +02:00
Dave Davenport
a7922cc07c Remove xlib dependency, add xcb-util-xrm. 2016-06-25 14:01:41 +02:00
Dave Davenport
77a0800ccf Copy memory instead of mixing malloc and g_malloc'ed memories (and freeing them all with g_free) 2016-06-21 22:40:42 +02:00
Dave Davenport
1f4af41e96 Split Custom and Alternate command. 2016-06-19 18:02:49 +02:00
Dave Davenport
03239cb989 Remove fuzzy matching option. 2016-06-18 20:54:29 +02:00
Dave Davenport
7a2435a23b Indent don't use partial match. 2016-06-16 22:23:55 +02:00
Dave Davenport
0b84d63959 Merge remote-tracking branch 'origin/master' into highlight_match 2016-06-07 09:02:03 +02:00
Dave Davenport
9ff7a26c7e Some indenting fixes 2016-06-05 20:41:10 +02:00
Dave Davenport
72d6c20876 Merge remote-tracking branch 'origin/master' into highlight_match 2016-06-01 19:04:52 +02:00
Dave Davenport
01ce909c97 Update some headers. 2016-06-01 07:34:41 +02:00
Dave Davenport
1b5bcaa9f4 Issue #411: Show list of Keyboard bindings with rofi, from rofi. 2016-05-30 10:25:58 +02:00
Dave Davenport
0e86050db8 Fix combi mode 'bang' behaviour, improve levenshtein with combi 2016-05-26 08:39:33 +02:00
Yaroslav
f901494c6a Switch to stop cycling feature (#407)
* Added 'cycle' option to switch list navigation wrapping

* Replaced tabs with spaces

* Updating the expected rofi properties with 'cycle' option

* Updating documentation with the 'cycle' option
2016-05-25 20:40:23 +02:00
Dave Davenport
99a79f7eb4 Don't use g_ascii on utf8 string. 2016-05-22 19:41:52 +02:00
Dave Davenport
498fadc735 Remove the is_ascii mess. 2016-05-22 17:47:34 +02:00
Dave Davenport
8091558ed8 Go Regex Go 2016-05-21 10:37:23 +02:00
Dave Davenport
2a20821ddd Merge remote-tracking branch 'origin/master' into hm 2016-05-20 09:57:25 +02:00
Quentin Glidic
db4f087487 window: Make custom action run a command on the window
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-05-12 11:31:12 +02:00
Dave Davenport
c8a6b26607 First try at highlighting match (regex only) 2016-05-10 18:02:23 +02:00
Dave Davenport
09437e3f0e We don't have a negative page number. 2016-05-10 17:51:23 +02:00
Dave Davenport
bd412b9975 Grab mouse pointer with keyboard. 2016-05-09 08:47:28 +02:00
Dave Davenport
171d132b9b Update ChangeLog 2016-05-09 08:23:19 +02:00
Dave Davenport
8f6c9ee070 Fix indenting 2016-05-08 11:13:11 +02:00
Quentin Glidic
67b0ce036f keybindings: Implement on-release bindings
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-05-07 11:31:04 +02:00
Quentin Glidic
20791d4a71 view: Split action triggering to an helper function
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-05-07 11:31:00 +02:00
Quentin Glidic
54f85fabaa keybindings: Rework the matching
Now we check all bindings in one place, allowing for future naughty
matching.

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-05-07 11:25:04 +02:00
Quentin Glidic
aa350a1583 textbox/key: Cleanup
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-05-07 11:24:22 +02:00
Quentin Glidic
5b0964ae32 textbox: Split keybinding and text handling
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-05-07 11:24:10 +02:00
Dave Davenport
8e05106c87 Add option to view background image instead of screenshot in fake transparency. Issue #390 2016-05-06 12:40:55 +02:00
Dave Davenport
85aeffbd24 small cleanup 2016-04-20 17:03:34 +02:00
Dave Davenport
3918625804 Move teardown to the logic place again (possible with deamon mode removed) 2016-04-20 08:04:23 +02:00
Dave Davenport
e54e012500 Issue: #381: Try to handle X11 input and UTF-8 better.
In window_get_text_prop do conversion when input is of type STRING. (latin1) to utf8.
Dmenu: don't skip invalid lines, but try to display as much as possible.
Window mode: Double check all input from X.
2016-04-10 12:05:34 +02:00
Dave Davenport
541f5b1fc9 Fixes issue #370: Move dmenu option into dmenu. 2016-04-02 10:39:02 +02:00
Dave Davenport
1b4e5069f6 Revert "Test config file before load, support ~/.config/rofi/theme and remove config_path global, fix loading dynamic options from /etc/rofi.conf"
This reverts commit 0c7d1a6b17.
2016-04-01 17:58:41 +02:00
Dave Davenport
0c7d1a6b17 Test config file before load, support ~/.config/rofi/theme and remove config_path global, fix loading dynamic options from /etc/rofi.conf 2016-04-01 08:40:23 +02:00
Dave Davenport
c4b65d975c Cleanup unused type specifier. 2016-03-24 22:13:19 +01:00
Quentin Glidic
20c9abf0a2 keybindings: Merge accept-custom and accept-entry-continue
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-03-20 10:39:34 +01:00
Quentin Glidic
abe44475fc view: Fix multi-character compose sequences
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-03-07 18:10:22 +01:00
Dave Davenport
d5be6d232e Add MENU_ERROR_DIALOG flag. 2016-03-06 16:03:04 +01:00
Dave Davenport
d99111c73b Remove deprecated theme system. 2016-03-05 18:28:39 +01:00
Dave Davenport
72dfe2ad4c Propagate error down, show dialog.
Fix positioning dialog.
2016-03-05 11:08:32 +01:00
Dave Davenport
fa7ceaf580 Check for the availability of the xinerama extension. 2016-03-04 17:03:24 +01:00
Dave Davenport
06d25c0ca2 Quit on error msg fail. 2016-03-03 08:21:28 +01:00
Dave Davenport
f0b1998703 Cleanups (cppcheck) 2016-03-02 18:07:59 +01:00
Dave Davenport
f05f0de583 Fix #348, give a warning when font failed to parse 2016-03-01 19:48:18 +01:00
Dave Davenport
8c950a984c Small cleanup 2016-03-01 18:33:26 +01:00
Dave Davenport
167e9d30ce Add missing files. 2016-03-01 18:17:39 +01:00
Dave Davenport
7d046a1f5b Pack magic externs into a xcb_stuff. 2016-03-01 18:11:55 +01:00
Dave Davenport
fb2c23a429 Try to get fullscreenmode to draw nicer. 2016-02-29 12:11:04 +01:00
Dave Davenport
ef98b3928a Small cleanup. 2016-02-28 18:20:39 +01:00
Dave Davenport
a4fd907fe8 Run indenter 2016-02-28 15:32:53 +01:00
Dave Davenport
057f156009 Remove unneeded atom 2016-02-28 12:35:47 +01:00
Quentin Glidic
909241ddfe Remove X11 headers includes
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-28 12:21:26 +01:00
Quentin Glidic
644556b7b6 Change Window/Atom to xcb_window_t/xcb_atom_t
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-28 12:21:26 +01:00
Dave Davenport
ab57479da9 Remove Atom with xcb_atom_t. 2016-02-28 12:19:56 +01:00
Dave Davenport
93cb9ee7eb Remove opening of display. 2016-02-28 01:08:12 +01:00
Dave Davenport
d813d03a5f Convert more stuff to xcb, keyboard grab, cleanup 2016-02-28 00:09:05 +01:00
Dave Davenport
4c661c3932 Move most of window modi to xcb 2016-02-27 22:55:47 +01:00
Dave Davenport
bb2f0d8b83 Move more to xcb, window_*_ functions to xcb_ functions 2016-02-27 21:55:43 +01:00
Dave Davenport
a02cb83a98 Move more to xcb. 2016-02-27 20:45:47 +01:00
Dave Davenport
15ad8e1da3 Removing XCB from view.c, paste less 2016-02-27 17:42:50 +01:00
Quentin Glidic
2ef950eab9 WIP: Port window stuff to xcb
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-23 17:37:25 +01:00
Quentin Glidic
6bb1d4b1a2 x11-helper: Migrate to libxkbcommon
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-23 17:34:38 +01:00
Quentin Glidic
3029e05ac7 keybindings: Rework modmask matching
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-23 17:34:31 +01:00
Quentin Glidic
590e61b417 view: Store modstate on keypress event
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-23 12:52:35 +01:00
Quentin Glidic
990914d20f rofi: Drop daemon mode
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-23 12:15:03 +01:00
Quentin Glidic
88ddb7f04e x11-helper: Directly store the useful value
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-23 12:13:44 +01:00
Quentin Glidic
f39f5bb0cb view-internal: Use XCB types
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-23 12:13:21 +01:00
Quentin Glidic
09e520dfe8 rofi: Always use ARGB for Cairo image surfaces
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-21 22:10:03 +01:00
Dave Davenport
aa1d8b4046 Remove x11-event-source, replaced by libgwater. 2016-02-21 17:47:19 +01:00
Quentin Glidic
5d6f2ee1ab Compose stuff
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-21 16:04:53 +01:00
Quentin Glidic
e1f87a67b4 rofi: Migrate to libxkbcommon
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-21 16:04:53 +01:00
Quentin Glidic
fe7ca2079d rofi: Convert to XCB events
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-21 16:04:53 +01:00