## PhoshHome

PhoshHome — The home surface contains the overview and the button to fold and unfold the overview.

## Functions

GtkWidget * | phosh_home_new ()
void | phosh_home_set_state ()
PhoshOverview * | phosh_home_get_overview ()

## Properties

gboolean | osk-enabled | Read / Write
PhoshHomeState | state | Read / Write

## Signals

void | osk-activated | Run Last

## Types and Values

#define | PHOSH_TYPE_HOME
#define | PHOSH_HOME_BUTTON_HEIGHT
enum | PhoshHomeState
| PhoshHome

## Object Hierarchy

        GEnum
        ╰── PhoshHomeState
        GObject
        ╰── GInitiallyUnowned
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkBin
                        ╰── GtkWindow
                            ╰── PhoshLayerSurface
                                ╰── PhoshHome

## Implemented Interfaces

PhoshHome implements AtkImplementorIface and GtkBuildable.

## Description

PhoshHome contains the PhoshOverview that manages running applications and the app grid. It also manages a button at the bottom of the screen to fold and unfold the PhoshOverview and a button to toggle the OSK.

## Functions

### phosh_home_new ()

    GtkWidget *
    phosh_home_new (struct zwlr_layer_shell_v1 *layer_shell,
                    struct wl_output *wl_output);

### phosh_home_set_state ()

    void
    phosh_home_set_state (PhoshHome *self,
                          PhoshHomeState state);

Set the state of the home screen. See PhoshHomeState.

#### Parameters

self | The home surface |
state | The state to set |

### phosh_home_get_overview ()

    PhoshOverview *
    phosh_home_get_overview (PhoshHome *self);

## Types and Values

### PHOSH_TYPE_HOME

    #define PHOSH_TYPE_HOME (phosh_home_get_type())

### PHOSH_HOME_BUTTON_HEIGHT

    #define PHOSH_HOME_BUTTON_HEIGHT 40

### enum PhoshHomeState

The state of PhoshHome.

#### Members

PHOSH_HOME_STATE_FOLDED | Only home button is visiable |
PHOSH_HOME_STATE_UNFOLDED | Home screen takes the whole screen except the top panel |

### PhoshHome

    typedef struct _PhoshHome PhoshHome;

## Property Details

### The `“osk-enabled”` property

      “osk-enabled”              gboolean

Whether the on screen keyboard is enabled.

Owner: PhoshHome

Flags: Read / Write

Default value: FALSE

### The `“state”` property

      “state”                    PhoshHomeState

The state of the home screen.

Owner: PhoshHome

Flags: Read / Write

Default value: PHOSH_HOME_STATE_FOLDED

## Signal Details

### The `“osk-activated”` signal

    void
    user_function (PhoshHome *phoshhome,
                   gpointer   user_data)

Flags: Run Last