Skip to content

Latest commit

 

History

History
847 lines (680 loc) · 83 KB

CHANGELOG.md

File metadata and controls

847 lines (680 loc) · 83 KB

Changelog

All notable changes to Wrapland will be documented in this file.

0.601.0 (2024-06-19)

⚠ BREAKING CHANGES

  • client: subsurfaces managed with references instead of QPointers

Bug Fixes

  • server: add missing header for libc++ after 7d0be514abe7 (13e266f)
  • server: clean up lambda includes (0f72c97)
  • server: forward and move arguments correctly (e98c8e4)

Refactors

  • client: handle subsurfaces without QPointer (f3a01c2)
  • server: replace rewind with fseek (630343d)

0.600.0 (2024-02-27)

⚠ BREAKING CHANGES

  • server: Display::getClient doesn't create clients implicitly
  • server: Display::start always creates a socket.
  • server: Display::add_socket_fd removed
  • server: output API changes

Features

  • bump wlr_output_management_unstable_v1 to version 3 (63e4934)
  • client: support pointer hold gestures (0fd69f4)
  • implement security context v1 protocol (7d0be51)
  • remove output device and management protocol support (23980f3)
  • server: always create socket on start (7c66a3a)
  • server: introduce output manager (e2f5e12)
  • server: provide output state getter and setter (514c8ff)
  • server: provide way to construct output with metadata (b6d236a)
  • server: remove ability to add a socket fd (15e61ef)
  • server: remove client resource getter (ea1f175)
  • server: support pointer hold gestures (40dce4b)
  • server: support wlr_output_management_unstable_v1 (8b6a490)
  • support wlr_output_management_unstable_v1 version 4 (52ed043)
  • switch to C++20 (ea40d25)
  • use Qt 6 (87cf5bc)

Bug Fixes

  • client: destroy configuration heads (558a5ea)
  • client: set correct parent of output configuration (ac23f41)
  • emit xdg activation token as QByteArray (87a40e2)
  • server: constify functions (952fb8c)
  • server: manage output configuration lifetimes through front (183e288)
  • server: replace reference data members with pointers (7af472b)
  • server: unconstify data members (3d1c8f5)
  • server: use anonymous namespace (66dd3bc)

Refactors

  • client: set current mode without iterators (a078a9f)
  • server: create client through separate function (21b56ca)
  • server: define helper types outside output (65ca35e)
  • server: define output metadata outside of output state (2aef85b)
  • server: emit clientConnected only on implicit creation (639960c)
  • server: get and set metadata in public output API (d281763)
  • server: omit exporting WlOutput (16517b1)
  • server: reference globals in display (879c0e5)
  • server: remove createClient function (e0370fd)
  • server: remove private Display (7ff41b0)
  • server: remove setupClient function (269b61a)
  • server: remove wlr output configuration member (eb698bb)
  • server: use QThreadPool instead of QtConcurrentRun (7c2e640)
  • server: usg gsl::not_null (3065b33)

0.527.0 (2023-02-17)

0.527.0-beta.0 (2023-02-16)

⚠ BREAKING CHANGES

  • server: cursor surface is provided as raw pointer
  • server: text-input v2 surface returns raw pointer
  • server: custom surface interfaces provided as raw pointers
  • server: surface API to get confined pointers changes
  • client: xdg-toplevel configure data retrieved via single getter
  • client: xdg-toplevel state enum renamed
  • client: xdg-shell positioner API uses a separate data object
  • server: xdg-shell popup API uses a positioner object

Features

  • client: provide xdg-toplevel configure data struct (054aaa8)
  • implement ext_idle_notify_v1 (2cd9117)
  • server: provide xdg-shell positioner class (e8196d7)
  • support xdg-shell version 3 (7f0e80f)
  • support xdg-shell version 4 (23f7e95)
  • support xdg-shell version 5 (8b1cb2d)

Bug Fixes

  • client: remove size setter from public API (294926c)
  • server: constify local variables (6214bbc)
  • server: disconnect the previous surface on cursor updates (18a635a)
  • server: ensure xdg-toplevel configure size is not negative (14a9bff)
  • server: no-lint unchecked optional access (64c50a1)
  • server: provide confined pointers as raw pointers (b957049)
  • server: provide surface objects as raw pointer (87e59db)
  • server: return value at end of function (2e6f680)

Refactors

  • client: move xdg-toplevel state enum out of class (d97f5e2)
  • client: provide xdg-shell positioner resource class (bb2b749)
  • client: split out xdg-shell positioner data (900cb5d)
  • server: check positively to cleanup pointer confinements (8371c4c)
  • server: provide custom surface interfaces as raw pointers (0bf193e)
  • server: setup gesture surface in separate function (13cce0d)
  • server: store cursor surface as raw pointer (834210e)
  • server: store gesture surface as raw pointer (e80b14e)
  • server: store gesture surface in struct (0cc7ca7)
  • server: store pointer confinements as raw pointer (338e568)
  • server: store text input surface as raw pointer (779fa85)
  • server: store viewport as raw pointer (614d3a6)
  • server: update cursor with raw surface (3585014)

0.526.0 (2022-10-11)

0.526.0-beta.0 (2022-10-10)

⚠ BREAKING CHANGES

  • server: KDE idle API changes
  • server: create Plasma windows without parent, unmap them via dtor call
  • client: dmabuf modifiers in 64 bit only
  • client: dmabuf formats in vector
  • server: dmabuf modifier set once per buffer, not for each plane

Features

  • implement plasma_shell applet popup role (86fecaa)
  • implement plasma_shell open under cursor request (5cf1ede)
  • server: set one modifier per dmabuf buffer (c3e8005)
  • server: unmap Plasma windows with dtor call (a910169)
  • support org_kde_plasma_activation_feedback interface (83a0d38)
  • update to Plasma window management version 15 (9675128)
  • update to Plasma window management version 16 (68e9200)

Bug Fixes

  • bump org_kde_plasma_window_management version (8bd1320)
  • bump Plasma shell protocol version (5007208)
  • client: remove timer from windowCreated (421e811)
  • client: silence PlasmaWindowManagement clang warnings (599da6f)
  • replace emit with Q_EMIT (8eb9935)
  • server: check C-function return values (6ca253a)
  • server: correct typo in Wayland::Global (bcbf01f)
  • server: make PlasmaVirtualDesktop dtor public (306bc77)
  • server: remove duplicate include (c394f20)
  • server: remove unused attribute (9fcd0cb)
  • server: use default member initializer (ef7ff71)

Refactors

  • client: have dmabuf modifiers as 64 bit in public API (6d85ea9)
  • client: store DRM formats in vector (19ab68e)
  • server: publish KDE idle timeout objects (8b4ee06)
  • server: replace C-style casts with static casts (1664423)

0.525.0 (2022-06-14)

0.525.0-beta.0 (2022-06-12)

⚠ BREAKING CHANGES

  • client: output pointer removed from mode struct
  • client: output device modes are provided as std::vector
  • server: dmabuf API changes

Features

  • client: remove output pointer in mode type (88280c2)
  • server: close dmabuf buffer plane fds (5159ee4)
  • server: make dmabuf buffer class a POD-like type (9dc0454)
  • server: provide dmabuf import as std::function (47801c8)
  • server: receive dmabuf buffer as smart pointer (8048153)
  • server: store dmabuf buffer planes and flags (2b8fdc0)

Bug Fixes

  • add wayland-client-protocol.h in virtual_keyboard_v1.cpp (4134b7a)
  • client: use STL vector for iterator correctness (f203e3a)
  • link testLinuxDmabuf with Wayland::Client (7342423)
  • resolve xml DTD issues (bb351ba)
  • server: accept buffer damage unconditionally (758d8f0)
  • server: check global on dmabuf buffer creation (4b7da9d)
  • server: drop "wayland-server.h" in seat header (94b3fa5)
  • server: remove QObject parent argument (5b6bfb7)
  • server: workaround Xwayland issue with invalid and linear mods (c03d426)

Refactors

  • add internal dmabuf buffer resource class (b385b02)
  • server: set dmabuf formats with drm_format struct (5321d5d)

0.524.0 (2022-02-08)

0.524.0-beta.0 (2022-02-03)

⚠ BREAKING CHANGES

  • server: legacy object from resource getters are removed
  • server: Plasma windows are retrieved in STL vector
  • server: virtual desktops identified by STL strings
  • server: virtual desktops getter returns STL vector instead of QList
  • server: key pressed/released calls replaced with single key call
  • server: text-input v2 API changes
  • server: keymaps are set as C strings
  • server: compositors must send frame events
  • server: globals are created as smart pointers by the display
  • server: socket name setter signature changed
  • server: dnd action enum definition relocated
  • server: proxy remote surfaces removed
  • server: drag surface changed signal removed
  • server: data devices lose selection changed argument

Features

  • client: add support for virtual_keyboard_unstable_v1 (0596cef)
  • client: implement wlr_data_control_unstable_v1 (2d62aab)
  • client: remove data sharing selection cleared signals (f8c4fa6)
  • server: add container helper macros (f524540)
  • server: add dropped payload to drag ended signal (d9575ff)
  • server: add external data sharing sources (7369617)
  • server: add pointer frame function (dd15cd2)
  • server: add source actions send function (8f31559)
  • server: add support for virtual_keyboard_unstable_v1 (c39f41a)
  • server: allow to create DRM lease connector without an output (ec288d5)
  • server: expand data device API (c34a2af)
  • server: identify virtual desktops with STL strings (e1797aa)
  • server: implement wlr_data_control_unstable_v1 (9a49860)
  • server: provide getter for input-method popups (219e266)
  • server: remove data sharing selection cleared signals (fcfcb7c)
  • server: remove drag surface changed signal (26d6e22)
  • server: remove EGLStream controller interface (afd0993)
  • server: remove legacy resource getter functions (3088e8f)
  • server: remove selection changed payload (7b6c151)
  • server: replace proxy remote surfaces with drag movement block (6e542ee)
  • server: set keymap as raw C string (ad4f397)
  • server: signal fake input device destruction (2cff939)
  • server: store Plasma windows in STL vector (826458b)
  • server: store virtual desktops in STL vector (f0f4507)
  • server: sync input-method v2 state to text-input v3 (e449069)
  • server: sync text-input v2 to input-method v2 (3670431)
  • server: sync text-input v3 state to input-method v2 (b5d99c8)

Bug Fixes

  • client: name correct input-method grab destructor request (02c4431)
  • server: always create xdg-output (45eb0a5)
  • server: assert on input capability when accessing device pool (dd3f40a)
  • server: assume input devices are created and ensure they are removed (be3e472)
  • server: cancel old selection source after setting new one (7343c2c)
  • server: check for protocol errors before converting dnd actions (7d6c5b4)
  • server: do not reenter surfaces (74214b8)
  • server: ensure device pools are only moved (e6dac90)
  • server: explicitly cast widening conversion (6515950)
  • server: guard finishCallback against being deleted during transfer (6a06e78)
  • server: handle panels set to "Windows can cover" (410ad72)
  • server: initialize local variable (a4aa050)
  • server: interchange signal argument names (6c4cc29)
  • server: no-lint missing Linux dmabuf request (a93f2ef)
  • server: only emit setActionsCallback if DnD actions change (647db79)
  • server: prepare server side destroy of DRM lease device binds (8767af1)
  • server: remove DRM lease device binds on unbind (69adcd6)
  • server: remove unnecessary include (88da2d8)
  • server: remove unnecessary return statement (78f0240)
  • server: reset input-method state updates on commit (894ba38)
  • server: send selections on focus according to protocol (c5b486a)
  • server: set text-input v3 q-ptr (bba9f60)
  • server: switch between clients with different text-input versions (311edb3)
  • use QString::fromUtf8 on mimetype (920f8b8)
  • use remove_all_if instead of invalid erase (b5b5293)

Refactors

  • client: remove EGLStream client xml (41b2db1)
  • server: add helper function to set data source actions (5d7cc49)
  • server: always unbind from global nucleus (291431f)
  • server: check data source integrity in non-generic code (36319ca)
  • server: cleanup data class includes (655384a)
  • server: consolidate primary selection source files (c4a4158)
  • server: consolidate selection helpers in single header (b3d5563)
  • server: expose key state enum (e97d92e)
  • server: get globals with smart pointers (3b969b2)
  • server: handle drags in drag_pool (c8d6b72)
  • server: introduce resource classes for data sources (da64244)
  • server: introduce text-input v2 state type (a04f6b0)
  • server: make plain data fields plublic in internal classes (b5e7d13)
  • server: merge key pressed and released API (29e8be1)
  • server: move dnd action enum to drag pool header (e7b9ee5)
  • server: move offer callbacks in classes (699f014)
  • server: move receive callbacks in classes (78888c8)
  • server: move set selection callbacks in classes (b2f55b7)
  • server: remove keyboard_map struct (495187b)
  • server: remove resource check on text-input (4ac3d1b)
  • server: remove selection pool advertise function (d377643)
  • server: remove selection pool update functions (4c89a72)
  • server: remove set selection helper functions (e2277c4)
  • server: remove xkbcommon-compatible variable (5fcac58)
  • server: restrict access to selection pool member fields (6680387)
  • server: restrict to single socket name setter (134ca24)
  • server: return braced initializer lists (0e36253)
  • server: send selection always (34879ad)
  • server: set selection from update (6d671b8)
  • server: set selection sources instead of devices (cafc9ad)
  • server: simplify modifiers changed comparison (7f281aa)
  • server: store key states in STL array (a333ff0)
  • server: store Plasma window resources in STL vector (ca2a062)
  • server: store virtual desktop resources in STL vector (37089fe)
  • server: transmit selection in separate function (ca8a25b)

0.523.1 (2021-11-30)

Bug Fixes

  • server: handle panels set to "Windows can cover" (c83f317)

0.523.0 (2021-10-14)

0.523.0-beta.0 (2021-10-06)

⚠ BREAKING CHANGES

  • server: surface unmapped signal removed
  • server: surface property signals are removed
  • server: individual Surface state getters are removed
  • server: Surface::damaged signal is removed
  • server: drag functions are moved from Seat to drag_pool
  • server: text-input functions are moved from Seat to text_input_pool
  • server: touch functions are moved from Seat to touch_pool
  • server: keyboard functions are moved from Seat to keyboard_pool
  • server: pointer functions are moved from Seat to pointer_pool
  • server: seat name signal is removed
  • server: seat capabilities signals are removed
  • server: signature changes in Server::Seat
  • server: PlasmaWindow API changes
  • client: text-input classes are V2 suffixed
  • client: text-input header file name changes
  • client: legacy wl_text_input API removed
  • DataDeviceManager API changed.
  • server: Server Slide API changes.

Features

  • client: add support for input-method-unstable-v2 (52899d3)
  • client: add support for text-input-unstable-v3 (ec9988f)
  • client: add support for the drm_lease_v1 protocol (2c7d8f0)
  • client: drop support for legacy wl_text_input protocol (79dc20f)
  • client: provide xdg-activation v1 interface (045aefd)
  • implement wp_primary_selection_unstable_v1 (2bd7d3f)
  • server: add Pointer motion function (04275a6)
  • server: add support for input-method-unstable-v2 (3168b4a)
  • server: add support for text-input-unstable-v3 (b7dcc36)
  • server: add support for the drm_lease_v1 protocol (9dda0c7)
  • server: add surface changes bit field (5d81fae)
  • server: expose drag pool (67dd587)
  • server: expose keyboard pool (76e3044)
  • server: expose pointer pool (ee57e5a)
  • server: expose text-input pool (4bad5e6)
  • server: expose touch pool (9f11178)
  • server: indicate waiting surface callbacks (ec42e7d)
  • server: introduce public surface state struct (b49fb33)
  • server: provide xdg-activation v1 interface (85793a6)
  • server: remove buffer set size function (ef3de83)
  • server: remove capabilities signals (97e1be7)
  • server: remove seat name signal (0a3e695)
  • server: remove surface damaged signal (02db3bc)
  • server: remove surface property signals (65faa26)
  • server: send error on Seat capability mismatch (c31daec)

Bug Fixes

  • server: explicitly cast from unsinged to int (f0dd0a5)
  • server: hold onto appmenus in order to send them to new resources in PlasmaWindow (39236ff)
  • server: implement text input entered surface method (87e87de)
  • server: indicate seat capabilities through device pool lifetimes (eeb2c1e)
  • server: omit lint of missing pointer gestures callbacks (aff4450)
  • server: provide unsinged slide offset (48e80fe)
  • server: provide updated modifiers serial at right argument position (b41b274)
  • server: remove implicit casts (93fd844)
  • server: synchronize child surface changes (84d933d)
  • server: touch move when setting drag target with first key (23f5b3e)
  • set keymap file per wl_keyboard resource (7abe2a8)

Refactors

  • client: abolish private namespace in data private classes (489e83d)
  • client: bind text-input manager v2 without interface check (9a0cf23)
  • client: clean up text input code (c3533da)
  • client: make DataDevice callbacks free functions (83f72b6)
  • client: make DataOffer ctor public (fc92370)
  • client: merge text input classes (73b04ea)
  • client: merge text input files (6c0ac94)
  • client: merge text input manager classes (df998cd)
  • client: move DataOffer callbacks to free functions (05f6ff8)
  • client: move some DataSource callbacks to free functions (794fea7)
  • client: rename text-input files (ed7ad42)
  • client: rename text-input v2 classes (2bb62ed)
  • rename some DataDeviceManager members (5c277d9)
  • server: add function to cancel drags (20ecc14)
  • server: add internal text-input struct depending on version (82bc29c)
  • server: add Seat friend function (255db62)
  • server: add Seat::Private::register_device template method (da02ccc)
  • server: compare keyboard modifiers with operator (fae4c6d)
  • server: copy current buffer state in separate function (8bffe27)
  • server: explicitly cast resource version to integer (3661b18)
  • server: explicitly cast size to unsigned (0b5a22d)
  • server: get drag source and offer late (ac74098)
  • server: handle seat drags in a new class (b09a001)
  • server: handle seat keyboards in a new class (7715cbb)
  • server: handle seat pointers in a new class (9ddf6ab)
  • server: handle seat touches in a new class (a1431d3)
  • server: handle text input in a new class (43f6325)
  • server: improve code quality slightly (fbcc340)
  • server: introduce device_manager class template (7c823c7)
  • server: introduce drag source struct (26c0260)
  • server: introduce drag target struct (3852b0b)
  • server: make DataOffer receive callback a free function (f9ae510)
  • server: make input device pools optional (9a7fdd4)
  • server: make keyboard focus private with const reference getter (8266217)
  • server: make pointer focus private with const reference getter (93a0f78)
  • server: make text input struct unnamed (34fc1f9)
  • server: make touch focus private with const reference getter (d14ed3f)
  • server: move DataDevice, DataSource ctors to public (9d1e464)
  • server: move DataDevice::Private selection methods to free functions (cfa140c)
  • server: move DataDeviceManager callbacks to free function templates (7402914)
  • server: move DataSource callback to free function (0d27dd0)
  • server: move some utils to a separate header (2a3d665)
  • server: only set source pointer on drags with pointer (8b19499)
  • server: provide function to move any touch point (b1a7377)
  • server: remove partial Surface state getters (b90f648)
  • server: remove sendAxis function (12e9c94)
  • server: remove subsurface check when looping children (1f5ebcc)
  • server: remove subsurface position workaround (e265339)
  • server: rename text input manager factory (fd57ea5)
  • server: restrict access to drag pool member variables (01c8476)
  • server: restrict access to keyboard devices variable (52d140b)
  • server: restrict access to keyboard pool member variables (50e5804)
  • server: restrict access to pointer pool devices variable (5b46494)
  • server: restrict access to pointer pool member variables (3c9c359)
  • server: restrict access to position variable (1d96e22)
  • server: restrict access to touch pool devices variable (f5bd1c1)
  • server: set capabilities in helper function (63192ab)
  • server: set geometry rectangle with static cast (e3fdc62)
  • server: set seat input method from input method manager (8438638)
  • server: split out cancelling drag target from update (90b70de)
  • server: split out udpate drag motion (3ba39c9)
  • server: split out updating target offer (332772e)
  • server: split selection management to template class (3873172)
  • server: split up text-input surface setter on version (27c3157)
  • server: unset source and target drag structs (f8e2aad)
  • server: update drag motion before setting surface (29db209)
  • server: use range-based for loop (ae45c83)
  • server: use seat pool getters internally (4baf4cf)
  • server: use std types in Seat (5841883)
  • server: use STL min/max on uint32_t types (f16182e)
  • server: use surface argument in connect statement (0db0dcf)
  • server: validate dmabuf params in separate function (6c61ae8)

0.522.0 (2021-06-08)

Bug Fixes

  • server: provide updated modifiers serial at right argument position (ebcf597)
  • set keymap file per wl_keyboard resource (9b831db)

Refactors

  • server: compare keyboard modifiers with operator (77b8056)
  • server: use range-based for loop (5e6cdc0)

0.522.0-beta.0 (2021-05-26)

⚠ BREAKING CHANGES

  • client: The client xdg-shell API interface changes.
  • client: Client library xdg-shell v6 support removed.

Features

  • client: add application menu to org_kde_plasma_window client API (6424454)
  • client: add support for wlr_layer_shell_unstable_v1 (1fa2d50)
  • client: provide override to create xdg-popups without a parent (d7852c0)
  • client: remove xdg-shell v6 (31198d6)
  • server: add application menu to org_kde_plasma_window server API (a3d1794)
  • server: add support for wlr_layer_shell_unstable_v1 (f8199a9)
  • update org_kde_plasma_window protocol to version 10 (c546cce)

Bug Fixes

  • server: allow getting xdg-popup without parent (89cab1f)
  • server: check all xdg-shell role creation errors (f5d0403)
  • server: omit sending keyboard leave on client destroy (c30250a)

Refactors

  • client: split up xdg-shell files (9d7d0bc)
  • client: unvirtualize xdg-shell class (62702d5)
  • client: unvirtualize xdg-shell popup class (924baf9)
  • client: unvirtualize xdg-shell toplevel class (948de4e)

0.521.0 (2021-02-16)

0.521.0-beta.0 (2021-02-07)

⚠ BREAKING CHANGES

  • server: Server library's xdg-shell surface class provides effective window geometry.
  • server: Server API expects now consumers to do subsurface input focus lookup.

Features

  • client: add support for xdg-shell v2 (68e13de)
  • server: add window geometry check (09b48ec)
  • server: add xdg-shell support for v2 (ac39485)
  • server: provide call to add socket fd to display (fb64345)
  • server: provide effective window geometry from xdg-shell surface (2aff7a8)
  • server: provide window geometry margins (7364928)

Bug Fixes

  • client: clean up wlr output modes with smart pointer (9786f0f)
  • client: delete wlr output head on finished callback (5a4f334)
  • client: initialize private wlr mode data (a24ce31)
  • client: make objects non-foreign (5c97c20)
  • client: remove wlr mode when finished (c42c498)
  • server: check for global being removed and destroyed (37e6238)

Refactors

  • client: remove xdg-shell v5 implementation (d355a85)
  • server: define static EGL function pointer with local scope (8e6e225)
  • server: introduce post_no_memory for globals (491a4ac)
  • server: remove subsurface input focus lookup (318b3a6)

0.520.0 (2020-10-13)

0.520.0-beta.1 (2020-10-02)

Bug Fixes

  • client: clean up wlr output modes with smart pointer (ed71ffc)
  • client: delete wlr output head on finished callback (fa401d7)
  • client: initialize private wlr mode data (83ec883)
  • client: make objects non-foreign (d5631a0)
  • client: remove wlr mode when finished (784b987)

0.520.0-beta.0 (2020-09-25)

⚠ BREAKING CHANGES

  • client: The client output device mode API changes.
  • server: The Server Output class is refactored as a single access point for the compositor.
  • Legacy remote-access protocol and API are removed
  • server: Server Buffer API changes.
  • server: Server Buffers API changes.

Features

  • support xdg-output v2 (d58574b)
  • support xdg-output v3 (91d2291)
  • client: simplify current mode logic (11d29a5)
  • client: support zwlr_output_manager_v1 version 2 (10b49b5)
  • server: generate output description (28367e3)
  • implement keyboard shortcuts inhibit (132821b)
  • remove remote-access (054edc8)
  • streamline output device information (fd0194e)
  • server: add master output class (bc91afe)
  • provide method for server-side resource destruction (ca62f48)
  • support presentation time protocol (6edb1b9)
  • client: implement dmabuf client and autotest (c4ac0a9)

Bug Fixes

  • client: convert double to fixed output scale (c6e9672)
  • client: disable wlr heads without native check (26283ca)
  • server: check for global being removed and destroyed (3eb7f44)
  • server: check for source when accepting offer (3be21a1)
  • server: delay global destroy (70161be)
  • server: ensure modes are stored uniquely (976a476)
  • server: free dmabuf private (714484e)
  • server: guard wl_output events on since version (2d574af)
  • server: initialize output in dpms off mode (d7a398b)
  • server: release global nucleuses after client destroy (38b8b4a)
  • server: release only surface buffers automatically (e1fca59)
  • server: remove drag target on destroy (3249e3e)
  • server: send events on binds only to the bind (b2bab1a)
  • server: support multiple data devices on a single client (6770cc5)
  • server: use global bind versions on resource creation (e498d8f)

Refactors

  • server: add Buffer private header (a35d28a)
  • server: allow only private access to Buffer make (ad1effb)
  • server: create internal send function collection (01d9be6)
  • server: create separate resource bind class (07ef71a)
  • server: define xdg-output manager aliases (7482bcc)
  • server: introduce nucleus class for globals (2018f42)
  • server: introduce ShmImage class (c7c56e4)
  • server: introduce SurfaceState struct (a766515)
  • server: make SurfaceState a move-only type (11d0d97)
  • server: modernize subsurface callback (8e66003)
  • server: provide Buffers as shared_ptrs (b62aca1)
  • server: remove data offer receive member function (68a9c4d)
  • server: remove global support from Resource (716340e)
  • server: remove separate shadow creation function (cd318a7)
  • server: remove unused functions (1aaee23)
  • server: rename Output class files (f84f3ef)
  • server: rename Output class to WlOutput (2fe2895)
  • server: replace capsule with basic nucleus (f09dc77)
  • server: set entered outputs by wl_output (3094db3)
  • server: store frame callbacks in deque (131f70a)
  • server: straighten out Surface and Subsurface state handling (c38a4e2)
  • server: use in-class member initializers (baedfd3)
  • server: use new server model in generator (64bd019)

0.519.0 (2020-06-09)

Bug Fixes

  • server: support multiple data devices on a single client (21dcac7)

0.519.0-beta.0 (2020-05-24)

⚠ BREAKING CHANGES

  • The server library has been completely remodelled. See GitLab issue #14 for more information.

Features

  • client: support wlr_output_management_unstable_v1 (b640d4a)
  • server: add a way to get surfaces by id (06335ad)
  • server: add basic property getters for some classes (e0f487f)
  • server: add Output removed signal (1bec259)

Bug Fixes

  • client: add back setting SubSurface member variable (bc53bec)
  • client: build qt 12 0 3 (0039588)
  • server: act on resourceDestroyed signal (4853375)
  • server: always set resource implementation (63766f4)
  • server: check capsule being valid when removing globals (488f838)
  • server: check for cursor surface being null (18e4f24)
  • server: check for drag icon being null (28838f4)
  • server: check for pointer constraints regions being null (e7db06b)
  • server: check offer on null mime (bd26265)
  • server: check on Plasma window being destroyed (94ccacb)
  • server: create dmabuf global, get handle from resource (3b95945)
  • server: destroy Private of data device manager (d744898)
  • server: destroy Privates in several pointer related classes (6bd61d7)
  • server: do not move temporary (2652a06)
  • server: enable again compilation with older libwayland (90a614e)
  • server: erase-remove buffers correctly (33d79e6)
  • server: for Surfaces check for null region and leave Outputs correctly (c8811e0)
  • server: get versioned Global from wl_resource (a773283)
  • server: guard global dtors for display removal (ffd849c)
  • server: handle client disconnect in Pointers (8435353)
  • server: handle xdg-foreign resources correctly (35a65b0)
  • server: handle xdg-shell teardown robustly (3212954)
  • server: initialize subsurface later (8bc2d04)
  • server: move dtor into Capsule member (b17afbc)
  • server: omit flushing the client on drop (ae2fe9c)
  • server: on Surface resource destroy unfocus pointer (5890d40)
  • server: own Cursor with unique_ptr (181530c)
  • server: own Private with unique_ptr (bf09888)
  • server: own Privates with unique_ptr (fec3390)
  • server: release global capsules on terminate (257069b)
  • server: remove seat from display list on destroy (45c10a1)
  • server: restructure fake input device memory handling (3a70430)
  • server: return when adding socket fails (5713b47)
  • server: set no initial socket name (e4923b0)
  • server: set parent of data device manager (d63551c)
  • server: set parent on relative pointer manager (16ac291)
  • server: specify the Global bind on init and send (c3fc45d)
  • server: use variadic function for error posting (b9e0cd7)
  • encapsulate Wayland globals for release without destruct (97a9ea7)

Refactors

  • client: convert to shared ptr (ccf7c2d)
  • client: convert to uniqueptr (ab419fc)
  • client: remove qproperty (ea0ebcc)
  • server: add Global binds getter (9485f59)
  • server: convert QScopedPointer to std::unique_ptr (45e244d)
  • server: declare Globals with constexpr version (3fb4c6c)
  • server: define special member functions (a70d3cf)
  • server: disable handle of globals resources (da345d8)
  • server: drop deprecated QtSurfaceExtension (fdcfea1)
  • server: drop ServerDecoration (eb686af)
  • server: get native wl_client through function (8b10685)
  • server: get native wl_display through function (52fe61a)
  • server: improve behavior of deleted special member functions (a65a0f3)
  • server: improve fake input implementation (f40f11b)
  • server: improve slightly kde-idle (e2f646f)
  • server: initialize all variables (37abaae)
  • server: let several more clang-tidy checks pass (02e4b37)
  • server: manage subsurface pointers explicitly (b2e1eae)
  • server: move appmenu to new server model (0c27e66)
  • server: move Blur to new server model (ac63499)
  • server: move Contrast to new server model (ffc560f)
  • server: move decoration palette to new server class (4ceb3a1)
  • server: move eglstream to new server class (190d0e9)
  • server: move fakeinput to new server class (b6bd613)
  • server: move filtered display to new server model (f452f1c)
  • server: move functionality into Private (d91b0ff)
  • server: move idle class to new server model (41f58e9)
  • server: move idle-inhibit to new server model (f8cd731)
  • server: move KeyState to new server model (b684783)
  • server: move plasmashell to new server class (1f70428)
  • server: move shadow to new server model (51130fe)
  • server: move Slide to new server model (3bc37ad)
  • server: move textinput to new server class (43a01b4)
  • server: move viewporter to new server model (bf5e60a)
  • server: move xdgoutput to new server class (1f80266)
  • server: provide virtual unbind hook (5f888c9)
  • server: register uint32_t in display.h (561ab18)
  • server: remodel buffer and dmabuf classes (960a823)
  • server: remodel data sharing classes (1a8feb2)
  • server: remodel output management (56dae31)
  • server: remodel Plasma window and virtual desktop management (d20c824)
  • server: remodel remote access (6b34f81)
  • server: remodel surface and related classes (fb580a3)
  • server: remodel touch class (1a7342e)
  • server: remodel xdg-shell (bd81a23)
  • server: remove legacy infrastructure (45c9aac)
  • server: remove legacy Output functions (64d0bc9)
  • server: remove operator access to capsule (3056a64)
  • server: remove OutputInterface class (0f18ae5)
  • server: remove SeatInterface class (de644ae)
  • server: remove static list of clients (4424786)
  • server: remove unneeded constexpr interface if (8ba74b3)
  • server: remove unneeded q-ptrs (8f8e55a)
  • server: replace destroy callback (96d122a)
  • server: replace fromResource with static handle function (effbcbb)
  • server: replace or decorate static-capable functions (2839280)
  • server: use smart pointers and respect rule of zero where possible (5158365)
  • server: use templates for shadow buffers (32fe450)
  • cast client through Display (e6895cf)
  • cast Display backend from Private class (a205802)
  • cast Display backend from static collection (fc1dc5d)
  • prototype server objects remodel project (055bca7)
  • remodel Dpms classes (7ea7e72)
  • remodel input classes (f04552c)
  • remodel Seat class (6f59e56)
  • rename Server::Display type (3e9b456)
  • templatify internal send API (ab760fa)
  • templatify Resource and Global classes (cf872d8)

0.518.0 (2020-04-15)

0.518.0-beta.0 (2020-04-01)

⚠ BREAKING CHANGES

  • server: Server API changes.
  • client: API break of client library.
  • client: API break of client library.

Features

  • implement wp_viewporter (568c959)
  • replace output device and management protocols (e9618d0)

Bug Fixes

  • client: always disconnect wl_diplay (1843cd5)
  • client: cleanup pending frame callback on destroy (f5f106a)
  • client: disconnect previous wl_display (db5d87b)
  • client: don't destroy the callback on globalsync (2c1fe3a)
  • client: explicitly disconnect event queue signal (469c9a9)
  • client: send changed signal only when finished (a93039c)
  • server: destroy remaining clients before display destroy (3e71209)
  • server: emit output destroy signal early (15dffa0)
  • server: manage resource data and unbinds decisively (f730fe6)
  • server: remove sub surface early (46d9824)
  • add output configuration destroy request (170bef7)
  • close several data leaks (c6bcec1)
  • server: ignore SIGPIPE (6578e3f)
  • server: send all output device data (52d2b11)
  • server: send output device transform on bind (7422441)
  • server: set buffer offset when attaching to surface (766c1bd)
  • server: unset focused surface on seat destruct (af41f2a)

Refactors

  • remove deprecated functionality (2aa36df)
  • client: remove destroy method (478eca7)
  • client: revise destroy logic (886df8a)
  • server: make private Global create virtual (0a965fb)
  • server: remove xdg-foreign exported signals (d9c21ad)
  • server: remove xdg-foreign imported signals (411e43b)
  • server: restructure xdg-foreign implementation (bd75109)
  • rename project (821c5cc)