Commit graph

351 commits

Author SHA1 Message Date
Dave Davenport
38fabb6b1b Issue #303: Create one pango context from xlib surface
- Create one pango context and set font options from main xlib surface
        - Set font type on global pango context.
        - Use CAIRO_OPERATOR_OVER for drawing text (otherwise subpixel rendering is not done).
2015-12-28 11:27:27 +01:00
Dave Davenport
97fa0cc61d Add option to set scrollbar width 2015-12-13 13:51:59 +01:00
Dave Davenport
f3c22c50e4 Add sorting switch: Issue: #298 2015-12-13 11:52:40 +01:00
Dave Davenport
8ed31cab7e Add option to dump color scheme. 2015-12-10 18:20:04 +01:00
Dave Davenport
98de9b554f Add screenshot keybinding. 2015-12-09 08:51:40 +01:00
Dave Davenport
0ff0f15264 Add test, remove whitespace 2015-12-08 08:39:18 +01:00
Dave Davenport
dbd7476054 __FUNCTION__ is gcc extension, use __func__ now. Fixes issue #288 2015-12-02 18:11:23 +01:00
Dave Davenport
e4c7fe8f1e Fix func. def in wrong header file. 2015-12-02 17:56:25 +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
Dave Davenport
544229d975 Issue #287 mark selected rows. 2015-11-30 14:05:39 +01:00
Dave Davenport
2da1207b7d Fix issue #271 expand path. 2015-11-27 13:01:25 +01:00
Dave Davenport
e196df01fa Do not support ModMasks, breaks to much stuff, This fixes #286 2015-11-26 20:30:51 +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
fa2bcd778c Fix for complete issue #273.
- Add complete handler.
2015-11-24 13:59:35 +01:00
Dave Davenport
bdeb57a2c4 Remove unused typedef 2015-11-24 13:42:20 +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
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
266ee5efb7 Hopefully fix for #268 2015-11-20 20:53:27 +01:00
Dave Davenport
922aa5f946 Remove old XIM/XIC from textbox structure. 2015-11-20 08:21:34 +01:00
Dave Davenport
aeaceb154a Add experimental regex support 2015-11-17 16:10:14 +01:00
Dave Davenport
b70421e75b Remove duplicate code. 2015-11-16 08:17:30 +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
12886ab0cb Add missing timing files. 2015-11-14 13:49:42 +01:00
Dave Davenport
80e873c8a3 Add threadpool support, add optional timings compile flag 2015-11-14 13:47:45 +01:00
Dave Davenport
45c8de9387 If threads is set to 0, try to autodetect number of threads. 2015-11-12 17:20:51 +01:00
Dave Davenport
0fe524d0cd Add threading support. 2015-11-12 00:18:43 +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
Qball Cow
aedd26aef4 Fix #258: Set fallback alternative color before trying to allocate it. 2015-11-04 12:03:59 +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
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
QC
cb9dd606aa Allow dpi to be set 2015-10-30 21:32:09 +01:00
QC
10292b08cb Fix: 250 Fixing message. 2015-10-26 20:13:15 +01:00
QC
de1f7a11aa Merge remote-tracking branch 'origin/Transparency' 2015-10-21 20:42:40 +02:00
Dave Davenport
bc2b532a51 Add dmenu options to -h 2015-10-21 18:58:01 +02:00
Qball Cow
a7c7cf8159 Add fake transparency 2015-10-20 18:41:45 +02:00
QC
93b6b83fb9 Try todo some validation of monitor size/padding in config sanity check. 2015-10-18 13:40:39 +02:00
QC
0818fbd68b Add fullscreen mode and fix some redrawing issues. 2015-10-16 20:51:37 +02:00
Dave Davenport
291d1ed16c Update rofi -h output 2015-10-16 08:42:01 +02:00
QC
fdc86399cf Revert "Remove levenshtein"
Adding help list.

This reverts commit 77cdc8d7c4.
2015-10-15 22:33:44 +02:00
Dave Davenport
cc6bf27ccb Merge branch 'master' of github:DaveDavenport/rofi 2015-10-11 13:43:32 +02:00
QC
2898eeda88 Cache colors. 2015-10-10 14:15:27 +02:00
QC
b0ceccb93e Use cairo for all drawing, also borders 2015-10-10 13:03:11 +02:00
Tom Hinton
a53061b890 Merge remote-tracking branch 'upstream/master' into fast-ascii-filtering
Conflicts:
	source/dialogs/dmenu.c
	source/helper.c
	source/rofi.c
2015-10-05 10:44:11 +01:00
QC
77cdc8d7c4 Remove levenshtein 2015-10-04 20:14:08 +02:00
Dave Davenport
6b039ac524 Add tokenize option and append * to glob. 2015-10-04 16:37:07 +02:00
QC
5de38cd755 Add glob version for testing. 2015-10-02 20:39:57 +02: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
Dave Davenport
2d167e21d7 Fix #237 add none style to separator style 2015-09-30 09:09:34 +02:00
Qball Cow
9b67838b56 Only cache successful run. (Thanks to Koppa nd daemoni) 2015-09-29 17:28:21 +02:00
QC
29360b20aa Parse name in textbox. 2015-09-28 21:41:58 +02:00
QC
838c838d31 Try to fix #234 2015-09-27 12:57:54 +02:00
QC
6061e046de Get color type. 2015-09-27 11:46:19 +02:00
QC
8f1f03e6d2 Use cairo to do drawing. 2015-09-26 20:34:34 +02:00
QC
29e81fdb07 Make wrap an extra option for textbox 2015-09-23 20:44:24 +02:00
Dave Davenport
5cc695e186 Add markup flag for dmenu. 2015-09-22 22:23:52 +02:00
QC
108c16e0d4 Default disable levenshtein 2015-09-20 10:32:49 +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
4c970fe4da Properly resize content when window is resized. 2015-09-17 17:32:51 +02:00
Dave Davenport
a5c1eb1f1b Allow window mode to be disabled 2015-09-14 08:57:10 +02:00
Dave Davenport
f443c56487 In normal mode set normal window window type hint. 2015-09-10 19:24:23 +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
QC
e10aa09f74 Add hide scrollbar option. 2015-09-04 21:08:23 +02:00
Dave Davenport
5031cdd228 Calculate size of handle for scrollbar better. 2015-09-04 14:52:57 +02:00
Dave Davenport
72ef9c014f Document doc, fix small drawing things in scrollbar 2015-09-04 08:42:09 +02:00
Dave Davenport
380697b895 scrollbar: Handle mouse clicks, fix width, remove border. 2015-09-04 08:26:57 +02:00
Dave Davenport
4bbbecd17d Add scrollbar source code. 2015-09-03 22:12:20 +02:00
Dave Davenport
d16bf26bf8 Add initial scrollbar 2015-09-03 18:23:00 +02:00
Dave Davenport
2c45c02c7f Small cleanup. 2015-09-03 08:20:08 +02:00
QC
27f5c7413e cleanup. 2015-09-02 12:29:28 +02:00
QC
9d7518c7ab Add 10 more custom key binding. Issue: #218 2015-09-02 10:05:02 +02:00
Dave Davenport
29d0c109cb Add WINDOW_TYPE_DESKTOP to ignore list.
Issue: #215
2015-08-31 08:00:23 +02:00
Dave Davenport
5c618681c4 Add dialogs.h header. 2015-08-31 07:57:29 +02:00
QC
89dcb5be1e Remove unused function 2015-08-29 11:57:04 +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
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
77e5541ba5 Bug #200 implement -m mode 2015-08-02 15:45:52 +02:00
Dave Davenport
dffc27e5aa Try to make things more robust, e.g. try to recover before giving up. 2015-07-31 12:23:41 +02:00
Dave Davenport
8d6a78939c Small cleanup + fail more gracefull here and there 2015-07-30 08:57:09 +02:00
Dave Davenport
c68ab67dd8 Add some comments and cleanups, allow reeloading of keybindings at run-time 2015-07-29 09:37:40 +02:00
Dave Davenport
93c01ccbd5 Add new event handling 2015-07-28 22:22:18 +02:00
Qball Cow
2bbd589f0d Add prefix to header guard. #191 2015-07-27 10:17:12 +02:00
Dave Davenport
8104997e6f Bug #191 rename header guard to not use reserved macro name. 2015-07-27 09:22:21 +02:00
Dave Davenport
98b8e583cb Make fuzzy matching available everywhere: #133 (-fuzzy) 2015-07-01 09:12:22 +02:00
Dave Davenport
30743d1789 Move fuzzy_token_match to where it can be reused. 2015-06-28 13:53:37 +02:00
Dave Davenport
90eb18b3c0 Make 'all?' keys user configurable.
Fixes #66
2015-06-15 09:01:22 +02:00
Dave Davenport
25633ca4dc Issue #66, allow keybindings for navigation to be changed.
up,down,left,right
2015-06-15 08:48:13 +02:00
Dave Davenport
1a188af2e9 Add markup support to error msg. 2015-06-08 23:23:33 +02:00
Qball Cow
e5caaf9d1a Possible fix issue #175 2015-06-09 18:10:23 +02:00
QC
a93aec02bd Add support for msg string with pango markup. 2015-05-23 20:06:06 +02:00
Dave Davenport
0e7009bcad Test fix for issue #167 2015-05-21 23:53:28 +02:00
Qball Cow
09e4a64780 fix issue #165 2015-05-19 19:59:50 +02:00
QC
354ccdd94d Fix Issue #164 2015-05-16 13:58:09 +02:00
QC
9307a1668e Add -format option to dmenu. 2015-05-10 12:08:08 +02:00
QC
13eee4571c Allow alt-1t/m9 be re-bound. 2015-05-05 19:30:43 +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
9492fe7611 Cleanup keyb.h file. 2015-05-02 12:22:31 +02:00
QC
61fc9e8310 Finish adding all different keybindings. Issue: #131 2015-05-02 11:53:27 +02:00
Dave Davenport
e8d6e8f829 Move more items to keybinding system. 2015-05-01 08:16:52 +02:00
QC
073836f142 First version of keybindings (#131) 2015-04-30 22:46:51 +02:00
QC
09d2be260b Allow keybindings to be set. 2015-04-30 22:42:04 +02:00
Dave Davenport
a70404f128 First part of infrastructure for Issue: #131 customizable keybindings. 2015-04-30 21:52:30 +02:00
Qball Cow
bee103aea8 Improvement of situation for Issue #153. 2015-04-30 17:13:17 +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
c1a8735e24 Re-enable background/foreground. Make theming method an option. 2015-04-11 12:04:14 +02:00
QC
2590ecf7e5 ADd new coloring scheme. 2015-04-06 17:13:26 +02:00
QC
39518b0e15 Add more user-colors. 2015-04-06 15:23:58 +02:00
Jason Pleau
34e578ef86 use '\033' instead of '\e' for output-formatting
'\e' is a GNU shortcut for \033. Also gcc complained (warning) that '\e'
was a non-ISO standard. Less warnings, the prettier :)
2015-04-05 17:40:43 -04:00
QC
91fcc76cb2 Help users that do not pass the read-the-manual stage. 2015-04-05 22:29:26 +02:00
QC
9b415e60a0 Fix crasher with fixed-lines off and 0 visible rows 2015-04-05 13:36:39 +02:00
QC
f2c4aff37c Add active/urgent color. 2015-04-03 18:40:07 +02:00
Dave Davenport
0ab7aa4bba Add italic support and use it for windows that demand attention (working?) 2015-04-02 22:23:17 +02:00
Qball Cow
2b340a4762 Update manpage. 2015-04-01 14:49:27 +02:00
Dave Davenport
0d87cf12a3 Add combi viewer, where (selected) modi can be combined.
- Add active window highlighter.
2015-03-31 22:45:02 +02:00
QC
9ff5a615e9 Add combi viewer.
Use by adding combi to the list of enabled modi.
2015-03-30 20:12:22 +02:00
QC
55160c6eff Issue: #137, Parse /etc/hosts file. 2015-03-29 12:27:00 +02:00
QC
888260b06b Small cleanup 2015-03-27 20:50:48 +01:00
QC
b21368c005 OO-ify the Switchers. 2015-03-27 20:28:53 +01:00
Dave Davenport
f52b697dd4 Remove double names. 2015-03-25 08:36:19 +01:00
Dave Davenport
9530f195d1 Better way of getting font height. Use ascent and descent. 2015-03-19 19:58:47 +01:00
QC
743f1919cd Autoscale when drawing the number of columns and col width. 2015-03-18 20:56:50 +01:00
QC
4dd0a85fc4 Update header. 2015-03-17 20:05:37 +01:00
Dave Davenport
4fad02225e Cleanup argc/argv lugging around. 2015-03-11 18:32:37 +01:00
Dave Davenport
c89a272d4d Add number mode for dmenu (Request from Taharqa)
* option -i.
2015-03-11 18:07:54 +01:00
Qball Cow
3b21f1dac8 Update copyright notice 2015-02-28 18:11:46 +01:00
Dave Davenport
a83a06a95c Re-add zeltak mode. 2015-02-24 17:35:09 +01:00
Dave Davenport
da8902ac88 Replace signal by sigaction 2015-02-19 13:22:10 +01:00
Dave Davenport
8b50e94fea Make compiler more picky.
Add -Werror=missing-prototypes
2015-02-18 08:53:38 +01:00
Qball Cow
3b18c28792 Remove unused function. 2015-02-17 14:27:12 +01:00
Dave Davenport
a534a0f244 Rewrite of the configuration parsing, no longer duplicating options between Xrm and CMD.
* NEEDS TESTING.
2015-02-17 10:31:59 +01:00
QC
dee0bfb821 Fix #128: Better handling of keybindings and remove deprecated launching.
See manpage.
2015-02-15 21:15:16 +01:00
QC
b6652a0221 Small move 2015-02-14 19:42:04 +01:00
QC
c760432a6c Moving files around, dialogs in dialog directory. 2015-02-12 22:26:28 +01:00
Dave Davenport
605fe4911c Refactor code, split out window switcher code. 2015-02-12 22:16:32 +01:00