Commit graph

484 commits

Author SHA1 Message Date
Dave Davenport
1e0fb75189 Filter scanning same directory twice for same desktop files. 2017-06-02 18:13:11 +02:00
Dave Davenport
b3b01b1973 (re-implement) Do lazy loading for icons.
- Fetch only when requested
 - Fetch the right size, instead of estimation.
2017-06-02 17:36:06 +02:00
Dave Davenport
2578817db7 Don´t always fetch icon size 32, but estimated based on character height 2017-06-02 17:03:45 +02:00
Quentin Glidic
a6f51393d3
ssh: Add startup notification support
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-06-02 14:57:28 +02:00
Quentin Glidic
3f8af0d7c5
run: Add startup notification support
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-06-02 14:57:19 +02:00
Quentin Glidic
0644f99b64
drun: Add startup notification support
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-06-02 14:56:59 +02:00
Quentin Glidic
22fbaa0b50
drun: Keep the app_id around
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-06-02 14:55:36 +02:00
Quentin Glidic
51d34b662e
helper: Add API to support startup notification
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-06-02 14:54:21 +02:00
Quentin Glidic
6fefbbf8ab
drun: Keep the icon name around
We don’t need to use it as the “we’ve search already” value since we
know just look icons up in a single pass.

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-06-02 14:28:24 +02:00
Quentin Glidic
dc1417ba72
drun: Fix thread function signature
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-06-02 14:27:47 +02:00
Quentin Glidic
0daab1844e
helper: Add execute helper
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-06-02 12:50:32 +02:00
Quentin Glidic
46dee2671d
x11-helper: Rename xcb.c
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-06-01 00:12:58 +02:00
Quentin Glidic
ac8868f3b1
Indent icon code rework
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-05-31 20:21:58 +02:00
Dave Davenport
4d8784cf85 Port fixes from icon-cleanup branch.
- Thread for fetching icons for drun.
- Fixed placing of icons instead of adding place-holder token that can
  mis-render.
- Give textbox TB_ICON flag.
2017-05-31 11:05:45 +02:00
Quentin Glidic
8a6bdd827d
config: Add a setting to disable icons loading
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-05-30 19:08:33 +02:00
Dave Davenport
f3b4af1da0
window: Add icons support (quick and dirty) 2017-05-30 19:08:20 +02:00
Quentin Glidic
03eb4a3abb
drun: Implement icon support
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-05-30 19:01:01 +02:00
Aaron Ash
43053cdfc3
view: Add icon (basic) support 2017-05-30 19:00:57 +02:00
Quentin Glidic
a9199e3e17
Use libnkutils for keybindings
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-05-29 16:51:06 +02:00
Dave Davenport
f1261e181c Revert changes to script. 2017-05-23 17:19:04 +02:00
Dave Davenport
dca5caaa47 [Theme] Add small caps options (not working?) 2017-05-22 09:24:05 +02:00
Dave Davenport
67e38cde40 Fix some clang compiler warnings 2017-05-11 18:30:44 +02:00
Dave Davenport
ce4b1b23b4 Re-Indent code 2017-04-27 22:59:14 +02:00
Dave Davenport
01159b29f0 [Mode] Make the name field a pointer instead of a fixed 32char array. 2017-04-21 09:37:03 +02:00
Dave Davenport
5edc739848 Try to improve error message a bit (damn g_warning replace) 2017-04-20 09:24:09 +02:00
Dave Davenport
9bd17ddfd0 [RUN] Report the expanded PATH entry in debug output 2017-04-19 10:24:09 +02:00
Dave Davenport
dc2de0d042 [RUN] Expand the paths found in /home/mkoedam/.local/bin/:/opt/mpd/bin/:/home/mkoedam/.local/bin/:/opt/mpd/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games 2017-04-19 09:26:35 +02:00
Quentin Glidic
9a68b22009
Fix licenses headers
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-04-15 12:32:05 +02:00
Quentin Glidic
cfbe4027bc
Consolidate logging
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2017-04-15 12:07:29 +02:00
Dave Davenport
ba9e1fb92a Switch to g_{debug,warning} instead of g_log 2017-04-15 11:37:50 +02:00
Dave Davenport
a754815d14 Add converter back for old theme format. 2017-04-02 12:32:11 +02:00
Dave Davenport
563dc8dafd Fix alternate separator 2017-03-31 20:57:42 +02:00
Dave Davenport
b4c9bad267 Document '/' as separator and add to combi mode. 2017-03-31 15:27:13 +02:00
Dave Davenport
9ae1344d56 Improve error message when called with -show 2017-03-31 13:47:44 +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
70e3b189df Remove entry from history once deleted. #579 2017-03-21 17:19:05 +01:00
Dave Davenport
12cbb0368d #579 Fix delete cached entry. 2017-03-20 12:37:52 +01:00
Dave Davenport
50477a0b99 [Keys] Cleanup view a bit. 2017-03-17 14:07:11 +01:00
Dave Davenport
dfeb5940d4 Reduce scope and unneeded check. 2017-03-17 13:33:47 +01:00
Dave Davenport
000c113925 [DRUN] Get categories on initial parsing from keyfile, not on matching (is slow-ish) 2017-03-14 17:34:41 +01:00
Dave Davenport
13bac230a2 [SSH] Fix missing parameter documentation 2017-03-11 13:40:05 +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
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
3f4d58ef53 Indent code. 2017-03-04 19:41:06 +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
ed7cfcb6aa Add openbox to the naughty list 2017-02-18 10:47:53 +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
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
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
7b3e0918cf Reduce amount of paths created 2017-02-06 23:45:46 +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
601a20aba5 Speedup drun by 10% by reducing number of reallocs. 2017-02-02 08:36:55 +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
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