mirror of
https://gitlab.freedesktop.org/wayland/weston.git
synced 2025-12-25 18:50:10 +01:00
Track server changes.
This commit is contained in:
parent
1cbf3262dd
commit
447013d718
2 changed files with 38 additions and 38 deletions
|
|
@ -532,7 +532,7 @@ static void
|
|||
weston_device_repick(struct wl_input_device *device, uint32_t time)
|
||||
{
|
||||
struct weston_input_device *wd = (struct weston_input_device *) device;
|
||||
const struct wl_grab_interface *interface;
|
||||
const struct wl_pointer_grab_interface *interface;
|
||||
struct weston_surface *surface, *focus;
|
||||
|
||||
surface = weston_compositor_pick_surface(wd->compositor,
|
||||
|
|
@ -541,16 +541,16 @@ weston_device_repick(struct wl_input_device *device, uint32_t time)
|
|||
&device->current_y);
|
||||
|
||||
if (&surface->surface != device->current) {
|
||||
interface = device->grab->interface;
|
||||
interface->focus(device->grab, time, &surface->surface,
|
||||
interface = device->pointer_grab->interface;
|
||||
interface->focus(device->pointer_grab, time, &surface->surface,
|
||||
device->current_x, device->current_y);
|
||||
device->current = &surface->surface;
|
||||
}
|
||||
|
||||
focus = (struct weston_surface *) device->grab->focus;
|
||||
focus = (struct weston_surface *) device->pointer_grab->focus;
|
||||
if (focus)
|
||||
weston_surface_from_global(focus, device->x, device->y,
|
||||
&device->grab->x, &device->grab->y);
|
||||
&device->pointer_grab->x, &device->pointer_grab->y);
|
||||
}
|
||||
|
||||
WL_EXPORT void
|
||||
|
|
@ -1298,7 +1298,7 @@ WL_EXPORT void
|
|||
notify_motion(struct wl_input_device *device, uint32_t time, int x, int y)
|
||||
{
|
||||
struct weston_output *output;
|
||||
const struct wl_grab_interface *interface;
|
||||
const struct wl_pointer_grab_interface *interface;
|
||||
struct weston_input_device *wd = (struct weston_input_device *) device;
|
||||
struct weston_compositor *ec = wd->compositor;
|
||||
int x_valid = 0, y_valid = 0;
|
||||
|
|
@ -1345,9 +1345,9 @@ notify_motion(struct wl_input_device *device, uint32_t time, int x, int y)
|
|||
device->y = y;
|
||||
|
||||
weston_device_repick(device, time);
|
||||
interface = device->grab->interface;
|
||||
interface->motion(device->grab, time,
|
||||
device->grab->x, device->grab->y);
|
||||
interface = device->pointer_grab->interface;
|
||||
interface->motion(device->pointer_grab, time,
|
||||
device->pointer_grab->x, device->pointer_grab->y);
|
||||
|
||||
if (wd->sprite) {
|
||||
weston_surface_set_position(wd->sprite,
|
||||
|
|
@ -1391,7 +1391,7 @@ notify_button(struct wl_input_device *device,
|
|||
|
||||
weston_compositor_run_binding(compositor, wd, time, 0, button, state);
|
||||
|
||||
device->grab->interface->button(device->grab, time, button, state);
|
||||
device->pointer_grab->interface->button(device->pointer_grab, time, button, state);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
56
src/shell.c
56
src/shell.c
|
|
@ -101,7 +101,7 @@ struct shell_surface {
|
|||
} rotation;
|
||||
|
||||
struct {
|
||||
struct wl_grab grab;
|
||||
struct wl_pointer_grab grab;
|
||||
uint32_t time;
|
||||
int32_t x, y;
|
||||
struct weston_transform parent_transform;
|
||||
|
|
@ -114,13 +114,13 @@ struct shell_surface {
|
|||
};
|
||||
|
||||
struct weston_move_grab {
|
||||
struct wl_grab grab;
|
||||
struct wl_pointer_grab grab;
|
||||
struct weston_surface *surface;
|
||||
int32_t dx, dy;
|
||||
};
|
||||
|
||||
struct rotate_grab {
|
||||
struct wl_grab grab;
|
||||
struct wl_pointer_grab grab;
|
||||
struct shell_surface *surface;
|
||||
struct weston_matrix rotation;
|
||||
struct {
|
||||
|
|
@ -154,14 +154,14 @@ shell_configuration(struct wl_shell *shell)
|
|||
}
|
||||
|
||||
static void
|
||||
noop_grab_focus(struct wl_grab *grab, uint32_t time,
|
||||
noop_grab_focus(struct wl_pointer_grab *grab, uint32_t time,
|
||||
struct wl_surface *surface, int32_t x, int32_t y)
|
||||
{
|
||||
grab->focus = NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
move_grab_motion(struct wl_grab *grab,
|
||||
move_grab_motion(struct wl_pointer_grab *grab,
|
||||
uint32_t time, int32_t x, int32_t y)
|
||||
{
|
||||
struct weston_move_grab *move = (struct weston_move_grab *) grab;
|
||||
|
|
@ -175,18 +175,18 @@ move_grab_motion(struct wl_grab *grab,
|
|||
}
|
||||
|
||||
static void
|
||||
move_grab_button(struct wl_grab *grab,
|
||||
move_grab_button(struct wl_pointer_grab *grab,
|
||||
uint32_t time, int32_t button, int32_t state)
|
||||
{
|
||||
struct wl_input_device *device = grab->input_device;
|
||||
|
||||
if (device->button_count == 0 && state == 0) {
|
||||
wl_input_device_end_grab(device, time);
|
||||
wl_input_device_end_pointer_grab(device, time);
|
||||
free(grab);
|
||||
}
|
||||
}
|
||||
|
||||
static const struct wl_grab_interface move_grab_interface = {
|
||||
static const struct wl_pointer_grab_interface move_grab_interface = {
|
||||
noop_grab_focus,
|
||||
move_grab_motion,
|
||||
move_grab_button,
|
||||
|
|
@ -207,7 +207,7 @@ weston_surface_move(struct weston_surface *es,
|
|||
move->dy = es->geometry.y - wd->input_device.grab_y;
|
||||
move->surface = es;
|
||||
|
||||
wl_input_device_start_grab(&wd->input_device, &move->grab, time);
|
||||
wl_input_device_start_pointer_grab(&wd->input_device, &move->grab, time);
|
||||
|
||||
wl_input_device_set_pointer_focus(&wd->input_device, NULL, time, 0, 0);
|
||||
|
||||
|
|
@ -231,14 +231,14 @@ shell_surface_move(struct wl_client *client, struct wl_resource *resource,
|
|||
}
|
||||
|
||||
struct weston_resize_grab {
|
||||
struct wl_grab grab;
|
||||
struct wl_pointer_grab grab;
|
||||
uint32_t edges;
|
||||
int32_t width, height;
|
||||
struct shell_surface *shsurf;
|
||||
};
|
||||
|
||||
static void
|
||||
resize_grab_motion(struct wl_grab *grab,
|
||||
resize_grab_motion(struct wl_pointer_grab *grab,
|
||||
uint32_t time, int32_t x, int32_t y)
|
||||
{
|
||||
struct weston_resize_grab *resize = (struct weston_resize_grab *) grab;
|
||||
|
|
@ -275,18 +275,18 @@ resize_grab_motion(struct wl_grab *grab,
|
|||
}
|
||||
|
||||
static void
|
||||
resize_grab_button(struct wl_grab *grab,
|
||||
resize_grab_button(struct wl_pointer_grab *grab,
|
||||
uint32_t time, int32_t button, int32_t state)
|
||||
{
|
||||
struct wl_input_device *device = grab->input_device;
|
||||
|
||||
if (device->button_count == 0 && state == 0) {
|
||||
wl_input_device_end_grab(device, time);
|
||||
wl_input_device_end_pointer_grab(device, time);
|
||||
free(grab);
|
||||
}
|
||||
}
|
||||
|
||||
static const struct wl_grab_interface resize_grab_interface = {
|
||||
static const struct wl_pointer_grab_interface resize_grab_interface = {
|
||||
noop_grab_focus,
|
||||
resize_grab_motion,
|
||||
resize_grab_button,
|
||||
|
|
@ -315,7 +315,7 @@ weston_surface_resize(struct shell_surface *shsurf,
|
|||
resize->height = shsurf->surface->geometry.height;
|
||||
resize->shsurf = shsurf;
|
||||
|
||||
wl_input_device_start_grab(&wd->input_device, &resize->grab, time);
|
||||
wl_input_device_start_pointer_grab(&wd->input_device, &resize->grab, time);
|
||||
|
||||
wl_input_device_set_pointer_focus(&wd->input_device, NULL, time, 0, 0);
|
||||
|
||||
|
|
@ -515,7 +515,7 @@ shell_surface_set_fullscreen(struct wl_client *client,
|
|||
}
|
||||
|
||||
static void
|
||||
popup_grab_focus(struct wl_grab *grab, uint32_t time,
|
||||
popup_grab_focus(struct wl_pointer_grab *grab, uint32_t time,
|
||||
struct wl_surface *surface, int32_t x, int32_t y)
|
||||
{
|
||||
struct wl_input_device *device = grab->input_device;
|
||||
|
|
@ -533,7 +533,7 @@ popup_grab_focus(struct wl_grab *grab, uint32_t time,
|
|||
}
|
||||
|
||||
static void
|
||||
popup_grab_motion(struct wl_grab *grab,
|
||||
popup_grab_motion(struct wl_pointer_grab *grab,
|
||||
uint32_t time, int32_t sx, int32_t sy)
|
||||
{
|
||||
struct wl_resource *resource;
|
||||
|
|
@ -545,7 +545,7 @@ popup_grab_motion(struct wl_grab *grab,
|
|||
}
|
||||
|
||||
static void
|
||||
popup_grab_button(struct wl_grab *grab,
|
||||
popup_grab_button(struct wl_pointer_grab *grab,
|
||||
uint32_t time, int32_t button, int32_t state)
|
||||
{
|
||||
struct wl_resource *resource;
|
||||
|
|
@ -561,7 +561,7 @@ popup_grab_button(struct wl_grab *grab,
|
|||
time - shsurf->popup.time > 500)) {
|
||||
wl_resource_post_event(&shsurf->resource,
|
||||
WL_SHELL_SURFACE_POPUP_DONE);
|
||||
wl_input_device_end_grab(grab->input_device, time);
|
||||
wl_input_device_end_pointer_grab(grab->input_device, time);
|
||||
shsurf->popup.grab.input_device = NULL;
|
||||
}
|
||||
|
||||
|
|
@ -569,7 +569,7 @@ popup_grab_button(struct wl_grab *grab,
|
|||
shsurf->popup.initial_up = 1;
|
||||
}
|
||||
|
||||
static const struct wl_grab_interface popup_grab_interface = {
|
||||
static const struct wl_pointer_grab_interface popup_grab_interface = {
|
||||
popup_grab_focus,
|
||||
popup_grab_motion,
|
||||
popup_grab_button,
|
||||
|
|
@ -607,7 +607,7 @@ shell_map_popup(struct shell_surface *shsurf, uint32_t time)
|
|||
shsurf->popup.time = device->grab_time;
|
||||
shsurf->popup.initial_up = 0;
|
||||
|
||||
wl_input_device_start_grab(shsurf->popup.grab.input_device,
|
||||
wl_input_device_start_pointer_grab(shsurf->popup.grab.input_device,
|
||||
&shsurf->popup.grab, shsurf->popup.time);
|
||||
}
|
||||
|
||||
|
|
@ -643,7 +643,7 @@ destroy_shell_surface(struct wl_resource *resource)
|
|||
struct shell_surface *shsurf = resource->data;
|
||||
|
||||
if (shsurf->popup.grab.input_device)
|
||||
wl_input_device_end_grab(shsurf->popup.grab.input_device, 0);
|
||||
wl_input_device_end_pointer_grab(shsurf->popup.grab.input_device, 0);
|
||||
|
||||
/* in case cleaning up a dead client destroys shell_surface first */
|
||||
if (shsurf->surface)
|
||||
|
|
@ -1045,7 +1045,7 @@ terminate_binding(struct wl_input_device *device, uint32_t time,
|
|||
}
|
||||
|
||||
static void
|
||||
rotate_grab_motion(struct wl_grab *grab,
|
||||
rotate_grab_motion(struct wl_pointer_grab *grab,
|
||||
uint32_t time, int32_t x, int32_t y)
|
||||
{
|
||||
struct rotate_grab *rotate =
|
||||
|
|
@ -1096,7 +1096,7 @@ rotate_grab_motion(struct wl_grab *grab,
|
|||
}
|
||||
|
||||
static void
|
||||
rotate_grab_button(struct wl_grab *grab,
|
||||
rotate_grab_button(struct wl_pointer_grab *grab,
|
||||
uint32_t time, int32_t button, int32_t state)
|
||||
{
|
||||
struct rotate_grab *rotate =
|
||||
|
|
@ -1107,12 +1107,12 @@ rotate_grab_button(struct wl_grab *grab,
|
|||
if (device->button_count == 0 && state == 0) {
|
||||
weston_matrix_multiply(&surface->rotation.rotation,
|
||||
&rotate->rotation);
|
||||
wl_input_device_end_grab(device, time);
|
||||
wl_input_device_end_pointer_grab(device, time);
|
||||
free(rotate);
|
||||
}
|
||||
}
|
||||
|
||||
static const struct wl_grab_interface rotate_grab_interface = {
|
||||
static const struct wl_pointer_grab_interface rotate_grab_interface = {
|
||||
noop_grab_focus,
|
||||
rotate_grab_motion,
|
||||
rotate_grab_button,
|
||||
|
|
@ -1158,7 +1158,7 @@ rotate_binding(struct wl_input_device *device, uint32_t time,
|
|||
surface->surface->geometry.height / 2,
|
||||
&rotate->center.x, &rotate->center.y);
|
||||
|
||||
wl_input_device_start_grab(device, &rotate->grab, time);
|
||||
wl_input_device_start_pointer_grab(device, &rotate->grab, time);
|
||||
|
||||
dx = device->x - rotate->center.x;
|
||||
dy = device->y - rotate->center.y;
|
||||
|
|
@ -1234,7 +1234,7 @@ click_to_activate_binding(struct wl_input_device *device,
|
|||
struct weston_surface *focus;
|
||||
|
||||
focus = (struct weston_surface *) device->pointer_focus;
|
||||
if (state && focus && device->grab == &device->default_grab)
|
||||
if (state && focus && device->pointer_grab == &device->default_pointer_grab)
|
||||
activate(compositor->shell, focus, wd, time);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue