[NUI] Remove useless PostProcess callback (#4607)
authorEunki Hong <h.pichulia@gmail.com>
Wed, 28 Sep 2022 05:16:15 +0000 (14:16 +0900)
committerdongsug-song <35130733+dongsug-song@users.noreply.github.com>
Tue, 4 Oct 2022 11:26:36 +0000 (20:26 +0900)
Instead of register PostProcess,
We'd better invoke ProcessorOnceEvent one more time
after LayoutProcessorEvent finished.

Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Co-authored-by: Eunki, Hong <eunkiki.hong@samsung.com>
src/Tizen.NUI/src/internal/Common/ProcessorController.cs

index b6397b7..e4a847d 100755 (executable)
@@ -42,16 +42,13 @@ namespace Tizen.NUI
         internal ProcessorController(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn)
         {
             processorCallback = new ProcessorEventHandler(Process);
-            processorPostCallback = new ProcessorEventHandler(PostProcess);
             Interop.ProcessorController.SetCallback(SwigCPtr, processorCallback);
-            Interop.ProcessorController.SetPostCallback(SwigCPtr, processorPostCallback);
         }
 
         [UnmanagedFunctionPointer(CallingConvention.StdCall)]
         internal delegate void ProcessorEventHandler();
 
         private ProcessorEventHandler processorCallback = null;
-        private ProcessorEventHandler processorPostCallback = null;
 
         public event EventHandler ProcessorOnceEvent;
         public event EventHandler ProcessorEvent;
@@ -75,10 +72,9 @@ namespace Tizen.NUI
             ProcessorOnceEvent = null;
             ProcessorEvent?.Invoke(this, null);
             LayoutProcessorEvent?.Invoke(this, null);
-        }
 
-        public void PostProcess()
-        {
+            // To avoid ImageView's properties mismatched problem,
+            // We need to invoke events now which attached during LayoutProcessor.
             ProcessorOnceEvent?.Invoke(this, null);
             ProcessorOnceEvent = null;
         }
@@ -90,7 +86,6 @@ namespace Tizen.NUI
         protected override void Dispose(DisposeTypes type)
         {
             Interop.ProcessorController.RemoveCallback(SwigCPtr, processorCallback);
-            Interop.ProcessorController.RemovePostCallback(SwigCPtr, processorPostCallback);
             ProcessorOnceEvent = null;
             ProcessorEvent = null;
             LayoutProcessorEvent = null;