ecore_x_netwm_sync_request_send(bd->client.win, bd->client.netwm.sync.serial++);
}
#endif
+ if (bd->internal_ecore_evas)
+ ecore_evas_managed_move(bd->internal_ecore_evas,
+ bd->x + bd->client_inset.l,
+ bd->y + bd->client_inset.t);
ecore_x_icccm_move_resize_send(bd->client.win,
bd->x + bd->client_inset.l,
bd->y + bd->client_inset.t,
bd->client.netwm.sync.wait++;
ecore_x_netwm_sync_request_send(bd->client.win, bd->client.netwm.sync.serial++);
}
+ if (bd->internal_ecore_evas)
+ ecore_evas_managed_move(bd->internal_ecore_evas,
+ bd->x + bd->client_inset.l,
+ bd->y + bd->client_inset.t);
ecore_x_icccm_move_resize_send(bd->client.win,
bd->x + bd->client_inset.l,
bd->y + bd->client_inset.t,
bd->client.netwm.sync.wait++;
ecore_x_netwm_sync_request_send(bd->client.win, bd->client.netwm.sync.serial++);
}
+ if (bd->internal_ecore_evas)
+ ecore_evas_managed_move(bd->internal_ecore_evas,
+ bd->x + bd->client_inset.l,
+ bd->y + bd->client_inset.t);
ecore_x_icccm_move_resize_send(bd->client.win,
bd->x + bd->client_inset.l,
bd->y + bd->client_inset.t,
bd->need_shape_merge = 1;
bd->need_shape_export = 1;
}
+ if (bd->internal_ecore_evas)
+ ecore_evas_managed_move(bd->internal_ecore_evas,
+ bd->x + bd->client_inset.l,
+ bd->y + bd->client_inset.t);
ecore_x_icccm_move_resize_send(bd->client.win,
bd->x + bd->client_inset.l,
bd->y + bd->client_inset.t,
bd->placed = 1;
}
+ if (bd->internal_ecore_evas)
+ ecore_evas_managed_move(bd->internal_ecore_evas,
+ bd->x + bd->client_inset.l,
+ bd->y + bd->client_inset.t);
ecore_x_icccm_move_resize_send(bd->client.win,
bd->x + bd->client_inset.l,
bd->y + bd->client_inset.t,
if ((bd->changes.pos) && (bd->changes.size))
{
+ if (bd->internal_ecore_evas)
+ ecore_evas_managed_move(bd->internal_ecore_evas,
+ bd->x + bd->client_inset.l,
+ bd->y + bd->client_inset.t);
// printf("##- BORDER NEEDS POS/SIZE CHANGE 0x%x\n", bd->client.win);
if ((bd->shaded) && (!bd->shading))
{
}
else if (bd->changes.pos)
{
+ if (bd->internal_ecore_evas)
+ ecore_evas_managed_move(bd->internal_ecore_evas,
+ bd->x + bd->client_inset.l,
+ bd->y + bd->client_inset.t);
ecore_x_window_move(bd->win, bd->x, bd->y);
e_container_shape_move(bd->shape, bd->x, bd->y);
bd->changes.pos = 0;
}
else if (bd->changes.size)
{
+ if (bd->internal_ecore_evas)
+ ecore_evas_managed_move(bd->internal_ecore_evas,
+ bd->x + bd->client_inset.l,
+ bd->y + bd->client_inset.t);
// printf("##- BORDER NEEDS SIZE CHANGE 0x%x\n", bd->client.win);
if (bd->shaded && !bd->shading)
{
bd->y = y - (bd->client_inset.t >> 1);
bd->changed = 1;
bd->changes.pos = 1;
+ if (bd->internal_ecore_evas)
+ ecore_evas_managed_move(bd->internal_ecore_evas,
+ bd->x + bd->client_inset.l,
+ bd->y + bd->client_inset.t);
ecore_x_icccm_move_resize_send(bd->client.win,
bd->x + bd->client_inset.l,
bd->y + bd->client_inset.t,
void
e_scrollframe_child_region_show(Evas_Object *obj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h)
{
+ Evas_Coord mx = 0, my = 0, cw = 0, ch = 0, px = 0, py = 0, nx, ny;
+
API_ENTRY return;
- /* FIXME: do this code */
+ sd->pan_func.max_get(sd->pan_obj, &mx, &my);
+ sd->pan_func.child_size_get(sd->pan_obj, &cw, &ch);
+ sd->pan_func.get(sd->pan_obj, &px, &py);
+
+ nx = px;
+ if (x < px) nx = x;
+ else if ((x + w) > (px + (cw - mx))) nx = x + w - (cw - mx);
+ ny = py;
+ if (y < py) ny = y;
+ else if ((y + h) > (py + (ch - my))) ny = y + h - (ch - my);
+ if ((nx == px) && (ny == py)) return;
+ e_scrollframe_child_pos_set(obj, nx, ny);
}
void
static void
_e_test_click(void *data, Evas *e, Evas_Object *obj, void *event_info)
{
+#if 1
double size;
size = (double)(rand() % 1000) / 999;
evas_object_resize(obj, size * 1024, size * 768);
+#else
+ e_scrollframe_child_region_show(data, 1024, 768, 100, 100);
+#endif
}
static void
e_dialog_title_set(dia, "A Test Dialog");
o = e_icon_add(dia->win->evas);
-// e_icon_file_set(o, "/home/raster/t.png");
- evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, _e_test_click, NULL);
+ e_icon_file_set(o, "/home/raster/t.png");
evas_object_resize(o, 1024, 768);
evas_object_focus_set(o, 1);
evas_object_show(o);
o2 = e_scrollframe_add(dia->win->evas);
+ evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, _e_test_click, o2);
// e_scrollframe_custom_theme_set(o2, "base/theme/widgets", "widgets/scrollframe");
evas_object_resize(o2, 200, 300);
evas_object_show(o2);