Lines 102-109
Link Here
|
102 |
|
102 |
|
103 |
/* Respond with supported format list */ |
103 |
/* Respond with supported format list */ |
104 |
format_list->formats = (UINT32*) malloc(sizeof(UINT32)*2); |
104 |
format_list->formats = (UINT32*) malloc(sizeof(UINT32)*2); |
105 |
format_list->formats[0] = CB_FORMAT_TEXT; |
105 |
format_list->formats[0] = CF_TEXT; |
106 |
format_list->formats[1] = CB_FORMAT_UNICODETEXT; |
106 |
format_list->formats[1] = CF_UNICODETEXT; |
107 |
format_list->num_formats = 2; |
107 |
format_list->num_formats = 2; |
108 |
|
108 |
|
109 |
freerdp_channels_send_event(channels, (wMessage*) format_list); |
109 |
freerdp_channels_send_event(channels, (wMessage*) format_list); |
Lines 152-173
Link Here
|
152 |
for (i=0; i<event->num_formats; i++) { |
152 |
for (i=0; i<event->num_formats; i++) { |
153 |
|
153 |
|
154 |
/* If plain text available, request it */ |
154 |
/* If plain text available, request it */ |
155 |
if (event->formats[i] == CB_FORMAT_TEXT) |
155 |
if (event->formats[i] == CF_TEXT) |
156 |
formats |= GUAC_RDP_CLIPBOARD_FORMAT_CP1252; |
156 |
formats |= GUAC_RDP_CLIPBOARD_FORMAT_CP1252; |
157 |
else if (event->formats[i] == CB_FORMAT_UNICODETEXT) |
157 |
else if (event->formats[i] == CF_UNICODETEXT) |
158 |
formats |= GUAC_RDP_CLIPBOARD_FORMAT_UTF16; |
158 |
formats |= GUAC_RDP_CLIPBOARD_FORMAT_UTF16; |
159 |
|
159 |
|
160 |
} |
160 |
} |
161 |
|
161 |
|
162 |
/* Prefer Unicode to plain text */ |
162 |
/* Prefer Unicode to plain text */ |
163 |
if (formats & GUAC_RDP_CLIPBOARD_FORMAT_UTF16) { |
163 |
if (formats & GUAC_RDP_CLIPBOARD_FORMAT_UTF16) { |
164 |
__guac_rdp_cb_request_format(client, CB_FORMAT_UNICODETEXT); |
164 |
__guac_rdp_cb_request_format(client, CF_UNICODETEXT); |
165 |
return; |
165 |
return; |
166 |
} |
166 |
} |
167 |
|
167 |
|
168 |
/* Use plain text if Unicode unavailable */ |
168 |
/* Use plain text if Unicode unavailable */ |
169 |
if (formats & GUAC_RDP_CLIPBOARD_FORMAT_CP1252) { |
169 |
if (formats & GUAC_RDP_CLIPBOARD_FORMAT_CP1252) { |
170 |
__guac_rdp_cb_request_format(client, CB_FORMAT_TEXT); |
170 |
__guac_rdp_cb_request_format(client, CF_TEXT); |
171 |
return; |
171 |
return; |
172 |
} |
172 |
} |
173 |
|
173 |
|
Lines 191-201
Link Here
|
191 |
/* Determine output encoding */ |
191 |
/* Determine output encoding */ |
192 |
switch (event->format) { |
192 |
switch (event->format) { |
193 |
|
193 |
|
194 |
case CB_FORMAT_TEXT: |
194 |
case CF_TEXT: |
195 |
writer = GUAC_WRITE_CP1252; |
195 |
writer = GUAC_WRITE_CP1252; |
196 |
break; |
196 |
break; |
197 |
|
197 |
|
198 |
case CB_FORMAT_UNICODETEXT: |
198 |
case CF_UNICODETEXT: |
199 |
writer = GUAC_WRITE_UTF16; |
199 |
writer = GUAC_WRITE_UTF16; |
200 |
break; |
200 |
break; |
201 |
|
201 |
|
Lines 237-248
Link Here
|
237 |
switch (rdp_client->requested_clipboard_format) { |
237 |
switch (rdp_client->requested_clipboard_format) { |
238 |
|
238 |
|
239 |
/* Non-Unicode */ |
239 |
/* Non-Unicode */ |
240 |
case CB_FORMAT_TEXT: |
240 |
case CF_TEXT: |
241 |
reader = GUAC_READ_CP1252; |
241 |
reader = GUAC_READ_CP1252; |
242 |
break; |
242 |
break; |
243 |
|
243 |
|
244 |
/* Unicode (UTF-16) */ |
244 |
/* Unicode (UTF-16) */ |
245 |
case CB_FORMAT_UNICODETEXT: |
245 |
case CF_UNICODETEXT: |
246 |
reader = GUAC_READ_UTF16; |
246 |
reader = GUAC_READ_UTF16; |
247 |
break; |
247 |
break; |
248 |
|
248 |
|