### Class

# Phosh Shell

#### Description [src]

    class Phosh.Shell : GObject.Object
      implements Gio.ActionGroup, Gio.ActionMap {
      /* No available fields */
    }

The shell singleton

`PhoshShell` is responsible for instantiating the GUI parts of the shell#PhoshTopPanel, `PhoshHome`,… and the managers that interface with DBus `PhoshMonitorManager`, `PhoshFeedbackManager`, … and coordinates between them.

#### Ancestors

- GObject

#### Implements

- GActionGroup
- GActionMap

#### Constructors

###### phosh_shell_new

No description available.

#### Functions

###### phosh_shell_get_default

Get the shell singleton.

#### Instance methods

###### phosh_shell_fade_out

No description available.

###### phosh_shell_get_locked

No description available.

###### phosh_shell_get_lockscreen_manager

Get the lockscreen manager.

###### phosh_shell_get_lockscreen_type

No description available.

###### phosh_shell_get_screenshot_manager

Get the screenshot manager.

###### phosh_shell_get_usable_area

Gives the usable area in pixels usable by a client on the primary display.

###### phosh_shell_set_default

Set the PhoshShell singleton that is returned by `phosh_shell_get_default()`.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

##### Methods inherited from GActionGroup (14)

###### g_action_group_action_added

Emits the `GActionGroup::action-added` signal on `action_group`.

###### g_action_group_action_enabled_changed

Emits the `GActionGroup::action-enabled-changed` signal on `action_group`.

###### g_action_group_action_removed

Emits the `GActionGroup::action-removed` signal on `action_group`.

###### g_action_group_action_state_changed

Emits the `GActionGroup::action-state-changed` signal on `action_group`.

###### g_action_group_activate_action

Activate the named action within `action_group`.

###### g_action_group_change_action_state

Request for the state of the named action within `action_group` to be changed to `value`.

###### g_action_group_get_action_enabled

Checks if the named action within `action_group` is currently enabled.

###### g_action_group_get_action_parameter_type

Queries the type of the parameter that must be given when activating the named action within `action_group`.

###### g_action_group_get_action_state

Queries the current state of the named action within `action_group`.

###### g_action_group_get_action_state_hint

Requests a hint about the valid range of values for the state of the named action within `action_group`.

###### g_action_group_get_action_state_type

Queries the type of the state of the named action within `action_group`.

###### g_action_group_has_action

Checks if the named action exists within `action_group`.

###### g_action_group_list_actions

Lists the actions contained within `action_group`.

###### g_action_group_query_action

Queries all aspects of the named action within an `action_group`.

##### Methods inherited from GActionMap (5)

###### g_action_map_add_action

Adds an action to the `action_map`.

###### g_action_map_add_action_entries

A convenience function for creating multiple `GSimpleAction` instances and adding them to a `GActionMap`.

###### g_action_map_lookup_action

Looks up the action with the name `action_name` in `action_map`.

###### g_action_map_remove_action

Removes the named action from the action map.

###### g_action_map_remove_action_entries

Remove actions from a `GActionMap`. This is meant as the reverse of `g_action_map_add_action_entries()`.

#### Properties

###### Phosh.Shell:builtin-monitor

The built in monitor. This is a hardware property and hence can only be read. It can be `NULL` when not present or disabled.

since: 0.10.1

###### Phosh.Shell:docked

Whether the device is currently docked. This mirrors the property from `PhoshDockedManager` for easier access.

###### Phosh.Shell:locked

Whether the screen is currently locked. This mirrors the property from `PhoshLockscreenManager` for easier access.

###### Phosh.Shell:overview-visible

Whether to display the `PhoshHome` (overview and home bar).

###### Phosh.Shell:primary-monitor

The primary monitor that has the panels, lock screen etc.

since: 0.0.2

###### Phosh.Shell:shell-state

The state of the shell (locked, modal dialog shown, …).

since: 0.10.0

#### Signals

###### Phosh.Shell::ready

The ready signal is emitted once when the shell finished starting up.

since: 0.11.0

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

##### Signals inherited from GActionGroup (4)

###### GActionGroup::action-added

Signals that a new action was just added to the group.

###### GActionGroup::action-enabled-changed

Signals that the enabled status of the named action has changed.

###### GActionGroup::action-removed

Signals that an action is just about to be removed from the group.

###### GActionGroup::action-state-changed

Signals that the state of the named action has changed.

#### Class structure

    struct PhoshShellClass {
      GObjectClass parent_class;
      GType (* get_lockscreen_type) (
        PhoshShell* self
      );
      void (* _phosh_reserved1) (
    void
      );
      void (* _phosh_reserved2) (
    void
      );
      void (* _phosh_reserved3) (
    void
      );
      void (* _phosh_reserved4) (
    void
      );
      void (* _phosh_reserved5) (
    void
      );
      void (* _phosh_reserved6) (
    void
      );
      void (* _phosh_reserved7) (
    void
      );
      void (* _phosh_reserved8) (
    void
      );
      void (* _phosh_reserved9) (
    void
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.

`get_lockscreen_type: GType (* get_lockscreen_type) ( PhoshShell* self )`

  No description available.

`_phosh_reserved1: void (* _phosh_reserved1) ( void )`

  No description available.

`_phosh_reserved2: void (* _phosh_reserved2) ( void )`

  No description available.

`_phosh_reserved3: void (* _phosh_reserved3) ( void )`

  No description available.

`_phosh_reserved4: void (* _phosh_reserved4) ( void )`

  No description available.

`_phosh_reserved5: void (* _phosh_reserved5) ( void )`

  No description available.

`_phosh_reserved6: void (* _phosh_reserved6) ( void )`

  No description available.

`_phosh_reserved7: void (* _phosh_reserved7) ( void )`

  No description available.

`_phosh_reserved8: void (* _phosh_reserved8) ( void )`

  No description available.

`_phosh_reserved9: void (* _phosh_reserved9) ( void )`

  No description available.

#### Virtual methods

###### Phosh.ShellClass.get_lockscreen_type

No description available.