17#ifndef LOMIRI_SHELL_APPLICATION_MIRSURFACE_H
18#define LOMIRI_SHELL_APPLICATION_MIRSURFACE_H
53 Q_PROPERTY(QString
name READ
name NOTIFY nameChanged)
78 Q_PROPERTY(QSize
size READ
size NOTIFY sizeChanged)
89 Q_PROPERTY(
bool live READ
live NOTIFY liveChanged)
108 NOTIFY orientationAngleChanged DESIGNABLE
false)
155 Q_PROPERTY(QString
keymap READ
keymap WRITE setKeymap NOTIFY keymapChanged)
205 virtual QString
name()
const = 0;
209 virtual QString
appId()
const = 0;
211 virtual QPoint
position()
const = 0;
213 virtual QSize
size()
const = 0;
214 virtual void resize(
int width,
int height) = 0;
215 virtual void resize(
const QSize &
size) = 0;
219 virtual bool live()
const = 0;
220 virtual bool isReady()
const = 0;
221 virtual bool visible()
const = 0;
233 virtual void setKeymap(
const QString &) = 0;
234 virtual QString
keymap()
const = 0;
238 virtual bool focused()
const = 0;
245 virtual void setAllowClientResize(
bool) = 0;
248 virtual void setRequestedPosition(
const QPoint &) = 0;
259 Q_INVOKABLE
virtual void close() = 0;
284 void liveChanged(
bool value);
285 void visibleChanged(
bool visible);
288 void positionChanged(QPoint
position);
289 void requestedPositionChanged(QPoint
position);
290 void sizeChanged(
const QSize &value);
291 void nameChanged(
const QString &
name);
292 void minimumWidthChanged(
int value);
293 void minimumHeightChanged(
int value);
294 void maximumWidthChanged(
int value);
295 void maximumHeightChanged(
int value);
296 void widthIncrementChanged(
int value);
297 void heightIncrementChanged(
int value);
299 void keymapChanged(
const QString &value);
300 void focusedChanged(
bool value);
301 void inputBoundsChanged(QRect value);
302 void confinesMousePointerChanged(
bool value);
303 void allowClientResizeChanged(
bool value);
State
Surface state.
Definition Mir.h:64
ShellChrome
Shell chrome.
Definition Mir.h:97
Type
Surface type.
Definition Mir.h:47
OrientationAngle
Surface orientation angle.
Definition Mir.h:86
Holds a Mir surface. Pretty much an opaque class.
Definition MirSurfaceInterface.h:42
int minimumHeight
The requested minimum height for the surface Zero if not set.
Definition MirSurfaceInterface.h:120
lomiri::shell::application::MirSurfaceListInterface * childSurfaceList
The list of child surfaces.
Definition MirSurfaceInterface.h:196
virtual Q_INVOKABLE void activate()=0
Activates this surface.
bool isReady
True if surface is ready MirAL decides surface ready when it swaps its first frame.
Definition MirSurfaceInterface.h:95
QString appId
App Id of the app this surface belongs to.
Definition MirSurfaceInterface.h:63
MirSurfaceInterface * parentSurface
The parent MirSurface or null if this is a top-level surface.
Definition MirSurfaceInterface.h:188
QSize size
Size of the current surface buffer, in pixels.
Definition MirSurfaceInterface.h:78
void focusRequested()
Emitted in response to a requestFocus() call.
int widthIncrement
The requested width increment for the surface Zero if not set.
Definition MirSurfaceInterface.h:138
bool visible
Visibility of the surface.
Definition MirSurfaceInterface.h:100
Mir::State state
State of the surface.
Definition MirSurfaceInterface.h:83
int maximumHeight
The requested maximum height for the surface Zero if not set.
Definition MirSurfaceInterface.h:132
virtual Q_INVOKABLE void close()=0
Sends a close request.
bool live
True if it has a mir client bound to it. A "zombie" (live == false) surface never becomes alive again...
Definition MirSurfaceInterface.h:89
int minimumWidth
The requested minimum width for the surface Zero if not set.
Definition MirSurfaceInterface.h:114
QRect inputBounds
Input bounds.
Definition MirSurfaceInterface.h:169
QPoint requestedPosition
Requested position of the current surface buffer, in pixels.
Definition MirSurfaceInterface.h:73
bool focused
Whether the surface is focused.
Definition MirSurfaceInterface.h:162
Mir::ShellChrome shellChrome
The Shell chrome mode.
Definition MirSurfaceInterface.h:149
bool allowClientResize
Whether to comply to resize requests coming from the client side.
Definition MirSurfaceInterface.h:183
Mir::Type type
The surface type.
Definition MirSurfaceInterface.h:48
virtual Q_INVOKABLE void forceClose()=0
Sends a force close request.
QString name
Name of the surface, given by the client application.
Definition MirSurfaceInterface.h:53
int maximumWidth
The requested maximum width for the surface Zero if not set.
Definition MirSurfaceInterface.h:126
QString keymap
The requested keymap for this surface Its format is "layout+variant".
Definition MirSurfaceInterface.h:155
QPoint position
Position of the current surface buffer, in pixels.
Definition MirSurfaceInterface.h:68
int heightIncrement
The requested height increment for the surface Zero if not set.
Definition MirSurfaceInterface.h:144
virtual void requestState(Mir::State state)=0
Requests a change to the specified state.
bool confinesMousePointer
Whether the surface wants to confine the mouse pointer within its boundaries.
Definition MirSurfaceInterface.h:176
Mir::OrientationAngle orientationAngle
Orientation angle of the surface.
Definition MirSurfaceInterface.h:108
QString persistentId
Persistent Id of the surface.
Definition MirSurfaceInterface.h:58
void closeRequested()
Emitted when close() is called.
Interface for a list model of MirSurfaces.
Definition MirSurfaceListInterface.h:32
Top-level namespace for all things Lomiri-related.
Definition Version.h:38