Commit graph

572 commits

Author SHA1 Message Date
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
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
0ebd6a260b Add auto-detect option to DPI setting. 2017-01-21 12:58:52 +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
bfae111579 Fix indenting and header commenting. 2017-01-11 09:11:19 +01:00
Dave Davenport
25dff63006 Improve error handling string. 2017-01-09 22:40:11 +01:00
Dave Davenport
f42e4ffbd7 Remove old cairo color set functions 2017-01-09 08:32:16 +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
22e2d7587d Update copyright to 2017. 2017-01-03 17:59:28 +01:00
Dave Davenport
6e55cb86b9 Work-around for detecting end of file, hopefully fixing #518. 2016-12-30 17:33:24 +01:00
Dave Davenport
aa08c8ea78 Make workspace name also searchable 2016-12-26 16:23:55 +01:00
Dave Davenport
ee310c8470 Strip pango markup from workspace names when detecting I3.
Thanks I3 for this crap.

Issue: #507
2016-12-26 15:58:51 +01:00
Dave Davenport
5a638b1fa0 Search categories when searching Desktop Files.
Issue: #499
2016-12-26 15:18:52 +01:00
Dave Davenport
7d9ca64dd6 Merge branch 'master' of github:DaveDavenport/rofi 2016-12-17 17:58:29 +01:00
Dave Davenport
84508bdc1b Lower priority of loading data from dmenu, so drawing is not delayed 2016-12-17 17:56:54 +01:00
Dave Davenport
47125daecf Reset user input on script selection.
Fixes: #513
2016-12-12 08:52:27 +01:00
Dave Davenport
4889b5f7bc Don't destroy the window, but send close request to window. 2016-11-29 16:09: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
01751db4c0 Fix #498: Right count for unicode charaters in column code. 2016-11-14 12:39:37 +01:00
Dave Davenport
7cc90abceb [DMenu] Dump when there is an empty filter. 2016-11-13 23:15:13 +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
0554db65ea Fix dmenu with -selected-row 2016-11-05 20:00:22 +01:00
Dave Davenport
ed6cb59b5d Fix crash on wrongly queued ViewState (thx to teto) 2016-11-02 18:24:20 +01:00
Dave Davenport
4c5df96fcd Pull config option access from out of separator widget. 2016-11-01 08:04:39 +01:00
Dave Davenport
69c19afcfc [DRun] Fix free 2016-10-31 17:02:10 +01:00
Dave Davenport
3f577f917a Small re-indent 2016-10-31 15:51:47 +01:00
Dave Davenport
01e32c9c61 Cleanup some drun code, use hash table for seen check instead of two arrays 2016-10-31 08:44:04 +01:00
Dave Davenport
e3ab39ea6f add more details to timing log 2016-10-31 08:07:02 +01:00
Dave Davenport
f5f4f52957 Use strtok_r instead of strtok. 2016-10-30 10:14:32 +01:00
Dave Davenport
86b6beb1e9 Update some code. 2016-10-28 23:28:49 +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
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
b622a98d9c Fix some coverty found issues. 2016-10-17 20:54:41 +02:00
Dave Davenport
703426716a [DRun] Fix parsing subdirectories because of wrong suffix check 2016-10-16 14:49:32 +02:00
Dave Davenport
cdb1b96414 Fix issue #482: Set work directory 2016-10-15 20:00:26 +02:00
Dave Davenport
f0981d6697 Indenting, comments 2016-10-15 15:39:08 +02:00
Dave Davenport
07425fd10a Always refilter when switching modi. 2016-10-11 08:11:14 +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
5b843bd08b Remove entry from history if fails to execute.
Issue: #466
2016-09-17 21:28:22 +02:00
Dave Davenport
050fd66c02 Force dmenu in sync mode to stop breaking old features that rely on this. 2016-09-17 19:41:24 +02:00
Dave Davenport
5ee5bb1e23 First rough version of async loading for dmenu. 2016-09-17 18:57:44 +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
4a4769f0b4 Add debug and indent 2016-08-31 10:06:42 +02:00
Dave Davenport
56cc94195c DRUN: Make name key required even when hidden. (#453) 2016-08-31 09:39:00 +02:00
Dave Davenport
21b35b3e3e More debug, fix one off. 2016-08-30 21:56:51 +02:00
Dave Davenport
08319d6439 Keep a list of disabled Desktop files. 2016-08-30 21:49:46 +02:00
Dave Davenport
c099aaeabf Add debug output. 2016-08-30 21:24:04 +02:00
Dave Davenport
0d9d4d6c55 DRun Check if filename ends in .desktop. 2016-08-30 17:41:30 +02:00
Dave Davenport
ef509865fb Add extra debug to DRun Desktop File parsing. 2016-08-30 08:52:02 +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
1f641135e2 Extra checks when parsing file. 2016-08-29 08:55:28 +02:00
Dave Davenport
58eaa81520 Name field in desktop file is required. 2016-08-29 08:23:55 +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
6495d8e8df Add -input to -h output 2016-08-05 07:45:39 +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
ce822a3bbf Fix memory leak run dialog when skipping. 2016-08-02 18:37:14 +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
fe230eb95c Fix #432, Control+k removes till eol. 2016-07-25 11:32:30 +02:00
Dave Davenport
22c8760e32 First try at fixing #430. Needs testin. 2016-07-22 09:44:12 +02:00
Dave Davenport
602eb63557 Add `-multi-select flag to dmenu.
* Changes default behaviour.
2016-07-18 23:58:08 +02:00
Dave Davenport
59635919ea Add selection indicator to dmenu mode. 2016-07-18 23:49:26 +02:00
Dave Davenport
85d95c4f8f Fix memory leak 2016-07-16 22:36:20 +02:00
Dave Davenport
e9c3b930bc [Window] Chomp result
Fixes #426
2016-07-16 22:25:00 +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
7c9f5e01fd Fix tests and crash. 2016-06-28 23:34:07 +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
c87e91b6d9 Make select behave more Rasi-ish 2016-06-26 11:00:23 +02:00
Dave Davenport
40f95ae81f Make bit functions static 2016-06-25 17:40:24 +02:00
Dave Davenport
ce645d78b3 Multi-select with unselect 2016-06-25 17:36:35 +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
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
3f31620a3e Wip/drun subdirs (#416)
* drun: Walk subdirectories too

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>

* Remove goto, make it work for Filesystems that do not support reporting file type.

* Fix using filename before creating it.

* Run indenter over drun file.

* Fix stupid typo
2016-06-05 19:01:38 +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
8616b32310 Remove initialization 2016-05-30 21:10:10 +02:00
Dave Davenport
d62cc8a4ba First throw at issue #403, show wm name. 2016-05-30 18:35:22 +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
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
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
Quentin Glidic
3bd41b9a41 window: Kill the window on delete-entry
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-05-12 11:30:34 +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
Dimitar Yordanov
74d1b234d9 When switching windows also switch the desktop
If the window we switch to is not on the same desktop, first switch to
the desktop.
2016-04-28 22:45:01 +02:00
Dave Davenport
1661244407 Issue: 386: Fix getting desktop number property 2016-04-26 07:52:29 +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
26e1083812 Issue: #380 Make combi complete prepend bang 2016-04-10 20:57:12 +02:00
Dave Davenport
96cb3a8695 Remove fgets and replace by getline. 2016-04-10 14:30:13 +02:00
Dave Davenport
b63f8e2275 Move history to getline and remove magic limit. 2016-04-10 13:55:18 +02:00
Dave Davenport
a69754abff Remove left-over printf. 2016-04-10 12:08:36 +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
2127682573 Cleanup unused type specifier (dialogs). 2016-03-24 22:15:10 +01:00
Dave Davenport
3ac0c6dd7d Quick fix. 2016-03-21 20:27:16 +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
Dave Davenport
c7bc850bb8 Fix reloading after deleting entry 2016-03-20 10:20:40 +01:00
Dave Davenport
d36ae81408 Fix positioning window on top of window. 2016-03-20 10:16:55 +01:00
Dave Davenport
a2869ef39d Make clang static code analyzer happy (300+ -> 5) 2016-03-19 13:29:04 +01:00
Dave Davenport
cdd9f97072 Issue 213: Memcpy the right size for atoms 2016-03-17 22:03:19 +01:00
Dave Davenport
545c423b61 Tried to fix strlen on NULL 2016-03-12 14:00:19 +01:00
Dave Davenport
fa7ceaf580 Check for the availability of the xinerama extension. 2016-03-04 17:03:24 +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
7d046a1f5b Pack magic externs into a xcb_stuff. 2016-03-01 18:11:55 +01:00
Dave Davenport
a4fd907fe8 Run indenter 2016-02-28 15:32:53 +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
73a0eb3e39 Remove X11/* include headers. 2016-02-28 12:22:10 +01:00
Dave Davenport
ab57479da9 Remove Atom with xcb_atom_t. 2016-02-28 12:19:56 +01:00
Dave Davenport
91ad94aef3 Free right memory, get right window class name. 2016-02-28 11:16:54 +01:00
Dave Davenport
4cd76a6d8e Merge remote-tracking branch 'github/master' into wip/xcb/full 2016-02-28 11:04:09 +01:00
Dave Davenport
764992e4bb Remove more display usage 2016-02-28 00:25:53 +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
5a204829f0 Fix not updating in daemon mode 2016-02-23 23:54:35 +01:00
Dave Davenport
3b58c3a26a Fix issue: #347. 2016-02-23 21:14:15 +01:00
Dave Davenport
319524c7c5 Test for single mainloop 2016-02-23 21:04:24 +01:00
Dave Davenport
87546caa8f Fix previous commit. 2016-02-23 19:34:48 +01:00
Dave Davenport
faf5c49b8c Remove hardcoded string length in window list. 2016-02-23 19:14:21 +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
990914d20f rofi: Drop daemon mode
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-23 12:15:03 +01:00
Dave Davenport
9121732e36 Cleanups. 2016-02-19 21:16:35 +01:00
Dave Davenport
038346b640 Cleanup + fix 2016-02-19 21:08:46 +01:00
Dave Davenport
6e3bb506de Full mainloop madness 2016-02-19 19:50:48 +01:00
Dave Davenport
4eb3fd1da3 Test for single mainloop 2016-02-19 19:29:06 +01:00
Dave Davenport
99515f986e Fix issue #281
if one entry as input and autoselect enabled return immediately
2016-02-17 08:46:22 +01:00
Dave Davenport
6217edf622 #343 Add history support to drun mode. 2016-02-16 10:40:21 +01:00
Dave Davenport
fdb4c99456 Remove normal window global. 2016-02-10 19:40:19 +01:00
Dave Davenport
2cd8888d2c Merge remote-tracking branch 'origin/master' into glib-loop 2016-02-09 22:35:03 +01:00
Dave Davenport
289795b22a Fix finding active desktop! 2016-02-09 21:25:29 +01:00
Dave Davenport
f7e2632624 Merge remote-tracking branch 'origin/master' into glib-loop 2016-02-09 19:55:31 +01:00
Dave Davenport
5185f1181c Validate if input is utf-8 for dmenu, if not ignore that line
This should avoid crashing on invalid encoding.
2016-02-09 19:54:43 +01:00
Dave Davenport
c3f15a4e2a Merge remote-tracking branch 'origin/master' into glib-loop 2016-02-09 07:56:45 +01:00
Dave Davenport
e7b18d3a88 Issue: #334: Only allow markup-rows to be set on cmdline
This should avoid people setting this in XResrouces and breaking random dmenu scripts.
2016-02-09 07:37:48 +01:00
Dave Davenport
5a86ae5c99 Cleanups 2016-02-08 09:03:11 +01:00
Dave Davenport
c217307b43 Update! 2016-02-06 14:41:08 +01:00
Dave Davenport
adfc83f07d Restructuring, my biggest joy. 2016-02-06 14:27:36 +01:00
Dave Davenport
312ca274fc Split of files. 2016-02-06 13:06:58 +01:00
Dave Davenport
531f3f884a Merge remote-tracking branch 'origin/master' into glib-loop 2016-02-04 16:25:04 +01:00
Dave Davenport
69b88caac5 Allow user to open an disabled modi. 2016-02-04 09:20:10 +01:00
Dave Davenport
b557c4df6e Issue: #333, Check if row is selected, don't assume selected_line is valid. 2016-02-03 09:01:13 +01:00
Dave Davenport
91780b71db Small fix. 2016-01-27 23:39:52 +01:00
Dave Davenport
afc056ecc5 Play with dmenu black screen 2016-01-27 23:28:14 +01:00
Dave Davenport
eab4e1438f Make dmenu use glib mainloop. 2016-01-26 08:38:07 +01:00
Dave Davenport
eadf455c8c Let DMenu mode reuse open dialog and not restart it. handy for multi-select. 2016-01-20 18:50:33 +01:00
Dave Davenport
d0716efe12 Refactor menu function into three parts, setup, itterrate and finalize. 2016-01-20 18:24:31 +01:00
Dave Davenport
ec24e4426e Fixing SardemFF7 Feedback: boolean, g_getenv and clear_error 2016-01-14 21:06:03 +01:00
Dave Davenport
98fdf04285 [RUN] UTF-8/locale conversion and sardem exec test. 2016-01-14 20:40:19 +01:00
Dave Davenport
121278e6d1 [DRUN] Expand path we get from Desktop file
* This is more 'free'  then spec. but does not break anything.

Fixes: #317
2016-01-14 17:42:07 +01:00
Dave Davenport
cc682f107b Update display value for modi (testing) 2016-01-12 22:18:10 +01:00
Dave Davenport
13810d5911 Add experimental 'password' mode. (#315) 2016-01-10 13:10:44 +01:00
Dave Davenport
c6a9de8c4a Use snprintf instead of sprintf 2016-01-09 19:25:03 +01:00
Dave Davenport
d7dab65e5b Making widget class, moving stuff around 2016-01-09 16:22:09 +01:00
Dave Davenport
dc8fb4f202 Start making SardemFF happy. Use g_return_if_fail 2016-01-08 09:16:59 +01:00
Dave Davenport
fa51aeb484 More splitting and abstracting. 2016-01-07 21:27:20 +01:00
Dave Davenport
e8daff0f6a First cleanup steps. 2016-01-07 19:47:37 +01:00
Dave Davenport
51b5511017 More doxygen sugar. 2016-01-07 16:01:56 +01:00
Dave Davenport
7f621a4a91 Replace strdup_printf with build_filename 2016-01-06 12:42:53 +01:00
Dave Davenport
c512f81c9c Update comments, replace printf/build_filename 2016-01-06 12:40:41 +01:00
Dave Davenport
81ea5fd8c6 Update documentation for ssh dialog 2016-01-05 21:19:30 +01:00
Dave Davenport
329f31bd75 Add doxygen target. 2016-01-05 19:49:13 +01:00
Dave Davenport
5a3c202423 Update copyright 2016-01-01 00:27:00 +01:00
Dave Davenport
696d0a2fa0 Fix 1 off memory leak 2015-12-23 17:03:00 +01:00
Dave Davenport
270ec0c14b Fix out of memory bound on array 2015-12-22 20:57:57 +01:00
Dave Davenport
8b82787df6 Fix possible issue with uninitialized data 2015-12-21 23:14:56 +01:00
Dave Davenport
04eebf964a Indent 2015-12-14 20:28:25 +01:00
Dave Davenport
541c653913 Improve matching for DesktopFile run mode 2015-12-14 20:25:36 +01:00
Dave Davenport
08d6d6b685 Fix return code multi-select 2015-12-12 20:54:59 +01:00
Dave Davenport
eaa553bfd5 Indent. 2015-12-03 22:48:30 +01:00
Dave Davenport
697abdfdfc [DMenu] Add option to read from file instead of stdin. 2015-12-03 18:22:13 +01:00
Dave Davenport
4b77a1728d Remove custom code, replace by glib, fix fuzzy matching for unicode.
- Also fixes char endianess issues.
2015-12-01 22:09:34 +01:00
Qball Cow
ff52140697 Check for nil before updating. 2015-12-01 13:17:59 +01:00
Dave Davenport
544229d975 Issue #287 mark selected rows. 2015-11-30 14:05:39 +01:00
Dave Davenport
bf60d9c01c Fix return code 2015-11-28 11:59:11 +01:00
Dave Davenport
864a00b9fd Add option to dump filtered list to stdout.
uses format option and filter `-dump`.
2015-11-27 13:14:46 +01:00
Dave Davenport
2da1207b7d Fix issue #271 expand path. 2015-11-27 13:01:25 +01:00
Dave Davenport
3c411433b4 Big rename from Switcher to Mode internal, to match with user terminology 2015-11-25 09:26:38 +01:00
Dave Davenport
627643281d Fix ; in macro. 2015-11-24 22:53:40 +01:00
Dave Davenport
d1591273e7 Cleanups, rename and document. 2015-11-24 22:02:30 +01:00
Dave Davenport
00a555b685 Create more consistent ordering of arguments 2015-11-24 14:22:35 +01:00
Dave Davenport
6978b146f0 [Combi] only textual map, when not using glob/regex mode. 2015-11-24 14:14:55 +01:00
Dave Davenport
fa2bcd778c Fix for complete issue #273.
- Add complete handler.
2015-11-24 13:59:35 +01:00
Dave Davenport
cbba58914f Some cleanups and re-ordering of parameters to be consistent. 2015-11-23 22:15:27 +01:00
Dave Davenport
ad778b7dc1 Const making. 2015-11-23 22:15:27 +01:00
Qball Cow
84daf5fd6c Fix issue #285, clear memory on realloc 2015-11-23 17:11:12 +01:00
Dave Davenport
b974b10c96 [DRun] Skip entries that have NoDisplay set.
Closes issue #283
2015-11-23 09:47:29 +01:00
Dave Davenport
4510f65d5a textbox: advance cursor correctly for multi-char input
Thanks to eigengrau
fixes: #280
2015-11-22 20:41:45 +01:00
Dave Davenport
5bdcd47dde consts and small ensurance (though should be correct to begin with) 2015-11-22 00:33:26 +01:00
Dave Davenport
8c9b72f34e Start at fixing Issue 273, this might break some things.
* Only use get_display_data for displaying. (Except the select complete (ctrl-space), this needs fixing).
 * Fix possible race condition in parallelization.
 * Fix small bug in case-sensitive handling. (beware for collision in keybinding)
 * Keep less lists around.
2015-11-21 23:59:59 +01:00
Dave Davenport
238a34162a Try to fix crasher on mixing glib free and free. 2015-11-15 13:12:43 +01:00
Dave Davenport
2eaffceada Fix printing. 2015-11-14 19:59:56 +01:00
Dave Davenport
56e85d0f5a Cleanup. 2015-11-14 19:42:43 +01:00
Dave Davenport
80e873c8a3 Add threadpool support, add optional timings compile flag 2015-11-14 13:47:45 +01:00
Qball Cow
311cedf87f Fix silly little bug. 2015-11-12 14:53:02 +01:00
Qball Cow
c7dcb4821a Use getdelim instead of custom fgets function. 2015-11-12 14:15:33 +01:00
Dave Davenport
09ab44bf92 Fix #264 fall back to age ordered list if stacked list does not work 2015-11-10 23:52:52 +01:00
Dave Davenport
195dc0fb01 Cleanups. 2015-11-07 12:59:08 +01:00
Dave Davenport
53e9332603 Fix #260. 2015-11-07 11:20:25 +01:00
Dave Davenport
4c8404f87d Fix combi and drun and localization 2015-11-03 19:57:07 +01:00
Dave Davenport
80ac118655 Put things together, making desktop menu work 2015-11-03 17:34:02 +01:00
Dave Davenport
6f404ddc8e Initial import desktop file runner. 2015-11-03 08:31:38 +01:00
Dave Davenport
b454791ccd Merge pull request #257 from klemens/no-parse-known-hosts
Add -no-parse-known-hosts option
2015-10-31 19:14:20 +01:00
Klemens Schölhorn
9cb0073ce8 Add -no-parse-known-hosts to disable parsing of ~/.ssh/known_hosts
For humans who like to keep the list of available servers clean. Also useful
if you use different names in ~/.ssh/config.

The previous default of always parsing known_hosts is not changed.
2015-10-31 18:35:37 +01:00
Dave Davenport
02b99e6f95 Fix: 256 Do not accept custom entry when not applicable.
Add test to reproducet .
2015-10-31 18:04:55 +01:00
Dave Davenport
f9e7bc0775 Possible fix for 256. Need test cases for these. 2015-10-31 17:31:24 +01:00
Dave Davenport
bc2b532a51 Add dmenu options to -h 2015-10-21 18:58:01 +02:00
Dave Davenport
64cb4c781c Fix some compiler warnings 2015-10-19 09:23:06 +02:00
QC
1b425c7bd0 Fix crash on deleting entries in ssh/run.
Fix bang for custom run.
2015-10-18 22:12:06 +02:00
Dave Davenport
4975704a05 Fix #244 Do not catch sigchld, let glib handle this internally
- TODO fix man page viewing.
2015-10-12 08:12:25 +02:00
QC
56e023dcee Remove unneeded check. 2015-10-11 14:13:08 +02:00
Tom Hinton
3ba2da9cae Fix mistakes from copy paste 2015-10-01 18:18:01 +01:00
Tom Hinton
af6a4b83eb Make normal filtering of plain ASCII lines faster
This patch adds a field lines_not_ascii to the MenuState structure. The
nth entry is 0 unless the nth member of MenuState.lines has a non-ascii
codepoint in it.

All comparison functions (menu_match_cb type) take an additional
argument to tell them if the thing they are matching is not_ascii. They
can use this to determine whether to collate and case-fold the
input (for non-ascii strings), or whether to use strstr/strcasestr (for
ascii strings).

The change is not currently implemented for flex matching, due to my
laziness. However, it should be a simple enough matter to add.

For my large input of 400,000 lines, this reduces typical filtering time
to about ten microseconds from about 2 seconds.
2015-10-01 12:16:41 +01:00
Tom Hinton
574bf2da82 Make dmenu reading very marginally faster
A slight reduction in use of realloc and avoidance of 3 or 4 strlens for
a string we know the length of
2015-10-01 11:41:44 +01:00
Qball Cow
9b67838b56 Only cache successful run. (Thanks to Koppa nd daemoni) 2015-09-29 17:28:21 +02:00
Dave Davenport
ca8ff80a5c Add bang support to combi 2015-09-28 18:19:10 +02:00
QC
e8328beb2d Fix small leak 2015-09-26 21:06:36 +02:00
QC
8083753700 Fix #177 Add known host parsing. 2015-09-20 16:58:34 +02:00
QC
31fe5759b8 More line fixing. 2015-09-19 21:00:06 +02:00
QC
b18d68eff2 Adjust new editor width 2015-09-19 12:57:48 +02:00
QC
442e235c24 Some cleanups, tweak uncrustify. 2015-09-19 12:21:30 +02:00
Dave Davenport
a5c1eb1f1b Allow window mode to be disabled 2015-09-14 08:57:10 +02:00
Dave Davenport
d2aad68bce Keep the line matched (if possible) when filtering. 2015-09-08 22:23:03 +02:00
Dave Davenport
13203c9de7 Refactor to make dmenu use Switcher, and make menu func use this. 2015-09-08 21:41:54 +02:00
Dave Davenport
ae26c13daf Allow switchers to run multiple times. 2015-09-07 19:10:44 +02:00
Dave Davenport
092a2c5037 Issue: #224 test version window current desktop
run: rofi -show windowcd -modi windowcd,window

Using ctrl-tab you can switch between two modes (all windows, or just current desktop).
2015-09-07 17:41:48 +02:00
Dave Davenport
2c45c02c7f Small cleanup. 2015-09-03 08:20:08 +02:00
Dave Davenport
29d0c109cb Add WINDOW_TYPE_DESKTOP to ignore list.
Issue: #215
2015-08-31 08:00:23 +02:00
Dave Davenport
3c91c8d6e0 Issue: #213 hide windows marked as type DOCK
Removes i3 hack.
2015-08-27 21:09:12 +02:00
Dave Davenport
d9a9d2489a Add separator color and style option. 2015-08-26 18:11:53 +02:00
Thomas Adam
d676232846 NET_WM_DESKTOP: don't assume desktop zero is invalid
When checking the client's _NET_WM_DESKTOP state, if a client has a desktop
set, allow for desktop zero being valid; no need to add one to the result.
The specification allows for desktop zero.
2015-08-24 20:08:25 +02:00
QC
c170eae8c8 Issue: #207 add generic -filter mode. 2015-08-20 21:42:53 +02:00
Dave Davenport
1ca7141621 Add quick solution for #202, expose line-margin setting. 2015-08-04 09:42:14 +02:00
QC
1590151c46 -row -t -selected-row 2015-08-02 21:25:02 +02:00
QC
dbf992d756 Fix -l as alias for -lines (in dmenu mode) rename -l to -row 2015-08-02 21:24:07 +02:00
QC
8ca3c276c9 Change -i mode to match dmenu. Bug #200 2015-08-02 16:44:03 +02:00
QC
c97d2979e5 Bug #200, add '-b' method. 2015-08-02 15:50:06 +02:00
Dave Davenport
69c75971f3 Print error to stderr when fclose fails. 2015-07-31 10:21:32 +02:00
Dave Davenport
f8ed184415 Fix for #199, properly reset pointer to NULL after free'ing 2015-07-30 18:18:37 +02:00
QC
979a63d242 Fix not clearing of pointer after free-ing it. 2015-07-27 23:24:38 +02:00
Dave Davenport
fa5c36835d Allow escape to quit in no-custom mode 2015-07-23 18:19:20 +02:00
Dave Davenport
b3bc620211 Fix window matching. 2015-07-06 12:30:15 +02:00
QC
f88cfacfde Replace all qsorts. 2015-07-05 09:47:55 +02:00
Dave Davenport
98b8e583cb Make fuzzy matching available everywhere: #133 (-fuzzy) 2015-07-01 09:12:22 +02:00
Dave Davenport
c7ed92e40c Use tokenmatch in window_match. 2015-07-01 09:02:25 +02:00
QC
aaf9e1e345 Free in right order 2015-06-30 21:18:45 +02:00
Dave Davenport
30743d1789 Move fuzzy_token_match to where it can be reused. 2015-06-28 13:53:37 +02:00
QC
67089677b5 Fix naming 2015-06-27 22:38:06 +02:00
Dave Davenport
9977d7ef69 Fix fuzzy match to continue at next character. #133 2015-06-25 02:54:00 +02:00
QC
bcbb64f615 Don't do unneeded compares 2015-06-24 21:28:13 +02:00
QC
db1331ed66 Test implementation for #133. 2015-06-23 21:22:38 +02:00
QC
ce73f468ca Possible fix for #179 2015-06-20 15:11:30 +02:00
Dave Davenport
6c9a493b56 [SSH] Ignore comments in the Host: line.
Fixes #178
2015-06-14 14:37:53 +02:00
QC
bd9f4ebf07 More dmenu fixes (shift -enter on custom) 2015-06-11 21:20:09 +02:00
QC
a811011a1d Fix dmenu mode. 2015-06-11 21:07:25 +02:00
QC
d11c61cef1 Fixes #176 add mode that user expects. 2015-06-11 20:38:48 +02:00
Dave Davenport
1a188af2e9 Add markup support to error msg. 2015-06-08 23:23:33 +02:00
Qball Cow
00ffa9f148 Move comment to right place 2015-06-09 18:14:09 +02:00
Qball Cow
e5caaf9d1a Possible fix issue #175 2015-06-09 18:10:23 +02:00
QC
95beb58730 tiny cleanup 2015-06-05 23:08:02 +02:00
QC
a93aec02bd Add support for msg string with pango markup. 2015-05-23 20:06:06 +02:00
Qball Cow
09e4a64780 fix issue #165 2015-05-19 19:59:50 +02:00
QC
300234611d First fix for #164 2015-05-18 22:38:51 +02:00
QC
354ccdd94d Fix Issue #164 2015-05-16 13:58:09 +02:00
QC
14c50132c8 more small cleanups 2015-05-14 19:45:57 +02:00
QC
652a6ed7d2 Fix clang-tidy warnings. 2015-05-14 19:39:30 +02:00
Dave Davenport
22f35983c0 Add quote and escape string option. 2015-05-13 18:36:16 +02:00
Dave Davenport
8abf3335dc Remove silly test. 2015-05-12 21:59:51 +02:00
Dave Davenport
4d7b5a02d6 Cleanup and add d format 2015-05-11 23:20:34 +02:00
QC
9307a1668e Add -format option to dmenu. 2015-05-10 12:08:08 +02:00
QC
4d3b9e414d Small cleanup 2015-05-09 14:17:27 +02:00
Dave Davenport
89d2190f8e [#158] Patch implementing -only-match mode. 2015-05-07 21:07:15 +02:00
QC
13eee4571c Allow alt-1t/m9 be re-bound. 2015-05-05 19:30:43 +02:00
QC
a32bd61fea DMENU special return value starts at 10. Issue: #154 2015-05-04 10:37:50 +02:00
QC
8d4e1ee8fa Rasi patch, allowing special keys, modifying return value.
In dmenu pressing alt-[1-9 will return the selected entry and set the return value to the
        pressed number.
2015-05-03 13:04:03 +02:00
QC
d2eeffe2d9 Issue: #131 Prepend keybinding names with "kb-" 2015-05-02 12:01:06 +02:00
QC
61fc9e8310 Finish adding all different keybindings. Issue: #131 2015-05-02 11:53:27 +02:00
QC
99118420ea Support Levenshtein in dmenu.i #149 2015-04-16 21:13:45 +02:00
Dave Davenport
f64395e4e9 Remove unused code 2015-04-15 22:41:50 +02:00
QC
a38ddb3b06 Fix space. 2015-04-14 22:12:21 +02:00
QC
c9707b4c1b Leave out unmap hack for now. 2015-04-05 14:52:01 +02:00
QC
9b415e60a0 Fix crasher with fixed-lines off and 0 visible rows 2015-04-05 13:36:39 +02:00
QC
d6ced176d4 Add ranges for urgent active in dmenu mode. 2015-04-05 11:53:08 +02:00
QC
71cfb6d553 Allow urgent/active color to be set, add dmenu option -u/-a to highlight row. 2015-04-04 11:10:41 +02:00
QC
f2c4aff37c Add active/urgent color. 2015-04-03 18:40:07 +02:00