about summary refs log tree commit diff stats
path: root/xxxterm.c
diff options
context:
space:
mode:
authorMarco Peereboom <marco@conformal.com>2010-08-10 22:24:41 +0000
committerMarco Peereboom <marco@conformal.com>2010-08-10 22:24:41 +0000
commit09e6114d3a8f12a1bcc3cb2d774a82d5c706b2bd (patch)
treec7b8b275b49142adabc2bc17b449fbee806b30df /xxxterm.c
parent85ec07affd9d363fe4dcb52429c8722dc3a9ba55 (diff)
downloadxombrero-09e6114d3a8f12a1bcc3cb2d774a82d5c706b2bd.tar.gz
make middle click open new tab
fix some spacings
Diffstat (limited to 'xxxterm.c')
-rw-r--r--xxxterm.c31
1 files changed, 19 insertions, 12 deletions
diff --git a/xxxterm.c b/xxxterm.c
index ee301dc..0149514 100644
--- a/xxxterm.c
+++ b/xxxterm.c
@@ -50,6 +50,7 @@
 
 static char		*version = "$xxxterm$";
 
+#define XT_DEBUG
 /* #define XT_DEBUG */
 #ifdef XT_DEBUG
 #define DPRINTF(x...)		do { if (swm_debug) fprintf(stderr, x); } while (0)
@@ -719,7 +720,7 @@ move(struct tab *t, struct karg *args)
 
 	DNPRINTF(XT_D_MOVE, "move: opcode %d %s pos %f ps %f upper %f lower %f "
 	    "max %f si %f pi %f\n",
-	    args->i, adjust == t->adjust_h ? "horizontal" : "vertical", 
+	    args->i, adjust == t->adjust_h ? "horizontal" : "vertical",
 	    pos, ps, upper, lower, max, si, pi);
 
 	switch (args->i) {
@@ -1145,7 +1146,7 @@ struct key {
 	{ GDK_CONTROL_MASK|GDK_SHIFT_MASK, 0, GDK_greater, movetab,	{.i = XT_TAB_LAST} },
 	{ GDK_CONTROL_MASK,	0,	GDK_minus,	resizetab,	{.i = -1} },
 	{ GDK_CONTROL_MASK|GDK_SHIFT_MASK, 0, GDK_plus,	resizetab,	{.i = 1} },
-	{ GDK_CONTROL_MASK, 	0, 	GDK_equal,	resizetab,	{.i = 1} },
+	{ GDK_CONTROL_MASK,	0,	GDK_equal,	resizetab,	{.i = 1} },
 };
 
 struct cmd {
@@ -1385,13 +1386,19 @@ webview_event_cb(GtkWidget *w, GdkEventButton *e, struct tab *t)
 {
 	/* we can not eat the event without throwing gtk off so defer it */
 
+	/* catch middle click */
+	if (e->type == GDK_BUTTON_RELEASE && e->button == 2) {
+		t->ctrl_click = 1;
+		goto done;
+	}
+
 	/* catch ctrl click */
-	if (e->type == GDK_BUTTON_RELEASE && 
+	if (e->type == GDK_BUTTON_RELEASE &&
 	    CLEAN(e->state) == GDK_CONTROL_MASK)
 		t->ctrl_click = 1;
 	else
 		t->ctrl_click = 0;
-
+done:
 	return (XT_CB_PASSTHROUGH);
 }
 
@@ -1844,23 +1851,23 @@ create_toolbar(struct tab *t)
 		t->backward = gtk_tool_button_new_from_stock(GTK_STOCK_GO_BACK);
 		gtk_widget_set_sensitive(GTK_WIDGET(t->backward), FALSE);
 		g_signal_connect(G_OBJECT(t->backward), "clicked",
-		    G_CALLBACK(backward_cb), t); 
-		gtk_toolbar_insert(GTK_TOOLBAR(toolbar), t->backward, -1); 
+		    G_CALLBACK(backward_cb), t);
+		gtk_toolbar_insert(GTK_TOOLBAR(toolbar), t->backward, -1);
 
 		/* forward button */
 		t->forward =
 		    gtk_tool_button_new_from_stock(GTK_STOCK_GO_FORWARD);
 		gtk_widget_set_sensitive(GTK_WIDGET(t->forward), FALSE);
 		g_signal_connect(G_OBJECT(t->forward), "clicked",
-		    G_CALLBACK(forward_cb), t); 
-		gtk_toolbar_insert(GTK_TOOLBAR(toolbar), t->forward, -1); 
+		    G_CALLBACK(forward_cb), t);
+		gtk_toolbar_insert(GTK_TOOLBAR(toolbar), t->forward, -1);
 
 		/* stop button */
-		t->stop = gtk_tool_button_new_from_stock(GTK_STOCK_STOP); 
+		t->stop = gtk_tool_button_new_from_stock(GTK_STOCK_STOP);
 		gtk_widget_set_sensitive(GTK_WIDGET(t->stop), FALSE);
 		g_signal_connect(G_OBJECT(t->stop), "clicked",
-		    G_CALLBACK(stop_cb), t); 
-		gtk_toolbar_insert(GTK_TOOLBAR(toolbar), t->stop, -1); 
+		    G_CALLBACK(stop_cb), t);
+		gtk_toolbar_insert(GTK_TOOLBAR(toolbar), t->stop, -1);
 	}
 
 	/* uri entry */
@@ -2052,7 +2059,7 @@ void
 create_canvas(void)
 {
 	GtkWidget		*vbox;
-	
+
 	vbox = gtk_vbox_new(FALSE, 0);
 	notebook = GTK_NOTEBOOK(gtk_notebook_new());
 	if (showtabs == 0)