Repository navigation
feat(settings): refine the top bar, category tabs and search field - #398
Merged
Merged
Conversation
The narrow settings layout keyed DefaultTabController on the selected category, so every tap rebuilt the controller and the tab indicator jumped straight to its final position instead of sliding. Key it on the visible category set only so the controller survives selection changes, and cross-fade the body with AnimatedSwitcher for a real transition.
The Material 3 SearchBar defaults to a 6dp elevation with a shadow, which looked out of place floating above the flat app bar. Drop the elevation and force a transparent shadow/surface tint so the field sits flush with the bar.
The category tab strip used a gray surface while the app bar stayed on the default (near-white) surface, so the top looked split. Use one shared tone for both, disable the app bar's surface tint and scrolled-under elevation, and set the search field one container tone deeper so it stays readable.
Contributor
Author
|
CI 失败说明 本次 PR 仅改动 UI,与 flutter analyze 失败无关。 失败原因为 socommon 子模块引用的 commit 当前无法拉取(该 commit 不存在/不可达),导致子模块缺失、编译中断。 佐证:同一份未修改的上游代码,昨天可正常编译,今天已无法编译,说明问题出在上游子模块引用变更。 需上游确认 socommon 的正确 commit,CI 才能恢复。本 PR 的 UI 改动可正常 review。 |
Paint the chat list app bar with colorScheme.primary and an onPrimary foreground when the transparent app bar setting is off, falling back to the theme's transparent treatment when it's on, matching the explore page.
The onboardingContinueAnonymous key only existed in en-US, so the "Continue as anonymous" label fell back to English. Add zh-CN and zh-TW translations.
The featured-post style started marking attachments as contained, routing them through the non-full-bleed CarouselView branch. CarouselView applies its padding to every item, so the 8px body gutter doubled into a 16px gap between two images. Pass half the gutter for the horizontal carousel so the images sit 8px apart again, matching the full-bleed strip.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Polishes the top area of the app settings screen (search field + category tabs)
so it looks and behaves as one consistent surface.
Changes
DefaultTabControlleronthe selected category, so every tap rebuilt the controller and the indicator
jumped instead of sliding. It is now keyed only on the visible category set,
and the body cross-fades via
AnimatedSwitcher.so the field sits flush with the app bar instead of floating above it.
stayed near-white; both now share the same tone, and the search field uses one
container tone deeper so it stays readable.
Purpose
Make the settings header feel like a single, unified surface and give tab
switching a proper, polished transition.
Preview
2026-10-07.09-45-10.mp4
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.