aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-09-18Implement pointer-constraints protocol in wlroots and rootstonLas
2018-09-18Make wlr_seat->data in rootston point to the wrapping roots_seatLas
2018-09-18Add wlr_surface::input_region memberLas
This is analogous to the opaque_region member. In addition the code for setting the opaque region is cleaned up.
2018-09-18Remove extraneous indentation and conform to coding styleLas
2018-09-18Update pointer focus when cycling focusLas
2018-09-18Make (wlr_)seat_client_from_pointer_resource publicLas
2018-09-18Make roots_cursor::pointer_view available even if there is a surfaceLas
To find out whether there was a surface or not before a movement, the member roots_cursor::wlr_surface has been added.
2018-09-18Add focus change event for seatsLas
2018-09-17Merge pull request #1250 from arandomhuman/wlr_sessionDrew DeVault
Add support for WLR_SESSION env variable
2018-09-18Add support for WLR_SESSION env variablerandom human
Valid values are "logind"/"systemd" and "direct". If WLR_SESSION is set, only its value is potentially tried; it will not try any other option.
2018-09-17Merge pull request #1246 from emersion/output-layout-no-modeDrew DeVault
output-layout: don't expose outputs without a mode
2018-09-17output-layout: don't expose outputs without a modeemersion
2018-09-16Merge pull request #1237 from emersion/disabled-crtcDrew DeVault
Steal CRTCs from disabled outputs
2018-09-15backend/drm: steal CRTCs from disabled outputsemersion
This commit allows outputs that need a CRTC to steal it from user-disabled outputs. Note that in the case there are enough CRTCs, disabled outputs don't loose it (so there's no modeset and plane initialization needed after DPMS). CRTC allocation still prefers to keep the old configuration, even if that means allocating an extra CRTC to a disabled output. CRTC reallocation now happen when enabling/disabling an output as well as when trying to modeset. When enabling an output without a CRTC, we realloc to try to steal a CRTC from a disabled output (that doesn't really need the CRTC). When disabling an output, we try to give our CRTC to an output that needs one. Modesetting is similar to enabling. A new DRM connector field has been added: `desired_enabled`. Outputs without CRTCs get automatically disabled. This field keeps track of the state desired by the user, allowing to automatically re-enable outputs when a CRTC becomes free. This required some changes to the allocation algorithm. Previously, the algorithm tried to keep the previous configuration even if a new configuration with a better score was possible (it only changed configuration when the old one didn't work anymore). This is now changed and the old configuration (still preferred) is only retained without considering new possibilities when it's perfect (all outputs have CRTCs). User-disabled outputs now have `possible_crtcs` set to 0, meaning they can only retain a previous CRTC (not acquire a new one). The allocation algorithm has been updated to do not bump the score when assigning a CRTC to a disabled output.
2018-09-14Merge pull request #1241 from emersion/output-enable-error-checkingDrew DeVault
output: make wlr_output_enable return a bool
2018-09-14Merge pull request #1243 from emersion/layer-shell-suffixDrew DeVault
layer-shell: add _v1 suffix
2018-09-14Merge pull request #1244 from emersion/xdg-output-suffixDrew DeVault
xdg-output: add _v1 suffix
2018-09-14Merge pull request #1240 from emersion/no-hardware-cursorsDrew DeVault
output: introduce WLR_NO_HARDWARE_CURSORS
2018-09-14layer-shell: add _v1 suffixemersion
2018-09-14xdg-output: add _v1 suffixemersion
2018-09-14output: make wlr_output_enable return a boolemersion
2018-09-14output: introduce WLR_NO_HARDWARE_CURSORSemersion
2018-09-12Merge pull request #1160 from Ongy/tablet-grabsemersion
Tablet grabs
2018-09-11Merge pull request #1239 from dcz-purism/layer_order_masterDrew DeVault
rootston: Keep older anchored layers near anchor points
2018-09-11rootston: Keep older anchored layers near anchor pointsDorota Czaplejewicz
Layer surfaces are attached to edges of the screen starting with the youngest, causing new ones to always displace existing ones. This changes the order to oldest first, keeping the positions more often.
2018-09-10Merge pull request #1235 from emersion/dealloc-unused-crtcsDrew DeVault
backend/drm: de-allocate unused CRTCs
2018-09-10Merge pull request #1227 from emersion/rootston-segfault-tablet-destroyDrew DeVault
rootston: fix segfault on tablet pad destroy
2018-09-10Merge pull request #1205 from sghctoma/fix-freebsd-direct-sessionDrew DeVault
Add drmSetMaster and drmDropMaster calls to FreeBSD direct session
2018-09-10backend/drm: de-allocate unused CRTCsemersion
They can be re-used by another output after a subsequent hotplug.
2018-09-10Merge pull request #1234 from mntmn/masteremersion
fix cursor loss w/ legacy drm and software cursor (tested on etnaviv)
2018-09-10fix cursor loss w/ legacy drm and software cursor (tested on etnaviv)mntmn
2018-09-08Implement feedbackMarkus Ongyerth
2018-09-08Merge pull request #1233 from nyorain/fix/xwayland_destroyemersion
Fix wlr_xwayland_destroy
2018-09-08Fix wlr_xwayland_destroynyorain
2018-09-07Fix build failure on non-FreeBSD systemssghctoma
Accidentally included the FreeBSD-specific dev/evdev/input.h file on other systems too. This commit fixes that.
2018-09-07Implement device type discovery using ioctl callssghctoma
This commit implements device type discovery by calling two ioctls (DRM_IOCTL_VERSION and EVIOCGVERSION) on the device. These iocts are specific to drm and input devices respectively, therefore we can determine the device type based on which one returns an error.
2018-09-07Merge remote-tracking branch 'upstream/master' into fix-freebsd-direct-sessionsghctoma
2018-09-07Merge pull request #1232 from nyorain/fix/dnd-offsetemersion
Fix #1129
2018-09-07Fix #1129 and remove sx, sy from wlr_drag_iconnyorain
sx, sy used to store the buffer offset of the drag surface which was then be added (by rootston) to the drag icon position. Buffer offsets are handled already in surface_intersect_output (output.c) so they were added twice for dnd surfaces.
2018-09-05Merge pull request #1229 from emersion/drm-hotplug-fixesDrew DeVault
backend/drm: better hotplug handling
2018-09-05Merge pull request #1231 from ascent12/editorconfigDrew DeVault
Remove indent_size from .editorconfig
2018-09-05Remove indent_size from .editorconfigScott Anderson
Some of us like to use different indent sizes.
2018-09-04backend/drm: damage outputs when switching CRTCsemersion
2018-09-04backend/drm: cosmetic enhancementsemersion
2018-09-04backend/drm: consider continue not using resourcesemersion
Fixes #1230
2018-09-04backend/drm: prevent use of uninitialized dataemersion
2018-09-04backend/drm: remove unused ifemersion
2018-09-04backend/drm: log when de-allocating CRTCemersion
2018-09-04backend/drm: better hotplug handlingemersion
This commit handles better situations in which the number of connected outputs is greater than the number of available CRTCs. It'll enable as many outputs as possible, and transfer CRTCs to outputs that need one on unplug. This changes CRTC and plane reallocation to happen after scanning DRM connectors instead of on modeset. This cleanups CRTCs and planes on unplug to allow them to be re-used for other outputs. On modeset, if an output doesn't have a CRTC, the desired mode is saved and used later when the output gains a CRTC. Future work includes giving priority to enabled outputs over disabled ones for CRTC allocation. This requires the compositor to know about all outputs (even outputs without CRTCs) to properly modeset outputs enabled in the compositor config file and disable outputs disabled in the config file.
2018-09-03Merge pull request #1213 from arandomhuman/wlr_log_get_verbosityDrew DeVault
Add wlr_log_get_verbosity method