diff --git a/patch_v2/sdk/meow_ui_widget.c b/patch_v2/sdk/meow_ui_widget.c index 89d89a0..2ef37ce 100644 --- a/patch_v2/sdk/meow_ui_widget.c +++ b/patch_v2/sdk/meow_ui_widget.c @@ -1191,6 +1191,9 @@ meow_widget *meow_listview_create(int x, int y, int w, int h, int count, t->sel = -1; t->item_h = 56; t->scroll = 0; t->swipe_idx = -1; t->sel_mode = (mode >= MEOW_LIST_SEL_NONE && mode <= MEOW_LIST_SEL_MULTI) ? mode : MEOW_LIST_SEL_NONE; t->lines = 2; t->show_icon = 1; t->show_right = 1; /* 默认双行富 item + 图标 + 右尾件(src2 布局不变) */ + t->container = 1; /* M6.37 P1:SDK 默认列表走 MD3 容器模式——行=surfaceContainer 圆角卡 + 空隙 + 去分隔线 + 卡内 tonal 选中, + * 让 hello 示例 / files 及一切用 SDK 默认 renderer 的 App 开箱即 MD3(用户 2026-09-04 反馈默认仍扁平)。 + * 需扁平的宿主可显式 meow_listview_set_container(lv,0) 回退(test_meow_ui_widgets 即用它锁扁平基线)。 */ if (t->sel_mode == MEOW_LIST_SEL_MULTI && t->count > 0) { t->sel_bits_n = (t->count + 31) / 32; t->sel_bits = (uint32_t *)calloc((size_t)t->sel_bits_n, sizeof(uint32_t)); diff --git a/patch_v2/sdk/test_meow_ui_listvirt.c b/patch_v2/sdk/test_meow_ui_listvirt.c index 27c2417..f7844c0 100644 --- a/patch_v2/sdk/test_meow_ui_listvirt.c +++ b/patch_v2/sdk/test_meow_ui_listvirt.c @@ -206,6 +206,7 @@ int main(void) /* 双行(lines=2,默认):行 0 title+subtitle + icon(FOLDER) + 尾件(ARROW) */ int lvx = 20, lvy = 50, lvw = 440, lvh = 120; meow_widget *lv = meow_listview_create(lvx, lvy, lvw, lvh, 0, NULL, NULL, MEOW_LIST_SEL_NONE); + meow_listview_set_container(lv, 0); /* 锁扁平基线:SDK 默认已变 MD3 容器,本测试专测扁平虚拟化渲染路径 */ CHECK(meow_listview_set_item_h(lv, itemh) == itemh, "item_h"); CHECK(meow_listview_set_vsource(lv, vcount, vbind, NULL) == 0, "vsource"); CHECK(meow_listview_set_item_renderer(lv, 2, 1, 1) == 0, "renderer"); @@ -267,6 +268,7 @@ int main(void) int lvx = 20, lvy = 50, lvw = 440, lvh = 120; g_count_override = 3; g_section_at = 1; meow_widget *lv = meow_listview_create(lvx, lvy, lvw, lvh, 0, NULL, NULL, MEOW_LIST_SEL_NONE); + meow_listview_set_container(lv, 0); /* 锁扁平基线:SDK 默认已变 MD3 容器,段头 band 断言按扁平 */ meow_listview_set_item_h(lv, itemh); meow_listview_set_vsource(lv, vcount, vbind, NULL); meow_ui_clear(th->bg); diff --git a/patch_v2/sdk/test_meow_ui_widgets.c b/patch_v2/sdk/test_meow_ui_widgets.c index 0380c0a..d2005d1 100644 --- a/patch_v2/sdk/test_meow_ui_widgets.c +++ b/patch_v2/sdk/test_meow_ui_widgets.c @@ -318,6 +318,7 @@ int main(void) * lv 位于 (20,240,320,112)item_h=56 → 行0 y240..296、行1 296..352。 * 断言全部「画完读 back_buf 像素」(region_has/px_near),非目检。 */ meow_widget *lv = W(meow_listview_create(20, 240, 320, 112, 4, lv_src, NULL, MEOW_LIST_SEL_SINGLE)); + meow_listview_set_container(lv, 0); /* 锁扁平基线:SDK 默认已变 MD3 容器,此测试专测 set_container(0) 扁平回退路径 */ assert(meow_listview_set_item_h(lv, 56) == 56); const meow_theme *lth = meow_theme_get(); int lvx = 20, lvy = 240, lvw = 320, lvh = 112, itemh = 56;