My Project
lomiri::shell::application::ApplicationInfoInterface Class Referenceabstract

A class that holds information about applications. More...

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

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

Public Types

enum  Stage { MainStage, SideStage }
 A enum that defines a stage. More...
 
enum  State { Starting, Running, Suspended, Stopped }
 An application's state. More...
 
enum  RequestedState { RequestedRunning = Running, RequestedSuspended = Suspended }
 The desired state of an application. More...
 

Signals

void focusRequested ()
 The application is requesting focus.
 

Public Member Functions

virtual void close ()=0
 Closes the application.
 

Properties

QString appId
 The appId of the application. More...
 
QString name
 The name of the application. More...
 
QString comment
 The comment for the application. More...
 
QUrl icon
 The application's icon. More...
 
State state
 The application's state. More...
 
RequestedState requestedState
 The application's requested running state.
 
bool focused
 The application's focus state. More...
 
bool showSplash
 Show Splash screen. More...
 
QString splashTitle
 Splash screen title. More...
 
QUrl splashImage
 Splash image. More...
 
bool splashShowHeader
 Whether an application header should be shown on the splash screen. More...
 
QColor splashColor
 Background color of the splash screen. More...
 
QColor splashColorHeader
 Color of the splash screen header. More...
 
QColor splashColorFooter
 Color of the splash screen footer. More...
 
Qt::ScreenOrientations supportedOrientations
 The orientations supported by the application UI. More...
 
bool rotatesWindowContents
 Whether the application UI will rotate itself to match the screen orientation. More...
 
bool isTouchApp
 Whether the application is an app targeting the Ubuntu Touch platform.
 
bool exemptFromLifecycle
 Whether this app is exempt from lifecycle management. More...
 
QSize initialSurfaceSize
 The size to be given for new surfaces created by this application.
 
lomiri::shell::application::MirSurfaceListInterface surfaceList
 List of the top-level surfaces created by this application.
 
lomiri::shell::application::MirSurfaceListInterface promptSurfaceList
 The list of top-level prompt surfaces for this application.
 
int surfaceCount
 Count of application's surfaces. More...
 
bool serverSideDecoration
 Whether the application wants server side decoration. More...
 

Detailed Description

A class that holds information about applications.

The items hold all the information required for the visual representation in the launcher.

Member Enumeration Documentation

◆ RequestedState

The desired state of an application.

RequestedRunning: If state is Suspended or Stopped, the application will be resumed or restarted, respectively. RequestedSuspended: If state is Running, the application will be suspended.

◆ Stage

A enum that defines a stage.

MainStage: The main stage, which is the normal place for applications in traditional desktop environments. SideStage: The side stage, a panel on the right to place phone form factor applications.

◆ State

An application's state.

Starting: The application was launched and is currently starting up. Running: The application is running and ready to be used. Suspended: The application is in the background and has been suspended by the system in order to save resources. Stopped: The application is in the background and has been stopped by the system in order to save resources. From a programmers point of view, the application is closed, but it's state has been stored to disk and can be restored upon next launch.

Property Documentation

◆ appId

QString lomiri::shell::application::ApplicationInfoInterface::appId
read

The appId of the application.

Holds the appId for the application. For example (com.ubuntu.camera-app). The appId is derived from the filename of the .desktop file.

◆ comment

QString lomiri::shell::application::ApplicationInfoInterface::comment
read

The comment for the application.

Holds the comment of the application as obtained from the .desktop file. Localized to current language.

◆ exemptFromLifecycle

bool lomiri::shell::application::ApplicationInfoInterface::exemptFromLifecycle
readwrite

Whether this app is exempt from lifecycle management.

If true, this app will never entirely suspend its process.

◆ focused

bool lomiri::shell::application::ApplicationInfoInterface::focused
read

The application's focus state.

Holds the current application focus state. True if focused, false otherwise.

◆ icon

QUrl lomiri::shell::application::ApplicationInfoInterface::icon
read

The application's icon.

Holds a path to the icon for the application. Can be a file or a gicon url.

◆ name

QString lomiri::shell::application::ApplicationInfoInterface::name
read

The name of the application.

Holds the name of the application. Localized to current language.

◆ rotatesWindowContents

bool lomiri::shell::application::ApplicationInfoInterface::rotatesWindowContents
read

Whether the application UI will rotate itself to match the screen orientation.

Returns true if the application will rotate the UI in its windows to match the screen orientation.

If false, it means that the application never rotates its UI, so it will rely on the window manager to appropriately rotate his windows to match the screen orientation instead.

See also
supportedOrientations

◆ serverSideDecoration

bool lomiri::shell::application::ApplicationInfoInterface::serverSideDecoration
read

Whether the application wants server side decoration.

By default this will be true, but may be false if the application specifically requested it to be off

◆ showSplash

bool lomiri::shell::application::ApplicationInfoInterface::showSplash
read

Show Splash screen.

A splash screen is shown while the application is loading, before it has drawn its first frame. This sets if it should be shown or not

◆ splashColor

QColor lomiri::shell::application::ApplicationInfoInterface::splashColor
read

Background color of the splash screen.

Any color that is not fully opaque (having an alpha value of less than 1.0) is ignored and the default background color will be used instead.

A splash screen is shown while the application is loading, before it has drawn its first frame.

◆ splashColorFooter

QColor lomiri::shell::application::ApplicationInfoInterface::splashColorFooter
read

Color of the splash screen footer.

Any color that is not fully opaque (having an alpha value of less than 1.0) is ignored and the splashColor will be used instead.

A splash screen is shown while the application is loading, before it has drawn its first frame.

See also
splashColor

◆ splashColorHeader

QColor lomiri::shell::application::ApplicationInfoInterface::splashColorHeader
read

Color of the splash screen header.

Any color that is not fully opaque (having an alpha value of less than 1.0) is ignored and the splashColor will be used instead.

A splash screen is shown while the application is loading, before it has drawn its first frame.

See also
splashColor

◆ splashImage

QUrl lomiri::shell::application::ApplicationInfoInterface::splashImage
read

Splash image.

Url of the splash image to be shown while the application is loading, before it has drawn its first frame.

The splash image is centered on the splash screen and displayed in its actual size (ie, it's not stretched or shrinked and aspect ratio is kept).

◆ splashShowHeader

bool lomiri::shell::application::ApplicationInfoInterface::splashShowHeader
read

Whether an application header should be shown on the splash screen.

We offer 2 kinds of splash screens for applications:

  1. A splash with a gradient background and image
  2. A splash faking a MainView with header text set. So it is possible to arrange things so that once the app starts up, this splash and the app's first frame are identical.

This property is the switch to select between these.

The header will display the splashTitle, if defined, or the application name otherwise.

See also
name, splashTitle

◆ splashTitle

QString lomiri::shell::application::ApplicationInfoInterface::splashTitle
read

Splash screen title.

See also
splashShowHeader Title of the splash screen, to be displayed on its header.

A splash screen is shown while the application is loading, before it has drawn its first frame.

◆ state

State lomiri::shell::application::ApplicationInfoInterface::state
read

The application's state.

Holds the current application state.

◆ supportedOrientations

Qt::ScreenOrientations lomiri::shell::application::ApplicationInfoInterface::supportedOrientations
read

The orientations supported by the application UI.

See also
rotatesContents

◆ surfaceCount

int lomiri::shell::application::ApplicationInfoInterface::surfaceCount
read

Count of application's surfaces.

This is a convenience property and will always be the same as surfaceList->count(). It allows to connect to an application and listen for surface creations/removals for that particular application without having to keep track of the application <-> surfaceList relationship.


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