QtWaylandDev: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
h1. QtWayland Development thoughts | |||
Before making an official release of QtWayland, it needs an | Before making an official release of QtWayland, it needs an API review. Use this page to comment on things that could/should be done. | ||
==Things to do== | == Things to do == | ||
* | * PIMPLize all public compositor classes so we can make a step toward BC releases | ||
== | == APIs to add == | ||
* '''ping/pong public | * '''ping/pong public API (shell_surface::ping)''' | ||
The compositor should be able to check if a client stops responding. Considerations: | The compositor should be able to check if a client stops responding. Considerations:<br />'''''' Control how often compositor sends ping<br />'''''' Make ping() invokable from the compositor API<br />'''''' Add a pong[ed]() signal when the client pongs<br />'''''' Add a lastPong property that holds the timestamp<br />'''''' Add a convenience signal when last pong goes over a certain threshold | ||
* | * '''Better QML Property API''' | ||
The generic property API is annoying to use, especially from QML. plfiorini has already started a fix for this: https://codereview.qt.io/#change,52123<br />'''''' Would it make more sense for the generic properties just to use QWindow instead? Then you could access any QProperty of QWindow.<br />'''''' How would the QML attached/grouped property look? QQmlPropertyMap or even a private QML support class should be used to make this as pretty as possible<br /><code><br />WaylandSurfaceItem {<br /> windowProperties { // Or just "properties&quot;?<br /> customProperty: "prop&quot; // This?<br /> property string x: "x&quot; // Or this?<br /> }<br /> title: windowProperties.x // Make sure you can bind/update/etc.<br />}<br /></code> | |||
== APIs to remove == | |||
* '''QWaylandSurfaceItem::clientRenderingEnabled''' | * '''QWaylandSurfaceItem::clientRenderingEnabled''' | ||
Revision as of 10:41, 24 February 2015
h1. QtWayland Development thoughts
Before making an official release of QtWayland, it needs an API review. Use this page to comment on things that could/should be done.
Things to do
- PIMPLize all public compositor classes so we can make a step toward BC releases
APIs to add
- ping/pong public API (shell_surface::ping)
The compositor should be able to check if a client stops responding. Considerations:
' Control how often compositor sends ping
' Make ping() invokable from the compositor API
' Add a pong[ed]() signal when the client pongs
' Add a lastPong property that holds the timestamp
' Add a convenience signal when last pong goes over a certain threshold
- Better QML Property API
The generic property API is annoying to use, especially from QML. plfiorini has already started a fix for this: https://codereview.qt.io/#change,52123
' Would it make more sense for the generic properties just to use QWindow instead? Then you could access any QProperty of QWindow.
' How would the QML attached/grouped property look? QQmlPropertyMap or even a private QML support class should be used to make this as pretty as possible
<br />WaylandSurfaceItem {<br /> windowProperties { // Or just "properties&quot;?<br /> customProperty: "prop&quot; // This?<br /> property string x: "x&quot; // Or this?<br /> }<br /> title: windowProperties.x // Make sure you can bind/update/etc.<br />}<br />
APIs to remove
- QWaylandSurfaceItem::clientRenderingEnabled