aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/xwayland
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/hw/xwayland')
-rw-r--r--xorg-server/hw/xwayland/Makefile.am1
-rw-r--r--xorg-server/hw/xwayland/xwayland-glamor.c6
-rw-r--r--xorg-server/hw/xwayland/xwayland-input.c7
-rw-r--r--xorg-server/hw/xwayland/xwayland.c2
4 files changed, 11 insertions, 5 deletions
diff --git a/xorg-server/hw/xwayland/Makefile.am b/xorg-server/hw/xwayland/Makefile.am
index 4e0e1bb00..994554088 100644
--- a/xorg-server/hw/xwayland/Makefile.am
+++ b/xorg-server/hw/xwayland/Makefile.am
@@ -26,7 +26,6 @@ Xwayland_LDADD = \
$(XWAYLAND_LIBS) \
$(XWAYLAND_SYS_LIBS) \
$(XSERVER_SYS_LIBS)
-Xwayland_DEPENDENCIES = $(XWAYLAND_LIBS)
Xwayland_LDFLAGS = $(LD_EXPORT_SYMBOLS_FLAG)
diff --git a/xorg-server/hw/xwayland/xwayland-glamor.c b/xorg-server/hw/xwayland/xwayland-glamor.c
index 4be883fa3..dd8551840 100644
--- a/xorg-server/hw/xwayland/xwayland-glamor.c
+++ b/xorg-server/hw/xwayland/xwayland-glamor.c
@@ -137,6 +137,9 @@ xwl_glamor_create_pixmap_for_bo(ScreenPtr screen, struct gbm_bo *bo, int depth)
glGenTextures(1, &xwl_pixmap->texture);
glBindTexture(GL_TEXTURE_2D, xwl_pixmap->texture);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
+
glEGLImageTargetTexture2DOES(GL_TEXTURE_2D, xwl_pixmap->image);
glBindTexture(GL_TEXTURE_2D, 0);
@@ -398,9 +401,8 @@ xwl_screen_init_glamor(struct xwl_screen *xwl_screen,
}
void
-glamor_egl_destroy_textured_pixmap(PixmapPtr pixmap)
+glamor_egl_destroy_pixmap_image(PixmapPtr pixmap)
{
- glamor_destroy_textured_pixmap(pixmap);
}
int
diff --git a/xorg-server/hw/xwayland/xwayland-input.c b/xorg-server/hw/xwayland/xwayland-input.c
index b8c543ce4..5e204189f 100644
--- a/xorg-server/hw/xwayland/xwayland-input.c
+++ b/xorg-server/hw/xwayland/xwayland-input.c
@@ -233,6 +233,9 @@ pointer_handle_button(void *data, struct wl_pointer *pointer, uint32_t serial,
xwl_seat->xwl_screen->serial = serial;
switch (button) {
+ case BTN_LEFT:
+ index = 1;
+ break;
case BTN_MIDDLE:
index = 2;
break;
@@ -240,7 +243,9 @@ pointer_handle_button(void *data, struct wl_pointer *pointer, uint32_t serial,
index = 3;
break;
default:
- index = button - BTN_LEFT + 1;
+ /* Skip indexes 4-7: they are used for vertical and horizontal scroll.
+ The rest of the buttons go in order: BTN_SIDE becomes 8, etc. */
+ index = 8 + button - BTN_SIDE;
break;
}
diff --git a/xorg-server/hw/xwayland/xwayland.c b/xorg-server/hw/xwayland/xwayland.c
index 37d6d8270..7e8d667d6 100644
--- a/xorg-server/hw/xwayland/xwayland.c
+++ b/xorg-server/hw/xwayland/xwayland.c
@@ -513,9 +513,9 @@ xwl_screen_init(ScreenPtr pScreen, int argc, char **argv)
int ret, bpc, green_bpc, i;
xwl_screen = calloc(sizeof *xwl_screen, 1);
- xwl_screen->wm_fd = -1;
if (xwl_screen == NULL)
return FALSE;
+ xwl_screen->wm_fd = -1;
if (!dixRegisterPrivateKey(&xwl_screen_private_key, PRIVATE_SCREEN, 0))
return FALSE;