File tree 1 file changed +7
-1
lines changed
1 file changed +7
-1
lines changed Original file line number Diff line number Diff line change @@ -104,6 +104,7 @@ int Widget_Unwrap(LCUI_Widget widget)
104
104
{
105
105
size_t len ;
106
106
LCUI_Widget child ;
107
+ LCUI_WidgetEventRec ev = { 0 };
107
108
LinkedList * children ;
108
109
LinkedListNode * target , * node , * prev ;
109
110
@@ -121,14 +122,19 @@ int Widget_Unwrap(LCUI_Widget widget)
121
122
node = & widget -> node ;
122
123
target = node -> prev ;
123
124
node = widget -> children .tail .prev ;
125
+ ev .cancel_bubble = TRUE;
124
126
while (len > 0 ) {
125
127
assert (node != NULL );
126
128
assert (node -> data != NULL );
127
129
prev = node -> prev ;
128
130
child = node -> data ;
131
+ ev .type = LCUI_WEVENT_UNLINK ;
132
+ Widget_TriggerEvent (child , & ev , NULL );
129
133
LinkedList_Unlink (& widget -> children , node );
130
- child -> parent = widget -> parent ;
131
134
LinkedList_Link (children , target , node );
135
+ child -> parent = widget -> parent ;
136
+ ev .type = LCUI_WEVENT_LINK ;
137
+ Widget_TriggerEvent (child , & ev , NULL );
132
138
Widget_AddTaskForChildren (child , LCUI_WTASK_REFRESH_STYLE );
133
139
Widget_UpdateTaskStatus (child );
134
140
node = prev ;
You can’t perform that action at this time.
0 commit comments