summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmre Ucan <eucan@de.adit-jv.com>2016-02-26 15:04:14 +0100
committerEugen Friedrich <efriedrich@de.adit-jv.com>2016-03-04 09:59:55 +0100
commit796929bf117af635d986ce72381ae9f56c6ab5d1 (patch)
tree72bfb980594fd4db45f81a05d3ce1d5f5bab64ef
parent926bbe2c0b8e4158cb051edf6f8746fafa9872bf (diff)
downloadwayland-ivi-extension-796929bf117af635d986ce72381ae9f56c6ab5d1.tar.gz
ivi-controller: simplify get_layers function
Signed-off-by: Emre Ucan <eucan@de.adit-jv.com>
-rw-r--r--weston-ivi-shell/src/ivi-controller-impl.c33
1 files changed, 11 insertions, 22 deletions
diff --git a/weston-ivi-shell/src/ivi-controller-impl.c b/weston-ivi-shell/src/ivi-controller-impl.c
index 88768cb..c16276f 100644
--- a/weston-ivi-shell/src/ivi-controller-impl.c
+++ b/weston-ivi-shell/src/ivi-controller-impl.c
@@ -125,14 +125,12 @@ get_surface(struct wl_list *list_surf, struct ivi_layout_surface *layout_surface
}
static struct ivilayer*
-get_layer(struct wl_list *list_layer, uint32_t id_layer)
+get_layer(struct wl_list *list_layer, struct ivi_layout_layer *layout_layer)
{
struct ivilayer *ivilayer = NULL;
- uint32_t ivilayer_id = 0;
wl_list_for_each(ivilayer, list_layer, link) {
- ivilayer_id = ivi_extension_get_id_of_layer(ivilayer->shell, ivilayer->layout_layer);
- if (ivilayer_id == id_layer) {
+ if (layout_layer == ivilayer->layout_layer) {
return ivilayer;
}
}
@@ -998,21 +996,21 @@ controller_layer_create(struct wl_client *client,
struct ivilayer *ivilayer = NULL;
const struct ivi_layout_layer_properties *prop;
- ivilayer = get_layer(&shell->list_layer, id_layer);
- if (ivilayer == NULL) {
+ layout_layer = ivi_extension_get_layer_from_id(shell, id_layer);
+ if (layout_layer == NULL) {
layout_layer = ivi_extension_layer_create_with_dimension(shell, id_layer,
(uint32_t)width, (uint32_t)height);
if (layout_layer == NULL) {
weston_log("id_layer is already created\n");
return;
}
+ }
- /* ivilayer will be created by layer_event_create */
- ivilayer = get_layer(&shell->list_layer, id_layer);
- if (ivilayer == NULL) {
- weston_log("couldn't get layer object\n");
- return;
- }
+ /* ivilayer will be created by layer_event_create */
+ ivilayer = get_layer(&shell->list_layer, layout_layer);
+ if (ivilayer == NULL) {
+ weston_log("couldn't get layer object\n");
+ return;
}
layer_resource = wl_resource_create(client,
@@ -1198,12 +1196,6 @@ create_layer(struct ivishell *shell,
struct ivilayer *ivilayer = NULL;
struct ivicontroller *controller = NULL;
- ivilayer = get_layer(&shell->list_layer, id_layer);
- if (ivilayer != NULL) {
- weston_log("id_layer is already created\n");
- return NULL;
- }
-
ivilayer = calloc(1, sizeof *ivilayer);
if (NULL == ivilayer) {
weston_log("no memory to allocate client layer\n");
@@ -1278,11 +1270,8 @@ layer_event_remove(struct ivi_layout_layer *layout_layer,
struct wl_resource *resource;
struct ivishell *shell = userdata;
struct ivilayer *ivilayer = NULL;
- uint32_t id_layer = 0;
-
- id_layer = ivi_extension_get_id_of_layer(shell, layout_layer);
- ivilayer = get_layer(&shell->list_layer, id_layer);
+ ivilayer = get_layer(&shell->list_layer, layout_layer);
if (ivilayer == NULL) {
weston_log("id_surface is not created yet\n");
return;