summaryrefslogtreecommitdiff
path: root/config.h
blob: 6c13e86bcd9fb10091cc11931a54be87d3e81954 (plain)
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 },
};