diff --git a/src/modules/fileman/e_fwin.c b/src/modules/fileman/e_fwin.c index a9ac44fa2..51a20165f 100644 --- a/src/modules/fileman/e_fwin.c +++ b/src/modules/fileman/e_fwin.c @@ -553,7 +553,7 @@ static Eina_Bool _e_fwin_icon_popup(void *data) { E_Fwin *fwin = data; - Evas_Object *o; + Evas_Object *bg, *edje, *o; E_Zone *zone; char buf[PATH_MAX]; int x, y, w, h, mw, mh, fx, fy, px, py; @@ -575,11 +575,25 @@ _e_fwin_icon_popup(void *data) fx = fwin->win->x, fy = fwin->win->y; fwin->popup = e_popup_new(zone, 0, 0, 1, 1); e_popup_ignore_events_set(fwin->popup, 1); + bg = edje_object_add(fwin->popup->evas); + e_theme_edje_object_set(bg, "base/theme/fileman", "e/fileman/default/window/main"); + e_popup_edje_bg_object_set(fwin->popup, bg); + edje = edje_object_add(fwin->popup->evas); + e_theme_edje_object_set(edje, "base/theme/borders", "e/widgets/border/pixel/border"); + edje_object_signal_emit(edje, "e,state,focused", "e"); o = e_widget_filepreview_add(fwin->popup->evas); snprintf(buf, sizeof(buf), "%s/%s", e_fm2_real_path_get(fwin->cur_page->fm_obj), fwin->popup_icon->file); e_widget_filepreview_path_set(o, buf); e_widget_size_min_get(o, &mw, &mh); + edje_extern_object_min_size_set(o, mw, mh); + edje_object_part_swallow(edje, "e.swallow.client", o); + edje_object_size_min_calc(edje, &mw, &mh); + edje_extern_object_min_size_set(edje, mw, mh); + edje_object_part_swallow(bg, "e.swallow.bg", edje); + edje_object_size_min_calc(bg, &mw, &mh); evas_object_show(o); + evas_object_show(edje); + evas_object_show(bg); /* prefer tooltip left of icon */ px = (fx + x) - mw - 3; @@ -596,6 +610,7 @@ _e_fwin_icon_popup(void *data) if (py + mh + 3 > zone->h) py = (y + h / 2) - (mh / 2); e_popup_move_resize(fwin->popup, px, py, mw, mh); + evas_object_resize(bg, mw, mh); e_popup_show(fwin->popup); return EINA_FALSE; }