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