[NUI] Check if event handler of the DisposedQueued object is valid
authordongsug.song <dongsug.song@samsung.com>
Sat, 13 Nov 2021 06:43:01 +0000 (15:43 +0900)
committerdongsug-song <35130733+dongsug-song@users.noreply.github.com>
Wed, 17 Nov 2021 08:08:13 +0000 (17:08 +0900)
commite775c059fe36a4630c2152d6c8a52c0a229c8613
tree02e75e8c8dfdbebf4a4dc860121589ce820bede0
parent1035a33a29f4bd4692cb7958151072ea10080ff1
[NUI] Check if event handler of the DisposedQueued object is valid

- The objects that are waiting in disposeQueue are not yet signal disconnected, and their states are implict disposed.
- When dali callback comes and the obeject is in the queue, it seems that the problem will occur.
- User event callback checks IsDisposeQueued before Invoked, and if Dispose == False, IsDisposeQueued == true, then event callback is not invoked.
- when Dispose == True, User callback != NULL, throw exception.
src/Tizen.NUI/src/internal/Common/KeyInputFocusSignal.cs
src/Tizen.NUI/src/internal/Interop/Interop.KeyInputFocusManager.cs
src/Tizen.NUI/src/public/BaseComponents/ViewEvent.cs
src/Tizen.NUI/src/public/BaseComponents/ViewInternal.cs
src/Tizen.NUI/src/public/Common/BaseHandle.cs