about summary refs log tree commit diff stats
path: root/xombrero.c
diff options
context:
space:
mode:
authorJosh Rickmar <jrick@devio.us>2012-06-15 13:47:20 -0400
committerJosh Rickmar <jrick@devio.us>2012-06-15 13:48:12 -0400
commit2aaadca5a1351ca1bf34670a97875133a71b8fb3 (patch)
tree2d1e38903567f760333ed49e6ae35aeb71a72a13 /xombrero.c
parent8aac6ddc8eed06eea81314d2ae01ac12448700a2 (diff)
downloadxombrero-2aaadca5a1351ca1bf34670a97875133a71b8fb3.tar.gz
Add an 'p' option to statusbar_elems to show if the http_proxy is
currently enabled or disabled in the statusbar.
Diffstat (limited to 'xombrero.c')
-rw-r--r--xombrero.c37
1 files changed, 27 insertions, 10 deletions
diff --git a/xombrero.c b/xombrero.c
index ddd6632..c284ac5 100644
--- a/xombrero.c
+++ b/xombrero.c
@@ -1821,12 +1821,14 @@ statusbar_modify_attr(struct tab *t, const char *text, const char *base)
 	gtk_widget_modify_text(t->sbe.zoom, GTK_STATE_NORMAL, &c_text);
 	gtk_widget_modify_text(t->sbe.position, GTK_STATE_NORMAL, &c_text);
 	gtk_widget_modify_text(t->sbe.tabs, GTK_STATE_NORMAL, &c_text);
+	gtk_widget_modify_text(t->sbe.proxy, GTK_STATE_NORMAL, &c_text);
 
 	gtk_widget_modify_base(t->sbe.statusbar, GTK_STATE_NORMAL, &c_base);
 	gtk_widget_modify_base(t->sbe.buffercmd, GTK_STATE_NORMAL, &c_base);
 	gtk_widget_modify_base(t->sbe.zoom, GTK_STATE_NORMAL, &c_base);
 	gtk_widget_modify_base(t->sbe.position, GTK_STATE_NORMAL, &c_base);
 	gtk_widget_modify_base(t->sbe.tabs, GTK_STATE_NORMAL, &c_base);
+	gtk_widget_modify_base(t->sbe.proxy, GTK_STATE_NORMAL, &c_base);
 }
 
 void
@@ -7127,8 +7129,9 @@ create_new_tab(char *title, struct undo *u, int focus, int position)
 	GList				*items;
 	GdkColor			color;
 	char				*p;
-	int				sbe_p = 0, sbe_b = 0,
-					sbe_z = 0, sbe_t = 0;
+	int				sbe_P = 0, sbe_B = 0,
+					sbe_Z = 0, sbe_T = 0,
+					sbe_p = 0;
 
 	DNPRINTF(XT_D_TAB, "create_new_tab: title %s focus %d\n", title, focus);
 
@@ -7216,6 +7219,7 @@ create_new_tab(char *title, struct undo *u, int focus, int position)
 	t->sbe.zoom = create_sbe(40);
 	t->sbe.buffercmd = create_sbe(60);
 	t->sbe.tabs = create_sbe(40);
+	t->sbe.proxy = create_sbe(60);
 
 	statusbar_modify_attr(t, XT_COLOR_WHITE, XT_COLOR_BLACK);
 
@@ -7237,45 +7241,58 @@ create_new_tab(char *title, struct undo *u, int focus, int position)
 			break;
 		}
 		case 'P':
-			if (sbe_p) {
+			if (sbe_P) {
 				warnx("flag \"%c\" specified more than "
 				    "once in statusbar_elems\n", *p);
 				break;
 			}
-			sbe_p = 1;
+			sbe_P = 1;
 			gtk_box_pack_start(GTK_BOX(t->statusbar_box),
 			    t->sbe.position, FALSE, FALSE, FALSE);
 			break;
 		case 'B':
-			if (sbe_b) {
+			if (sbe_B) {
 				warnx("flag \"%c\" specified more than "
 				    "once in statusbar_elems\n", *p);
 				break;
 			}
-			sbe_b = 1;
+			sbe_B = 1;
 			gtk_box_pack_start(GTK_BOX(t->statusbar_box),
 			    t->sbe.buffercmd, FALSE, FALSE, FALSE);
 			break;
 		case 'Z':
-			if (sbe_z) {
+			if (sbe_Z) {
 				warnx("flag \"%c\" specified more than "
 				    "once in statusbar_elems\n", *p);
 				break;
 			}
-			sbe_z = 1;
+			sbe_Z = 1;
 			gtk_box_pack_start(GTK_BOX(t->statusbar_box),
 			    t->sbe.zoom, FALSE, FALSE, FALSE);
 			break;
 		case 'T':
-			if (sbe_t) {
+			if (sbe_T) {
 				warnx("flag \"%c\" specified more than "
 				    "once in statusbar_elems\n", *p);
 				break;
 			}
-			sbe_t = 1;
+			sbe_T = 1;
 			gtk_box_pack_start(GTK_BOX(t->statusbar_box),
 			    t->sbe.tabs, FALSE, FALSE, FALSE);
 			break;
+		case 'p':
+			if (sbe_p) {
+				warnx("flag \"%c\" specified more than "
+				    "once in statusbar_elems\n", *p);
+				break;
+			}
+			sbe_p = 1;
+			gtk_box_pack_start(GTK_BOX(t->statusbar_box),
+			    t->sbe.proxy, FALSE, FALSE, FALSE);
+			if (proxy_uri)
+				gtk_entry_set_text(GTK_ENTRY(t->sbe.proxy),
+				    "proxy");
+			break;
 		default:
 			warnx("illegal flag \"%c\" in statusbar_elems\n", *p);
 			break;