The class keyword make compile-error when enlightenment builds with c++ compiler.
Change-Id: I399c45847cf8d27197020668d9cf8cf6720f8844
eina_stringshare_replace(&ec->border.name, NULL);
eina_stringshare_replace(&ec->bordername, NULL);
eina_stringshare_replace(&ec->icccm.name, NULL);
+#if defined(__cplusplus) || defined(c_plusplus)
+ eina_stringshare_replace(&ec->icccm.cpp_class, NULL);
+#else
eina_stringshare_replace(&ec->icccm.class, NULL);
+#endif
eina_stringshare_replace(&ec->icccm.title, NULL);
eina_stringshare_replace(&ec->icccm.icon_name, NULL);
eina_stringshare_replace(&ec->icccm.machine, NULL);
if ((int)ec->netwm.type != m->window_type)
return EINA_FALSE;
+#if defined(__cplusplus) || defined(c_plusplus)
+ if (((m->clas) && (!ec->icccm.cpp_class)) ||
+ ((ec->icccm.cpp_class) && (m->clas) && (!e_util_glob_match(ec->icccm.cpp_class, m->clas))))
+ return EINA_FALSE;
+#else
if (((m->clas) && (!ec->icccm.class)) ||
((ec->icccm.class) && (m->clas) && (!e_util_glob_match(ec->icccm.class, m->clas))))
return EINA_FALSE;
+#endif
if (((m->name) && (!ec->icccm.name)) ||
((ec->icccm.name) && (m->name) && (!e_util_glob_match(ec->icccm.name, m->name))))
ec->icccm.title = NULL;
ec->icccm.name = NULL;
+#if defined(__cplusplus) || defined(c_plusplus)
+ ec->icccm.cpp_class = NULL;
+#else
ec->icccm.class = NULL;
+#endif
ec->icccm.icon_name = NULL;
ec->icccm.machine = NULL;
ec->icccm.min_w = 1;
{
Eina_Stringshare *title;
Eina_Stringshare *name;
+#if defined(__cplusplus) || defined(c_plusplus)
+ Eina_Stringshare *cpp_class; /* for C++ TODO: change the implementation for this */
+#else
Eina_Stringshare *class;
+#endif
Eina_Stringshare *icon_name;
Eina_Stringshare *machine;
int min_w, min_h;
evas_object_geometry_get(o, &x, &y, &w, &h);
fprintf(stderr, "LAYER %d ", evas_object_layer_get(o));
if (ec)
+#if defined(__cplusplus) || defined(c_plusplus)
+ fprintf(stderr, "EC%s%s: %p - '%s:%s' || %d,%d @ %dx%d\n",
+ ec->override ? "O" : "", ec->focused ? "*" : "", ec,
+ e_client_util_name_get(ec) ?: ec->icccm.name, ec->icccm.cpp_class, x, y, w, h);
+#else
fprintf(stderr, "EC%s%s: %p - '%s:%s' || %d,%d @ %dx%d\n",
ec->override ? "O" : "", ec->focused ? "*" : "", ec,
e_client_util_name_get(ec) ?: ec->icccm.name, ec->icccm.class, x, y, w, h);
- else
+#endif
+ else
fprintf(stderr, "OBJ: %p - %s || %d,%d @ %dx%d\n", o, evas_object_name_get(o), x, y, w, h);
o = evas_object_below_get(o);
}
if (((m->title) && (!ec->netwm.name)) ||
((ec->netwm.name) && (m->title) && (!e_util_glob_match(ec->netwm.name, m->title))))
return EINA_FALSE;
+#if defined(__cplusplus) || defined(c_plusplus)
+ if (((m->clas) && (!ec->icccm.cpp_class)) ||
+ ((ec->icccm.cpp_class) && (m->clas) && (!e_util_glob_match(ec->icccm.cpp_class, m->clas))))
+ return EINA_FALSE;
+#else
if (((m->clas) && (!ec->icccm.class)) ||
((ec->icccm.class) && (m->clas) && (!e_util_glob_match(ec->icccm.class, m->clas))))
return EINA_FALSE;
- if (((m->role) && (!ec->icccm.window_role)) ||
+#endif
+
+ if (((m->role) && (!ec->icccm.window_role)) ||
((ec->icccm.window_role) && (m->role) && (!e_util_glob_match(ec->icccm.window_role, m->role))))
return EINA_FALSE;
if (m->primary_type)
if (!ec) continue;
+#if defined(__cplusplus) || defined(c_plusplus)
+ snprintf(info_str, sizeof(info_str),
+ "%10s [%d] %8p win(0x%08zx) res(%d) pid(%d) vis(%d) name(%s)",
+ "PROVIDER", idx++, provider,
+ e_client_util_win_get(ec),
+ e_pixmap_res_id_get(ec->pixmap),
+ ec->netwm.pid,
+ provider->vis_ref,
+ e_client_util_name_get(ec)?:ec->icccm.cpp_class?:"NO NAME");
+#else
snprintf(info_str, sizeof(info_str),
"%10s [%d] %8p win(0x%08zx) res(%d) pid(%d) vis(%d) name(%s)",
"PROVIDER", idx++, provider,
ec->netwm.pid,
provider->vis_ref,
e_client_util_name_get(ec)?:ec->icccm.class?:"NO NAME");
+#endif
eldbus_message_iter_basic_append(line_array, 's', info_str);
if (provider->common.surfaces)
if ((eina_list_last(provider->common.surfaces) == l))
is_last = EINA_TRUE;
+#if defined(__cplusplus) || defined(c_plusplus)
+ snprintf(info_str, sizeof(info_str),
+ "%10s CONSUMER [%d] %8p ec(%8p) win(0x%08zx) pid(%d) vis(%d) redirected(%d) name(%s)",
+ is_last? "└─" : "├─", s_idx++, remote_surface,
+ consumer ? consumer : NULL,
+ consumer ? e_client_util_win_get(consumer) : 0,
+ pid,
+ remote_surface->visible,
+ remote_surface->redirect,
+ consumer? e_client_util_name_get(consumer)?:consumer->icccm.cpp_class?:"NO NAME":"NO CONSUMER"
+ );
+#else
snprintf(info_str, sizeof(info_str),
"%10s CONSUMER [%d] %8p ec(%8p) win(0x%08zx) pid(%d) vis(%d) redirected(%d) name(%s)",
is_last? "└─" : "├─", s_idx++, remote_surface,
remote_surface->redirect,
consumer? e_client_util_name_get(consumer)?:consumer->icccm.class?:"NO NAME":"NO CONSUMER"
);
+#endif
eldbus_message_iter_basic_append(line_array, 's', info_str);
}
eldbus_message_iter_basic_append(line_array, 's', "");
Eina_List *l;
if (!ec) continue;
+#if defined(__cplusplus) || defined(c_plusplus)
+ snprintf(info_str, sizeof(info_str),
+ "%10s [%d] %8p win(0x%08zx) res(%d) pid(%d) offscreen(%d) name(%s)",
+ "SOURCE", idx++, source,
+ e_client_util_win_get(ec),
+ e_pixmap_res_id_get(ec->pixmap),
+ ec->netwm.pid,
+ source->offscreen_ref,
+ e_client_util_name_get(ec)?:ec->icccm.cpp_class?:"NO NAME");
+#else
snprintf(info_str, sizeof(info_str),
"%10s [%d] %8p win(0x%08zx) res(%d) pid(%d) offscreen(%d) name(%s)",
"SOURCE", idx++, source,
ec->netwm.pid,
source->offscreen_ref,
e_client_util_name_get(ec)?:ec->icccm.class?:"NO NAME");
- eldbus_message_iter_basic_append(line_array, 's', info_str);
+#endif
+ eldbus_message_iter_basic_append(line_array, 's', info_str);
if (source->common.surfaces)
{
if ((eina_list_last(source->common.surfaces) == l))
is_last = EINA_TRUE;
+#if defined(__cplusplus) || defined(c_plusplus)
+ snprintf(info_str, sizeof(info_str),
+ "%10s CONSUMER [%d] %8p ec(%8p) win(0x%08zx) pid(%d) vis(%d) redirected(%d) name(%s)",
+ is_last? "└─" : "├─", s_idx++, remote_surface,
+ consumer ? consumer : NULL,
+ consumer ? e_client_util_win_get(consumer) : 0,
+ pid,
+ remote_surface->visible,
+ remote_surface->redirect,
+ consumer? e_client_util_name_get(consumer)?:consumer->icccm.cpp_class?:"NO NAME":"NO CONSUMER"
+ );
+#else
snprintf(info_str, sizeof(info_str),
"%10s CONSUMER [%d] %8p ec(%8p) win(0x%08zx) pid(%d) vis(%d) redirected(%d) name(%s)",
is_last? "└─" : "├─", s_idx++, remote_surface,
remote_surface->redirect,
consumer? e_client_util_name_get(consumer)?:consumer->icccm.class?:"NO NAME":"NO CONSUMER"
);
- eldbus_message_iter_basic_append(line_array, 's', info_str);
+#endif
+ eldbus_message_iter_basic_append(line_array, 's', info_str);
}
eldbus_message_iter_basic_append(line_array, 's', "");
}
ec->lock_border = EINA_TRUE;
if (!ec->internal)
ec->border.changed = ec->changes.border = !ec->borderless;
+#if defined(__cplusplus) || defined(c_plusplus)
+ ec->changes.icon = !!ec->icccm.cpp_class;
+#else
ec->changes.icon = !!ec->icccm.class;
+#endif
ec->netwm.type = E_WINDOW_TYPE_POPUP_MENU;
ec->comp_data->set_win_type = EINA_TRUE;
e_client_layer_set(ec, E_LAYER_CLIENT_POPUP);
EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
/* set class */
+#if defined(__cplusplus) || defined(c_plusplus)
+ eina_stringshare_replace(&ec->icccm.cpp_class, app_id);
+ ec->changes.icon = !!ec->icccm.cpp_class;
+#else
eina_stringshare_replace(&ec->icccm.class, app_id);
ec->changes.icon = !!ec->icccm.class;
- EC_CHANGED(ec);
+#endif
+ EC_CHANGED(ec);
return EINA_TRUE;
}
ec->lock_border = EINA_TRUE;
if (!ec->internal)
ec->border.changed = ec->changes.border = !ec->borderless;
+#if defined(__cplusplus) || defined(c_plusplus)
+ ec->changes.icon = !!ec->icccm.cpp_class;
+#else
ec->changes.icon = !!ec->icccm.class;
+#endif
ec->netwm.type = E_WINDOW_TYPE_POPUP_MENU;
if (ec->comp_data)
ec->comp_data->set_win_type = EINA_TRUE;
wl_client_get_credentials(client, &ec->netwm.pid, NULL, NULL);
/* set class */
+#if defined(__cplusplus) || defined(c_plusplus)
+ eina_stringshare_replace(&ec->icccm.cpp_class, clas);
+ ec->changes.icon = !!ec->icccm.cpp_class;
+#else
eina_stringshare_replace(&ec->icccm.class, clas);
ec->changes.icon = !!ec->icccm.class;
+#endif
EC_CHANGED(ec);
}
if (pc->ec->netwm.type != e_config->launcher.type)
return;
+#if defined(__cplusplus) || defined(c_plusplus)
+ if (e_util_strcmp(pc->ec->icccm.cpp_class,
+ e_config->launcher.clas))
+ return;
+#else
if (e_util_strcmp(pc->ec->icccm.class,
e_config->launcher.clas))
return;
-
+#endif
if (e_util_strcmp(pc->ec->icccm.title,
e_config->launcher.title))
E_OBJECT_CHECK_RETURN(ec, EINA_FALSE);
E_OBJECT_TYPE_CHECK_RETURN(ec, E_CLIENT_TYPE, EINA_FALSE);
+#if defined(__cplusplus) || defined(c_plusplus)
+ if (!e_util_strcmp("TOAST_POPUP", ec->icccm.cpp_class))
+ return EINA_TRUE;
+#else
if (!e_util_strcmp("TOAST_POPUP", ec->icccm.class))
return EINA_TRUE;
-
+#endif
if (!e_util_strcmp("toast_popup", ec->icccm.window_role))
return EINA_TRUE;
if (ec->vkbd.vkbd) return EINA_FALSE;
+#if defined(__cplusplus) || defined(c_plusplus)
+ if ((ec->icccm.cpp_class) &&
+ (!strcmp(ec->icccm.cpp_class, "ISF")))
+ return EINA_TRUE;
+#else
if ((ec->icccm.class) &&
(!strcmp(ec->icccm.class, "ISF")))
return EINA_TRUE;
- if ((ec->icccm.title) &&
+#endif
+ if ((ec->icccm.title) &&
((!strcmp(ec->icccm.title, "ISF Popup")) || (!strcmp(ec->icccm.title, "ISF Magnifier"))))
return EINA_TRUE;