Jump to content

Plasma/Active/DeviceShell: Difference between revisions

From KDE Community Wiki
Notmart (talk | contribs)
Notmart (talk | contribs)
Line 15: Line 15:


=== API of the homescreen root QML item ===
=== API of the homescreen root QML item ===
[TODO]
The root QML item should expose some properties and signals, that the Plasma shell will use to interact with it.
 
==== Properties ====
All properties are optional.
* Item '''availableScreenRect''': an item as big as the usable area of the main containment, make it smaller to prevent the containment to lay out items out of the ''availableScreenRect'' geometry. The item can offer four additional properties:
** int '''leftReserved''': space reserved at the left edge of the screen. a maximized window will not go over this area of the screen.
** int '''topReserved''': space reserved at the top edge of the screen. a maximized window will not go over this area of the screen.
** int '''rightReserved''': space reserved at the right edge of the screen.
** int '''bottomReserved''': space reserved at the bottom edge of the screen.
* leftEdgePanel:
* topEdgePanel:
* rightEdgePanel:
* bottomEdgePanel:


== How to load a different default workspace ==
== How to load a different default workspace ==
[TODO]
[TODO]

Revision as of 10:29, 25 January 2012

Device specific workspaces

The Plasma Device shell that is used in the Plasma Active tablet shell is a generic user interface loader that doesn't provide any UI by itself.

The device shell will load:

  • A set of QML files that will define the behavior of the workspace for this form factor, in the form of a Plasma::Package file structure
  • That package may eventually load other packages via QML
  • The plasma containments will be loaded and put into the scene
  • Every activity corresponds to 1 containment
  • there may be containments not linked to activities (e.g. panels)
  • the containment are placed in the screen by logic written in JavaScript inside the main homescreen QML package

Structure of the homescreen QML package

[TODO]

API of the homescreen root QML item

The root QML item should expose some properties and signals, that the Plasma shell will use to interact with it.

Properties

All properties are optional.

  • Item availableScreenRect: an item as big as the usable area of the main containment, make it smaller to prevent the containment to lay out items out of the availableScreenRect geometry. The item can offer four additional properties:
    • int leftReserved: space reserved at the left edge of the screen. a maximized window will not go over this area of the screen.
    • int topReserved: space reserved at the top edge of the screen. a maximized window will not go over this area of the screen.
    • int rightReserved: space reserved at the right edge of the screen.
    • int bottomReserved: space reserved at the bottom edge of the screen.
  • leftEdgePanel:
  • topEdgePanel:
  • rightEdgePanel:
  • bottomEdgePanel:

How to load a different default workspace

[TODO]