add background pixmaps to elm - faster draw/redraw on embedded :) (well..

expose events are less of a problem with latency. let's see how it looks).



SVN revision: 36715
This commit is contained in:
Carsten Haitzler 2008-10-16 12:03:01 +00:00
parent c0fd5ab12f
commit a337a70cea
4 changed files with 15 additions and 4 deletions

View File

@ -3,8 +3,8 @@ exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
Name: eet
Description: Library for speedy data storage, retrieval, and compression
Name: elementary
Description: Mobile device touchscreen widget library
Version: @VERSION@
Libs: -L${libdir} -lelementary
Libs.private: @my_libs@ @ELEMENTARY_LIBS@

View File

@ -36,6 +36,8 @@ elm_init(int argc, char **argv)
_elm_config->thumbscroll_momentum_threshhold = 100.0;
_elm_config->thumbscroll_friction = 1.0;
_elm_config->scale = 1.0;
_elm_config->bgpixmap = 1;
_elm_config->compositing = 1;
if ((_elm_config->engine == ELM_SOFTWARE_X11) ||
(_elm_config->engine == ELM_SOFTWARE_16_X11) ||
@ -51,8 +53,10 @@ elm_init(int argc, char **argv)
{
if (val > 0) _elm_config->scale = (double)val / 1000.0;
}
if (!ecore_x_screen_is_composited(0))
_elm_config->compositing = 0;
}
}
EAPI void

View File

@ -28,6 +28,8 @@ struct _Elm_Config
double thumbscroll_momentum_threshhold;
double thumbscroll_friction;
double scale;
int bgpixmap;
int compositing;
};
#define ELM_NEW(t) calloc(1, sizeof(t))

View File

@ -354,6 +354,11 @@ elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type)
free(win);
return NULL;
}
printf("_elm_config->bgpixmap = %i\n"
"_elm_config->compositing = %i\n",
_elm_config->bgpixmap, _elm_config->compositing);
if (_elm_config->bgpixmap && !_elm_config->compositing)
ecore_evas_avoid_damage_set(win->ee, ECORE_EVAS_AVOID_DAMAGE_BUILT_IN);
win->type = type;
win->parent = parent;
@ -476,7 +481,7 @@ elm_win_alpha_set(Evas_Object *obj, Evas_Bool alpha)
{
if (alpha)
{
if (!ecore_x_screen_is_composited(0))
if (!_elm_config->compositing)
elm_win_shaped_set(obj, alpha);
else
ecore_evas_alpha_set(win->ee, alpha);