summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config.h1
-rw-r--r--surf.c41
2 files changed, 38 insertions, 4 deletions
diff --git a/config.h b/config.h
index 8f75a4d..b1c2cb5 100644
--- a/config.h
+++ b/config.h
@@ -202,6 +202,7 @@ static Key keys[] = {
{ MODKEY|GDK_SHIFT_MASK, GDK_KEY_b, toggle, { .i = ScrollBars } },
{ MODKEY|GDK_SHIFT_MASK, GDK_KEY_t, toggle, { .i = StrictTLS } },
{ MODKEY|GDK_SHIFT_MASK, GDK_KEY_m, toggle, { .i = Style } },
+ { MODKEY|GDK_SHIFT_MASK, GDK_KEY_d, toggle, { .i = DiskCache } },
{ 0, GDK_KEY_f, sendext, { .i = 100 } },
{ GDK_SHIFT_MASK, GDK_KEY_f, sendext, { .i = 101 } },
diff --git a/surf.c b/surf.c
index 860cfaa..5db9315 100644
--- a/surf.c
+++ b/surf.c
@@ -627,8 +627,20 @@ updatetitle(Client *c)
void
gettogglestats(Client *c)
{
- togglestats[0] = cookiepolicy_set(cookiepolicy_get());
- togglestats[1] = curconfig[CaretBrowsing].val.i ? 'C' : 'c';
+ int i=0;
+ togglestats[i++] = cookiepolicy_set(cookiepolicy_get());
+ if(curconfig[CaretBrowsing].val.i)togglestats[i++]='C';
+ if(curconfig[Geolocation].val.i)togglestats[i++]='G';
+ if(!curconfig[DiskCache].val.i)togglestats[i++]='d';
+ if(!curconfig[LoadImages].val.i)togglestats[i++]='i';
+ if(curconfig[JavaScript].val.i)togglestats[i++]='S';
+ if(curconfig[Plugins].val.i)togglestats[i++]='V';
+ if(curconfig[FrameFlattening].val.i)togglestats[i++]='F';
+ if(curconfig[Certificate].val.i)togglestats[i++]='X';
+ if(!curconfig[StrictTLS].val.i)togglestats[i++]='t';
+ if(curconfig[KioskMode].val.i)togglestats[i++]='I';
+
+ /*
togglestats[2] = curconfig[Geolocation].val.i ? 'G' : 'g';
togglestats[3] = curconfig[DiskCache].val.i ? 'D' : 'd';
togglestats[4] = curconfig[LoadImages].val.i ? 'I' : 'i';
@@ -639,7 +651,9 @@ gettogglestats(Client *c)
togglestats[9] = curconfig[Certificate].val.i ? 'X' : 'x';
togglestats[10] = curconfig[StrictTLS].val.i ? 'T' : 't';
togglestats[11] = curconfig[KioskMode].val.i ? 'K' : 'k';
- togglestats[12] = '\0';
+ */
+
+ togglestats[i++] = '\0';
}
void
@@ -1278,6 +1292,9 @@ winevent(GtkWidget *w, GdkEvent *e, Client *c)
updatetitle(c);
break;
case GDK_KEY_PRESS:
+
+ // we abuse the KioskMode to make surf modal (insert/normal)
+ // 'i' and 'ESC' are configured in config.h as well
if (!curconfig[KioskMode].val.i ^ e->key.keyval==GDK_KEY_Escape) {
for (i = 0; i < LENGTH(keys); ++i) {
if (gdk_keyval_to_lower(e->key.keyval) ==
@@ -1289,7 +1306,23 @@ winevent(GtkWidget *w, GdkEvent *e, Client *c)
return TRUE;
}
}
- }
+
+ switch(e->key.keyval)
+ {
+ case GDK_KEY_Down:
+ case GDK_KEY_Page_Down:
+ case GDK_KEY_Left:
+ case GDK_KEY_Right:
+ case GDK_KEY_Page_Up:
+ case GDK_KEY_Up:
+ case GDK_KEY_Home:
+ case GDK_KEY_End:
+ break;
+ default:
+ return TRUE;
+ }
+ }
+
case GDK_LEAVE_NOTIFY:
c->overtitle = NULL;
updatetitle(c);