+void
+ivi_layout_remote_committed(struct ivi_surface *surf);
+
+void
+ivi_layout_popup_committed(struct ivi_surface *surface);
+
+void
+ivi_layout_fullscreen_committed(struct ivi_surface *surface);
+
+void
+ivi_layout_split_committed(struct ivi_surface *surface);
+
+void
+ivi_layout_deactivate(struct ivi_compositor *ivi, const char *app_id);
+
+void
+ivi_layout_desktop_resize(struct ivi_surface *surface,
+ struct weston_geometry area);
+
+struct ivi_output *
+ivi_layout_get_output_from_surface(struct ivi_surface *surf);
+
+void
+insert_black_curtain(struct ivi_output *output);
+
+void
+remove_black_curtain(struct ivi_output *output);
+
+bool
+output_has_black_curtain(struct ivi_output *output);
+
+const char *
+ivi_layout_get_surface_role_name(struct ivi_surface *surf);
+
+void
+ivi_set_pending_desktop_surface_remote(struct ivi_output *ioutput,
+ const char *app_id);
+
+struct ivi_output *
+ivi_layout_find_with_app_id(const char *app_id, struct ivi_compositor *ivi);
+
+void
+shell_advertise_app_state(struct ivi_compositor *ivi, const char *app_id,
+ const char *data, uint32_t app_state);
+void
+ivi_screenshooter_create(struct ivi_compositor *ivi);
+
+void
+ivi_seat_init(struct ivi_compositor *ivi);
+
+void
+ivi_seat_reset_caps_sent(struct ivi_compositor *ivi);
+
+void
+agl_shell_desktop_advertise_application_id(struct ivi_compositor *ivi,
+ struct ivi_surface *surface);
+void
+ivi_check_pending_surface_desktop(struct ivi_surface *surface,
+ enum ivi_surface_role *role);
+
+struct ivi_output *
+ivi_layout_find_bg_output(struct ivi_compositor *ivi);
+void
+ivi_compositor_destroy_pending_surfaces(struct ivi_compositor *ivi);
+
+void
+ivi_shell_finalize(struct ivi_compositor *ivi);
+
+struct ivi_surface *
+get_ivi_shell_surface(struct weston_surface *surface);
+
+struct ivi_shell_seat *
+get_ivi_shell_seat(struct weston_seat *seat);
+
+struct weston_seat *
+get_ivi_shell_weston_first_seat(struct ivi_compositor *ivi);
+
+void
+ivi_shell_activate_surface(struct ivi_surface *ivi_surf,
+ struct ivi_shell_seat *ivi_seat,
+ uint32_t flags);
+int
+sigchld_handler(int signal_number, void *data);
+
+void
+shell_send_app_state(struct ivi_compositor *ivi, const char *app_id,
+ enum agl_shell_app_state state);
+void
+ivi_layout_destroy_saved_outputs(struct ivi_compositor *ivi);
+
+struct weston_output *
+get_default_output(struct weston_compositor *compositor);
+
+struct weston_output *
+get_focused_output(struct weston_compositor *compositor);
+
+void
+shell_send_app_on_output(struct ivi_compositor *ivi, const char *app_id,
+ const char *output_name);
+bool
+ivi_surface_count_one(struct ivi_output *ivi_output,
+ enum ivi_surface_role role);
+
+int
+parse_activation_area(const char *geometry, struct ivi_output *output);
+
+bool
+is_shell_surface_xwayland(struct ivi_surface *surf);
+
+void
+ivi_layout_reset_split_surfaces(struct ivi_compositor *ivi);
+
+void
+_ivi_set_shell_surface_split(struct ivi_surface *surface, struct ivi_output *output,
+ uint32_t orientation, uint32_t width, int32_t sticky,
+ bool to_activate);
+struct ivi_output_config *
+ivi_init_parsed_options(struct weston_compositor *compositor);