aboutsummaryrefslogtreecommitdiff
path: root/backend/drm/renderer.c
AgeCommit message (Collapse)Author
2018-05-25backends: implement custom EGL and renderer initializationIlia Bozhinov
Compositors now have more control over how the backend creates its renderer. Currently all backends create an EGL/GLES2 renderer, so the necessary attributes for creating the context are passed to a user-provided callback function. It is responsible for initializing provided wlr_egl and to return a renderer. On fail, return 0. Fixes #987
2018-04-25Make sure we don't use others' prefixesemersion
2018-04-25Remove wlr_ prefix from local symbolsemersion
2018-04-25render/egl: allow passing NULL to surface and image destructorsemersion
2018-04-24render/egl: add wlr_egl_destroy_surfaceemersion
2018-03-31Untie wlr_backend from wlr_rendereremersion
2018-03-26Use DRM_FORMAT_MOD_LINEAR instead of a hardcoded constantemersion
2018-03-24Redesign wlr_textureemersion
- Textures are now immutable (apart from those created from raw pixels), no more invalid textures - Move all wl_drm stuff in wlr_renderer - Most of wlr_texture fields are now private - Remove some duplicated DMA-BUF code in the DRM backend - Add more assertions - Stride is now always given as bytes rather than pixels - Drop wl_shm functions Fun fact: this patch has been written 10,000 meters up in the air.
2018-03-23Merge branch 'master' into gles2-renderer-redesignemersion
2018-03-21render/egl: use EGL_KHR_debugemersion
2018-03-21render/gles2: make wlr_renderer_begin take viewport sizeemersion
This allows raw GL calls outside wlr_renderer to be removed.
2018-03-19render: split render.h into wlr_renderer.h and wlr_texture.hemersion
2018-03-18backend/drm: don't hardcode matrixemersion
2018-03-15matrix: use 2D matricesemersion
2018-03-15matrix: unify API, don't use array pointersemersion
2018-03-15matrix: move to types/emersion
2018-02-25Add alpha to wlr_render_with_matrixGuido Günther
so we can use the alpha channel to e.g. blend in textures
2018-02-12Reformat all #include directivesemersion
2018-02-09Swap buffers with damageemersion
2018-02-03Merge remote-tracking branch 'upstream/master' into output-damageemersion
2018-01-29Clean up the gbm/egl as wellMarkus Ongyerth
2018-01-29relases gbm buffers on initMarkus Ongyerth
The wlr_drm_surface_init function is called (upon others) when the drm mode is changed. When the surface was used previously this replaced the gbm_surface, but did not replace the gbm buffers (front/back). With this, wlr_drm_surface_get_from never set up the new buffers with the new glViewport because surf->front existed. This frees the buffers to get new buffers on the new surface with the new viewport.
2018-01-21output: add damage tracking via buffer ageemersion
2017-12-17Refactor wlr_egl_init to accept config_attribsemersion
2017-12-08Listen to display destroy in xwayland, rename wlr_egl_freeemersion
2017-11-30Use correct include path for glapi.hScott Anderson
2017-10-22Move egl.h to render/egl.hScott Anderson
2017-10-08Add GL/EGL extension loader generatorScott Anderson
2017-10-01Minor fixesScott Anderson
2017-10-01Multi-GPU DRMScott Anderson
2017-10-01Add renderer pointer inside drm_surfaceScott Anderson
2017-09-30Split DRM rendering to its own fileScott Anderson