feat(sdk): 绘制期通用clip + view递归/on_event接线 (agent-195) — ①栈式clip rect(g_clip_stack[16]), 所有写像素原语过clip, meow_widget_draw push/pop控件矩形(含W_CUSTOM, 根治越界脏区), IME/模态顶层全屏不受影响 ②view enter/leave递归children + meow_view_dispatch_event(z降序子>父命中即消费); hello App层显式驱动退役
meow_ui.a→da4d3a7d; hello→c655ba43; 宿主4套件全PASS(含clip越界断言+view递归断言) 出入: W_SLIDER拇指在max处被裁(既有几何瑕疵可见化,待修); on_draw祖先已进入即画
This commit is contained in:
1 parent
b2e7cc8c70
commit
32a6a8ed1e
14 files changed
+257
-44
No files matched your search
@@ -408,7 +408,8 @@ static void demo_page_enter(meow_view *v, void *ctx)
|
||||
((demo_ctrl *)ctx)->active = 1;
|
||||
g_demo = 1;
|
||||
g_demo_focus = 0;
|
||||
list_view_enter(); /* 先进入列表区子视图(其 on_draw 在下面 rebuild→paint 中经注册表触发) */
|
||||
/* 列表区 CONTAINER 子视图随本页进入由 SDK view_enter 递归驱动(其 on_draw 在 demo_rebuild_to
|
||||
* →demo_paint 中经注册表绘制;meow_draw_view_entered 含祖先已进入判定,首批可见)。 */
|
||||
demo_rebuild_to(0);
|
||||
meow_log(MEOW_LOG_INFO, "demo enter scroll=0");
|
||||
}
|
||||
@@ -418,7 +419,7 @@ static void demo_page_leave(meow_view *v, void *ctx)
|
||||
(void)v;
|
||||
((demo_ctrl *)ctx)->active = 0;
|
||||
g_demo = 0;
|
||||
list_view_leave(); /* 子离开先于父离开(嵌套顺序) */
|
||||
/* 列表区子视图由 SDK view_leave 在父之前递归离开(子<先>父,§A.4/D.1)。 */
|
||||
}
|
||||
|
||||
static void demo_page_destroy(meow_view *v, void *ctx)
|
||||
|
||||
Reference in new issue
Block a user