block rendering while screensaver is active
This commit is contained in:
parent
9c5509b236
commit
2ee8262ea5
|
@ -809,6 +809,9 @@ _e_comp_screensaver_on(void *data EINA_UNUSED, int type EINA_UNUSED, void *event
|
||||||
{
|
{
|
||||||
if (c->saver) continue;
|
if (c->saver) continue;
|
||||||
c->saver = EINA_TRUE;
|
c->saver = EINA_TRUE;
|
||||||
|
if (c->render_animator)
|
||||||
|
ecore_animator_freeze(c->render_animator);
|
||||||
|
E_FREE_FUNC(c->update_job, ecore_job_del);
|
||||||
EINA_LIST_FOREACH(c->zones, ll, zone)
|
EINA_LIST_FOREACH(c->zones, ll, zone)
|
||||||
{
|
{
|
||||||
e_comp_override_add(c);
|
e_comp_override_add(c);
|
||||||
|
@ -833,6 +836,7 @@ _e_comp_screensaver_off(void *data EINA_UNUSED, int type EINA_UNUSED, void *even
|
||||||
{
|
{
|
||||||
if (!c->saver) continue;
|
if (!c->saver) continue;
|
||||||
c->saver = EINA_FALSE;
|
c->saver = EINA_FALSE;
|
||||||
|
e_comp_render_queue(c);
|
||||||
EINA_LIST_FOREACH(c->zones, ll, zone)
|
EINA_LIST_FOREACH(c->zones, ll, zone)
|
||||||
{
|
{
|
||||||
edje_object_signal_emit(zone->base, "e,state,screensaver,off", "e");
|
edje_object_signal_emit(zone->base, "e,state,screensaver,off", "e");
|
||||||
|
@ -1359,6 +1363,8 @@ e_comp_render_queue(E_Comp *c)
|
||||||
E_OBJECT_TYPE_CHECK(c, E_COMP_TYPE);
|
E_OBJECT_TYPE_CHECK(c, E_COMP_TYPE);
|
||||||
if (!c) return;
|
if (!c) return;
|
||||||
|
|
||||||
|
if (c->saver) return;
|
||||||
|
|
||||||
if (conf->lock_fps)
|
if (conf->lock_fps)
|
||||||
{
|
{
|
||||||
ecore_animator_thaw(c->render_animator);
|
ecore_animator_thaw(c->render_animator);
|
||||||
|
|
Loading…
Reference in New Issue