From dd705d43eb13493b682e214748d1810fc6254452 Mon Sep 17 00:00:00 2001
From: Christoph Lohmann <20h@r-36.net>
Date: Sun, 28 Sep 2014 08:02:48 +0200
Subject: [PATCH] =?utf8?q?Make=20=C2=BBCopy=20image=20address=C2=AB=20work?=
 =?utf8?q?.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

Thanks yui@blekksprut.net for the patch!
---
 surf.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/surf.c b/surf.c
index bcb3a7b..3b3476a 100644
--- a/surf.c
+++ b/surf.c
@@ -968,6 +968,7 @@ menuactivate(GtkMenuItem *item, Client *c) {
 	 * context-menu-action-1	open link in window
 	 * context-menu-action-2	download linked file
 	 * context-menu-action-3	copy link location
+	 * context-menu-action-7	copy image address
 	 * context-menu-action-13	reload
 	 * context-menu-action-10	back
 	 * context-menu-action-11	forward
@@ -975,8 +976,8 @@ menuactivate(GtkMenuItem *item, Client *c) {
 	 */
 
 	GtkAction *a = NULL;
-	const char *name;
-	GtkClipboard *prisel;
+	const char *name, *uri;
+	GtkClipboard *prisel, *clpbrd;
 
 	a = gtk_activatable_get_related_action(GTK_ACTIVATABLE(item));
 	if(a == NULL)
@@ -986,7 +987,13 @@ menuactivate(GtkMenuItem *item, Client *c) {
 	if(!g_strcmp0(name, "context-menu-action-3")) {
 		prisel = gtk_clipboard_get(GDK_SELECTION_PRIMARY);
 		gtk_clipboard_set_text(prisel, c->linkhover, -1);
-	}
+	} else if(!g_strcmp0(name, "context-menu-action-7")) {
+		prisel = gtk_clipboard_get(GDK_SELECTION_PRIMARY);
+		clpbrd = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD);
+		uri = gtk_clipboard_wait_for_text(clpbrd);
+		if(uri)
+			gtk_clipboard_set_text(prisel, uri, -1);
+  }
 }
 
 static void
-- 
2.20.1