efl_ui_focus_manager_calc: invalidate obj on delete.
authorAlastair Poole <netstar@gmail.com>
Wed, 12 Sep 2018 19:01:57 +0000 (20:01 +0100)
committerYoungbok Shin <youngb.shin@samsung.com>
Tue, 18 Sep 2018 08:39:42 +0000 (17:39 +0900)
commit0d372cafb311cace9220c5a479c95421564be3d9
tree61ede88644590b6afbe7a37d27387d7c0021e27f
parentbc6dc97e7962c4d5c63fb75fd3b1e42bfcaab2da
efl_ui_focus_manager_calc: invalidate obj on delete.

Summary:
In some situations focus is being set to a deleted object.
Use EFL_EVENT_INVALIDATE on object deletion not
EFL_EVENT_DEL. This prevents the object to be again selected for restoring focus when a redirect is deleted.

This fixes SEGV with some widgets including popup tests.

Test Plan:
* elementary_test -to popup
* popup-center-text + 3 button (check add, remove buttons).
* Close popup, enter text (reopen popup and repeat).
* Crash should be avoided.

Reviewers: bu5hm4n, zmike

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7026
src/lib/elementary/efl_ui_focus_manager_calc.c