summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/protocol/qt_attribution.json
Commit message (Collapse)AuthorAgeFilesLines
* client: Implement dialog-v1 protocolDavid Redondo2024-03-271-0/+17
| | | | | | | | Allows to mark windows as modal dialogs. Change-Id: Ie4999552933e02fc473e621e7cc5e3f2928c0adb Reviewed-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Support TextInput V3 over v4-wipDavid Edmundson2023-12-131-6/+7
| | | | | | | | | | | | | | | | | Support for v4-wip was not added into any desktop linux compositors, nor was it ever enabled into the default Qt client builds for clients or compositor. TextInputV3 has become the most widely deployed. Whilst changes are needed, they do not need to be breaking changes. A second iteration of V3 can add the features we need. This is now in motion upstream. For cases where QtWaylandCompositor is used, the custom Qt text input method is preferred to work with the Qt virtual keyboard. Pick-to: 6.7 Change-Id: I01e2686c67846804c0069f1495952b530547f91c Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Implement fractional_scale_v1 and wp_viewportDavid Edmundson2022-12-071-0/+17
| | | | | | | | | | | | | This allows compositors to hint a non-integer scale to use on a window which we can hook to Qt's existing fractional scaling support. The viewport is used to communicate the relationship between buffer size and logical size to the compositor. It is a non-integer alternative to wl_buffer_scale Change-Id: I1a850f1bcd40e8d04e241e18a538b11f18bc671c Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Fix qt_attribution.json fileKai Köhne2022-09-291-4/+4
| | | | | | | | | | | | Fixes File ./qtwayland/src/3rdparty/protocol/qt_attribution.json: Unknown key File. File ./qtwayland/src/3rdparty/protocol/qt_attribution.json: Unknown key License file. Could not parse file ./qtwayland/src/3rdparty/protocol/qt_attribution.json: object is missing after a comma Pick-to: 6.4.0 6.4 Change-Id: I145f9bcc40f175f5d909f7f947c2a20333b70c0c Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* Provide a handle for desktop portal via xdg-exporterDavid Redondo2022-07-291-1/+18
| | | | | Change-Id: I6b2034c1833ae497ef05af7c377e4bfd3747b6fe Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Fix format of qt_attribution.json filesKai Köhne2022-03-311-3/+3
| | | | | | | | | | | Also fix a typo in the license name. Amends db3df0b3b439a Pick-to: 6.3.0 6.3 Fixes: QTBUG-102148 Change-Id: Ic231a4b744864c19190d428a9a2fc5101ffa77f0 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Add attribution for text-input v1 protocolEskil Abrahamsen Blomfeldt2022-03-031-2/+19
| | | | | | | | | This was not added together with the protocol. This change also disambiguates v1 and v2 as two separate entries, since the licenses are different. Change-Id: I2309aced67ae69bc2d8117688e5d7b1074e8bf8f Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Update 3rdparty attributionsEskil Abrahamsen Blomfeldt2022-03-031-2/+20
| | | | | | | | | | | The XDG activation protocol was added with no attribution and the Wayland protocol version was updated without updating the version in the XML. Pick-to: 6.3 Fixes: QTBUG-100901 Change-Id: Ifaaf69b7d498ea7106d4bfd6ada978475447d296 Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
* Support presentation-time protocolElvis Lee2021-12-101-0/+17
| | | | | | | | | | | | | | | With the protocol, client knows accurate presentation timing which can support vsync-based rendering for smooth video playback with video/audio synchronization. Also, the protocol provides metrics from client to on-screen for optimizing frame latency. Tested with weston-presentation-shm client which also requires xdg shell. Change-Id: I3b286420e7221aa1c9b81bf7ae9ae70d3cbe6eb6 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Support text-input-unstable-v4-wipInho Lee2021-11-191-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This feature can be enabled by -feature-wayland-text-input-v4-wip. It is disabled by default. TextInputManagerV4 is available in a compositor. zwp_text_input_v4 is available for QT_WAYLAND_TEXT_INPUT_PROTOCOL in a client It supports Hangul(Korean) with a qtvirtualkeyboard patchset (refs/changes/02/357902/3) It includes some workarounds for ibus because each ibus module has its own policy for focus-in/focus-out. enter/leave will synchronize with enable/disable and they will happen whenever focus-in/focus-out happen. Cursor/anchor positions are byte offsets. Surrounding text will be trimmed when it is over 4000 byte. For debugging, uses "qt.waylandcompositor.textinput" in a compositor side uses "qt.qpa.wayland.textinput" in a client side Tested on qtvirtualkeyboard and ibus TODO : * QTBUG-97248 - event:preedit_commit_mode is not implemented yet. Current preedit_commit_mode is 'commit'. * request:set_text_change_cause is not implemented. Task-number: QTBUG-94327 Change-Id: I72644893f40f30c4b03cd6a7d05483d12bde1070 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Add protocol for pointer-gestures-unstable-v1Povilas Kanapickas2021-05-281-0/+17
| | | | | | Task-number: QTBUG-92098 Change-Id: I3a46fcbe463f19521e6a3b0fc2d6c30e3ac93112 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Client: Drop XdgShellV5 and XdgShellV6David Edmundson2020-11-111-1/+1
| | | | | | | | | | | | Both of these are deprecated given this is now formalised as the final xdg-wm-base. This final release has been out for several years and all main compositors (kwin, sway, mutter) have dropped or are dropping legacy support. tst_nooutput is moved to stable XdgShell. Change-Id: I46a011502dfec6d4a215c3b22d03e8ceebed46c3 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix qt_attribution.json files by replacing newlines with \n escapesSamuel Gaist2020-08-171-19/+6
| | | | | | | | | | | | | | In their current state theses files contains invalid json. While they are parsed successfully by qtattributionsscanner, they cannot be loaded by libraries such as Python's json module. This patch fixes this. The output generated by qtattributionsscanner stays the same. Pick-to: 5.15 Change-Id: I661d9b6f8a956a33b301fe58add5910d6de293f1 Reviewed-by: David Edmundson <davidedmundson@kde.org>
* Remove deprecated codeEskil Abrahamsen Blomfeldt2020-07-071-1/+1
| | | | | | | | | | | | | | | | | XdgShellv5 and XdgShellv6 have been deprecated in the compositor since 5.15, and wl-scaler since 5.13. These are now removed. Since the qwindow-compositor has not been updated for a long time, it depends on the outdated protocols. This change removes it, since it no longer represents best practices. This means we will be missing a proper C++-based compositor for now, so we will have to create a new one later. Change-Id: Icc6ef97c17e553f266c4145abeef26ddd631d6bf Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Fix invalid json in qt_attribution.jsonv5.15.0-beta3Kai Koehne2020-03-191-1/+1
| | | | | | | Amends 222455cd643c128 Change-Id: Ifec3dc5d8698229cc0c2f375eebd5a4ebfd62d35 Reviewed-by: Johan Helsing <johanhelsing@gmail.com>
* Update protocol for xdg-output-unstable-v1Johan Klokkhammer Helsing2020-01-091-2/+2
| | | | | Change-Id: I7d7a2fdbd1f44469b90c467c9490448c13025fa5 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Fix various issues in qt_attribution.jsonJohan Klokkhammer Helsing2020-01-091-8/+11
| | | | | | | | | | | | | | freedesktop.org is moving over to GitLab, so let's update the urls. Some entries were also missing a DownloadLocation, or didn't link to a single version (which they're supposed to according to the documentation). So fixed those as well. Also, a couple of spelling fixes. Change-Id: I37f5365368bc0d97420488c6d62b25adc26590f5 Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Update protocol for linux-dmabuf-unstable-v1Johan Klokkhammer Helsing2020-01-091-0/+2
| | | | | | | | Just updates the text of the protocol, no new functionality. Change-Id: I08a09b2a3d37f61fc28967fbb1306f35a2921f0a Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Update protocol for xdg-shell stable to version 2Johan Klokkhammer Helsing2020-01-091-4/+7
| | | | | | | | | | | This is just the protocol, it doesn't implement any new interfaces or behavior. Also update the project url, xdg-shell is now part of wayland-protocols, not Weston. Change-Id: I719cc99fc2c59af9abfc0c9abcb9c1daf9b43c74 Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Client: Add basic support for tablet-unstable-v2Johan Klokkhammer Helsing2020-01-081-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QPA plugin] Added support for drawing tablets through the tablet-unstable-v2 protocol. Adds support for the basic one tablet, one tool, no pads scenario. Besides the auto tests, I tested with a Huion Kamvas Pro 16 with a simple pressure sensitive pen with two buttons. As far as I can tell, it works the same way as on xcb on Sway and Gnome Shell. Also tested on a Wacom PTZ-630 with a mouse, art pen, airbrush and a stylus. Mapped the distance event to QTabletEvent::Z and slider to QTabletEvent::tangentialPressure. For now we send QTabletEvents even when there's a mouse or finger on the tablet. Those should ideally be sent as QMouseEvents/QTouchEvents, but that's out of scope for this patch, but at least we will send synthesized mouse events if the tablet events are not accepted. Change-Id: I93291ffa5f00fa2bb8533eddd8d873b84a3386b8 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Compositor: Add xdg-output unstable v1 supportPier Luigi Fiorini2019-08-261-1/+2
| | | | | | | | | | | | | | | | | | | | | | | We already have a client-side implementation in the QPA plugin, and now we add the server-side implementation. In order to have a nice declarative API, we let users create a XdgOutputV1 instance and then associate it with the zxdg_output_v1 object when it is requested by the client. If the user forgets to create XdgOutputV1 beforehand we post an error to the client. To anticipate protocol version 3, we send zxdg_output_v1.done when we send wl_output.done. The multi-output example is extended using this protocol. [ChangeLog][Compositor] Added support for xdg-output unstable v1 Wayland extension. Change-Id: I1ec5913d8330cc01d7d634d05a289f4dc8b4fd22 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Client: Implement primary-selection-unstable-v1Johan Klokkhammer Helsing2019-05-101-0/+17
| | | | | | | | | [ChangeLog][QPA plugin] Added support for middle mouse pasting through the primary-selection-unstable-v1 protocol. Fixes: QTBUG-66008 Change-Id: I7c8fb9aa2c856f5b6794aeab1ee75d80cad05dcd Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Merge remote-tracking branch 'origin/5.12' into 5.13Liang Qi2019-04-161-1/+1
|\ | | | | | | | | | | | | Conflicts: src/client/qwaylanddisplay_p.h Change-Id: Ie84862aa41623c11abd8f882f428054f30062c77
| * Fix incorrect path to wl-eglstream-controller.xmlJohan Klokkhammer Helsing2019-04-111-1/+1
| | | | | | | | | | Change-Id: I1d4bceeb87b7e95b7b4b9c9885e06052bd7536e9 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Add deprecated support for wl_scalerJohan Klokkhammer Helsing2019-01-241-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Compositor] Add deprecated support for the deprecated wl_scaler. Some clients are stuck on the unofficial Weston protocol wl_scaler instead of the standardized and stable wp_viewporter. This implements optional support for wl_scaler. This patch has been written to be easily removable in Qt 6, and touches a minimal amount of other code. The implementation can be tested using the new manual test compositor: tests/manual/wlscaler. Weston 1.11.1 has a demo client named weston-resizor, which can be used to test. Note that although newer versions of Weston also have weston-resizor, those versions use wp_viewporter instead of wl_scaler, so you really need 1.11.1 or earlier to test. Fixes: QTBUG-69635 Change-Id: Id572e28044cd764eaf63b1259a92bc589711c39d Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devLiang Qi2019-01-221-1/+16
|\| | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/3rdparty/protocol/qt_attribution.json src/client/qwaylandintegration.cpp Change-Id: I475889f2817c7094b68a2948fdd34ddf8b0c486f
| * wl_eglstream_controller implementation for NVIDIAPaul Olav Tvete2019-01-081-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a new client buffer integration: wayland-eglstream-controller, which contains the EGLStream logic from wayland-egl, and additionally uses NVIDIA's wayland-eglstream-controller protocol to avoid the issue where the stream is not ready at the time of first buffer attach. This is not enabled by default. Can be used like this: QT_WAYLAND_CLIENT_BUFFER_INTEGRATION=wayland-eglstream-controller ./pure-qml Fixes: QTBUG-71697 Change-Id: I73bb2a8fe9852afe1b5807cbb8c35dc4c7624dad Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | Update wayland.xml to version 1.16.0Johan Klokkhammer Helsing2019-01-211-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | Now that we've stopped including the system libwayland protocol headers, i.e. wayland-client.h and wayland-server.h, it should be safe to update the protocol definitions to the latest version. Note that this just updates the protocol definition, the implementations for the various interfaces are still using the old versions. Change-Id: I961e762553756e11e4c5b33c74101f0c16661232 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Compositor: Implement support for the viewporter extensionJohan Klokkhammer Helsing2019-01-021-0/+17
| | | | | | | | | | | | | | [ChangeLog][Compositor] Added support for the viewporter Wayland extension. Change-Id: I1d33652fab6ff18da4ae1ae3497f0ca43517420a Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* | Compositor: Implement linux-dmabuf-unstable-v1Andreas Cord-Landwehr2018-12-131-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Compositor] Added support for linux-dmabuf-unstable-v1. Implement client side DMABUF buffer sharing support by supporting the linux-dmabuf-unstable-v1 (version 3) protocol. For enabling DMABUF, set the following environment variables for the compositor: QT_QPA_PLATFORM=eglfs QT_WAYLAND_CLIENT_BUFFER_INTEGRATION=linux-dmabuf-unstable-v1 The current implementation supports the following DRM buffer formats: - RGB and RGBA - YUYV This implementation requires Mesa with the following patch applied. Otherwise, textures are not updated. The patch is contained in Mesa 18.1.5. See https://patchwork.freedesktop.org/patch/238080/ Fixes: QTBUG-66288 Fixes: QTBUG-67845 Change-Id: Id4d90337dbe0be956b0f964426ebed3f281c6c30 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | Client: Add fullscreen shell integrationPier Luigi Fiorini2018-11-051-0/+19
|/ | | | | | | | | | | | | | | | [ChangeLog][QPA plugin] Added support for fullscreen-shell unstable v1. The fullscreen_shell_unstable_v1 interface displays a single surface per output and it is used for nested compositors, where each output is rendered in a surface that is then displayed by the main compositor. For example weston could be the main compositor and a QML compositor could be launched as a client using this shell integration to display it inside weston. Change-Id: I037679a283ff03cb4bdf4b3fed59945090ec9250 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Revert "Upgrade wayland.xml to version 1.10.0"Johan Klokkhammer Helsing2018-09-171-2/+2
| | | | | | | | | | | | Since we're using the deprecated ways of including wayland (wayland-server.h instead of wayland-server-core.h), we can't upgrade wayland.xml to a version that's newer than the system libwayland. Our minimum supported version is 1.6. This reverts commit 4d2106d4b6ed1a088834a8fec9c6a47e5a67d4e8. Fixes: QTBUG-70528 Change-Id: I102cb215a40a1aaaeba6f463200eefc3be653c52 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Client: Use customized version of generated files for xdg-shell-v5Johan Klokkhammer Helsing2018-09-051-1/+1
| | | | | | | | | | | | | Check in qtwaylandscanner and wayland-scanner generated files with renamed symbols to avoid conflicts with xdg-shell stable. When this was done on the compositor side, we thought we didn't have to do it for the client side because the conflicting symbols are used in separate plugins. Turns out this breaks static builds, though. Task-number: QTBUG-69896 Change-Id: I461df8e136b741063eafe13e858734a3aafdf020 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Compositor API: Add xdg-decoration unstable v1 supportJohan Klokkhammer Helsing2018-08-171-1/+1
| | | | | | | | And add an example with server-side window decorations. Task-number: QTBUG-69934 Change-Id: Ic3984b50cf7574cae5135dea51eb4b1c80bb45a7 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Upgrade wayland.xml to version 1.10.0Robin Burchell2018-08-171-2/+2
| | | | | Change-Id: I85b58ca9d14a1d37959475b05e0be8c9c8721186 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Client: Implement xdg-decoration-unstable-v1 for SSD supportJohan Klokkhammer Helsing2018-08-141-0/+17
| | | | | | | | | | | | | | [ChangeLog][QPA plugin] Added client-side support for the xdg-decoration-unstable-v1 Wayland extension. Qt clients will now let the compositor draw the window decorations if configured through this extension. Note: The env var QT_WAYLAND_DISABLE_WINDOWDECORATION is still supported, but works on a higher level, and for all shell integrations, while xdg-decoration only works with xdg-shell stable. Task-number: QTBUG-69746 Change-Id: I9dd0331bbd8d624c6be54ed23ee3b96446d5820d Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Compositor: Use customized version of generated files for xdg-shell-v5Johan Klokkhammer Helsing2018-08-141-1/+1
| | | | | | | | | Checking in wayland-scanner and qtwaylandscanner generated files with renamed symbols to avoid conflicts with xdg-shell stable. Task-number: QTBUG-66784 Change-Id: I1b1a055d3be12bfa7d16e7bb7209e96497cbf28c Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Add XdgOutput client supportDavid Edmundson2018-08-031-0/+16
| | | | | | | | | | | | | | | | | XdgOutput is an extension of wl_output with the benefit of having the logical size of a screen as an explicit parameter, instead of clients inferring it from modeSize / scale. This is useful as it allows compositors to implement fractional scaling whilst clients can still fill the screen. In the future XdgOutputV2 will support a more useful name and ID that we can use. [ChangeLog][QPA plugin] Added support for xdg-output-unstable-v1 Change-Id: I2e1e64ad6cb497a1cbb7b7b170f28ac92231c2c4 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io> Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* Client: Add shell integration for xdg-shell stableJohan Klokkhammer Helsing2018-05-291-1/+1
| | | | | | | | | | | | | | | [ChangeLog][QPA plugin] Added support for xdg-shell stable. Mostly a copy of xdg_shell unstable v6 with prefixes and suffixes removed. Otherwise, this is what changed: - The global is now named "xdg_wm_base", since "xdg_shell" was taken by xdg-shell <= v5. - Anchors and gravities are not bitfields anymore. Task-number: QTBUG-66783 Change-Id: I8ca881aae52cc07b22ff5e26df13a9a1566f58f4 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Rename xdg-shell.xml to xdg-shell-unstable-v5.xmlJohan Klokkhammer Helsing2018-05-141-1/+1
| | | | | | | | | Also change the protocol name in the xml file from xdg_shell to xdg_shell_unstable_v5 (similar pattern as v6) because qtwaylandscanner doesn't support the file name being different from the protocol name. Change-Id: I1d9edf7c8ca512e716284250a2b2bc13e205c33c Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Doc: Fix external links to wayland-ivi projectKai Koehne2017-03-241-2/+2
| | | | | | | | Seems that the project moved to github. Task-number: QTBUG-59656 Change-Id: Ib6c9c62e987f11ffbcffe013cbeb4a4454e594b0 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
* Doc: Mention files for different wayland protocolsKai Koehne2016-12-061-0/+4
| | | | | Change-Id: If7de71930a8339ff8b36e74331810b186e1ebd32 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Document 3rd party code in Qt WaylandKai Koehne2016-10-041-0/+70
Unfortunately the QPA plugin for Qt Wayland does not have a dedicated help, which is why everything is right now crammed into the compositor documentaton. Change-Id: Iddc4d67a817f2cc3bb334b2f040fa55230b5da4f Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>