Commit c39d367d35aaa0812e49a2196ce359da065ef960
1 parent
20612e42
Exists in
master
and in
1 other branch
Adding image copy features to windows version.
Showing
1 changed file
with
19 additions
and
0 deletions
Show diff stats
src/selection/windows/copy.c
... | ... | @@ -104,6 +104,20 @@ static void clipboard_get(G_GNUC_UNUSED GtkClipboard *clipboard, GtkSelectionDa |
104 | 104 | } |
105 | 105 | break; |
106 | 106 | |
107 | + case CLIPBOARD_TYPE_PIXBUFF: | |
108 | + { | |
109 | + GdkPixbuf * pixbuff = v3270_get_selection_as_pixbuf(terminal, terminal->selection.blocks, FALSE); | |
110 | + | |
111 | + debug("%s: pixbuff=%p (blocks=%p)",__FUNCTION__,pixbuff,terminal->selection.blocks); | |
112 | + | |
113 | + if(pixbuff) | |
114 | + { | |
115 | + gtk_selection_data_set_pixbuf(selection,pixbuff); | |
116 | + g_object_unref(pixbuff); | |
117 | + } | |
118 | + } | |
119 | + break; | |
120 | + | |
107 | 121 | default: |
108 | 122 | g_warning("Unexpected clipboard type %d\n",target); |
109 | 123 | } |
... | ... | @@ -143,6 +157,11 @@ void v3270_update_system_clipboard(GtkWidget *widget) |
143 | 157 | |
144 | 158 | } |
145 | 159 | |
160 | + if(terminal->selection.options & V3270_SELECTION_PIXBUFF) | |
161 | + { | |
162 | + gtk_target_list_add_image_targets(list,CLIPBOARD_TYPE_PIXBUFF,TRUE); | |
163 | + } | |
164 | + | |
146 | 165 | int n_targets; |
147 | 166 | GtkTargetEntry * targets = gtk_target_table_new_from_list(list, &n_targets); |
148 | 167 | ... | ... |