pinosaur
/
surf.git
/ commitdiff
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
0415175
)
Fixing the style and making the inspector work again.
author
Christoph Lohmann
<20h@r-36.net>
Sat, 26 Jan 2013 20:01:23 +0000
(21:01 +0100)
committer
Christoph Lohmann
<20h@r-36.net>
Sat, 26 Jan 2013 20:01:23 +0000
(21:01 +0100)
surf.c
patch
|
blob
|
history
diff --git
a/surf.c
b/surf.c
index
682c1e2
..
c9fa08d
100644
(file)
--- a/
surf.c
+++ b/
surf.c
@@
-42,14
+42,14
@@
union Arg {
};
typedef struct Client {
};
typedef struct Client {
- GtkWidget *win, *scroll, *vbox, *indicator;
+ GtkWidget *win, *scroll, *vbox, *indicator
, *pane
;
WebKitWebView *view;
WebKitWebInspector *inspector;
char *title, *linkhover;
const char *uri, *needle;
gint progress;
struct Client *next;
WebKitWebView *view;
WebKitWebInspector *inspector;
char *title, *linkhover;
const char *uri, *needle;
gint progress;
struct Client *next;
- gboolean zoomed, fullscreen, isinspect
or
, sslfailed;
+ gboolean zoomed, fullscreen, isinspect
ing
, sslfailed;
} Client;
typedef struct {
} Client;
typedef struct {
@@
-506,28
+506,45
@@
initdownload(WebKitWebView *view, WebKitDownload *o, Client *c) {
static void
inspector(Client *c, const Arg *arg) {
static void
inspector(Client *c, const Arg *arg) {
- if(c->isinspector)
- return;
- webkit_web_inspector_show(c->inspector);
+ if(c->isinspecting) {
+ webkit_web_inspector_close(c->inspector);
+ } else {
+ webkit_web_inspector_show(c->inspector);
+ }
}
static WebKitWebView *
inspector_new(WebKitWebInspector *i, WebKitWebView *v, Client *c) {
}
static WebKitWebView *
inspector_new(WebKitWebInspector *i, WebKitWebView *v, Client *c) {
- Client *n = newclient();
- n->isinspector = true;
-
- return n->view;
+ return WEBKIT_WEB_VIEW(webkit_web_view_new());
}
static gboolean
inspector_show(WebKitWebInspector *i, Client *c) {
}
static gboolean
inspector_show(WebKitWebInspector *i, Client *c) {
- gtk_widget_show(GTK_WIDGET(webkit_web_inspector_get_web_view(i)));
+ 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;
}
static gboolean
inspector_close(WebKitWebInspector *i, Client *c) {
return true;
}
static gboolean
inspector_close(WebKitWebInspector *i, Client *c) {
- gtk_widget_hide(GTK_WIDGET(webkit_web_inspector_get_web_view(i)));
+ 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;
}
return true;
}
@@
-671,8
+688,12
@@
newclient(void) {
"key-press-event",
G_CALLBACK(keypress), c);
"key-press-event",
G_CALLBACK(keypress), c);
+ /* Pane */
+ c->pane = gtk_vpaned_new();
+
/* VBox */
c->vbox = gtk_vbox_new(FALSE, 0);
/* VBox */
c->vbox = gtk_vbox_new(FALSE, 0);
+ gtk_paned_pack1(GTK_PANED(c->pane), c->vbox, TRUE, TRUE);
/* Scrolled Window */
c->scroll = gtk_scrolled_window_new(NULL, NULL);
/* Scrolled Window */
c->scroll = gtk_scrolled_window_new(NULL, NULL);
@@
-726,7
+747,7
@@
newclient(void) {
/* Arranging */
gtk_container_add(GTK_CONTAINER(c->scroll), GTK_WIDGET(c->view));
/* Arranging */
gtk_container_add(GTK_CONTAINER(c->scroll), GTK_WIDGET(c->view));
- gtk_container_add(GTK_CONTAINER(c->win), c->
vbox
);
+ gtk_container_add(GTK_CONTAINER(c->win), c->
pane
);
gtk_container_add(GTK_CONTAINER(c->vbox), c->scroll);
gtk_container_add(GTK_CONTAINER(c->vbox), c->indicator);
gtk_container_add(GTK_CONTAINER(c->vbox), c->scroll);
gtk_container_add(GTK_CONTAINER(c->vbox), c->indicator);
@@
-736,6
+757,7
@@
newclient(void) {
gtk_box_set_child_packing(GTK_BOX(c->vbox), c->scroll, TRUE,
TRUE, 0, GTK_PACK_START);
gtk_widget_grab_focus(GTK_WIDGET(c->view));
gtk_box_set_child_packing(GTK_BOX(c->vbox), c->scroll, TRUE,
TRUE, 0, GTK_PACK_START);
gtk_widget_grab_focus(GTK_WIDGET(c->view));
+ gtk_widget_show(c->pane);
gtk_widget_show(c->vbox);
gtk_widget_show(c->scroll);
gtk_widget_show(GTK_WIDGET(c->view));
gtk_widget_show(c->vbox);
gtk_widget_show(c->scroll);
gtk_widget_show(GTK_WIDGET(c->view));
@@
-776,7
+798,7
@@
newclient(void) {
G_CALLBACK(inspector_close), c);
g_signal_connect(G_OBJECT(c->inspector), "finished",
G_CALLBACK(inspector_finished), c);
G_CALLBACK(inspector_close), c);
g_signal_connect(G_OBJECT(c->inspector), "finished",
G_CALLBACK(inspector_finished), c);
- c->isinspect
or
= false;
+ c->isinspect
ing
= false;
}
g_free(uri);
}
g_free(uri);
@@
-789,6
+811,7
@@
newclient(void) {
c->title = NULL;
c->next = clients;
clients = c;
c->title = NULL;
c->next = clients;
clients = c;
+
if(showxid) {
gdk_display_sync(gtk_widget_get_display(c->win));
printf("%u\n",
if(showxid) {
gdk_display_sync(gtk_widget_get_display(c->win));
printf("%u\n",
@@
-798,6
+821,7
@@
newclient(void) {
die("Error closing stdout");
}
}
die("Error closing stdout");
}
}
+
return c;
}
return c;
}