Commit graph

737 commits

Author SHA1 Message Date
Dave Davenport
59635919ea Add selection indicator to dmenu mode. 2016-07-18 23:49:26 +02:00
Dave Davenport
b31cf1d32f On rofi -show without argument, run de first one from the modi list. 2016-07-13 08:55:40 +02:00
Dave Davenport
9f25a975ae Fix windowcd command and allow custom Window string format 2016-06-28 23:07:48 +02:00
Dave Davenport
a7922cc07c Remove xlib dependency, add xcb-util-xrm. 2016-06-25 14:01:41 +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
e966fbe583 Terminate rofi if switcher is not found 2016-06-07 09:58:48 +02:00
Dave Davenport
9ff7a26c7e Some indenting fixes 2016-06-05 20:41:10 +02:00
Dave Davenport
01ce909c97 Update some headers. 2016-06-01 07:34:41 +02:00
Quentin Glidic
56ed9e6a04 gitmodules: Update libgwater
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-05-30 18:25:40 +02:00
Dave Davenport
0fb7258470 Fix missing equals 2016-05-30 10:27:58 +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
5b3239a748 Fix: #409 Use display-name for prompt. 2016-05-23 08:19:36 +02:00
Dave Davenport
bd412b9975 Grab mouse pointer with keyboard. 2016-05-09 08:47:28 +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
Dave Davenport
44481cdb40 Small cleanups, fix worker error dialog. 2016-04-20 08:08:18 +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
bf51983150 Fix possible macro expansion problem.
As indicated by llvm analysis passes.
2016-04-05 21:26:21 +02:00
Quentin Glidic
29f6823cf9 rofi: Only display GIT_VERSION if available
It now contains the latest tag, so we have all the relevant information.

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-04-05 16:57:52 +02:00
Dave Davenport
3397ae1150 Remove unused -quiet commandline option.
This option, with the removal of daemon mode, no longer had any purpose.
2016-04-02 22:11:38 +02:00
Dave Davenport
541f5b1fc9 Fixes issue #370: Move dmenu option into dmenu. 2016-04-02 10:39:02 +02:00
Dave Davenport
d3350afbed Use SYSCONFDIR 2016-04-01 19:51:24 +02:00
Dave Davenport
53242dab7d Merge branch 'master' of github:DaveDavenport/rofi 2016-04-01 18:03:32 +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
Quentin Glidic
13601fb892 rofi: Fix g_file_test calls
G_FILE_TEST_EXISTS | G_FILE_TEST_IS_REGULAR will return TRUE even for
directory.

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-04-01 09:33:58 +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
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
9549dfdd3e Terminate mainloop after error message when trying to start it in daemon mode. 2016-03-13 20:11:39 +01:00
Dave Davenport
545c423b61 Tried to fix strlen on NULL 2016-03-12 14:00:19 +01:00
Dave Davenport
1d2625cbb8 Read default config from /etc/rofi.conf if exists. 2016-03-07 17:52:29 +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
fd707acac5 Move keymap updating into right x11 event loop handler. 2016-03-04 08:15:12 +01:00
Dave Davenport
9d7d8a9aeb Be able to run without compose table. 2016-03-04 08:02:54 +01:00
Dave Davenport
fc75a204d5 Check table exists. 2016-03-04 00:22:04 +01:00
Dave Davenport
fe8aa55fdc Correctly check error 2016-03-03 16:02:14 +01:00
Dave Davenport
ba0b2379a6 Check if connection was succesfull 2016-03-03 15:59:31 +01:00
Dave Davenport
06d25c0ca2 Quit on error msg fail. 2016-03-03 08:21:28 +01:00
Dave Davenport
3d2f0a07db Quit when failing to create dialog. 2016-03-03 08:11:48 +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
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
Dave Davenport
c519b6a65a Fix free'ing of ewmh calls, remove old X codes 2016-02-28 11:57:52 +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
93cb9ee7eb Remove opening of display. 2016-02-28 01:08:12 +01:00
Dave Davenport
c261aa8e89 change startup notification to xcb 2016-02-28 00:15:42 +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
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
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
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
990914d20f rofi: Drop daemon mode
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2016-02-23 12:15: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
Dave Davenport
9121732e36 Cleanups. 2016-02-19 21:16:35 +01:00
Dave Davenport
758d155a20 Fixing. 2016-02-19 20:08:14 +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
63be750c5b Quick work-around fix for rofi blocking X on unavailable monitor 2016-02-17 00:00:41 +01:00
Dave Davenport
11c347fad8 Use accessors in RofiView to get modi's and num modi for sidebar. 2016-02-11 08:41:19 +01:00
Dave Davenport
3b007b7eff Pull StartupNotificaiton Display event handling into the main event loop 2016-02-11 08:22:48 +01:00
Dave Davenport
fdb4c99456 Remove normal window global. 2016-02-10 19:40:19 +01:00
Dave Davenport
5d430824b3 Doxygen updates. 2016-02-08 18:16:16 +01:00
Dave Davenport
5a86ae5c99 Cleanups 2016-02-08 09:03:11 +01:00
Dave Davenport
ad932c8fd0 More cleanups 2016-02-07 20:38:34 +01:00
Dave Davenport
7c8605764b Remove unneeded redraws 2016-02-07 12:43:07 +01:00
Dave Davenport
69b3a360fc Continue cleanup 2016-02-07 12:31:17 +01:00
Dave Davenport
adfc83f07d Restructuring, my biggest joy. 2016-02-06 14:27:36 +01:00
Dave Davenport
73169af793 Remove no longer needed structure. 2016-02-06 13:40:25 +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
bb6ae77ba5 Fix error dialog no longer closing on keypress 2016-02-03 18:28:58 +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
3b723deb90 Re-enable blinking 2016-01-29 21:56:52 +01:00
Dave Davenport
a8a8ba8cd2 Only remove source if exists 2016-01-27 23:49:56 +01:00
Dave Davenport
91780b71db Small fix. 2016-01-27 23:39:52 +01:00
Dave Davenport
eab4e1438f Make dmenu use glib mainloop. 2016-01-26 08:38:07 +01:00
Dave Davenport
3da03c068d Fix comment add todo. 2016-01-26 08:38:07 +01:00
Dave Davenport
f42258f60a Merge remote-tracking branch 'origin/master' into glib-loop 2016-01-25 20:46:11 +01:00
Dave Davenport
e416753cb3 On empty input, return CUSTOM_INPUT so to distinquish between cancel and empty.
Fix #322
2016-01-25 08:58:56 +01:00
Dave Davenport
384a918d28 Make error dialog work correctly by creating lokal main loop (aka GtkDialog) 2016-01-22 18:18:26 +01:00
Dave Davenport
9a363b3ecb Fix switchign between switchers. 2016-01-20 23:25:50 +01:00
Dave Davenport
1e57dd40e1 Try to force propper showing of rofi. 2016-01-20 23:08:19 +01:00
Dave Davenport
984257fffc Very dirty first attempt at glib mainloop in switcher (not yet dmenu.) 2016-01-20 20:57:26 +01:00
Dave Davenport
4b7a29a26f Take SardemFF7 feedback on putting g_source_[attach|add_callback] inside factory. 2016-01-20 19:12:17 +01:00
Dave Davenport
874f587021 Merge remote-tracking branch 'origin/master' into glib-loop 2016-01-20 19:11:00 +01:00
Dave Davenport
784244a35b Remove unused timeout function. 2016-01-20 19:10:19 +01:00
Dave Davenport
d9ac267960 Merge remote-tracking branch 'origin/master' into glib-loop 2016-01-20 18:57:41 +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
70c1012e91 Bind the right signal (int not term) 2016-01-19 08:10:17 +01:00
Dave Davenport
42ee408d0f Move X11EventSource into separate file. 2016-01-18 22:02:07 +01:00
Dave Davenport
6692f36423 SardemF77 input. 2016-01-18 21:43:33 +01:00
Dave Davenport
80a6aa4549 Test a first glib mainloop. 2016-01-18 20:51:35 +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
b59552003e More doxygen sugar 2016-01-07 13:32:33 +01:00
Dave Davenport
70dd6e2cef Replace code we should never hit by an assert, as it should be. 2016-01-05 21:46:05 +01:00
Dave Davenport
d661a515f0 Make levenshtein sort utf8 aware and obey case sensitive setting.
- Add tests.
        - Use Glibs unichar for comparison.
2016-01-04 17:18:49 +01:00
Dave Davenport
41bd981b38 Initialize Xrm only once. 2016-01-04 07:59:30 +01:00
Jasper Lievisse Adriaanse
b2bc07e51d Fix a crash due to overlapping arguments of memcpy(3).
As the use of memcpy(3) on overlapping memory regions is strictly undefined,
OpenBSD's memcpy(3) triggers an abort in such cases.
2016-01-03 21:20:24 +01:00
Jasper Lievisse Adriaanse
043a67d062 Workaround lack of sigwaitinfo() on OpenBSD. 2016-01-03 20:49:13 +01:00
Dave Davenport
bd3d472bec Add optional config file that overrides local Xresources
Rofi will look at XDG_CONFIG_USER_DIR/rofi/config and load this after the Xresources db on DISPLAY.
This can be overridden using the -config commandline option.
The file should be in the same format as the Xresources file.
2016-01-03 13:30:43 +01:00
Dave Davenport
5a3c202423 Update copyright 2016-01-01 00:27:00 +01:00
Dave Davenport
745f9f3c62 Add screenshot test 2015-12-31 21:55:15 +01:00
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
8b82787df6 Fix possible issue with uninitialized data 2015-12-21 23:14:56 +01:00
Dave Davenport
6760453d80 Reduce scope of index variable 2015-12-21 20:27:20 +01:00
Dave Davenport
06f9fee3f8 Add indicator for sorting/case sensitive. 2015-12-14 21:02:36 +01:00
Dave Davenport
2d354b3b3f Re-indent 2015-12-13 19:21:06 +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
bae5427913 Add option to output to specific file. 2015-12-10 20:57:43 +01:00
Dave Davenport
8ed31cab7e Add option to dump color scheme. 2015-12-10 18:20:04 +01:00
Dave Davenport
bb39372dd3 Remove : from filename, it makes scp stupid 2015-12-10 18:00:26 +01:00
Martijn Koedam
61738f881f Indent + ChangeLog 2015-12-09 08:58:24 +01:00
Dave Davenport
98de9b554f Add screenshot keybinding. 2015-12-09 08:51:40 +01:00
Dave Davenport
c4f3cbd2b1 Tweak selected row color. #293 2015-12-04 23:57:08 +01:00
Dave Davenport
273d09ba1a Fix crasher on empty list 2015-12-04 22:01:32 +01:00
Dave Davenport
d2d95d2d4b Get the right next position from line map. 2015-12-04 21:53:18 +01:00
Dave Davenport
f3897b2a60 Fake background should only be done once every run.
Not on every re-run, as you will capture old rofi window.
2015-11-30 10:15:53 +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
cbba58914f Some cleanups and re-ordering of parameters to be consistent. 2015-11-23 22:15:27 +01:00
Qball Cow
596c92c814 Only add modmask if not numlock. 2015-11-23 14:10:07 +01:00
Dave Davenport
65dd080154 Undo last commit, seems to be unneeded 2015-11-22 21:10:39 +01:00
Dave Davenport
5e05472619 Set LC_CTYPE and LC_COLLATE instead of LC_ALL 2015-11-22 20:55:48 +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
Sebastian Reuße
77617a97ec Initialize locale upon startup.
It seems that Xlib input contexts assume a C locale when the locale
hasn’t been initialized from the environment before the input context
is created. Inter alia, this will lead to Xlib reading the .XCompose
definition file as ISO-8859-1, which will result in mojibake when
composing characters in a UTF-8 environment (cf. #268).
2015-11-22 15:41:56 +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
66bd837c9e Second cleanup in the fix to #268 2015-11-20 22:00:37 +01:00
Dave Davenport
266ee5efb7 Hopefully fix for #268 2015-11-20 20:53:27 +01:00
Qball Cow
1bd231bc3d Fix issue #275: don't try to do move cursor when nothing is shown. 2015-11-20 11:43:22 +01:00
Dave Davenport
ca5ea414c8 Issue #268 Repair combined key input 'e --> é 2015-11-20 08:19:48 +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
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
64eb7851e1 Small cleanup 2015-11-14 19:52:15 +01:00
Dave Davenport
56e85d0f5a Cleanup. 2015-11-14 19:42:43 +01:00
Dave Davenport
b9d1fe6635 Small updates 2015-11-14 18:57:21 +01:00
Dave Davenport
80e873c8a3 Add threadpool support, add optional timings compile flag 2015-11-14 13:47:45 +01:00
Qball Cow
c7dcb4821a Use getdelim instead of custom fgets function. 2015-11-12 14:15:33 +01:00
Dave Davenport
880f8731be Fix crasher on small lists.. we need atleast 1 thread to do work! 2015-11-11 22:46:01 +01:00
Dave Davenport
0fe524d0cd Add threading support. 2015-11-12 00:18:43 +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
6f404ddc8e Initial import desktop file runner. 2015-11-03 08:31:38 +01:00
Dave Davenport
d01afc5303 Add xdg-terminal to list 2015-11-01 12:28:55 +01:00
Dave Davenport
46f9073f7e Fix #251 : Don't iterate over nil list. 2015-10-29 21:30:03 +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
Dave Davenport
d21ba860f0 Add main application options to -h 2015-10-21 09:42:55 +02:00
Qball Cow
b4880b3601 Small tweak. 2015-10-20 18:58:03 +02:00
Qball Cow
f52e73a4f2 Only store the monitor we are currently displayed on 2015-10-20 18:51:29 +02:00
Qball Cow
a7c7cf8159 Add fake transparency 2015-10-20 18:41:45 +02:00
Dave Davenport
64cb4c781c Fix some compiler warnings 2015-10-19 09:23:06 +02:00
QC
683632c36c Some cleanups 2015-10-18 19:02:19 +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
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
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
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
Dave Davenport
2d167e21d7 Fix #237 add none style to separator style 2015-09-30 09:09:34 +02:00
QC
29360b20aa Parse name in textbox. 2015-09-28 21:41:58 +02:00
Dave Davenport
1a7d77db6e Make row colors paint over background instead of replace. 2015-09-28 08:24:01 +02:00
QC
536fd9822c re-order 2015-09-27 13:26:18 +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
eba2170241 hmm 2015-09-26 21:17:30 +02:00
QC
e8328beb2d Fix small leak 2015-09-26 21:06:36 +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
fc2d65df0c Playing with atom 2015-09-20 11:45:28 +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
4c970fe4da Properly resize content when window is resized. 2015-09-17 17:32:51 +02:00
QC
558bb38630 Fix normal mode keyboard grab. 2015-09-16 21:01:40 +02:00
Dave Davenport
ae043d5246 Allow dragging scrollbar. 2015-09-14 18:14:01 +02:00
Dave Davenport
a5c1eb1f1b Allow window mode to be disabled 2015-09-14 08:57:10 +02:00
QC
3374e1be9a Add support for startup-notification 2015-09-13 17:29:50 +02:00
QC
6b632cadbb Remove the keep line selected as it had weird side-effects when filtering 2015-09-13 16:28:54 +02:00
Dave Davenport
f443c56487 In normal mode set normal window window type hint. 2015-09-10 19:24:23 +02:00
QC
ec1f399e32 only allow normal mode in dmenu mode. 2015-09-09 20:01:19 +02:00
QC
1a23add631 Make redraw nice 2015-09-09 12:03:29 +02:00
QC
a0b491c962 React to focus in/out event 2015-09-09 12:00:28 +02:00
QC
93d10cc7c8 Add -normal-window mode for testing. 2015-09-09 11:47:51 +02:00
QC
79b1bdf2db Small cleanup 2015-09-08 22:58:34 +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
ca602383f1 Fix 2 small memory leaks. 2015-09-07 08:31:01 +02:00
QC
80d148707a Don't overlay sb on textboxes. 2015-09-06 10:12:09 +02:00
QC
355ad8fe70 small cleanup 2015-09-05 19:04:36 +02:00
QC
e10aa09f74 Add hide scrollbar option. 2015-09-04 21:08:23 +02:00
Dave Davenport
465d027c1e Merge pull request #222 from DaveDavenport/scrollbar
Scrollbar
2015-09-04 20:58:39 +02:00
Dave Davenport
67091fa1a7 First calc size then draw handle. 2015-09-04 17:58:30 +02:00
Dave Davenport
1e4721b275 Add linemargin between handle and rows. 2015-09-04 17:55:54 +02:00
Dave Davenport
5031cdd228 Calculate size of handle for scrollbar better. 2015-09-04 14:52:57 +02:00
Thorsten Wißmann
8f0bf673ce First compute cmd_list length before passing it
In switcher_run(), first compute the cmd_list and in particular its
length before passing it to menu().

In C the evaluation order of parameters to a function call is
unspecified, see e.g. http://en.cppreference.com/w/c/language/eval_order
for some background. So it might happen (and indeed did happen on my
machine) that cmd_list_length (of value 0) is pushed to the stack before
sw->get_data() sets the variable to the actual length.
2015-09-04 13:00:17 +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
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
9d7518c7ab Add 10 more custom key binding. Issue: #218 2015-09-02 10:05:02 +02:00
QC
583e824726 Indent 2015-09-01 20:44:47 +02:00
Dave Davenport
5c618681c4 Add dialogs.h header. 2015-08-31 07:57:29 +02:00
QC
6c37c0d989 Do not refilter on cursor move 2015-08-29 23:02:30 +02:00
QC
9c53d0121d Move sigchld into signal handling thread. 2015-08-29 15:19:23 +02:00
QC
89dcb5be1e Remove unused function 2015-08-29 11:57:04 +02:00
Dave Davenport
b07a9fc904 Fix 1 pixel offset separator 2015-08-27 07:36:24 +02:00
QC
2277501566 Cleanup drawing a bit. 2015-08-26 21:49:53 +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
34dee2a3eb Small moving and cleanups 2015-08-01 16:10: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
f8ed184415 Fix for #199, properly reset pointer to NULL after free'ing 2015-07-30 18:18:37 +02:00
Dave Davenport
8d6a78939c Small cleanup + fail more gracefull here and there 2015-07-30 08:57:09 +02:00