forked from enlightenment/enlightenment
parent
f1178a9ce4
commit
826dc4b4dc
2
TODO
2
TODO
|
@ -8,6 +8,8 @@ Some of the things (in very short form) that need to be done to E17...
|
||||||
BUGS / FIXES
|
BUGS / FIXES
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* BUG: k3b has minimization issues when burning cd's (it tries to unminimize
|
||||||
|
its window and this doesn't work)
|
||||||
* BUG: openoffice 2 when ddisplaying a presentation with xinerama (multiple
|
* BUG: openoffice 2 when ddisplaying a presentation with xinerama (multiple
|
||||||
zones) weird things happen (the presentation doesnt display - it seemingly
|
zones) weird things happen (the presentation doesnt display - it seemingly
|
||||||
attaches to the 2nd zone, not the first), crashes have been reported too.
|
attaches to the 2nd zone, not the first), crashes have been reported too.
|
||||||
|
|
|
@ -199,7 +199,7 @@ e_border_shutdown(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
EAPI E_Border *
|
EAPI E_Border *
|
||||||
e_border_new(E_Container *con, Ecore_X_Window win, int first_map)
|
e_border_new(E_Container *con, Ecore_X_Window win, int first_map, int internal)
|
||||||
{
|
{
|
||||||
E_Border *bd;
|
E_Border *bd;
|
||||||
Ecore_X_Window_Attributes *att;
|
Ecore_X_Window_Attributes *att;
|
||||||
|
@ -228,7 +228,7 @@ e_border_new(E_Container *con, Ecore_X_Window win, int first_map)
|
||||||
ecore_evas_title_set(bd->bg_ecore_evas, "Enlightenment Frame");
|
ecore_evas_title_set(bd->bg_ecore_evas, "Enlightenment Frame");
|
||||||
bd->client.shell_win = ecore_x_window_override_new(bd->win, 0, 0, 1, 1);
|
bd->client.shell_win = ecore_x_window_override_new(bd->win, 0, 0, 1, 1);
|
||||||
ecore_x_window_container_manage(bd->client.shell_win);
|
ecore_x_window_container_manage(bd->client.shell_win);
|
||||||
ecore_x_window_client_manage(win);
|
if (!internal) ecore_x_window_client_manage(win);
|
||||||
/* FIXME: Round trip. XCB */
|
/* FIXME: Round trip. XCB */
|
||||||
/* fetch needed to avoid grabbing the server as window may vanish */
|
/* fetch needed to avoid grabbing the server as window may vanish */
|
||||||
att = &bd->client.initial_attributes;
|
att = &bd->client.initial_attributes;
|
||||||
|
@ -1195,9 +1195,7 @@ e_border_focus_set(E_Border *bd, int focus, int set)
|
||||||
if (bd->focused)
|
if (bd->focused)
|
||||||
{
|
{
|
||||||
if (bd->internal)
|
if (bd->internal)
|
||||||
{
|
e_grabinput_focus(bd->client.win, E_FOCUS_METHOD_PASSIVE);
|
||||||
e_grabinput_focus(bd->win, E_FOCUS_METHOD_PASSIVE);
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ((!bd->client.icccm.accepts_focus) &&
|
if ((!bd->client.icccm.accepts_focus) &&
|
||||||
|
|
|
@ -487,7 +487,7 @@ struct _E_Event_Border_Icon_Change
|
||||||
EAPI int e_border_init(void);
|
EAPI int e_border_init(void);
|
||||||
EAPI int e_border_shutdown(void);
|
EAPI int e_border_shutdown(void);
|
||||||
|
|
||||||
EAPI E_Border *e_border_new(E_Container *con, Ecore_X_Window win, int first_map);
|
EAPI E_Border *e_border_new(E_Container *con, Ecore_X_Window win, int first_map, int internal);
|
||||||
EAPI void e_border_free(E_Border *bd);
|
EAPI void e_border_free(E_Border *bd);
|
||||||
EAPI void e_border_ref(E_Border *bd);
|
EAPI void e_border_ref(E_Border *bd);
|
||||||
EAPI void e_border_unref(E_Border *bd);
|
EAPI void e_border_unref(E_Border *bd);
|
||||||
|
|
|
@ -244,7 +244,7 @@ e_manager_manage_windows(E_Manager *man)
|
||||||
deskxy[1]);
|
deskxy[1]);
|
||||||
|
|
||||||
{
|
{
|
||||||
bd = e_border_new(con, windows[i], 1);
|
bd = e_border_new(con, windows[i], 1, 0);
|
||||||
if (bd)
|
if (bd)
|
||||||
{
|
{
|
||||||
/* FIXME:
|
/* FIXME:
|
||||||
|
@ -263,7 +263,7 @@ e_manager_manage_windows(E_Manager *man)
|
||||||
E_Container *con;
|
E_Container *con;
|
||||||
E_Border *bd;
|
E_Border *bd;
|
||||||
con = e_container_current_get(man);
|
con = e_container_current_get(man);
|
||||||
bd = e_border_new(con, windows[i], 1);
|
bd = e_border_new(con, windows[i], 1, 0);
|
||||||
if (bd)
|
if (bd)
|
||||||
e_border_show(bd);
|
e_border_show(bd);
|
||||||
}
|
}
|
||||||
|
@ -535,7 +535,7 @@ _e_manager_cb_window_show_request(void *data, int ev_type __UNUSED__, void *ev)
|
||||||
con = e_container_current_get(man);
|
con = e_container_current_get(man);
|
||||||
if (!e_border_find_by_client_window(e->win))
|
if (!e_border_find_by_client_window(e->win))
|
||||||
{
|
{
|
||||||
bd = e_border_new(con, e->win, 0);
|
bd = e_border_new(con, e->win, 0, 0);
|
||||||
if (!bd)
|
if (!bd)
|
||||||
ecore_x_window_show(e->win);
|
ecore_x_window_show(e->win);
|
||||||
}
|
}
|
||||||
|
|
|
@ -46,7 +46,7 @@ e_win_new(E_Container *con)
|
||||||
win->engine = e_canvas_engine_decide(e_config->evas_engine_win);
|
win->engine = e_canvas_engine_decide(e_config->evas_engine_win);
|
||||||
win->ecore_evas = e_canvas_new(e_config->evas_engine_win, con->manager->root,
|
win->ecore_evas = e_canvas_new(e_config->evas_engine_win, con->manager->root,
|
||||||
0, 0, 1, 1, 1, 0,
|
0, 0, 1, 1, 1, 0,
|
||||||
&(win->evas_win), &(win->evas_sub_win));
|
&(win->evas_win), NULL);
|
||||||
e_canvas_add(win->ecore_evas);
|
e_canvas_add(win->ecore_evas);
|
||||||
ecore_evas_data_set(win->ecore_evas, "E_Win", win);
|
ecore_evas_data_set(win->ecore_evas, "E_Win", win);
|
||||||
ecore_evas_callback_move_set(win->ecore_evas, _e_win_cb_move);
|
ecore_evas_callback_move_set(win->ecore_evas, _e_win_cb_move);
|
||||||
|
@ -83,11 +83,12 @@ e_win_show(E_Win *win)
|
||||||
{
|
{
|
||||||
_e_win_prop_update(win);
|
_e_win_prop_update(win);
|
||||||
ecore_evas_lower(win->ecore_evas);
|
ecore_evas_lower(win->ecore_evas);
|
||||||
win->border = e_border_new(win->container, win->evas_win, 1);
|
win->border = e_border_new(win->container, win->evas_win, 1, 1);
|
||||||
if (!win->placed)
|
if (!win->placed)
|
||||||
win->border->re_manage = 0;
|
win->border->re_manage = 0;
|
||||||
win->border->internal = 1;
|
win->border->internal = 1;
|
||||||
win->border->internal_ecore_evas = win->ecore_evas;
|
win->border->internal_ecore_evas = win->ecore_evas;
|
||||||
|
/*
|
||||||
if (win->engine == E_EVAS_ENGINE_GL_X11)
|
if (win->engine == E_EVAS_ENGINE_GL_X11)
|
||||||
{
|
{
|
||||||
ecore_evas_gl_x11_extra_event_window_add(win->ecore_evas, win->border->win);
|
ecore_evas_gl_x11_extra_event_window_add(win->ecore_evas, win->border->win);
|
||||||
|
@ -103,6 +104,7 @@ e_win_show(E_Win *win)
|
||||||
ecore_evas_software_x11_extra_event_window_add(win->ecore_evas, win->border->win);
|
ecore_evas_software_x11_extra_event_window_add(win->ecore_evas, win->border->win);
|
||||||
ecore_evas_software_x11_extra_event_window_add(win->ecore_evas, win->border->event_win);
|
ecore_evas_software_x11_extra_event_window_add(win->ecore_evas, win->border->event_win);
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
_e_win_prop_update(win);
|
_e_win_prop_update(win);
|
||||||
e_border_show(win->border);
|
e_border_show(win->border);
|
||||||
|
|
|
@ -22,7 +22,6 @@ struct _E_Win
|
||||||
Ecore_Evas *ecore_evas;
|
Ecore_Evas *ecore_evas;
|
||||||
Evas *evas;
|
Evas *evas;
|
||||||
Ecore_X_Window evas_win;
|
Ecore_X_Window evas_win;
|
||||||
Ecore_X_Window evas_sub_win;
|
|
||||||
unsigned char placed : 1;
|
unsigned char placed : 1;
|
||||||
int min_w, min_h, max_w, max_h, base_w, base_h;
|
int min_w, min_h, max_w, max_h, base_w, base_h;
|
||||||
int step_x, step_y;
|
int step_x, step_y;
|
||||||
|
|
Loading…
Reference in New Issue