summaryrefslogtreecommitdiffstats
path: root/src/egl/wayland
Commit message (Collapse)AuthorAgeFilesLines
* wayland: Don't leak wl_drm global when unbinding displayAnder Conselvan de Oliveira2013-10-221-2/+5
|
* egl-wayland: Add support for RGB565 pixel format for Wayland clientsSingh, Satyeshwar2013-10-151-0/+3
| | | | | | | With this patch Wayland clients can now ask EGL for RGB 565 format buffers and attach them to a Wayland compositor. Signed-off-by: Kristian Høgsberg <[email protected]>
* wayland: Don't rely on static variable for identifying wl_drm buffersKristian Høgsberg2013-10-112-10/+12
| | | | | | | | | | | | Now that libEGL has been fixed to not leak all kinds of symbols, gbm links to its own copy of the libwayland-drm.a helper library. That means we can't rely on comparing the addresses of a static vtable symbol in that library to determine if a wl_buffer is a wl_drm_buffer. Instead, we move the vtable into the wl_drm struct and use that for comparing. https://bugs.freedesktop.org/show_bug.cgi?id=69437 Cc: 9.2 <[email protected]>
* wayland-egl.pc requires wayland-client.pc.Torsten Duwe2013-09-111-0/+1
| | | | | | | | | Mesa provides the wayland-egl libs and the pkgconfig file, but the headers originate from the wayland package. Ensure everything matches, by requiring application builds to look at the wayland headers as well. Signed-off-by: Torsten Duwe <[email protected]> Signed-off-by: Johannes Obermayr <[email protected]>
* egl: Do not export private symbolsChad Versace2013-08-082-0/+2
| | | | | | | | | | | | | | | | | | | | | | libEGL was incorrectly exporting *all* symbols, public and private. This patch adds -fvisibility=hidden to libEGL's linker flags to ensure that only symbols annotated with __attribute__((visibility("default"))) get exported. Sanity-checked with libEGL's builtin DRI2 driver and the i965 DRI driver by running Piglit on X/EGL and by running weston-gears on Weston as an X client. Sanity-checked with libEGL's Gallium driver (which is not built-in) and the swrast Gallium driver by running es2gears_x11. Kristian reviewed the symbol diff in `nm libEGL.so`. CC: "9.2" <[email protected]> CC: Ian Romanick <[email protected]> Acked-by: Kristian Høgsberg <[email protected]> Reviewed-by: Jakob Bornecrantz <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* egl: Update to Wayland 1.2 server APIAnder Conselvan de Oliveira2013-08-072-33/+46
| | | | | | | | | | Since Wayland 1.2, struct wl_buffer and a few functions are deprecated. References to wl_buffer are replaced with wl_resource and some getter functions and calls to deprecated functions are replaced with the proper new API. The latter changes are related to resource versioning. Signed-off-by: Ander Conselvan de Oliveira <[email protected]>
* wayland: Add prime fd passing as a buffer sharing mechanismKristian Høgsberg2013-03-183-9/+67
| | | | Reviewed-by: Ander Conselvan de Oliveira <[email protected]>
* Clean up .gitignore filesMatt Turner2013-01-101-1/+0
|
* egl/wayland: Don't invalidate drawable on swap buffersAnder Conselvan de Oliveira2012-11-302-0/+8
| | | | | | | | | | | | | | | | | | | We used to invalidate the drawable after a call to eglSwapBuffers(), so that a wl_egl_window_resize() would take effect for the next frame. However, that leads to calling dri2_get_buffers() when eglMakeCurrent() is called with the current context and surface, and a later call to wl_egl_window_resize() would not take effect until the next buffer swap. Instead, add a callback from wl_egl_window_resize() back to the wayland egl platform, and invalidate the drawable only when it is resized. This solves a bug on wayland clients when going back to windowed mode from fullscreen when clicking a pop up menu, where the window size after this would be the fullscreen size. Note: this is a candidate for stable branches. CC: [email protected]
* wayland: Drop support for ill-defined, unused wl_egl_pixmapKristian Høgsberg2012-10-172-44/+0
| | | | | | It doesn't provide the cross-process buffer sharing that a window system pixmap could otherwise support and we don't have anything left that uses this type of surface.
* wayland: Remove 0.85 compatibility #ifdefsKristian Høgsberg2012-10-171-26/+0
|
* wayland: Include wl_drm format enum in wayland-drm.hKristian Høgsberg2012-07-171-1/+64
| | | | | This gets referenced before we get to generate the header files, so just include the enum that we need and don't include the generated header.
* gbm: Add new gbm_bo_import entry pointKristian Høgsberg2012-07-161-3/+0
| | | | | This generalizes and replaces gbm_bo_create_for_egl_image. gbm_bo_import will create a gbm_bo from either an EGLImage or a struct wl_buffer.
* wayland: Stop trying to use make rules from aclocal, just copy and pasteKristian Høgsberg2012-07-132-1/+8
| | | | | | | | | Defeated by autotool, copy and paste to the rescue. https://bugs.freedesktop.org/show_bug.cgi?id=51997 https://bugs.freedesktop.org/show_bug.cgi?id=51531 Signed-off-by: Kristian Høgsberg <[email protected]>
* egl: Add EGL_WAYLAND_PLANE_WL attributeKristian Høgsberg2012-07-111-1/+1
| | | | | | | This lets us specify the plane to create the image for for multiplanar wl_buffers. Signed-off-by: Kristian Høgsberg <[email protected]>
* wayland-drm: Add protocol to create planar buffersKristian Høgsberg2012-07-113-20/+90
|
* wayland-drm: Pass struct wl_drm_buffer to the driverKristian Høgsberg2012-07-112-19/+18
| | | | | We're going to extend this to support multi-plane buffers, so pass this to the driver so it can access the details.
* wayland-drm: Implement wl_buffer.damage in old versions of WaylandNeil Roberts2012-04-121-0/+26
| | | | | | | | | | | | | | | | | | Commit 272bc48976 removed the damage implementation for the wl_buffer_interface because that has been removed from git master of Wayland. However this breaks building with the 0.85 branch of Wayland because it would end up initialising the struct incorrectly. For the time being it's quite convenient for some compositors to track the 0.85 branch of Wayland because the protocol is stable but they will also want to track the master branch of Mesa so that they can use the gbm surface changes. This patch adds a compile-time check for the version of Wayland so that it can work with either Wayland master or the 0.85 branch. krh: Edited to also account for API changes in 6802eaa68, which removes the timestamp argument from wl_resource_destroy().
* wayland-drm: remove wl_buffer.damagePekka Paalanen2012-04-101-7/+0
| | | | | | | | | | | | | | | | | | | | | | | This is a related fix for the Wayland change: commit 83685c506e76212ae4e5cb722205d98d3b0603b9 Author: Kristian Høgsberg <[email protected]> Date: Mon Mar 26 16:33:24 2012 -0400 Remove wl_buffer.damage and simplify shm implementation Apparently, this should also fix a memory leak. When wl_buffer.damage was removed from Wayland and Mesa was not fixed, wl_buffer.destroy ended up in the (empty) damage function instead of calling wl_resource_destroy(). Spotted during build as: CC wayland-drm-protocol.lo wayland-drm.c:80:2: warning: initialization from incompatible pointer type wayland-drm.c:82:1: warning: excess elements in struct initializer wayland-drm.c:82:1: warning: (near initialization for 'drm_buffer_interface') Signed-off-by: Pekka Paalanen <[email protected]>
* Add Makefile.in to toplevel .gitignoreKenneth Graunke2012-03-201-1/+0
| | | | | | | To avoid redundancies, this patch also removes Makefile.in from the other .gitignore files. Acked-by: Eric Anholt <[email protected]>
* Add .deps/, .libs/, and *.la to toplevel .gitignorePaul Berry2012-03-201-4/+0
| | | | | | | To avoid redundancies, this patch also removes .deps, .libs, and *.la from .gitignore files in subdirectories. Reviewed-by: Kenneth Graunke <[email protected]>
* add wayland cflags when building wayland-eglJuan Zhao2012-01-291-1/+2
| | | | to fix the header file missing when building wayland-egl
* automake: src/egl/waylandBenjamin Franzke2012-01-268-156/+37
| | | | | | | So we can use the wayland scanner makro, which is way better than our previous runtime-pkgconfig hack. Reviewed-by: Matt Turner <[email protected]>
* wayland-drm: Drop the non-premul formats, use format codes from drm_fourcc.hKristian Høgsberg2012-01-112-9/+66
|
* egl_dri2/wayland: handle creating xrgb8888 imagesRobert Bragg2012-01-112-0/+11
| | | | | | | | | | | | | | | | | | | | When creating an EGLImage from a struct wl_buffer * this ensures that we create an XRGB8888 image if the wayland buffer doesn't have an alpha channel. To determine if a wl_buffer has a valid alpha channel this patch adds an internal wayland_drm_buffer_has_alpha() function. It's important to get the internal format for an EGLImage right so that if a GL texture is later created from the image then the GL driver will know if it should sample the alpha from the texture or flatten it to a constant of 1.0. This avoids needing fragment program workarounds in wayland compositors to manually ignore the alpha component of textures created from wayland buffers. krh: Edited to use wl_buffer_get_format() instead of wl_buffer_has_alpha(). Reviewed-by: Kristian Høgsberg <[email protected]>
* configure: replace pkg-config calls with $(PKG_CONFIG) in the makefiles.Stéphane Marchesin2011-10-041-2/+2
| | | | | | | Us poor souls who cross compile mesa want to be able to specify which pkg-config to pick, or at least just change one place. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* wayland: Use wl_resource_* error functionsKristian Høgsberg2011-09-011-10/+10
|
* wayland-drm: Fix compilation with wayland masterBenjamin Franzke2011-09-011-9/+9
| | | | c661ecce introduced some not-yet-upstream stuff.
* wayland: Track changes to drop wl_visualKristian Høgsberg2011-08-315-24/+37
|
* wayland: Track server side wayland changesKristian Høgsberg2011-08-311-34/+36
|
* wayland-drm: Add copyright notice to protocolBenjamin Franzke2011-07-271-0/+27
| | | | Fixes build since wayland 986703ac7365bc87a5501714adb9fc73157c62b7.
* Fixes for leaks reported by cppcheck.Völgyes Dávid2011-07-061-0/+1
|
* egl_dri2/wayland: Hook up new buffer.release eventBenjamin Franzke2011-06-211-2/+2
|
* wayland-drm: remove depend on "make clean"Chia-I Wu2011-06-131-0/+1
|
* wayland-drm: Check visual for being NULLBenjamin Franzke2011-05-311-1/+1
|
* wayland-egl: Remove left-over headers and structBenjamin Franzke2011-05-312-27/+1
|
* wayland-drm: Use new generic error eventKristian Høgsberg2011-05-192-16/+17
|
* egl/wayland: Follow wl_resource_destroy changesBenjamin Franzke2011-05-061-1/+1
|
* egl/wayland-drm: Generalize interfaceBenjamin Franzke2011-05-062-46/+59
| | | | Do not depend on _EGLDisplay and _EGLImage.
* egl/wayland: Follow buffer.attach removalBenjamin Franzke2011-04-221-1/+0
|
* egl/wayland: Update to buffer.damage additionBenjamin Franzke2011-04-221-4/+3
|
* egl_dri2: Create wl_buffers for pixmap surfacesBenjamin Franzke2011-04-221-0/+2
| | | | Needed since wayland-egl doesnt do this anymore.
* egl/wayland: Add new version parameter for post_drmBenjamin Franzke2011-04-221-1/+3
|
* egl/wayland: Fix prefixes for interface namesBenjamin Franzke2011-04-221-3/+3
|
* wayland-egl: Update to wayland-egl.h changes, drop struct wl_egl_displayKristian Høgsberg2011-04-202-134/+5
|
* egl/wayland-drm: Fix include pathBenjamin Franzke2011-03-261-1/+2
| | | | | | src/egl/main/egltypedefs.h needs the path for EGL/egl.h Reported by jlind on irc.
* egl/wayland: Move wayland-egl into a subdirBenjamin Franzke2011-03-045-63/+85
| | | | | This hopefully fixes wayland-egl's dependency resolution for autogenerated wayland-drm headers.
* egl/wayland: build subdirs (wayland-drm) before dependBenjamin Franzke2011-03-021-1/+1
| | | | Autogenerated files need to be generated first.
* egl: Add EGL_WL_bind_wayland_displayBenjamin Franzke2011-03-017-5/+332
|
* wayland-egl: Add struct wl_egl_display argument to +wl_egl_window_create()Kristian Høgsberg2011-02-071-1/+2
|