summaryrefslogtreecommitdiffstats
path: root/src/compositor/compositor_api/qwaylandquickoutput.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/tqtc/lts-5.15.11' into ↵v5.15.11-lts-lgplTarja Sundqvist2023-06-091-0/+2
|\ | | | | | | | | | | tqtc/lts-5.15-opensource Change-Id: Ice764bd72c52947ee1305c7135cf68bc998d6558
| * QtWaylandCompositor: includemocsLiang Qi2022-06-071-0/+2
| | | | | | | | | | | | | | | | Task-number: QTBUG-103295 Change-Id: I2311465d5341fc5902981d80ab0a117dd2df002d Reviewed-by: Marc Mutz <marc.mutz@qt.io> (cherry picked from commit ece88c6561d338c012f89587444b68f893825fe4) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* | Revert "Update commercial license headers"v5.15.3-lts-lgplTarja Sundqvist2021-03-221-11/+11
|/ | | | | | | | | | | This reverts commit 6bb05fed8fdb564f3ff0136bbdaf4efd6088797d. Revert of commercial license headers is required for Qt 5.15.3 opensource release. Task-number: QTBUG-91108 Change-Id: Ia867596ca140b1c37717baafe07cbcddd2a9b1fd Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
* Update commercial license headersTarja Sundqvist2021-01-271-11/+11
| | | | | | | | | | | | | | | Updated header.COMM to the files in tqtc-qtwayland. Examples, tests and documentation files are not updated. The commercial license header may contain some additional lines so that its line count equals with the earlier license header. Reason for this is that some autotests use hard coded line numbers and a change in the line count causes failures in tests. Task-number: QTQAINFRA-4214 Change-Id: Ib716dd7c17587d0155b6903f5cf62be3f99384bf Reviewed-by: Antti Kokko <antti.kokko@qt.io>
* Update QtWaylandCompositor license headers to GPL 3v5.14.0-beta2Paul Olav Tvete2019-10-161-15/+5
| | | | | | | | | | | | As announced on the mailing list, QtWaylandCompositor licensing is changing to GPLv3: https://lists.qt-project.org/pipermail/development/2019-October/037666.html Change-Id: I4bdc1aa5914e53ac760acc2b6453355af636baa9 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io> Reviewed-by: Johan Helsing <johan.helsing@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Fix flickering (black frames) of wayland clients on NVIDIADominik Holland2019-01-081-1/+1
| | | | | | | | | | | | | | | When using the threaded render loop rendering the texture we acquired from the eglstream is done in a different thread. This rendering needs to be finished before the next acquire call for the eglstream is done otherwise we might end up rendering a broken (black) frame and see the client flicker. To fix this, make sure to send the frame callbacks after the rendering was completed and not before the rendering starts. Change-Id: I5a75914d14d2df7fa8b6bbd526f87e3ef6208cd6 Task-number: QTBUG-71697 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Init variables where they are declared when possible (clang-tidy)Johan Klokkhammer Helsing2018-02-271-5/+0
| | | | | | | | | | | | | | | | | | | | clang-tidy -p compile_commands.json $file \ -checks='-*,modernize-use-default-member-init,readability-redundant-member-init' \ -config='{CheckOptions: [{key: modernize-use-default-member-init.UseAssignment, value: "1"}]}' \ -header-filter='qtwayland' \ -fix Afterwards I ran search and replace on the diff to clean up some whitespace errors: - Replaced '(\n\+[^:\n]*)(:\s+\+\s+)' with '$1: ' - Replaced '(\n\+[^,\n]*)(,\s+\+\s+)' with '$1, ' - Replaced '\n\+\s*\n' with '\n' I also had to do some manual edits, because for some reason, this particular clang-tidy check doesn't trigger for some files. Change-Id: I3b3909bac4bf20108bbe8ad1e01bcc54236dae1b Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Fix licensingv5.9.0-beta4Jani Heikkinen2017-05-041-13/+16
| | | | | | | | | | Currently tests are licensed under GPL-EXCEPT, examples under BSD and src under LGPL so replase old license headers with new & proper ones. Also remove old & unused license files Task-number: QTBUG-57147 Change-Id: Ia6a738798736c275dc309ccfa5b627dc2178d241 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Try to find compositor among parents for QWaylandQuickOutputJohan Klokkhammer Helsing2016-12-061-0/+16
| | | | | | | And simplify the minimal-qml and ivi-compositor examples Change-Id: Ic445349c9d7845813b6700414464a688aac40e73 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Add QWaylandQuickOutput::pickClickableItemJohan Klokkhammer Helsing2016-06-061-0/+39
| | | | | | | | A way to get the topmost item at the given position that accepts mouse buttons. Change-Id: I518a8ae15d12ea4c464f06ee437d4cffe3e61115 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
* Fix typo in QWaylandQuickOutput warningPier Luigi Fiorini2015-11-281-1/+1
| | | | | Change-Id: I0f45e4b510e898d4107b80b1a61d64c86513ec85 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Add documentation to Qt Wayland CompositorEskil Abrahamsen Blomfeldt2015-10-261-0/+11
| | | | | | | | | | | This adds some preliminary documentation for the Qt Wayland Compositor. There are a few classes which remain undocumented. The documentation in some areas may be a bit minimal, but this can be expanded gradually with code examples and more details. Change-Id: I5d285a5a25e8602ac2fdddc84c3fd217e7b77c95 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Remove the QWaylandOutputSpaceJørgen Lind2015-09-181-2/+2
| | | | | | | | We don't need this abstraction anymore since we don't have global coordinates in the core api anymore Change-Id: I553a736a0e71026447d6a0af3f8a64607b8c8f06 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Remove QWaylandCompositor::cleanupGraphicsResources()Jørgen Lind2015-09-151-1/+0
| | | | | | | | it is not needed anymore since the QWaylandView holds a reference to the buffer and the QWaylandQuickItem owns the texture Change-Id: I0a4da028cf1cecf4b0710b96737dfc1035e5f1f9 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Make it possible to construct QWaylandOutputJørgen Lind2015-09-041-9/+27
| | | | | | | | | | | | | | | This requires QWaylandOutput to be initialized. This will happend when the QWaylandCompositor of the QWaylandOutputSpace that is set on the QWaylandOutput is created. QWaylandCompositor will send or post a Polish event to the QWaylandOutput which again will call QWaylandOutput::initialize. This function will create the global that will be put on the wl_displays registry This makes it possible to Create WaylandOutputs in QML (see the pure-qml example) and also gives a better programming model in C++ Change-Id: Iaf907ae18a283678eda6d04390dc9790ae0bced8
* Rename automaticFrameCallbacks to automaticFrameCallbackJørgen Lind2015-09-041-6/+10
| | | | | | | | and: - add a signal for when it changes - change default to true Change-Id: Ifb7d29756f554dbd2a2594c935442ba9f4956c5c
* Make Manufacturer & Model modifiable properties of QWaylandOutputJørgen Lind2015-09-021-3/+2
| | | | | | This to make construction look nicer and make them modifyable from QML Change-Id: I5f5ffffb34f664914cdb531736c42a6873bfe18c
* Introducing QWaylandOutputSpaceJørgen Lind2015-08-281-2/+2
| | | | | | | | | | Its purpose is to make it possible to have multiscreen environments, and also multiple multioutput environments It is also an abstraction to make it clear that outputs are arranged in a 2d space Change-Id: I418509996a03b2ca1a12aec9c9e25e143a15a10f
* Move the output from QWaylandSurface to the QWaylandSurfaceViewJørgen Lind2015-08-281-1/+1
| | | | | | | | | and add a property called primaryOutput on the QWaylandSurface. Also add some bookkeeping in QtWayland::Output so it knows what surfaces and views it currently holds, sending the enter and leave events automatically. Change-Id: Ib6efbc6f8157657fb4451b751bba1cb5345b7906
* Optionally auto send framecallbacks for QWaylandQuickOutputJørgen Lind2015-08-281-0/+19
| | | | Change-Id: Ic668b1fe88a536af553cfaf8b515219d2dae0f7d
* Move surface management to outputsJørgen Lind2015-08-281-1/+1
| | | | Change-Id: I427e576a4e0834d6266af2670f7ff47e078153d4
* LGPL v3 license change for Qt Wayland CompositorJørgen Lind2015-07-241-11/+14
| | | | Change-Id: I84ed248b471464214d935352768f300d4b90dec3
* Update copyright headersJani Heikkinen2015-02-171-22/+14
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I5a74d32515c3f1fe7aa1916f4241c92832510f8c Reviewed-by: Antti Kokko <antti.kokko@theqtcompany.com>
* Fix QtCompositor compilationGiulio Camuffo2015-02-081-1/+1
| | | | | | | | | This is a quick fix, a proper fix needs the ongoing effort to make surfaces and outputs aware of each other. Change-Id: I61faca9929a448208e82574c5c4d963c271f7e68 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Add QWaylandOutput to support multiple outputsPier Luigi Fiorini2015-02-081-0/+78
Add a new QWaylandOutput class to support multiple outputs. Each QWaylandOutput need a window for rendering. Rename OutputGlobal to Output and Output to OutputResource. Add support for physical size, mode and available geometry. Use better defaults for geometry and refreshRate from the QWindow if available. A window is no longer passed to QWaylandCompositor constructor and all output related methods are removed, however one or more outputs are required for hardware integration. QWaylandCompositor returns a list of outputs and offers an API to add or remove outputs. Hardware integrations can run headless. Change-Id: I742996571ddb78328f7bfa4f79b25a81995279e1 Done-with: Jan Arne Petersen <jan.petersen@kdab.com> Done-with: Jørgen Lind <jorgen.lind@theqtcompany.com> Reviewed-by: Giulio Camuffo <giulio.camuffo@jollamobile.com>