Commit graph

431 commits

Author SHA1 Message Date
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
QC
70f4f3d119 Remove HUP signal handler as it is incorrect. #193, to be re-added later 2015-07-27 21:20:06 +02:00
Dave Davenport
c25396d50b Use calculated top offset for arrow_down.
Fixes: #189
2015-07-24 17:00:59 +02:00
Dave Davenport
4d0e04614a Fix more mouse handling. (click on modi switcher) 2015-07-22 09:09:16 +02:00
QC
b75b60fa99 Remove debug printf 2015-07-19 10:11:55 +02:00
QC
09bc6017ee Fix double click in gui 2015-07-19 10:02:20 +02:00
Dave Davenport
d27b8a21e9 Undo commit of sorting changes, did not want to apply this yet. 2015-07-10 21:33:26 +02:00
QC
d549659f1e Use right modifier 2015-07-09 20:44:12 +02:00
QC
dc356d81c4 Use glib qsort as qsort is not portable. 2015-07-05 09:37:35 +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
Dave Davenport
e517001d39 Fix ellip. in entry box, wrap message box. 2015-06-03 09:04:29 +02:00
Dave Davenport
e8adc8042d Add a -no-config option to run rofi stock. 2015-05-31 09:46:39 +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
Dave Davenport
94c9303d89 Fix issue #160. Return selected line. 2015-05-06 08:03:10 +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
a974db887a Fix issue #153. 2015-05-02 12:42:36 +02:00
QC
61fc9e8310 Finish adding all different keybindings. Issue: #131 2015-05-02 11:53:27 +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
Dave Davenport
0b7fe775ca Support combined characters. 2015-04-23 22:14:31 +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
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
6f2c284f37 alias --help to -h/-help
Right now running rofi --help puts it in daemon mode, which can be
confusing for the user. Options in rofi use one dash instead of two, but
I believe an exception should be made for --help.
2015-04-05 17:38:22 -04:00
QC
91fcc76cb2 Help users that do not pass the read-the-manual stage. 2015-04-05 22:29:26 +02:00
QC
5e4cf732e6 Fix issue #142, pass -M <root> instead of full path. 2015-04-05 21:16:27 +02:00
QC
9b415e60a0 Fix crasher with fixed-lines off and 0 visible rows 2015-04-05 13:36:39 +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
888260b06b Small cleanup 2015-03-27 20:50:48 +01:00
QC
f5c8c3a55d Do not release keyboard when switching between switchers. 2015-03-27 20:33:25 +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
953fcf9ee8 Reduce work on redraws.
- Do not set text on each draw.
        - Do not move/resize on each draw.
        - Update pango layout set width to set when only needed, fix bug in shrinking on autosize.
2015-03-23 08:56:55 +01:00
QC
7c6699169e Tweak layout a bit 2015-03-22 12:56:26 +01:00
QC
b36452cc40 Fix padding switcher boxes to match columns 2015-03-21 19:23:55 +01:00
Dave Davenport
d290285a9f Fix rendering of boxes (margin and height) 2015-03-20 16:07:30 +01:00
QC
3df30438b1 Fix some font stuff. 2015-03-19 23:48:49 +01:00
Dave Davenport
21144aef17 Fix one-off pasting text in rofi. 2015-03-19 20:01:52 +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
QC
916e7356fe Try to fix mountains__ function. 2015-03-15 11:51:48 +01:00
Dave Davenport
4579a62b2d Add ctrl-(shift)-tab for switching modi. 2015-03-12 17:57:00 +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
QC
19e849d4e7 Tiny cleanup. 2015-03-07 17:22:25 +01:00
QC
7322819a1d No need to check nullptr on nonnull argument. 2015-03-06 20:38:11 +01:00
Dave Davenport
444d09b905 Update spell. 2015-03-05 20:26:52 +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
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
Dave Davenport
bda97e0849 Throw a warning when using old commandline arguments.
* Give error on -now, -rnow, -snow, -key, -skey, -rkey
        * Update manpage.
2015-02-16 09:07:05 +01:00
Georgios Bitzes
07df49a5af Fix bugs relating to hotkeys with modifiers
This commit makes the following changes:
1) Fix a bad check introduced in dee0bfb, which checks the modstate of the
event with the keysym of the switcher, not its modmask:

        modstate & ( switchers[i].keysym )

I think it was broken before as well, a binary AND between the two masks
will not tell much about whether they are equal. Instead, the masks are
now checked for equality after removing LockMask and NumlockMask.

2) Stop binding to AnyModifier when none is used. This conflicts with the case
in which we want to bind different modes to the same key, but different
modifiers.

for example, rofi -key-run F2 -key-ssh alt+F2 -key-window shift+F2

Binding F2 with AnyModifier would prevent alt+F2 and shift+F2 from being used.

3) Remove UngrabKey from x11_grab_key to make the above example possible.
4) Refactor search for any of the global keybindings into function locate_switcher.
2015-02-16 03:20:28 +02: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
Dave Davenport
7e1063803a Comments, compile order and Display argument. 2015-02-13 08:26:23 +01:00
QC
877c8051c6 Update copyright license. 2015-02-12 22:34:06 +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
Dave Davenport
9240a636d4 Fix stupid typo in previous commit, swapping columns/rows in positioning textboxes. 2015-02-12 07:55:23 +01:00
Dave Davenport
f74c8c1839 Cleanup. 2015-02-11 23:07:55 +01:00
Dave Davenport
a50219e903 Remove hmode. (Rather no implementation then a bad one.) 2015-02-10 07:42:40 +01:00
QC
e76db3fce3 Fix indenting. 2015-02-09 20:23:55 +01:00
QC
a69eb4e22c Simplify paste code. 2015-02-09 20:20:51 +01:00
QC
67cbd48c8b Add some comments, rename. 2015-02-09 20:05:30 +01:00
Dave Davenport
682907d340 Splitting over more files. 2015-02-09 19:35:51 +01:00
Dave Davenport
00e48fdcf7 fix tiny typo 2015-02-07 14:04:57 +01:00
Dave Davenport
fda5badeb6 Fix #125: Use shift-left/right for moving between switchers. 2015-02-06 08:45:21 +01:00
Dave Davenport
d9aef65ea7 Cleanups. 2015-02-04 09:37:34 +01:00
Dave Davenport
63fd534ba2 Move data around, constness, etc. 2015-02-03 08:21:59 +01:00
Dave Davenport
f86cf8988b Move stuff around. Try to reduce size rofi.c. 2015-02-03 08:00:33 +01:00
Dave Davenport
ca876feec6 Put i3 specific interaction code in separate file. 2015-02-02 14:49:19 +01:00
QC
d081b3e6f5 Fix #119. Fix dmenu mode when called with full path. 2015-02-01 20:15:21 +01:00
Dave Davenport
1a590aa8df Do not lock rofi when in daemon mode, only when showing. 2015-02-01 15:17:43 +01:00
Dave Davenport
5d4ab2e626 Always compile with Extra warnings. 2015-02-01 15:12:29 +01:00
Dave Davenport
1156c19cbf Fix compiler warnings about signed v.s. unsigned 2015-02-01 15:00:01 +01:00
Dave Davenport
382b93ae03 Fix LLVM compiler warnings. 2015-02-01 10:43:28 +01:00
Dave Davenport
97c11d7d85 Fix compiler warnings. (return value ftrunc/write) 2015-02-01 10:03:16 +01:00
QC
b74e6b791a Fix not grabbing keyboard, and add pid file to ensure one instance. 2015-01-31 18:23:17 +01:00
QC
983fff61b4 Removed some unused headers. 2015-01-30 21:55:31 +01:00
QC
6760d05d18 Small cleanup + comments. 2015-01-30 18:01:25 +01:00
Dave Davenport
f40e072802 Grab keyboard from X mainloop.
Should fix small 'jerk' when starting from keybinding and having to wait for keyboard grab.
2015-01-29 17:37:12 +01:00
QC
de9e78bb57 Fix issue #118.
unsigned long is %lu not %ul
2015-01-28 21:27:49 +01:00
Dave Davenport
b469674085 Add some comments. 2015-01-28 07:50:47 +01:00
QC
072baa9c02 Fix printing Warning about XID. 2015-01-26 22:43:57 +01:00
QC
460b82efc3 Fix unused variables. 2015-01-24 16:41:18 +01:00
Dave Davenport
3e419feecd Remove commented code, break out of loop in when possible. 2015-01-23 09:12:48 +01:00
Dave Davenport
9067b2602d Remove printf 2015-01-22 15:10:35 +01:00
Dave Davenport
673eee78a4 Better handling of non-truecolor colormaps. 2015-01-22 10:54:28 +01:00
Dave Davenport
647701fe78 Merge remote-tracking branch 'origin/master' into transbg 2015-01-22 08:48:45 +01:00