Phoc.Desktop
Description: Reference for Phoc.Desktop

### Class

# PhocDesktop

#### Description [src]

    class Phoc.Desktop : GObject.Object
    {
      wl_list outputs,
      wlr_export_dmabuf_manager_v1* export_dmabuf_manager_v1,
      wlr_ext_foreign_toplevel_list_v1* ext_foreign_toplevel_list_v1,
      wlr_foreign_toplevel_manager_v1* foreign_toplevel_manager_v1,
      wlr_gamma_control_manager_v1* gamma_control_manager_v1,
      wlr_idle* idle,
      wlr_input_method_manager_v2* input_method,
      wlr_keyboard_shortcuts_inhibit_manager_v1* keyboard_shortcuts_inhibit,
      wlr_layer_shell_v1* layer_shell,
      wlr_output_layout* layout,
      wlr_output_manager_v1* output_manager_v1,
      wlr_output_power_manager_v1* output_power_manager_v1,
      wlr_pointer_constraints_v1* pointer_constraints,
      wlr_pointer_gestures_v1* pointer_gestures,
      wlr_primary_selection_v1_device_manager* primary_selection_device_manager,
      wlr_relative_pointer_manager_v1* relative_pointer_manager,
      wlr_security_context_manager_v1* security_context_manager_v1,
      wlr_server_decoration_manager* server_decoration_manager,
      wlr_tablet_manager_v2* tablet_v2,
      wlr_text_input_manager_v3* text_input,
      wlr_virtual_keyboard_manager_v1* virtual_keyboard,
      wlr_virtual_pointer_manager_v1* virtual_pointer,
      wlr_xdg_activation_v1* xdg_activation_v1,
      wl_listener new_output,
      wl_listener backend_destroy,
      wl_listener keyboard_shortcuts_inhibit_new_inhibitor,
      wl_listener layout_change,
      wl_listener layer_shell_surface,
      wl_listener virtual_keyboard_new,
      wl_listener virtual_pointer_new,
      wl_listener pointer_constraint,
      wl_listener output_manager_apply,
      wl_listener output_manager_test,
      wl_listener output_power_manager_set_mode,
      wl_listener xdg_activation_v1_request_activate,
      wlr_xcursor_manager* xcursor_manager,
      wlr_xwayland* xwayland,
      wl_listener xwayland_surface,
      wl_listener xwayland_ready,
      wl_listener xwayland_remove_startup_id,
      void xwayland_atoms[],
      gboolean maximize,
      gboolean scale_to_fit,
      GHashTable* input_output_map
    }

Desktop singleton.

#### Hierarchy

#### Ancestors

- GObject

#### Constructors

###### phoc_desktop_new

No description available.

#### Instance methods

###### phoc_desktop_destroy_xwayland

No description available.

###### phoc_desktop_find_output

Find an output by make, model and serial.

###### phoc_desktop_find_output_by_name

Find an output by it’s name.

###### phoc_desktop_for_each_unmanaged

Invokes `unmanaged_iter` on all unmanaged surfaces passing in `user_data`.

###### phoc_desktop_for_each_view

Invokes `view_iter` on all views passing in `user_data`.

###### phoc_desktop_get_active_workspace

Get the workspace manager.

###### phoc_desktop_get_auto_maximize

No description available.

###### phoc_desktop_get_builtin_output

Get the built-in output. This assumes there’s only one and returns the first.

###### phoc_desktop_get_draggable_layer_surface

Returns a draggable layer surface if `layer_surface` is configured as such. `NULL` otherwise.

###### phoc_desktop_get_enable_animations

Checks whether the user wants animations to be enabled.

###### phoc_desktop_get_gtk_shell

Gets a handler of the gtk_shell Wayland protocol implementations.

###### phoc_desktop_get_layer_surface_stacks

Get the list of currently known stacks.

###### phoc_desktop_get_phosh_private

Gets a handler of the phosh-private Wayland protocol implementations.

###### phoc_desktop_get_saved_outputs_state

Get the current target output configuration based on the currently known outputs.

###### phoc_desktop_get_scale_to_fit

No description available.

###### phoc_desktop_get_workspace_manager

Get the workspace manager.

###### phoc_desktop_get_xx_cutouts_manager

Get the cutouts manager.

###### phoc_desktop_insert_unmanaged

Insert the unmanaged surface into the queue of unmanaged surfaces. New unmanaged surfaces are inserted at the front so they appear on top of other unmanaged surfaces.

###### phoc_desktop_insert_view

Insert the view into the queue of views. New views are inserted at the front so they appear on top of other views.

###### phoc_desktop_is_privileged_protocol

No description available.

###### phoc_desktop_layer_surface_at

Looks up the surface at `lx,ly` and returns the topmost surface at that position if it is a layersurface, `NULL` otherwise.

###### phoc_desktop_layout_get_output

Get the output at layout coordinates.

###### phoc_desktop_move_view_to_top

Move the given view to the front of the view stack meaning that it will be rendered on top of other views (but below move-to-top views if `view` isn’t a `move-to-top-view` itself).

###### phoc_desktop_notify_activity

No description available.

###### phoc_desktop_remove_unmanaged

Removes a unmanaged surface from the queue of unmanaged surfaces.

###### phoc_desktop_remove_view

Removes a view from the queue of views.

###### phoc_desktop_save_outputs_state

Save the passed in output configuration state.

###### phoc_desktop_set_auto_maximize

Turn auto maximization of toplevels on (`TRUE`) or off (`FALSE`).

###### phoc_desktop_set_scale_to_fit

Turn auto scaling of all oversized toplevels on (`TRUE`) or off (`FALSE`).

###### phoc_desktop_set_view_always_on_top

If `on_top` is `TRUE` marks the `view` (and it’s children) as being placed on top of other views. If `on_top` if `FALSE` the `view` will be placed normally.

###### phoc_desktop_setup_xwayland

No description available.

###### phoc_desktop_unmanaged_check_visibility

Checks if a unmanaged surface is currently visible. This is currently very pessimistic and only assumes that the unmanaged surface is not visible when covered by a fulls screen layer surface.

###### phoc_desktop_view_check_visibility

Checks if a view is currently visible. This is currently very pessimistic and only assumes that the view is not visible when we’re certain it is covered by other windows.

###### phoc_desktop_wlr_surface_at

Looks up the surface at `lx,ly` and returns the topmost surface at that position (if any) and the surface-local coordinates of `sx,sy` on that surface.

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

Please see GObject for a full list of methods.

#### Properties

###### Phoc.Desktop:scale-to-fit

If `TRUE` all surfaces will be scaled down to fit the screen.

#### Signals

##### 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.

#### Class structure

    struct PhocDesktopClass {
      GObjectClass parent_class;

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.