add theming to efm popups so they look nicer

SVN revision: 73790
This commit is contained in:
Mike Blumenkrantz 2012-07-13 07:20:46 +00:00
parent 1a58689e4f
commit 1de132c33c
1 changed files with 16 additions and 1 deletions

View File

@ -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;
}