support un the fly rehinting.

SVN revision: 20856
This commit is contained in:
Carsten Haitzler 2006-03-01 03:47:51 +00:00
parent f4ce7bb180
commit 5425d9dc53
4 changed files with 26 additions and 0 deletions

3
TODO
View File

@ -8,6 +8,9 @@ Some of the things (in very short form) that need to be done to E17...
BUGS / FIXES BUGS / FIXES
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
* BUG: openoffice 2 when ddisplaying a presentation with xinerama (multiple
zones) weird things happen (the presentation doesnt display - it seemingly
attaches to the 2nd zone, not the first), crashes have been reported too.
* BUG: dnd icon from window that has no .eap defining its ocon to ibar and the * BUG: dnd icon from window that has no .eap defining its ocon to ibar and the
ibar icon ends up blank (cant build .eap freom ARGB pixels) ibar icon ends up blank (cant build .eap freom ARGB pixels)
* BUG: edge flip for desktops still active if turned off when dragging a window * BUG: edge flip for desktops still active if turned off when dragging a window

View File

@ -125,6 +125,27 @@ e_canvas_cache_reload(void)
} }
} }
EAPI void
e_canvas_rehint(void)
{
Evas_List *l;
for (l = _e_canvases; l; l = l->next)
{
Ecore_Evas *ee;
Evas *e;
ee = l->data;
e = ecore_evas_get(ee);
if (e_config->font_hinting == 0)
evas_font_hinting_set(e, EVAS_FONT_HINTING_BYTECODE);
else if (e_config->font_hinting == 1)
evas_font_hinting_set(e, EVAS_FONT_HINTING_AUTO);
else if (e_config->font_hinting == 2)
evas_font_hinting_set(e, EVAS_FONT_HINTING_NONE);
}
}
EAPI Ecore_Evas * EAPI Ecore_Evas *
e_canvas_new(int engine_hint, Ecore_X_Window win, int x, int y, int w, int h, e_canvas_new(int engine_hint, Ecore_X_Window win, int x, int y, int w, int h,
int direct_resize, int override, Ecore_X_Window *win_ret, int direct_resize, int override, Ecore_X_Window *win_ret,

View File

@ -12,6 +12,7 @@ EAPI int e_canvas_engine_decide(int engine);
EAPI void e_canvas_recache(void); EAPI void e_canvas_recache(void);
EAPI void e_canvas_cache_flush(void); EAPI void e_canvas_cache_flush(void);
EAPI void e_canvas_cache_reload(void); EAPI void e_canvas_cache_reload(void);
EAPI void e_canvas_rehint(void);
EAPI Ecore_Evas *e_canvas_new(int engine_hint, Ecore_X_Window win, int x, int y, int w, int h, int direct_resize, int override, Ecore_X_Window *win_ret, Ecore_X_Window *subwin_ret); EAPI Ecore_Evas *e_canvas_new(int engine_hint, Ecore_X_Window win, int x, int y, int w, int h, int direct_resize, int override, Ecore_X_Window *win_ret, Ecore_X_Window *subwin_ret);
#endif #endif

View File

@ -73,6 +73,7 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
/* Actually take our cfdata settings and apply them in real life */ /* Actually take our cfdata settings and apply them in real life */
e_config->font_hinting = cfdata->hinting; e_config->font_hinting = cfdata->hinting;
e_config_save_queue(); e_config_save_queue();
e_canvas_rehint();
return 1; /* Apply was OK */ return 1; /* Apply was OK */
} }