My Project
Loading...
Searching...
No Matches
lomiri::shell::application::MirSurfaceInterface Class Referenceabstract

Holds a Mir surface. Pretty much an opaque class. More...

#include <lomiri/shell/application/MirSurfaceInterface.h>

Inheritance diagram for lomiri::shell::application::MirSurfaceInterface:
Collaboration diagram for lomiri::shell::application::MirSurfaceInterface:

Public Slots

virtual void requestState (Mir::State state)=0
 Requests a change to the specified state.

Signals

void focusRequested ()
 Emitted in response to a requestFocus() call.
void closeRequested ()
 Emitted when close() is called.

Public Member Functions

virtual Q_INVOKABLE void close ()=0
 Sends a close request.
virtual Q_INVOKABLE void forceClose ()=0
 Sends a force close request.
virtual Q_INVOKABLE void activate ()=0
 Activates this surface.

Properties

Mir::Type type
 The surface type.
QString name
 Name of the surface, given by the client application.
QString persistentId
 Persistent Id of the surface.
QString appId
 App Id of the app this surface belongs to.
QPoint position
 Position of the current surface buffer, in pixels.
QPoint requestedPosition
 Requested position of the current surface buffer, in pixels.
QSize size
 Size of the current surface buffer, in pixels.
Mir::State state
 State of the surface.
bool live
 True if it has a mir client bound to it. A "zombie" (live == false) surface never becomes alive again.
bool isReady
 True if surface is ready MirAL decides surface ready when it swaps its first frame.
bool visible
 Visibility of the surface.
Mir::OrientationAngle orientationAngle
 Orientation angle of the surface.
int minimumWidth
 The requested minimum width for the surface Zero if not set.
int minimumHeight
 The requested minimum height for the surface Zero if not set.
int maximumWidth
 The requested maximum width for the surface Zero if not set.
int maximumHeight
 The requested maximum height for the surface Zero if not set.
int widthIncrement
 The requested width increment for the surface Zero if not set.
int heightIncrement
 The requested height increment for the surface Zero if not set.
Mir::ShellChrome shellChrome
 The Shell chrome mode.
QString keymap
 The requested keymap for this surface Its format is "layout+variant".
bool focused
 Whether the surface is focused.
QRect inputBounds
 Input bounds.
bool confinesMousePointer
 Whether the surface wants to confine the mouse pointer within its boundaries.
bool allowClientResize
 Whether to comply to resize requests coming from the client side.
MirSurfaceInterfaceparentSurface
 The parent MirSurface or null if this is a top-level surface.
lomiri::shell::application::MirSurfaceListInterfacechildSurfaceList
 The list of child surfaces.

Detailed Description

Holds a Mir surface. Pretty much an opaque class.

All surface manipulation is done by giving it to a MirSurfaceItem and then using MirSurfaceItem's properties.

Member Function Documentation

◆ activate()

virtual Q_INVOKABLE void lomiri::shell::application::MirSurfaceInterface::activate ( )
pure virtual

Activates this surface.

It will get focused and raised

◆ focusRequested

void lomiri::shell::application::MirSurfaceInterface::focusRequested ( )
signal

Emitted in response to a requestFocus() call.

If shell agrees with it, it should call activate() on this surface

Property Documentation

◆ allowClientResize

bool lomiri::shell::application::MirSurfaceInterface::allowClientResize
readwrite

Whether to comply to resize requests coming from the client side.

It's true by default

◆ childSurfaceList

lomiri::shell::application::MirSurfaceListInterface* lomiri::shell::application::MirSurfaceInterface::childSurfaceList
read

The list of child surfaces.

Ordered from top-most (index=0) to bottom (index=count-1) So the Z value for an item in this model would be z: count - index

◆ confinesMousePointer

bool lomiri::shell::application::MirSurfaceInterface::confinesMousePointer
read

Whether the surface wants to confine the mouse pointer within its boundaries.

If true, the surface doesn't want the mouse pointer to leave its boundaries while it's focused.

◆ focused

bool lomiri::shell::application::MirSurfaceInterface::focused
read

Whether the surface is focused.

It will be true if this surface is MirFocusControllerInterface::focusedSurface

◆ inputBounds

QRect lomiri::shell::application::MirSurfaceInterface::inputBounds
read

Input bounds.

Bounding rectangle of the surface region that accepts input.

◆ orientationAngle

Mir::OrientationAngle lomiri::shell::application::MirSurfaceInterface::orientationAngle
readwrite

Orientation angle of the surface.

How many degrees, clockwise, the UI in the surface has to rotate to match shell's UI orientation


The documentation for this class was generated from the following file: