aboutsummaryrefslogtreecommitdiff
path: root/backend
AgeCommit message (Collapse)Author
2018-02-10Merge pull request #618 from VincentVanlaer/atomic-gammaDrew DeVault
Add atomic gamma control
2018-02-10Merge pull request #623 from martinetd/mesonoptDrew DeVault
Meson option enhancements
2018-02-10meson build: only link with deps when required by optionsDominique Martinet
2018-02-10meson.build status: print actual build options in messageDominique Martinet
We were printing the option intent (true by default for all), but some are disabled when a component is not found and this was not reflected.
2018-02-10Fallback gamma on legacy if properties don't existVincent Vanlaer
2018-02-09Swap buffers with damageemersion
2018-02-09Use VLA instead of heap allocVincent Vanlaer
2018-02-09Fix styleVincent Vanlaer
2018-02-09Free gamma when property blob creation failsVincent Vanlaer
2018-02-09Set needs_swap on output when gamma changesVincent Vanlaer
2018-02-09Do not allow gamma control without a crtcVincent Vanlaer
2018-02-09Add atomic gamma lut size fetchingVincent Vanlaer
Legacy gamma lut size now uses the new legacy_crtc member of wlr_drm_crtc. This was Previously doen using old_crtc in wlr_drm_connector, but since this refers to the crtc that was connected to the ouput, this could give the wrong result.
2018-02-09Add atomic gamma settingVincent Vanlaer
2018-02-09Merge remote-tracking branch 'upstream/master' into output-damageemersion
2018-02-06prevents reuse of outdated wlr_output stateMarkus Ongyerth
On the drm output the wlr_drm_connector structs are reused. This struct contains the wlr_output struct, which is reused as well. The old code kept modes/edid and output state persistent over hotplug. This nulls the relevant strings, reads newer edid data and removes old modes on unplug.
2018-02-03Merge remote-tracking branch 'upstream/master' into output-damageemersion
2018-02-02backend/drm: update output enabled property on modesetemersion
2018-02-02backend/drm: support updating cursor when session is pausedemersion
2018-01-30backend: fix use-after-free when destroying backendsemersion
The backend destroy signal is emitted before the output_remove signal is. When the destroy signal is emitted listeners remove their output_remove listener, so the output_remove signal is never received and listeners have an invalid output pointer. The correct way to solve this would be to remove the output_remove signal completely and use the wlr_output.events.destroy signal instead. This isn't yet possible because wl_signal_emit is unsafe and listeners cannot be removed in listeners.
2018-01-30Fix some typosGuido Günther
Prefer initialize over initialise since used more often in the sources.
2018-01-30output: fix performance issues with wlr_output_schedule_frameemersion
2018-01-30Merge pull request #594 from Ongy/drm-surface-buffersemersion
relases gbm buffers on init
2018-01-30backend/drm: fix hw cursor position on rotated and scaled outputsemersion
output: add wlr_output_transformed_resolution
2018-01-29Merge remote-tracking branch 'upstream/master' into output-damageemersion
2018-01-29Merge pull request #580 from emersion/screenshooter-renderer-backportTony Crisci
Backport screenshooter fixes from the renderer redesign v1
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-28backend/drm: do not retry pageflip when swapping buffersemersion
2018-01-28Do not flush damage if swapping buffers failedemersion
This should solve issues with multiple outputs on DRM backend.
2018-01-28Merge remote-tracking branch 'upstream/master' into output-damageemersion
2018-01-28meson: add systemd/elogind backends only if enabledPatrick Steinhardt
Right now, we are adding systemd and elogind backends to the build system as soon as their libraries are found on the build system. Instead, we should only add them if the libraries have been found _and_ the user has actually requested them to be included.
2018-01-27drm: Use ptrdiff_t instead of intmax_t in format stringGuido Günther
since we're looking at pointer differences. Otherwise the build fails on arm like In file included from ../backend/drm/drm.c:19:0: ../include/wlr/util/log.h:34:17: error: format '%jd' expects argument of type 'intmax_t', but argument 7 has type 'int' [-Werror=format=] _wlr_log(verb, "[%s:%d] " fmt, _strip_path(__FILE__), __LINE__, ##__VA_ARGS__) ^ ../backend/drm/drm.c:462:2: note: in expansion of macro 'wlr_log' wlr_log(L_DEBUG, "%s: crtc=%ju ovr=%jd pri=%jd cur=%jd", conn->output.name, ^~~~~~~ ../backend/drm/drm.c:462:39: note: format string is defined here wlr_log(L_DEBUG, "%s: crtc=%ju ovr=%jd pri=%jd cur=%jd", conn->output.name, ~~^ %d
2018-01-27Fix flickering when switching VTemersion
2018-01-26output: add wlr_output_schedule_frameemersion
2018-01-26Damage tracking for transformed outputsemersion
2018-01-24Clean up session signal handler on drm init failVincent Vanlaer
2018-01-23Backport screenshooter fixes from the renderer redesign v1emersion
This backports some changes to #319 to fix the screenshooter data format. This also adds wlr_backend_get_renderer which will be useful to support multiple renderers.
2018-01-21Merge remote-tracking branch 'upstream/master' into output-damageemersion
2018-01-21Add con/crtc null check to move_cursor in drmTimidger
2018-01-21Added crtc null check for other drm funcsTimidger
2018-01-21Fixes #575Timidger
2018-01-21style: add comment to empty while loop in logind.cJohannes Schramm
2018-01-21style: include brackets for if/while/for, even if it's a single statementJohannes Schramm
2018-01-21output: add damage tracking via buffer ageemersion
2018-01-20backend/x11: force rendering the whole outputemersion
2018-01-20backend/drm: fix hardware cursors not movingemersion
This adds back `wlr_output::needs_swap`. This allows a backend to request buffer swaps even if the output isn't damaged. This is needed by the DRM backend to trigger pageflips when the cursor moves.
2018-01-19backend/drm: do not try a pageflip is another one is in pendingemersion
2018-01-19backend/drm: fix retry pageflipemersion
2018-01-18output: add wlr_output::damage, fixes #572emersion
2018-01-18backend/wayland: fix segfault in wlr_wl_output_destroyemersion