summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Quentin Rameau 2015-11-20 00:44:29 +0100
committerGravatar Quentin Rameau 2015-11-20 00:46:11 +0100
commitc4f01cd18bf69dd24153f110be500ccc59eff498 (patch)
tree4aec821e208e6e8c0374df22eae6fa2b24575488
parentAdapt print() (diff)
Adapt inspector handling
The inspector is now easily manageable via API, there's no need for keeping its state in the Client.
Diffstat (limited to '')
-rw-r--r--config.def.h2
-rw-r--r--surf.c60
2 files changed, 8 insertions, 54 deletions
diff --git a/config.def.h b/config.def.h
index 2fa96dc..17a5149 100644
--- a/config.def.h
+++ b/config.def.h
@@ -109,7 +109,7 @@ static Key keys[] = {
{ 0, GDK_KEY_F11, togglefullscreen, { 0 } },
{ 0, GDK_KEY_Escape, stop, { 0 } },
- { MODKEY|GDK_SHIFT_MASK, GDK_KEY_o, inspector, { 0 } },
+ { MODKEY|GDK_SHIFT_MASK, GDK_KEY_o, toggleinspector, { 0 } },
{ MODKEY, GDK_KEY_g, spawn, SETPROP("_SURF_URI", "_SURF_GO") },
{ MODKEY, GDK_KEY_f, spawn, SETPROP("_SURF_FIND", "_SURF_FIND") },
diff --git a/surf.c b/surf.c
index 9444982..726369a 100644
--- a/surf.c
+++ b/surf.c
@@ -65,7 +65,7 @@ typedef struct Client {
const char *needle;
gint progress;
struct Client *next;
- gboolean zoomed, fullscreen, isinspecting;
+ gboolean zoomed, fullscreen;
} Client;
typedef struct {
@@ -144,12 +144,7 @@ static void downloadstarted(WebKitWebContext *wc, WebKitDownload *d,
static void responsereceived(WebKitDownload *d, GParamSpec *ps, Client *c);
static void download(Client *c, WebKitURIResponse *r);
-static void inspector(Client *c, const Arg *arg);
-static WebKitWebView *inspector_new(WebKitWebInspector *i, WebKitWebView *v,
- Client *c);
-static gboolean inspector_show(WebKitWebInspector *i, Client *c);
-static gboolean inspector_close(WebKitWebInspector *i, Client *c);
-static void inspector_finished(WebKitWebInspector *i, Client *c);
+static void toggleinspector(Client *c, const Arg *a);
static gboolean keypress(GtkAccelGroup *group, GObject *obj, guint key,
GdkModifierType mods, Client *c);
@@ -722,60 +717,16 @@ download(Client *c, WebKitURIResponse *r)
}
void
-inspector(Client *c, const Arg *arg)
+toggleinspector(Client *c, const Arg *a)
{
if (enableinspector) {
- if (c->isinspecting)
+ if (webkit_web_inspector_is_attached(c->inspector))
webkit_web_inspector_close(c->inspector);
else
webkit_web_inspector_show(c->inspector);
}
}
-WebKitWebView *
-inspector_new(WebKitWebInspector *i, WebKitWebView *v, Client *c)
-{
- return WEBKIT_WEB_VIEW(webkit_web_view_new());
-}
-
-gboolean
-inspector_show(WebKitWebInspector *i, Client *c)
-{
- WebKitWebView *w;
-
- if (c->isinspecting)
- return false;
-
- w = webkit_web_inspector_get_web_view(i);
- gtk_paned_pack2(GTK_PANED(c->pane), GTK_WIDGET(w), TRUE, TRUE);
- gtk_widget_show(GTK_WIDGET(w));
- c->isinspecting = true;
-
- return true;
-}
-
-gboolean
-inspector_close(WebKitWebInspector *i, Client *c)
-{
- GtkWidget *w;
-
- if (!c->isinspecting)
- return false;
-
- w = GTK_WIDGET(webkit_web_inspector_get_web_view(i));
- gtk_widget_hide(w);
- gtk_widget_destroy(w);
- c->isinspecting = false;
-
- return true;
-}
-
-void
-inspector_finished(WebKitWebInspector *i, Client *c)
-{
- g_free(c->inspector);
-}
-
gboolean
keypress(GtkAccelGroup *group, GObject *obj, guint key, GdkModifierType mods,
Client *c)
@@ -1025,6 +976,9 @@ showview(WebKitWebView *v, Client *c)
c->win = createwindow(c);
+ if (enableinspector)
+ c->inspector = webkit_web_view_get_inspector(c->view);
+
if (!kioskmode)
addaccelgroup(c);