forked from enlightenment/efl
elementary: Don't set pointer object theme on start
As we are already resetting the pointer object theme when we make a call to set the cursor, don't set it on window creation. This should address the issue of animators getting created on window creation. ref T5209 @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
parent
73ff3e07a2
commit
59bf5476ee
|
@ -3075,6 +3075,8 @@ _elm_win_wl_cursor_set(Evas_Object *obj, const char *cursor)
|
|||
&hx, &hy, NULL, NULL);
|
||||
sd->pointer.hot_x = hx;
|
||||
sd->pointer.hot_y = hy;
|
||||
|
||||
ecore_evas_resize(sd->pointer.ee, mw, mh);
|
||||
}
|
||||
|
||||
if ((sd->wl.win) && (sd->pointer.surf) && (sd->pointer.visible))
|
||||
|
@ -5100,44 +5102,6 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Elm_W
|
|||
_elm_win_need_frame_adjust(sd, engine);
|
||||
_elm_win_apply_alpha(obj, sd);
|
||||
|
||||
#ifdef HAVE_ELEMENTARY_WL2
|
||||
if ((type != ELM_WIN_FAKE) && (type != ELM_WIN_INLINED_IMAGE))
|
||||
{
|
||||
if ((engine) &&
|
||||
((!strcmp(engine, ELM_WAYLAND_SHM) ||
|
||||
(!strcmp(engine, ELM_WAYLAND_EGL)))))
|
||||
{
|
||||
Evas *pevas;
|
||||
Evas_Coord mw = 1, mh = 1, hx = 0, hy = 0;
|
||||
|
||||
if (!strcmp(engine, ELM_WAYLAND_SHM))
|
||||
sd->pointer.ee = ecore_evas_wayland_shm_new(NULL, 0, 0, 0, 1, 1, 0);
|
||||
else if (!strcmp(engine, ELM_WAYLAND_EGL))
|
||||
sd->pointer.ee = ecore_evas_wayland_egl_new(NULL, 0, 0, 0, 1, 1, 0);
|
||||
|
||||
pevas = ecore_evas_get(sd->pointer.ee);
|
||||
|
||||
sd->pointer.obj = edje_object_add(pevas);
|
||||
_elm_theme_object_set(obj, sd->pointer.obj,
|
||||
"pointer", "base", "default");
|
||||
edje_object_size_min_calc(sd->pointer.obj, &mw, &mh);
|
||||
evas_object_move(sd->pointer.obj, 0, 0);
|
||||
evas_object_resize(sd->pointer.obj, mw, mh);
|
||||
edje_object_part_geometry_get(sd->pointer.obj,
|
||||
"elm.swallow.hotspot",
|
||||
&hx, &hy, NULL, NULL);
|
||||
sd->pointer.hot_x = hx;
|
||||
sd->pointer.hot_y = hy;
|
||||
|
||||
sd->pointer.win = _elm_ee_wlwin_get(sd->pointer.ee);
|
||||
ecore_wl2_window_type_set(sd->pointer.win,
|
||||
ECORE_WL2_WINDOW_TYPE_NONE);
|
||||
|
||||
ecore_evas_resize(sd->pointer.ee, mw, mh);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/* do not append to list; all windows render as black rects */
|
||||
if (type != ELM_WIN_FAKE)
|
||||
{
|
||||
|
@ -5168,6 +5132,31 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Elm_W
|
|||
elm_win_focus_highlight_animate_set(obj, EINA_TRUE);
|
||||
}
|
||||
|
||||
#ifdef HAVE_ELEMENTARY_WL2
|
||||
if ((type != ELM_WIN_FAKE) && (type != ELM_WIN_INLINED_IMAGE))
|
||||
{
|
||||
if ((engine) &&
|
||||
((!strcmp(engine, ELM_WAYLAND_SHM) ||
|
||||
(!strcmp(engine, ELM_WAYLAND_EGL)))))
|
||||
{
|
||||
Evas *pevas;
|
||||
|
||||
if (!strcmp(engine, ELM_WAYLAND_SHM))
|
||||
sd->pointer.ee = ecore_evas_wayland_shm_new(NULL, 0, 0, 0, 1, 1, 0);
|
||||
else if (!strcmp(engine, ELM_WAYLAND_EGL))
|
||||
sd->pointer.ee = ecore_evas_wayland_egl_new(NULL, 0, 0, 0, 1, 1, 0);
|
||||
|
||||
pevas = ecore_evas_get(sd->pointer.ee);
|
||||
|
||||
sd->pointer.obj = edje_object_add(pevas);
|
||||
|
||||
sd->pointer.win = ecore_evas_wayland2_window_get(sd->pointer.ee);
|
||||
ecore_wl2_window_type_set(sd->pointer.win,
|
||||
ECORE_WL2_WINDOW_TYPE_NONE);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
elm_interface_atspi_accessible_role_set(obj, ELM_ATSPI_ROLE_WINDOW);
|
||||
if (_elm_config->atspi_mode)
|
||||
elm_interface_atspi_window_created_signal_emit(obj);
|
||||
|
|
Loading…
Reference in New Issue