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 | ... | ... |