aboutsummaryrefslogtreecommitdiff
path: root/backend
AgeCommit message (Collapse)Author
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-02backend/drm: update output enabled property on modesetemersion
2018-01-30Fix some typosGuido Günther
Prefer initialize over initialise since used more often in the sources.
2018-01-30Merge pull request #594 from Ongy/drm-surface-buffersemersion
relases gbm buffers on init
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-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-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-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-15Merge pull request #549 from emersion/output-enabledDrew DeVault
Add wlr_output::enabled
2018-01-15drm: do not pageflip when enabling outputemersion
2018-01-15Don't crash if crtc->cursor is NULLGuido Günther
Same as what atomic_crtc_set_cursor does Core was generated by `_build/rootston/rootston'. Program terminated with signal SIGSEGV, Segmentation fault. 0 0xb6f28a1c in atomic_crtc_move_cursor (drm=0x1ebc8e8, crtc=0x1ead498, x=0, y=0) at ../backend/drm/atomic.c:170 170 if (!crtc || !crtc->cursor) { (gdb) bt 0 0xb6f28a1c in atomic_crtc_move_cursor (drm=0x1ebc8e8, crtc=0x1ead498, x=0, y=0) at ../backend/drm/atomic.c:170 1 0xb6f2a856 in wlr_drm_connector_move_cursor (output=0x2242b28, x=0, y=0) at ../backend/drm/drm.c:634 2 0xb6f3cea0 in wlr_output_cursor_set_image (cursor=0x21a0338, pixels=0x22e1290 "", stride=24, width=24, height=24, hotspot_x=4, hotspot_y=4) at ../types/wlr_output.c:516 3 0xb6f39da2 in wlr_cursor_set_image (cur=0x22cfc90, pixels=0x22e1290 "", stride=24, width=24, height=24, hotspot_x=4, hotspot_y=4, scale=1) at ../types/wlr_cursor.c:310 4 0xb6f44d2a in wlr_xcursor_manager_set_cursor_image (manager=0x22cfd10, name=0x434420 "left_ptr", cursor=0x22cfc90) at ../types/wlr_xcursor_manager.c:80 5 0x00431c0a in roots_seat_configure_xcursor (seat=0x22cef08) at ../rootston/seat.c:515 6 0x0043137c in roots_seat_init_cursor (seat=0x22cef08) at ../rootston/seat.c:210 7 0x004315ec in roots_seat_create (input=0x218d220, name=0x434594 "seat0") at ../rootston/seat.c:289 8 0x0042ecba in input_get_seat (input=0x218d220, name=0x434594 "seat0") at ../rootston/input.c:39 9 0x0042ed04 in input_add_notify (listener=0x218d228, data=0x218d3b0) at ../rootston/input.c:54 10 0xb6f2f2e6 in wl_signal_emit (signal=0x1ea548c, data=0x218d3b0) at /usr/include/wayland-server-core.h:387 11 0xb6f2f572 in input_add_reemit (listener=0x1ea9990, data=0x218d3b0) at ../backend/multi/backend.c:101 12 0xb6f2db7e in wl_signal_emit (signal=0x1ea992c, data=0x218d3b0) at /usr/include/wayland-server-core.h:387 13 0xb6f2ddaa in handle_device_added (backend=0x1ea9920, libinput_dev=0x2292598) at ../backend/libinput/events.c:87 14 0xb6f2e164 in wlr_libinput_event (backend=0x1ea9920, event=0x2292b78) at ../backend/libinput/events.c:198 15 0xb6f2d678 in wlr_libinput_readable (fd=23, mask=1, _backend=0x1ea9920) at ../backend/libinput/backend.c:28 16 0xb6f2d7c0 in wlr_libinput_backend_start (_backend=0x1ea9920) at ../backend/libinput/backend.c:74 17 0xb6f27170 in wlr_backend_start (backend=0x1ea9920) at ../backend/backend.c:30 18 0xb6f2f320 in multi_backend_start (wlr_backend=0x1ea5480) at ../backend/multi/backend.c:22 19 0xb6f27170 in wlr_backend_start (backend=0x1ea5480) at ../backend/backend.c:30 20 0x0042fbc6 in main (argc=1, argv=0xbe89dd04) at ../rootston/main.c:60
2018-01-13adds remote argument to wayland backend createMarkus Ongyerth
Add a remote display name argument to wlr_wl_backend_create. If NULL is passed to the wayland backend at all times, creating a wayland backend *after* the compositor was started up, would require changing the WAYLAND_DISPLAY environment variable.
2018-01-07Fix output enable in DRM backendemersion
2018-01-04Add wlr_output::enabledemersion
2018-01-02fix build without systemdPoroCYon
2017-12-28Remove display_destroy on multi-backend destroyTimidger
2017-12-28Merge pull request #533 from martinetd/wl_array_addDrew DeVault
ENOMEM checks: consistently check wl_array_add return
2017-12-28style: fix sizeof() calls without parenthesesDominique Martinet
2017-12-28Fixes for multiple outputsemersion
* Fixes output positions in screenshots * Fixes Wayland backend pointer events when output layout doesn't start at (0, 0)
2017-12-27config: Avoid clash with other config-headersBjörn Esser
2017-12-27Merge pull request #522 from emersion/fix-drm-output-transform-cursorTony Crisci
Fix cursor on transformed output with DRM backend
2017-12-26config: Put all defines into config.hBjörn Esser
2017-12-26Fix cursor on transformed output with DRM backendemersion
2017-12-23Add libdrm as a dependency of wlr_backendMichael Weiss
Without this patch I'm getting the following build error when building with Nix: FAILED: backend/wlr_backend@sta/session_direct-ipc.c.o In file included from ../backend/session/direct-ipc.c:20:0: /nix/store/9ac27wk5vh47p28gladbdfafpidrx9rh-libdrm-2.4.88-dev/include/xf86drm.h:40:17: fatal error: drm.h: No such file or directory #include <drm.h> ^ compilation terminated.
2017-12-21only add first backend to multi autocreateTony Crisci
2017-12-21autocreate backend returns null instead of emptyTony Crisci
2017-12-21handle display destroyTony Crisci
2017-12-20backend add and remove eventsTony Crisci
2017-12-20rootston: handle backend creation failedTony Crisci
2017-12-19always return multibakend from autocreateTony Crisci
2017-12-19multibackend remove subbackendTony Crisci
2017-12-19subbackend state destroyTony Crisci
2017-12-19remove session from multibackendTony Crisci
2017-12-19add backend destroy eventTony Crisci
2017-12-19x11 backend: add wlr_input_device_is_x11Dominique Martinet
2017-12-19wl backend: add wlr_input_device_is_wlDominique Martinet
2017-12-19headless backend: add wlr_output_is_headlessDominique Martinet
2017-12-19headless backend: add wlr_input_device_is_headlessDominique Martinet
2017-12-19drm backend: add wlr_output_is_drmDominique Martinet
2017-12-19wl backend: add wlr_output_is_wlDominique Martinet
2017-12-19x11 backend: add wlr_output_is_x11Dominique Martinet
2017-12-19libinput backend: add wlr_input_device_is_libinputDominique Martinet