wayland: Use the implicit grab serial when clearing the clipboard
Some compositors won't clear the selection without a valid serial.
This commit is contained in:
@@ -632,7 +632,7 @@ bool Wayland_data_device_clear_selection(SDL_WaylandDataDevice *data_device)
|
|||||||
if (!data_device || !data_device->data_device) {
|
if (!data_device || !data_device->data_device) {
|
||||||
result = SDL_SetError("Invalid Data Device");
|
result = SDL_SetError("Invalid Data Device");
|
||||||
} else if (data_device->selection_source) {
|
} else if (data_device->selection_source) {
|
||||||
wl_data_device_set_selection(data_device->data_device, NULL, 0);
|
wl_data_device_set_selection(data_device->data_device, NULL, data_device->seat->last_implicit_grab_serial);
|
||||||
Wayland_data_source_destroy(data_device->selection_source);
|
Wayland_data_source_destroy(data_device->selection_source);
|
||||||
data_device->selection_source = NULL;
|
data_device->selection_source = NULL;
|
||||||
}
|
}
|
||||||
@@ -647,7 +647,7 @@ bool Wayland_primary_selection_device_clear_selection(SDL_WaylandPrimarySelectio
|
|||||||
result = SDL_SetError("Invalid Primary Selection Device");
|
result = SDL_SetError("Invalid Primary Selection Device");
|
||||||
} else if (primary_selection_device->selection_source) {
|
} else if (primary_selection_device->selection_source) {
|
||||||
zwp_primary_selection_device_v1_set_selection(primary_selection_device->primary_selection_device,
|
zwp_primary_selection_device_v1_set_selection(primary_selection_device->primary_selection_device,
|
||||||
NULL, 0);
|
NULL, primary_selection_device->seat->last_implicit_grab_serial);
|
||||||
Wayland_primary_selection_source_destroy(primary_selection_device->selection_source);
|
Wayland_primary_selection_source_destroy(primary_selection_device->selection_source);
|
||||||
primary_selection_device->selection_source = NULL;
|
primary_selection_device->selection_source = NULL;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user