struct weston_desktop_client *dclient;
struct wl_client *client;
struct ivi_surface *surface;
+ const char *app_id = NULL;
dclient = weston_desktop_surface_get_client(dsurface);
client = weston_desktop_client_get_client(dclient);
weston_desktop_surface_set_user_data(dsurface, surface);
+ app_id = weston_desktop_surface_get_app_id(dsurface);
+
if (ivi->shell_client.ready) {
ivi_check_pending_desktop_surface(surface);
+ weston_log("Added surface %p, app_id %s, role %s\n", surface,
+ app_id, ivi_layout_get_surface_role_name(surface));
} else {
/*
* We delay creating "normal" desktop surfaces until later, to
* give the shell-client an oppurtunity to set the surface as a
* background/panel.
*/
+ weston_log("Added surface %p, app_id %s to pending list\n",
+ surface, app_id);
wl_list_insert(&ivi->pending_surfaces, &surface->link);
}
}
output->background = NULL;
}
+ weston_log("Removed surface %p, app_id %s, role %s\n", surface,
+ weston_desktop_surface_get_app_id(dsurface),
+ ivi_layout_get_surface_role_name(surface));
wl_list_remove(&surface->link);
free(surface);
}
#include "ivi-compositor.h"
#include "policy.h"
+#include "shared/helpers.h"
#include <assert.h>
#include <string.h>
#define AGL_COMP_DEBUG
+static const char *ivi_roles_as_string[] = {
+ [IVI_SURFACE_ROLE_NONE] = "NONE",
+ [IVI_SURFACE_ROLE_BACKGROUND] = "BACKGROUND",
+ [IVI_SURFACE_ROLE_PANEL] = "PANEL",
+ [IVI_SURFACE_ROLE_DESKTOP] = "DESKTOP",
+ [IVI_SURFACE_ROLE_POPUP] = "POPUP",
+ [IVI_SURFACE_ROLE_SPLIT_H] = "SPLIT_H",
+ [IVI_SURFACE_ROLE_SPLIT_V] = "SPLIT_V",
+ [IVI_SURFACE_ROLE_FULLSCREEN] = "FULLSCREEN",
+ [IVI_SURFACE_ROLE_REMOTE] = "REMOTE",
+};
+
+const char *
+ivi_layout_get_surface_role_name(struct ivi_surface *surf)
+{
+ if (surf->role < 0 || surf->role >= ARRAY_LENGTH(ivi_roles_as_string))
+ return " unknown surface role";
+
+ return ivi_roles_as_string[surf->role];
+}
+
static void
ivi_background_init(struct ivi_compositor *ivi, struct ivi_output *output)
{
view = panel->view;
geom = weston_desktop_surface_get_geometry(dsurface);
#ifdef AGL_COMP_DEBUG
- weston_log("geom.width %d, geom.height %d, geom.x %d, geom.y %d\n",
+ weston_log("(panel) geom.width %d, geom.height %d, geom.x %d, geom.y %d\n",
geom.width, geom.height, geom.x, geom.y);
#endif
switch (panel->panel.edge) {
surf->desktop.last_output = surf->desktop.pending_output;
surf->desktop.pending_output = NULL;
}
+
+ weston_log("Activation completed for app_id %s, role %s\n",
+ weston_desktop_surface_get_app_id(surf->dsurface),
+ ivi_layout_get_surface_role_name(surf));
}
static struct ivi_output *
const char *app_id =
weston_desktop_surface_get_app_id(dsurf);
if (app_id && ivi_bg_output) {
+ weston_log("Surface with app_id %s, role %s activating by default\n",
+ weston_desktop_surface_get_app_id(surf->dsurface),
+ ivi_layout_get_surface_role_name(surf));
ivi_layout_activate(ivi_bg_output, app_id);
surf->activated_by_default = true;
}
app_id = weston_desktop_surface_get_app_id(dsurf);
if (app_id) {
+ weston_log("Surface with app_id %s, role %s activating by default\n",
+ weston_desktop_surface_get_app_id(surf->dsurface),
+ ivi_layout_get_surface_role_name(surf));
ivi_layout_activate(output, app_id);
surf->activated_by_default = true;
}
return;
geom = weston_desktop_surface_get_geometry(dsurface);
- weston_log("geom x %d, y %d, width %d, height %d\n", geom.x, geom.y,
+ weston_log("(popup) geom x %d, y %d, width %d, height %d\n", geom.x, geom.y,
geom.width, geom.height);
assert(surface->role == IVI_SURFACE_ROLE_POPUP);
}
#ifdef AGL_COMP_DEBUG
- weston_log("Found app_id %s\n", app_id);
+ weston_log("Activating app_id %s, type %s\n", app_id,
+ ivi_layout_get_surface_role_name(surf));
#endif
if (surf->role == IVI_SURFACE_ROLE_POPUP) {
output->area.width,
output->area.height);
+ weston_log("Setting app_id %s, role %s, set to maximized (%dx%d)\n",
+ app_id, ivi_layout_get_surface_role_name(surf),
+ output->area.width, output->area.height);
/*
* If the view isn't mapped, we put it onto the hidden layer so it will
* start receiving frame events, and will be able to act on our
weston_view_set_output(view, output->output);
weston_layer_entry_insert(&ivi->hidden.view_list, &view->layer_link);
/* force repaint of the entire output */
+
+ weston_log("Placed app_id %s, type %s in hidden layer\n",
+ app_id, ivi_layout_get_surface_role_name(surf));
weston_output_damage(output->output);
}
}
}
ivi_output = ivi_layout_get_output_from_surface(surf);
- weston_log("deactiving %s\n", app_id);
+ weston_log("Deactiving %s, role %s\n", app_id,
+ ivi_layout_get_surface_role_name(surf));
if (surf->role == IVI_SURFACE_ROLE_DESKTOP) {
struct ivi_surface *previous_active;