discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=528bad7252deb7f33fa75318977778b90938080e
commit 528bad7252deb7f33fa75318977778b90938080e Author: Mike Blumenkrantz <zm...@osg.samsung.com> Date: Fri Aug 18 15:52:52 2017 -0400 block updating window remembers while applying them some attrs (e.g., desk setting) change the position/size of a window before another attr is set, changing the original value fix T5295 --- src/bin/e_remember.c | 4 +++- src/bin/e_remember.h | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/bin/e_remember.c b/src/bin/e_remember.c index b551e5412..2119f50ad 100644 --- a/src/bin/e_remember.c +++ b/src/bin/e_remember.c @@ -307,7 +307,7 @@ e_remember_apply(E_Remember *rem, E_Client *ec) if (!rem) return; - + rem->applying = 1; if (rem->apply & E_REMEMBER_APPLY_ZONE) { E_Zone *zone; @@ -577,6 +577,7 @@ e_remember_apply(E_Remember *rem, E_Client *ec) } } + rem->applying = 0; if (temporary) _e_remember_free(rem); } @@ -713,6 +714,7 @@ _e_remember_event_free(void *d EINA_UNUSED, void *event) static void _e_remember_update(E_Client *ec, E_Remember *rem) { + if (rem->applying) return; if (rem->apply & E_REMEMBER_APPLY_POS || rem->apply & E_REMEMBER_APPLY_SIZE) { diff --git a/src/bin/e_remember.h b/src/bin/e_remember.h index 41c81cfe3..3edf8fe8d 100644 --- a/src/bin/e_remember.h +++ b/src/bin/e_remember.h @@ -118,6 +118,7 @@ struct _E_Remember } prop; Eina_Stringshare *uuid; int pid; + Eina_Bool applying : 1; }; EINTERN int e_remember_init(E_Startup_Mode mode); --