Commit graph

431 commits

Author SHA1 Message Date
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
Dave Davenport
c0cb4df860 Small tweak to print 2015-07-29 18:16:06 +02:00
Dave Davenport
5cea640a34 Obey quiet a bit better, update manpage with signals 2015-07-29 17:55:26 +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
QC
681bd5bcbb Updates 2015-07-28 23:08:12 +02:00
Dave Davenport
93c01ccbd5 Add new event handling 2015-07-28 22:22:18 +02:00
QC
b3a77589eb Fix makefile indent 2015-07-28 22:14:21 +02:00