mirror of https://github.com/encounter/SDL.git
wayland: Cleanup event source comments, headers, and error reporting
Replace instances of fprintf(stderr, ...) with SDL_SetError(), replace C++ comments with C style, use a uniform format for multi-line comments, and remove unused headers as poll and select aren't used in this file (the SDL function which calls them is used instead).
This commit is contained in:
parent
22461383c6
commit
ed412c1385
|
@ -57,9 +57,7 @@
|
||||||
#define BTN_SIDE (0x113)
|
#define BTN_SIDE (0x113)
|
||||||
#define BTN_EXTRA (0x114)
|
#define BTN_EXTRA (0x114)
|
||||||
#endif
|
#endif
|
||||||
#include <sys/select.h>
|
|
||||||
#include <sys/mman.h>
|
#include <sys/mman.h>
|
||||||
#include <poll.h>
|
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <xkbcommon/xkbcommon.h>
|
#include <xkbcommon/xkbcommon.h>
|
||||||
|
@ -844,11 +842,11 @@ static const struct wl_pointer_listener pointer_listener = {
|
||||||
pointer_handle_motion,
|
pointer_handle_motion,
|
||||||
pointer_handle_button,
|
pointer_handle_button,
|
||||||
pointer_handle_axis,
|
pointer_handle_axis,
|
||||||
pointer_handle_frame, // Version 5
|
pointer_handle_frame, /* Version 5 */
|
||||||
pointer_handle_axis_source, // Version 5
|
pointer_handle_axis_source, /* Version 5 */
|
||||||
pointer_handle_axis_stop, // Version 5
|
pointer_handle_axis_stop, /* Version 5 */
|
||||||
pointer_handle_axis_discrete, // Version 5
|
pointer_handle_axis_discrete, /* Version 5 */
|
||||||
pointer_handle_axis_value120 // Version 8
|
pointer_handle_axis_value120 /* Version 8 */
|
||||||
};
|
};
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -953,7 +951,7 @@ keyboard_handle_keymap(void *data, struct wl_keyboard *keyboard,
|
||||||
close(fd);
|
close(fd);
|
||||||
|
|
||||||
if (!input->xkb.keymap) {
|
if (!input->xkb.keymap) {
|
||||||
fprintf(stderr, "failed to compile keymap\n");
|
SDL_SetError("failed to compile keymap\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -969,7 +967,7 @@ keyboard_handle_keymap(void *data, struct wl_keyboard *keyboard,
|
||||||
|
|
||||||
input->xkb.state = WAYLAND_xkb_state_new(input->xkb.keymap);
|
input->xkb.state = WAYLAND_xkb_state_new(input->xkb.keymap);
|
||||||
if (!input->xkb.state) {
|
if (!input->xkb.state) {
|
||||||
fprintf(stderr, "failed to create XKB state\n");
|
SDL_SetError("failed to create XKB state\n");
|
||||||
WAYLAND_xkb_keymap_unref(input->xkb.keymap);
|
WAYLAND_xkb_keymap_unref(input->xkb.keymap);
|
||||||
input->xkb.keymap = NULL;
|
input->xkb.keymap = NULL;
|
||||||
return;
|
return;
|
||||||
|
@ -997,7 +995,7 @@ keyboard_handle_keymap(void *data, struct wl_keyboard *keyboard,
|
||||||
input->xkb.compose_state = WAYLAND_xkb_compose_state_new(input->xkb.compose_table,
|
input->xkb.compose_state = WAYLAND_xkb_compose_state_new(input->xkb.compose_table,
|
||||||
XKB_COMPOSE_STATE_NO_FLAGS);
|
XKB_COMPOSE_STATE_NO_FLAGS);
|
||||||
if (!input->xkb.compose_state) {
|
if (!input->xkb.compose_state) {
|
||||||
fprintf(stderr, "could not create XKB compose state\n");
|
SDL_SetError("could not create XKB compose state\n");
|
||||||
WAYLAND_xkb_compose_table_unref(input->xkb.compose_table);
|
WAYLAND_xkb_compose_table_unref(input->xkb.compose_table);
|
||||||
input->xkb.compose_table = NULL;
|
input->xkb.compose_table = NULL;
|
||||||
}
|
}
|
||||||
|
@ -1075,7 +1073,7 @@ keyboard_input_get_text(char text[8], const struct SDL_WaylandInput *input, uint
|
||||||
return SDL_FALSE;
|
return SDL_FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO can this happen?
|
/* TODO: Can this happen? */
|
||||||
if (WAYLAND_xkb_state_key_get_syms(input->xkb.state, key + 8, &syms) != 1) {
|
if (WAYLAND_xkb_state_key_get_syms(input->xkb.state, key + 8, &syms) != 1) {
|
||||||
return SDL_FALSE;
|
return SDL_FALSE;
|
||||||
}
|
}
|
||||||
|
@ -1132,10 +1130,11 @@ keyboard_handle_key(void *data, struct wl_keyboard *keyboard,
|
||||||
has_text = keyboard_input_get_text(text, input, key, SDL_PRESSED, &handled_by_ime);
|
has_text = keyboard_input_get_text(text, input, key, SDL_PRESSED, &handled_by_ime);
|
||||||
} else {
|
} else {
|
||||||
if (keyboard_repeat_key_is_set(&input->keyboard_repeat, key)) {
|
if (keyboard_repeat_key_is_set(&input->keyboard_repeat, key)) {
|
||||||
// Send any due key repeat events before stopping the repeat and generating the key up event
|
/* Send any due key repeat events before stopping the repeat and generating the key up event.
|
||||||
// Compute time based on the Wayland time, as it reports when the release event happened
|
* Compute time based on the Wayland time, as it reports when the release event happened.
|
||||||
// Using SDL_GetTicks would be wrong, as it would report when the release event is processed,
|
* Using SDL_GetTicks would be wrong, as it would report when the release event is processed,
|
||||||
// which may be off if the application hasn't pumped events for a while
|
* which may be off if the application hasn't pumped events for a while.
|
||||||
|
*/
|
||||||
keyboard_repeat_handle(&input->keyboard_repeat, time - input->keyboard_repeat.wl_press_time);
|
keyboard_repeat_handle(&input->keyboard_repeat, time - input->keyboard_repeat.wl_press_time);
|
||||||
keyboard_repeat_clear(&input->keyboard_repeat);
|
keyboard_repeat_clear(&input->keyboard_repeat);
|
||||||
}
|
}
|
||||||
|
@ -1276,7 +1275,7 @@ static const struct wl_keyboard_listener keyboard_listener = {
|
||||||
keyboard_handle_leave,
|
keyboard_handle_leave,
|
||||||
keyboard_handle_key,
|
keyboard_handle_key,
|
||||||
keyboard_handle_modifiers,
|
keyboard_handle_modifiers,
|
||||||
keyboard_handle_repeat_info, // Version 4
|
keyboard_handle_repeat_info, /* Version 4 */
|
||||||
};
|
};
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -1329,7 +1328,7 @@ seat_handle_name(void *data, struct wl_seat *wl_seat, const char *name)
|
||||||
|
|
||||||
static const struct wl_seat_listener seat_listener = {
|
static const struct wl_seat_listener seat_listener = {
|
||||||
seat_handle_capabilities,
|
seat_handle_capabilities,
|
||||||
seat_handle_name, // Version 2
|
seat_handle_name, /* Version 2 */
|
||||||
};
|
};
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -1371,9 +1370,9 @@ static const struct wl_data_source_listener data_source_listener = {
|
||||||
data_source_handle_target,
|
data_source_handle_target,
|
||||||
data_source_handle_send,
|
data_source_handle_send,
|
||||||
data_source_handle_cancelled,
|
data_source_handle_cancelled,
|
||||||
data_source_handle_dnd_drop_performed, // Version 3
|
data_source_handle_dnd_drop_performed, /* Version 3 */
|
||||||
data_source_handle_dnd_finished, // Version 3
|
data_source_handle_dnd_finished, /* Version 3 */
|
||||||
data_source_handle_action, // Version 3
|
data_source_handle_action, /* Version 3 */
|
||||||
};
|
};
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -1488,8 +1487,8 @@ data_offer_handle_actions(void *data, struct wl_data_offer *wl_data_offer,
|
||||||
|
|
||||||
static const struct wl_data_offer_listener data_offer_listener = {
|
static const struct wl_data_offer_listener data_offer_listener = {
|
||||||
data_offer_handle_offer,
|
data_offer_handle_offer,
|
||||||
data_offer_handle_source_actions, // Version 3
|
data_offer_handle_source_actions, /* Version 3 */
|
||||||
data_offer_handle_actions, // Version 3
|
data_offer_handle_actions, /* Version 3 */
|
||||||
};
|
};
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -1574,19 +1573,19 @@ data_device_handle_motion(void *data, struct wl_data_device *wl_data_device,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Decodes URI escape sequences in string buf of len bytes
|
/* Decodes URI escape sequences in string buf of len bytes
|
||||||
(excluding the terminating NULL byte) in-place. Since
|
* (excluding the terminating NULL byte) in-place. Since
|
||||||
URI-encoded characters take three times the space of
|
* URI-encoded characters take three times the space of
|
||||||
normal characters, this should not be an issue.
|
* normal characters, this should not be an issue.
|
||||||
|
*
|
||||||
Returns the number of decoded bytes that wound up in
|
* Returns the number of decoded bytes that wound up in
|
||||||
the buffer, excluding the terminating NULL byte.
|
* the buffer, excluding the terminating NULL byte.
|
||||||
|
*
|
||||||
The buffer is guaranteed to be NULL-terminated but
|
* The buffer is guaranteed to be NULL-terminated but
|
||||||
may contain embedded NULL bytes.
|
* may contain embedded NULL bytes.
|
||||||
|
*
|
||||||
On error, -1 is returned.
|
* On error, -1 is returned.
|
||||||
|
*
|
||||||
FIXME: This was shamelessly copied from SDL_x11events.c
|
* FIXME: This was shamelessly copied from SDL_x11events.c
|
||||||
*/
|
*/
|
||||||
static int Wayland_URIDecode(char *buf, int len) {
|
static int Wayland_URIDecode(char *buf, int len) {
|
||||||
int ri, wi, di;
|
int ri, wi, di;
|
||||||
|
@ -1649,10 +1648,10 @@ static int Wayland_URIDecode(char *buf, int len) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Convert URI to local filename
|
/* Convert URI to local filename
|
||||||
return filename if possible, else NULL
|
* return filename if possible, else NULL
|
||||||
|
*
|
||||||
FIXME: This was shamelessly copied from SDL_x11events.c
|
* FIXME: This was shamelessly copied from SDL_x11events.c
|
||||||
*/
|
*/
|
||||||
static char* Wayland_URIToLocal(char* uri) {
|
static char* Wayland_URIToLocal(char* uri) {
|
||||||
char *file = NULL;
|
char *file = NULL;
|
||||||
SDL_bool local;
|
SDL_bool local;
|
||||||
|
@ -2582,7 +2581,8 @@ int Wayland_input_lock_pointer(struct SDL_WaylandInput *input)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
/* If we have a pointer confine active, we must destroy it here because
|
/* If we have a pointer confine active, we must destroy it here because
|
||||||
* creating a locked pointer otherwise would be a protocol error. */
|
* creating a locked pointer otherwise would be a protocol error.
|
||||||
|
*/
|
||||||
for (window = vd->windows; window; window = window->next)
|
for (window = vd->windows; window; window = window->next)
|
||||||
pointer_confine_destroy(window);
|
pointer_confine_destroy(window);
|
||||||
|
|
||||||
|
@ -2661,11 +2661,13 @@ int Wayland_input_confine_pointer(struct SDL_WaylandInput *input, SDL_Window *wi
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
/* A confine may already be active, in which case we should destroy it and
|
/* A confine may already be active, in which case we should destroy it and
|
||||||
* create a new one. */
|
* create a new one.
|
||||||
|
*/
|
||||||
pointer_confine_destroy(window);
|
pointer_confine_destroy(window);
|
||||||
|
|
||||||
/* We cannot create a confine if the pointer is already locked. Defer until
|
/* We cannot create a confine if the pointer is already locked. Defer until
|
||||||
* the pointer is unlocked. */
|
* the pointer is unlocked.
|
||||||
|
*/
|
||||||
if (d->relative_mouse_mode)
|
if (d->relative_mouse_mode)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue