discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=cca19389cc803ceb382adcd3d32ff3cf55011fb7
commit cca19389cc803ceb382adcd3d32ff3cf55011fb7 Author: zmike <michael.blumenkra...@gmail.com> Date: Tue Apr 22 09:29:49 2014 -0400 tooltips position more accurately in X in xinerama elm_win_screen_size_get() is broken for this use case since the tooltip actually needs the full xinerama screen geometry, which is the geometry of the root window and NOT the current screen @fix --- src/lib/els_tooltip.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/lib/els_tooltip.c b/src/lib/els_tooltip.c index bfbb40c..bc24676 100644 --- a/src/lib/els_tooltip.c +++ b/src/lib/els_tooltip.c @@ -393,7 +393,16 @@ _elm_tooltip_reconfigure(Elm_Tooltip *tt) TTDBG("TTSIZE: tw=%d,th=%d,ominw=%d,ominh=%d\n", tw, th, ominw, ominh); if (tt->tt_win) - elm_win_screen_size_get(elm_widget_top_get(tt->owner), NULL, NULL, &cw, &ch); + { +#ifdef HAVE_ELEMENTARY_X + Evas_Object *win = elm_widget_top_get(tt->owner); + Ecore_X_Window xwin = elm_win_xwindow_get(win); + if (xwin) + ecore_x_window_size_get(ecore_x_window_root_get(xwin), &cw, &ch); +#endif + if (!cw) + elm_win_screen_size_get(elm_widget_top_get(tt->owner), NULL, NULL, &cw, &ch); + } if (!cw) evas_output_size_get(tt->tt_evas ?: tt->evas, &cw, &ch); TTDBG("SCREEN: cw=%d,ch=%d\n", cw, ch); --