1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
/* modifier 0 means no modifier */
static Key searchbar_keys[] = {
/* modifier keyval function arg stop event */
{ 0, GDK_Escape, hidesearch, {0}, TRUE },
{ 0, GDK_Return, searchtext, {.b = TRUE}, TRUE },
{ GDK_SHIFT_MASK, GDK_Return, searchtext, {.b = FALSE}, TRUE },
{ GDK_SHIFT_MASK, GDK_Left, NULL, {0}, FALSE },
{ GDK_SHIFT_MASK, GDK_Right, NULL, {0}, FALSE },
};
static Key urlbar_keys[] = {
/* modifier keyval function arg stop event */
{ 0, GDK_Escape, hideurl, {0}, TRUE },
/* able to "chain" commands; by setting stop event to FALSE */
{ 0, GDK_Return, loaduri, {.v = NULL}, FALSE },
{ 0, GDK_Return, hideurl, {0}, TRUE },
{ GDK_SHIFT_MASK, GDK_Left, NULL, {0}, FALSE },
{ GDK_SHIFT_MASK, GDK_Right, NULL, {0}, FALSE },
};
static Key general_keys[] = {
/* modifier keyval function arg stop event */
{ GDK_CONTROL_MASK, GDK_P, print, {0}, TRUE },
{ GDK_CONTROL_MASK, GDK_p, clipboard, {.b = TRUE }, TRUE },
{ GDK_CONTROL_MASK, GDK_y, clipboard, {.b = FALSE}, TRUE },
{ GDK_CONTROL_MASK, GDK_R, reload, {.b = TRUE}, TRUE },
{ GDK_CONTROL_MASK, GDK_r, reload, {.b = FALSE}, TRUE },
{ GDK_CONTROL_MASK, GDK_b, NULL, {0}, TRUE },
{ GDK_CONTROL_MASK, GDK_g, showurl, {0}, TRUE },
{ GDK_CONTROL_MASK, GDK_slash, showsearch, {0}, TRUE },
{ GDK_CONTROL_MASK, GDK_plus, zoompage, {0}, TRUE },
{ GDK_CONTROL_MASK, GDK_minus, zoompage, {.f = -1.0 }, TRUE },
{ GDK_CONTROL_MASK, GDK_0, zoompage, {.f = +1.0 }, TRUE },
{ GDK_CONTROL_MASK, GDK_n, searchtext, {.b = TRUE}, TRUE },
{ GDK_CONTROL_MASK, GDK_N, searchtext, {.b = FALSE}, TRUE },
{ GDK_CONTROL_MASK, GDK_l, navigate, {.i = +1}, TRUE },
{ GDK_CONTROL_MASK, GDK_h, navigate, {.i = -1}, TRUE },
{ 0, GDK_Escape, stop, {0}, TRUE },
};
/* Sequence of Keys to match against a keypress */
static KeySet keysets[] = {
/* keyset (Key[]) numkeys focusedwidget/mode */
{ searchbar_keys, LENGTH(searchbar_keys), SEARCHBAR },
{ urlbar_keys, LENGTH(urlbar_keys), URLBAR },
{ general_keys, LENGTH(general_keys), NONE },
};
|