+ return NULL;
+
+ _elm_hover_left_space_calc(wd, &spc_l, &spc_t, &spc_r, &spc_b);
+
+ if (pref_axis == ELM_HOVER_AXIS_HORIZONTAL)
+ {
+ if (spc_l < spc_r) return _HOV_RIGHT;
+ else return _HOV_LEFT;
+ }
+ else if (pref_axis == ELM_HOVER_AXIS_VERTICAL)
+ {
+ if (spc_t < spc_b) return _HOV_BOTTOM;
+ else return _HOV_TOP;
+ }
+
+ if (spc_l < spc_r)
+ {
+ if (spc_t > spc_r) return _HOV_TOP;
+ else if (spc_b > spc_r) return _HOV_BOTTOM;
+ return _HOV_RIGHT;
+ }
+ if (spc_t > spc_r) return _HOV_TOP;
+ else if (spc_b > spc_r) return _HOV_BOTTOM;
+ return _HOV_LEFT;
+}
+
+EAPI void
+elm_hover_dismiss(Evas_Object *obj)
+{
+ Widget_Data *wd;
+ ELM_CHECK_WIDTYPE(obj, widtype);
+ wd = elm_widget_data_get(obj);
+ if (!wd) return;
+
+ edje_object_signal_emit(wd->cov, "elm,action,dismiss", "");
+}
+
+static void
+_content_set_hook(Evas_Object *obj, const char *swallow, Evas_Object *content)
+{
+ ELM_CHECK_WIDTYPE(obj, widtype);
+ Widget_Data *wd = elm_widget_data_get(obj);
+ if (!wd) return;