forked from enlightenment/efl
parent
dd77378588
commit
b25413d367
|
@ -18,7 +18,7 @@ _ecore_evas_x_group_leader_set(Ecore_Evas *ee)
|
||||||
{
|
{
|
||||||
char *id = NULL;
|
char *id = NULL;
|
||||||
|
|
||||||
leader_win =
|
leader_win =
|
||||||
ecore_x_window_override_new(ee->engine.x.win_root, 1234, 5678, 1, 2);
|
ecore_x_window_override_new(ee->engine.x.win_root, 1234, 5678, 1, 2);
|
||||||
ecore_x_window_defaults_set(leader_win);
|
ecore_x_window_defaults_set(leader_win);
|
||||||
if ((id = getenv("DESKTOP_STARTUP_ID")))
|
if ((id = getenv("DESKTOP_STARTUP_ID")))
|
||||||
|
@ -32,7 +32,7 @@ _ecore_evas_x_group_leader_set(Ecore_Evas *ee)
|
||||||
static void
|
static void
|
||||||
_ecore_evas_x_group_leader_unset(Ecore_Evas *ee)
|
_ecore_evas_x_group_leader_unset(Ecore_Evas *ee)
|
||||||
{
|
{
|
||||||
ecore_x_window_prop_property_del(ee->prop.window,
|
ecore_x_window_prop_property_del(ee->prop.window,
|
||||||
ECORE_X_ATOM_WM_CLIENT_LEADER);
|
ECORE_X_ATOM_WM_CLIENT_LEADER);
|
||||||
if (ee->engine.x.leader == leader_win)
|
if (ee->engine.x.leader == leader_win)
|
||||||
{
|
{
|
||||||
|
@ -146,9 +146,9 @@ _ecore_evas_x_gl_window_new(Ecore_Evas *ee, Ecore_X_Window parent, int x, int y,
|
||||||
Ecore_X_Window root;
|
Ecore_X_Window root;
|
||||||
|
|
||||||
root = ecore_x_window_root_get(parent);
|
root = ecore_x_window_root_get(parent);
|
||||||
for (i = 0; i < num; i++)
|
for (i = 0; i < num; i++)
|
||||||
{
|
{
|
||||||
if (root == roots[i])
|
if (root == roots[i])
|
||||||
{
|
{
|
||||||
screen = i;
|
screen = i;
|
||||||
break;
|
break;
|
||||||
|
@ -167,7 +167,7 @@ _ecore_evas_x_gl_window_new(Ecore_Evas *ee, Ecore_X_Window parent, int x, int y,
|
||||||
einfo->info.colormap = einfo->func.best_colormap_get(einfo);
|
einfo->info.colormap = einfo->func.best_colormap_get(einfo);
|
||||||
einfo->info.depth = einfo->func.best_depth_get(einfo);
|
einfo->info.depth = einfo->func.best_depth_get(einfo);
|
||||||
|
|
||||||
if ((!einfo->info.visual) ||
|
if ((!einfo->info.visual) ||
|
||||||
(!einfo->info.colormap) || (!einfo->info.depth))
|
(!einfo->info.colormap) || (!einfo->info.depth))
|
||||||
{
|
{
|
||||||
WRN("OpenGL X11 init engine '%s' failed - no visual, colormap or depth.", ee->driver);
|
WRN("OpenGL X11 init engine '%s' failed - no visual, colormap or depth.", ee->driver);
|
||||||
|
@ -178,14 +178,14 @@ _ecore_evas_x_gl_window_new(Ecore_Evas *ee, Ecore_X_Window parent, int x, int y,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (argb)
|
if (argb)
|
||||||
{
|
{
|
||||||
if (override)
|
if (override)
|
||||||
win = ecore_x_window_override_argb_new(parent, x, y, w, h);
|
win = ecore_x_window_override_argb_new(parent, x, y, w, h);
|
||||||
else
|
else
|
||||||
win = ecore_x_window_argb_new(parent, x, y, w, h);
|
win = ecore_x_window_argb_new(parent, x, y, w, h);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (override)
|
if (override)
|
||||||
win = ecore_x_window_override_new(parent, x, y, w, h);
|
win = ecore_x_window_override_new(parent, x, y, w, h);
|
||||||
|
@ -256,24 +256,24 @@ _ecore_evas_x_render(Ecore_Evas *ee)
|
||||||
|
|
||||||
if (ee->func.fn_pre_render) ee->func.fn_pre_render(ee);
|
if (ee->func.fn_pre_render) ee->func.fn_pre_render(ee);
|
||||||
updates = evas_render_updates(ee->evas);
|
updates = evas_render_updates(ee->evas);
|
||||||
if (ee->prop.avoid_damage)
|
if (ee->prop.avoid_damage)
|
||||||
{
|
{
|
||||||
if (ee->engine.x.using_bg_pixmap)
|
if (ee->engine.x.using_bg_pixmap)
|
||||||
{
|
{
|
||||||
if (updates)
|
if (updates)
|
||||||
{
|
{
|
||||||
Eina_List *l = NULL;
|
Eina_List *l = NULL;
|
||||||
Eina_Rectangle *r;
|
Eina_Rectangle *r;
|
||||||
|
|
||||||
EINA_LIST_FOREACH(updates, l, r)
|
EINA_LIST_FOREACH(updates, l, r)
|
||||||
ecore_x_window_area_clear(ee->prop.window,
|
ecore_x_window_area_clear(ee->prop.window,
|
||||||
r->x, r->y, r->w, r->h);
|
r->x, r->y, r->w, r->h);
|
||||||
if (ee->shaped)
|
if (ee->shaped)
|
||||||
{
|
{
|
||||||
#ifdef EVAS_FRAME_QUEUING
|
#ifdef EVAS_FRAME_QUEUING
|
||||||
evas_sync(ee->evas);
|
evas_sync(ee->evas);
|
||||||
#endif
|
#endif
|
||||||
ecore_x_window_shape_mask_set(ee->prop.window,
|
ecore_x_window_shape_mask_set(ee->prop.window,
|
||||||
ee->engine.x.mask);
|
ee->engine.x.mask);
|
||||||
}
|
}
|
||||||
if (ee->alpha)
|
if (ee->alpha)
|
||||||
|
@ -289,9 +289,9 @@ _ecore_evas_x_render(Ecore_Evas *ee)
|
||||||
rend = 1;
|
rend = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (updates)
|
if (updates)
|
||||||
{
|
{
|
||||||
Eina_List *l = NULL;
|
Eina_List *l = NULL;
|
||||||
Eina_Rectangle *r;
|
Eina_Rectangle *r;
|
||||||
|
@ -332,12 +332,12 @@ _ecore_evas_x_render(Ecore_Evas *ee)
|
||||||
rect.width = r->h;
|
rect.width = r->h;
|
||||||
rect.height = r->w;
|
rect.height = r->w;
|
||||||
}
|
}
|
||||||
ecore_x_xregion_union_rect(tmpr, ee->engine.x.damages,
|
ecore_x_xregion_union_rect(tmpr, ee->engine.x.damages,
|
||||||
&rect);
|
&rect);
|
||||||
ecore_x_xregion_free(ee->engine.x.damages);
|
ecore_x_xregion_free(ee->engine.x.damages);
|
||||||
ee->engine.x.damages = tmpr;
|
ee->engine.x.damages = tmpr;
|
||||||
}
|
}
|
||||||
if (ee->engine.x.damages)
|
if (ee->engine.x.damages)
|
||||||
{
|
{
|
||||||
/* if we have a damage pixmap - we can avoid exposures by
|
/* if we have a damage pixmap - we can avoid exposures by
|
||||||
* disabling them just for setting the mask */
|
* disabling them just for setting the mask */
|
||||||
|
@ -357,7 +357,7 @@ _ecore_evas_x_render(Ecore_Evas *ee)
|
||||||
ECORE_X_EVENT_MASK_WINDOW_COLORMAP
|
ECORE_X_EVENT_MASK_WINDOW_COLORMAP
|
||||||
);
|
);
|
||||||
if (ee->shaped)
|
if (ee->shaped)
|
||||||
ecore_x_window_shape_mask_set(ee->prop.window,
|
ecore_x_window_shape_mask_set(ee->prop.window,
|
||||||
ee->engine.x.mask);
|
ee->engine.x.mask);
|
||||||
/* and re-enable them again */
|
/* and re-enable them again */
|
||||||
ecore_x_event_mask_set(ee->prop.window,
|
ecore_x_event_mask_set(ee->prop.window,
|
||||||
|
@ -376,8 +376,8 @@ _ecore_evas_x_render(Ecore_Evas *ee)
|
||||||
ECORE_X_EVENT_MASK_WINDOW_COLORMAP
|
ECORE_X_EVENT_MASK_WINDOW_COLORMAP
|
||||||
);
|
);
|
||||||
ecore_x_xregion_set(ee->engine.x.damages, ee->engine.x.gc);
|
ecore_x_xregion_set(ee->engine.x.damages, ee->engine.x.gc);
|
||||||
ecore_x_pixmap_paste(ee->engine.x.pmap, ee->prop.window,
|
ecore_x_pixmap_paste(ee->engine.x.pmap, ee->prop.window,
|
||||||
ee->engine.x.gc, 0, 0, ee->w, ee->h,
|
ee->engine.x.gc, 0, 0, ee->w, ee->h,
|
||||||
0, 0);
|
0, 0);
|
||||||
ecore_x_xregion_free(ee->engine.x.damages);
|
ecore_x_xregion_free(ee->engine.x.damages);
|
||||||
ee->engine.x.damages = NULL;
|
ee->engine.x.damages = NULL;
|
||||||
|
@ -388,18 +388,18 @@ _ecore_evas_x_render(Ecore_Evas *ee)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (((ee->visible) && (ee->draw_ok)) ||
|
else if (((ee->visible) && (ee->draw_ok)) ||
|
||||||
((ee->should_be_visible) && (ee->prop.fullscreen)) ||
|
((ee->should_be_visible) && (ee->prop.fullscreen)) ||
|
||||||
((ee->should_be_visible) && (ee->prop.override)))
|
((ee->should_be_visible) && (ee->prop.override)))
|
||||||
{
|
{
|
||||||
if (updates)
|
if (updates)
|
||||||
{
|
{
|
||||||
if (ee->shaped)
|
if (ee->shaped)
|
||||||
{
|
{
|
||||||
#ifdef EVAS_FRAME_QUEUING
|
#ifdef EVAS_FRAME_QUEUING
|
||||||
evas_sync(ee->evas);
|
evas_sync(ee->evas);
|
||||||
#endif
|
#endif
|
||||||
ecore_x_window_shape_mask_set(ee->prop.window,
|
ecore_x_window_shape_mask_set(ee->prop.window,
|
||||||
ee->engine.x.mask);
|
ee->engine.x.mask);
|
||||||
}
|
}
|
||||||
if (ee->alpha)
|
if (ee->alpha)
|
||||||
|
@ -632,7 +632,7 @@ _ecore_evas_x_event_visibility_change(void *data __UNUSED__, int type __UNUSED__
|
||||||
if (!ecore_x_screen_is_composited(ee->engine.x.screen_num))
|
if (!ecore_x_screen_is_composited(ee->engine.x.screen_num))
|
||||||
ee->draw_ok = 0;
|
ee->draw_ok = 0;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
ee->draw_ok = 1;
|
ee->draw_ok = 1;
|
||||||
return ECORE_CALLBACK_PASS_ON;
|
return ECORE_CALLBACK_PASS_ON;
|
||||||
}
|
}
|
||||||
|
@ -649,7 +649,7 @@ _ecore_evas_x_event_client_message(void *data __UNUSED__, int type __UNUSED__, v
|
||||||
{
|
{
|
||||||
ee = ecore_event_window_match(e->data.l[0]);
|
ee = ecore_event_window_match(e->data.l[0]);
|
||||||
if (!ee) return ECORE_CALLBACK_PASS_ON; /* pass on event */
|
if (!ee) return ECORE_CALLBACK_PASS_ON; /* pass on event */
|
||||||
if (e->data.l[0] != (long)ee->prop.window)
|
if (e->data.l[0] != (long)ee->prop.window)
|
||||||
return ECORE_CALLBACK_PASS_ON;
|
return ECORE_CALLBACK_PASS_ON;
|
||||||
if (!ee->engine.x.sync_began)
|
if (!ee->engine.x.sync_began)
|
||||||
{
|
{
|
||||||
|
@ -663,7 +663,7 @@ _ecore_evas_x_event_client_message(void *data __UNUSED__, int type __UNUSED__, v
|
||||||
{
|
{
|
||||||
ee = ecore_event_window_match(e->data.l[0]);
|
ee = ecore_event_window_match(e->data.l[0]);
|
||||||
if (!ee) return ECORE_CALLBACK_PASS_ON; /* pass on event */
|
if (!ee) return ECORE_CALLBACK_PASS_ON; /* pass on event */
|
||||||
if (e->data.l[0] != (long)ee->prop.window)
|
if (e->data.l[0] != (long)ee->prop.window)
|
||||||
return ECORE_CALLBACK_PASS_ON;
|
return ECORE_CALLBACK_PASS_ON;
|
||||||
ee->engine.x.sync_began = 0;
|
ee->engine.x.sync_began = 0;
|
||||||
ee->engine.x.sync_cancel = 0;
|
ee->engine.x.sync_cancel = 0;
|
||||||
|
@ -672,7 +672,7 @@ _ecore_evas_x_event_client_message(void *data __UNUSED__, int type __UNUSED__, v
|
||||||
{
|
{
|
||||||
ee = ecore_event_window_match(e->data.l[0]);
|
ee = ecore_event_window_match(e->data.l[0]);
|
||||||
if (!ee) return ECORE_CALLBACK_PASS_ON; /* pass on event */
|
if (!ee) return ECORE_CALLBACK_PASS_ON; /* pass on event */
|
||||||
if (e->data.l[0] != (long)ee->prop.window)
|
if (e->data.l[0] != (long)ee->prop.window)
|
||||||
return ECORE_CALLBACK_PASS_ON;
|
return ECORE_CALLBACK_PASS_ON;
|
||||||
ee->engine.x.sync_began = 0;
|
ee->engine.x.sync_began = 0;
|
||||||
ee->engine.x.sync_cancel = 1;
|
ee->engine.x.sync_cancel = 1;
|
||||||
|
@ -848,7 +848,7 @@ _ecore_evas_x_event_window_damage(void *data __UNUSED__, int type __UNUSED__, vo
|
||||||
Ecore_X_Rectangle rect;
|
Ecore_X_Rectangle rect;
|
||||||
Ecore_X_XRegion *tmpr;
|
Ecore_X_XRegion *tmpr;
|
||||||
|
|
||||||
if (!ee->engine.x.damages)
|
if (!ee->engine.x.damages)
|
||||||
ee->engine.x.damages = ecore_x_xregion_new();
|
ee->engine.x.damages = ecore_x_xregion_new();
|
||||||
tmpr = ecore_x_xregion_new();
|
tmpr = ecore_x_xregion_new();
|
||||||
rect.x = e->x;
|
rect.x = e->x;
|
||||||
|
@ -1185,44 +1185,44 @@ _ecore_evas_x_init(void)
|
||||||
{
|
{
|
||||||
_ecore_evas_init_count++;
|
_ecore_evas_init_count++;
|
||||||
if (_ecore_evas_init_count > 1) return _ecore_evas_init_count;
|
if (_ecore_evas_init_count > 1) return _ecore_evas_init_count;
|
||||||
ecore_evas_event_handlers[0] =
|
ecore_evas_event_handlers[0] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_MOUSE_IN,
|
ecore_event_handler_add(ECORE_X_EVENT_MOUSE_IN,
|
||||||
_ecore_evas_x_event_mouse_in, NULL);
|
_ecore_evas_x_event_mouse_in, NULL);
|
||||||
ecore_evas_event_handlers[1] =
|
ecore_evas_event_handlers[1] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_MOUSE_OUT,
|
ecore_event_handler_add(ECORE_X_EVENT_MOUSE_OUT,
|
||||||
_ecore_evas_x_event_mouse_out, NULL);
|
_ecore_evas_x_event_mouse_out, NULL);
|
||||||
ecore_evas_event_handlers[2] =
|
ecore_evas_event_handlers[2] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_FOCUS_IN,
|
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_FOCUS_IN,
|
||||||
_ecore_evas_x_event_window_focus_in, NULL);
|
_ecore_evas_x_event_window_focus_in, NULL);
|
||||||
ecore_evas_event_handlers[3] =
|
ecore_evas_event_handlers[3] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_FOCUS_OUT,
|
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_FOCUS_OUT,
|
||||||
_ecore_evas_x_event_window_focus_out, NULL);
|
_ecore_evas_x_event_window_focus_out, NULL);
|
||||||
ecore_evas_event_handlers[4] =
|
ecore_evas_event_handlers[4] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_DAMAGE,
|
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_DAMAGE,
|
||||||
_ecore_evas_x_event_window_damage, NULL);
|
_ecore_evas_x_event_window_damage, NULL);
|
||||||
ecore_evas_event_handlers[5] =
|
ecore_evas_event_handlers[5] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_DESTROY,
|
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_DESTROY,
|
||||||
_ecore_evas_x_event_window_destroy, NULL);
|
_ecore_evas_x_event_window_destroy, NULL);
|
||||||
ecore_evas_event_handlers[6] =
|
ecore_evas_event_handlers[6] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_CONFIGURE,
|
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_CONFIGURE,
|
||||||
_ecore_evas_x_event_window_configure, NULL);
|
_ecore_evas_x_event_window_configure, NULL);
|
||||||
ecore_evas_event_handlers[7] =
|
ecore_evas_event_handlers[7] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_DELETE_REQUEST,
|
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_DELETE_REQUEST,
|
||||||
_ecore_evas_x_event_window_delete_request, NULL);
|
_ecore_evas_x_event_window_delete_request, NULL);
|
||||||
ecore_evas_event_handlers[8] =
|
ecore_evas_event_handlers[8] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_SHOW,
|
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_SHOW,
|
||||||
_ecore_evas_x_event_window_show, NULL);
|
_ecore_evas_x_event_window_show, NULL);
|
||||||
ecore_evas_event_handlers[9] =
|
ecore_evas_event_handlers[9] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_HIDE,
|
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_HIDE,
|
||||||
_ecore_evas_x_event_window_hide, NULL);
|
_ecore_evas_x_event_window_hide, NULL);
|
||||||
ecore_evas_event_handlers[10] =
|
ecore_evas_event_handlers[10] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_PROPERTY,
|
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_PROPERTY,
|
||||||
_ecore_evas_x_event_property_change, NULL);
|
_ecore_evas_x_event_property_change, NULL);
|
||||||
ecore_evas_event_handlers[11] =
|
ecore_evas_event_handlers[11] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_VISIBILITY_CHANGE,
|
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_VISIBILITY_CHANGE,
|
||||||
_ecore_evas_x_event_visibility_change, NULL);
|
_ecore_evas_x_event_visibility_change, NULL);
|
||||||
ecore_evas_event_handlers[12] =
|
ecore_evas_event_handlers[12] =
|
||||||
ecore_event_handler_add(ECORE_X_EVENT_CLIENT_MESSAGE,
|
ecore_event_handler_add(ECORE_X_EVENT_CLIENT_MESSAGE,
|
||||||
_ecore_evas_x_event_client_message, NULL);
|
_ecore_evas_x_event_client_message, NULL);
|
||||||
ecore_event_evas_init();
|
ecore_event_evas_init();
|
||||||
return _ecore_evas_init_count;
|
return _ecore_evas_init_count;
|
||||||
|
@ -1233,7 +1233,7 @@ _ecore_evas_x_free(Ecore_Evas *ee)
|
||||||
{
|
{
|
||||||
_ecore_evas_x_group_leader_unset(ee);
|
_ecore_evas_x_group_leader_unset(ee);
|
||||||
_ecore_evas_x_sync_set(ee);
|
_ecore_evas_x_sync_set(ee);
|
||||||
if (ee->engine.x.win_shaped_input)
|
if (ee->engine.x.win_shaped_input)
|
||||||
ecore_x_window_free(ee->engine.x.win_shaped_input);
|
ecore_x_window_free(ee->engine.x.win_shaped_input);
|
||||||
ecore_x_window_free(ee->prop.window);
|
ecore_x_window_free(ee->prop.window);
|
||||||
if (ee->engine.x.pmap) ecore_x_pixmap_free(ee->engine.x.pmap);
|
if (ee->engine.x.pmap) ecore_x_pixmap_free(ee->engine.x.pmap);
|
||||||
|
@ -1250,7 +1250,7 @@ _ecore_evas_x_free(Ecore_Evas *ee)
|
||||||
Ecore_X_Window *winp;
|
Ecore_X_Window *winp;
|
||||||
|
|
||||||
winp = ee->engine.x.win_extra->data;
|
winp = ee->engine.x.win_extra->data;
|
||||||
ee->engine.x.win_extra =
|
ee->engine.x.win_extra =
|
||||||
eina_list_remove_list(ee->engine.x.win_extra, ee->engine.x.win_extra);
|
eina_list_remove_list(ee->engine.x.win_extra, ee->engine.x.win_extra);
|
||||||
ecore_event_window_unregister(*winp);
|
ecore_event_window_unregister(*winp);
|
||||||
free(winp);
|
free(winp);
|
||||||
|
@ -1293,7 +1293,7 @@ _ecore_evas_x_move(Ecore_Evas *ee, int x, int y)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ((ee->x != x) || (ee->y != y))
|
if ((ee->x != x) || (ee->y != y))
|
||||||
{
|
{
|
||||||
if (!ee->engine.x.managed)
|
if (!ee->engine.x.managed)
|
||||||
{
|
{
|
||||||
|
@ -1546,7 +1546,7 @@ _ecore_evas_x_rotation_set(Ecore_Evas *ee, int rotation, int resize)
|
||||||
einfo = (Evas_Engine_Info_GL_X11 *)evas_engine_info_get(ee->evas);
|
einfo = (Evas_Engine_Info_GL_X11 *)evas_engine_info_get(ee->evas);
|
||||||
if (!einfo) return;
|
if (!einfo) return;
|
||||||
einfo->info.rotation = rotation;
|
einfo->info.rotation = rotation;
|
||||||
_ecore_evas_x_rotation_set_internal(ee, rotation, resize,
|
_ecore_evas_x_rotation_set_internal(ee, rotation, resize,
|
||||||
(Evas_Engine_Info *)einfo);
|
(Evas_Engine_Info *)einfo);
|
||||||
#endif /* BUILD_ECORE_EVAS_OPENGL_X11 */
|
#endif /* BUILD_ECORE_EVAS_OPENGL_X11 */
|
||||||
}
|
}
|
||||||
|
@ -1558,7 +1558,7 @@ _ecore_evas_x_rotation_set(Ecore_Evas *ee, int rotation, int resize)
|
||||||
einfo = (Evas_Engine_Info_Software_X11 *)evas_engine_info_get(ee->evas);
|
einfo = (Evas_Engine_Info_Software_X11 *)evas_engine_info_get(ee->evas);
|
||||||
if (!einfo) return;
|
if (!einfo) return;
|
||||||
einfo->info.rotation = rotation;
|
einfo->info.rotation = rotation;
|
||||||
_ecore_evas_x_rotation_set_internal(ee, rotation, resize,
|
_ecore_evas_x_rotation_set_internal(ee, rotation, resize,
|
||||||
(Evas_Engine_Info *)einfo);
|
(Evas_Engine_Info *)einfo);
|
||||||
#endif /* BUILD_ECORE_EVAS_SOFTWARE_X11 */
|
#endif /* BUILD_ECORE_EVAS_SOFTWARE_X11 */
|
||||||
}
|
}
|
||||||
|
@ -1570,7 +1570,7 @@ _ecore_evas_x_rotation_set(Ecore_Evas *ee, int rotation, int resize)
|
||||||
einfo = (Evas_Engine_Info_Software_16_X11 *)evas_engine_info_get(ee->evas);
|
einfo = (Evas_Engine_Info_Software_16_X11 *)evas_engine_info_get(ee->evas);
|
||||||
if (!einfo) return;
|
if (!einfo) return;
|
||||||
einfo->info.rotation = rotation;
|
einfo->info.rotation = rotation;
|
||||||
_ecore_evas_x_rotation_set_internal(ee, rotation, resize,
|
_ecore_evas_x_rotation_set_internal(ee, rotation, resize,
|
||||||
(Evas_Engine_Info *)einfo);
|
(Evas_Engine_Info *)einfo);
|
||||||
#endif /* BUILD_ECORE_EVAS_SOFTWARE_16_X11 */
|
#endif /* BUILD_ECORE_EVAS_SOFTWARE_16_X11 */
|
||||||
}
|
}
|
||||||
|
@ -1582,7 +1582,7 @@ _ecore_evas_x_rotation_set(Ecore_Evas *ee, int rotation, int resize)
|
||||||
einfo = (Evas_Engine_Info_Software_8_X11 *)evas_engine_info_get(ee->evas);
|
einfo = (Evas_Engine_Info_Software_8_X11 *)evas_engine_info_get(ee->evas);
|
||||||
if (!einfo) return;
|
if (!einfo) return;
|
||||||
einfo->info.rotation = rotation;
|
einfo->info.rotation = rotation;
|
||||||
_ecore_evas_x_rotation_set_internal(ee, rotation, resize,
|
_ecore_evas_x_rotation_set_internal(ee, rotation, resize,
|
||||||
(Evas_Engine_Info *)einfo);
|
(Evas_Engine_Info *)einfo);
|
||||||
#endif /* BUILD_ECORE_EVAS_SOFTWARE_8_X11 */
|
#endif /* BUILD_ECORE_EVAS_SOFTWARE_8_X11 */
|
||||||
}
|
}
|
||||||
|
@ -1651,7 +1651,7 @@ _ecore_evas_x_shaped_set(Ecore_Evas *ee, int shaped)
|
||||||
{
|
{
|
||||||
if (ee->shaped)
|
if (ee->shaped)
|
||||||
{
|
{
|
||||||
ee->engine.x.mask =
|
ee->engine.x.mask =
|
||||||
ecore_x_pixmap_new(ee->prop.window, ee->w, ee->h, 1);
|
ecore_x_pixmap_new(ee->prop.window, ee->w, ee->h, 1);
|
||||||
einfo->info.mask = ee->engine.x.mask;
|
einfo->info.mask = ee->engine.x.mask;
|
||||||
if (!evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo))
|
if (!evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo))
|
||||||
|
@ -1843,27 +1843,27 @@ _ecore_evas_x_alpha_set(Ecore_Evas *ee, int alpha)
|
||||||
/* FIXME: round trip in ecore_x_window_argb_get */
|
/* FIXME: round trip in ecore_x_window_argb_get */
|
||||||
if (ecore_x_window_argb_get(ee->engine.x.win_root))
|
if (ecore_x_window_argb_get(ee->engine.x.win_root))
|
||||||
{
|
{
|
||||||
ee->prop.window =
|
ee->prop.window =
|
||||||
_ecore_evas_x_gl_window_new(ee, ee->engine.x.win_root,
|
_ecore_evas_x_gl_window_new(ee, ee->engine.x.win_root,
|
||||||
ee->req.x, ee->req.y,
|
ee->req.x, ee->req.y,
|
||||||
ee->req.w, ee->req.h,
|
ee->req.w, ee->req.h,
|
||||||
ee->prop.override, 1, NULL);
|
ee->prop.override, 1, NULL);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ee->prop.window =
|
ee->prop.window =
|
||||||
_ecore_evas_x_gl_window_new(ee, ee->engine.x.win_root,
|
_ecore_evas_x_gl_window_new(ee, ee->engine.x.win_root,
|
||||||
ee->req.x, ee->req.y,
|
ee->req.x, ee->req.y,
|
||||||
ee->req.w, ee->req.h,
|
ee->req.w, ee->req.h,
|
||||||
ee->prop.override, ee->alpha,
|
ee->prop.override, ee->alpha,
|
||||||
NULL);
|
NULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ee->prop.window =
|
ee->prop.window =
|
||||||
_ecore_evas_x_gl_window_new(ee, ee->engine.x.win_root,
|
_ecore_evas_x_gl_window_new(ee, ee->engine.x.win_root,
|
||||||
ee->req.x, ee->req.y,
|
ee->req.x, ee->req.y,
|
||||||
ee->req.w, ee->req.h,
|
ee->req.w, ee->req.h,
|
||||||
ee->prop.override, ee->alpha, NULL);
|
ee->prop.override, ee->alpha, NULL);
|
||||||
}
|
}
|
||||||
|
@ -2835,9 +2835,9 @@ ecore_evas_software_x11_new(const char *disp_name, Ecore_X_Window parent,
|
||||||
|
|
||||||
/* init evas here */
|
/* init evas here */
|
||||||
ee->evas = evas_new();
|
ee->evas = evas_new();
|
||||||
evas_event_callback_add(ee->evas, EVAS_CALLBACK_RENDER_FLUSH_PRE,
|
evas_event_callback_add(ee->evas, EVAS_CALLBACK_RENDER_FLUSH_PRE,
|
||||||
_ecore_evas_x_flush_pre, ee);
|
_ecore_evas_x_flush_pre, ee);
|
||||||
evas_event_callback_add(ee->evas, EVAS_CALLBACK_RENDER_FLUSH_POST,
|
evas_event_callback_add(ee->evas, EVAS_CALLBACK_RENDER_FLUSH_POST,
|
||||||
_ecore_evas_x_flush_post, ee);
|
_ecore_evas_x_flush_post, ee);
|
||||||
evas_data_attach_set(ee->evas, ee);
|
evas_data_attach_set(ee->evas, ee);
|
||||||
evas_output_method_set(ee->evas, rmethod);
|
evas_output_method_set(ee->evas, rmethod);
|
||||||
|
@ -2889,9 +2889,9 @@ ecore_evas_software_x11_new(const char *disp_name, Ecore_X_Window parent,
|
||||||
Ecore_X_Window root;
|
Ecore_X_Window root;
|
||||||
|
|
||||||
root = ecore_x_window_root_get(parent);
|
root = ecore_x_window_root_get(parent);
|
||||||
for (i = 0; i < num; i++)
|
for (i = 0; i < num; i++)
|
||||||
{
|
{
|
||||||
if (root == roots[i])
|
if (root == roots[i])
|
||||||
{
|
{
|
||||||
screen = ecore_x_screen_get(i);
|
screen = ecore_x_screen_get(i);
|
||||||
break;
|
break;
|
||||||
|
@ -2932,7 +2932,7 @@ ecore_evas_software_x11_new(const char *disp_name, Ecore_X_Window parent,
|
||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
if (argb)
|
if (argb)
|
||||||
{
|
{
|
||||||
ecore_x_window_attributes_get(ee->prop.window, &at);
|
ecore_x_window_attributes_get(ee->prop.window, &at);
|
||||||
einfo->info.visual = at.visual;
|
einfo->info.visual = at.visual;
|
||||||
|
@ -2942,11 +2942,11 @@ ecore_evas_software_x11_new(const char *disp_name, Ecore_X_Window parent,
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
einfo->info.visual =
|
einfo->info.visual =
|
||||||
ecore_x_default_visual_get(einfo->info.connection, screen);
|
ecore_x_default_visual_get(einfo->info.connection, screen);
|
||||||
einfo->info.colormap =
|
einfo->info.colormap =
|
||||||
ecore_x_default_colormap_get(einfo->info.connection, screen);
|
ecore_x_default_colormap_get(einfo->info.connection, screen);
|
||||||
einfo->info.depth =
|
einfo->info.depth =
|
||||||
ecore_x_default_depth_get(einfo->info.connection, screen);
|
ecore_x_default_depth_get(einfo->info.connection, screen);
|
||||||
einfo->info.destination_alpha = 0;
|
einfo->info.destination_alpha = 0;
|
||||||
}
|
}
|
||||||
|
@ -4107,12 +4107,12 @@ ecore_evas_x11_shape_input_rectangle_set(Ecore_Evas *ee, int x, int y, int w, in
|
||||||
ret = _ecore_evas_x11_convert_rectangle_with_angle(ee, &dst_rect, &src_rect);
|
ret = _ecore_evas_x11_convert_rectangle_with_angle(ee, &dst_rect, &src_rect);
|
||||||
|
|
||||||
if (!ee->engine.x.win_shaped_input)
|
if (!ee->engine.x.win_shaped_input)
|
||||||
ee->engine.x.win_shaped_input = ecore_x_window_override_new(ee->engine.x.win_root,
|
ee->engine.x.win_shaped_input = ecore_x_window_override_new(ee->engine.x.win_root,
|
||||||
0, 0, 1, 1);
|
0, 0, 1, 1);
|
||||||
|
|
||||||
if (ret)
|
if (ret)
|
||||||
ecore_x_window_shape_input_rectangle_set(ee->engine.x.win_shaped_input,
|
ecore_x_window_shape_input_rectangle_set(ee->engine.x.win_shaped_input,
|
||||||
dst_rect.x, dst_rect.y,
|
dst_rect.x, dst_rect.y,
|
||||||
dst_rect.width, dst_rect.height);
|
dst_rect.width, dst_rect.height);
|
||||||
#else
|
#else
|
||||||
return;
|
return;
|
||||||
|
@ -4152,12 +4152,12 @@ ecore_evas_x11_shape_input_rectangle_add(Ecore_Evas *ee, int x, int y, int w, in
|
||||||
ret = _ecore_evas_x11_convert_rectangle_with_angle(ee, &dst_rect, &src_rect);
|
ret = _ecore_evas_x11_convert_rectangle_with_angle(ee, &dst_rect, &src_rect);
|
||||||
|
|
||||||
if (!ee->engine.x.win_shaped_input)
|
if (!ee->engine.x.win_shaped_input)
|
||||||
ee->engine.x.win_shaped_input = ecore_x_window_override_new(ee->engine.x.win_root,
|
ee->engine.x.win_shaped_input = ecore_x_window_override_new(ee->engine.x.win_root,
|
||||||
0, 0, 1, 1);
|
0, 0, 1, 1);
|
||||||
|
|
||||||
if (ret)
|
if (ret)
|
||||||
ecore_x_window_shape_input_rectangle_add(ee->engine.x.win_shaped_input,
|
ecore_x_window_shape_input_rectangle_add(ee->engine.x.win_shaped_input,
|
||||||
dst_rect.x, dst_rect.y,
|
dst_rect.x, dst_rect.y,
|
||||||
dst_rect.width, dst_rect.height);
|
dst_rect.width, dst_rect.height);
|
||||||
#else
|
#else
|
||||||
return;
|
return;
|
||||||
|
@ -4197,12 +4197,12 @@ ecore_evas_x11_shape_input_rectangle_subtract(Ecore_Evas *ee, int x, int y, int
|
||||||
ret = _ecore_evas_x11_convert_rectangle_with_angle(ee, &dst_rect, &src_rect);
|
ret = _ecore_evas_x11_convert_rectangle_with_angle(ee, &dst_rect, &src_rect);
|
||||||
|
|
||||||
if (!ee->engine.x.win_shaped_input)
|
if (!ee->engine.x.win_shaped_input)
|
||||||
ee->engine.x.win_shaped_input = ecore_x_window_override_new(ee->engine.x.win_root,
|
ee->engine.x.win_shaped_input = ecore_x_window_override_new(ee->engine.x.win_root,
|
||||||
0, 0, 1, 1);
|
0, 0, 1, 1);
|
||||||
|
|
||||||
if (ret)
|
if (ret)
|
||||||
ecore_x_window_shape_input_rectangle_subtract(ee->engine.x.win_shaped_input,
|
ecore_x_window_shape_input_rectangle_subtract(ee->engine.x.win_shaped_input,
|
||||||
dst_rect.x, dst_rect.y,
|
dst_rect.x, dst_rect.y,
|
||||||
dst_rect.width, dst_rect.height);
|
dst_rect.width, dst_rect.height);
|
||||||
#else
|
#else
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in New Issue