mirror of
https://github.com/Syngnat/GoNavi.git
synced 2026-08-10 00:33:28 +08:00
🐛 fix(tabs/theme): 修复标签顶条与标题栏主题不一致
- 移除 V2 工作区活动标签顶部强调条,保留圆角与选中背景 - 让 V2 自定义标题栏跟随侧栏主题表面,同时保持 legacy 背景逻辑 - 补充标签与标题栏主题回归断言
This commit is contained in:
@@ -7,6 +7,16 @@ const sidebarSource = readFileSync(new URL('./components/Sidebar.tsx', import.me
|
||||
const connectionRailSource = readFileSync(new URL('./components/sidebar/SidebarConnectionRail.tsx', import.meta.url), 'utf8');
|
||||
|
||||
describe('app sidebar tree panel collapse', () => {
|
||||
it('uses the v2 themed sidebar surface for the custom titlebar', () => {
|
||||
const titlebarStart = appSource.indexOf('{/* Custom Title Bar */}');
|
||||
const titlebarEnd = appSource.indexOf('{showLinuxCJKFontBanner && (', titlebarStart);
|
||||
const titlebarSource = appSource.slice(titlebarStart, titlebarEnd);
|
||||
|
||||
expect(titlebarStart).toBeGreaterThan(-1);
|
||||
expect(titlebarEnd).toBeGreaterThan(titlebarStart);
|
||||
expect(titlebarSource).toContain("background: isV2Ui ? 'var(--gn-bg-panel-2)' : bgMain,");
|
||||
});
|
||||
|
||||
it('collapses v2 to the scaled fixed rail while preserving the saved expanded width', () => {
|
||||
expect(appSource).toContain('const [isSidebarCollapsed, setIsSidebarCollapsed] = useState(false);');
|
||||
expect(appSource).toContain('const sidebarCollapsedWidth = isV2Ui ? 38 * effectiveUiScale * effectiveSidebarRailScale : 0;');
|
||||
|
||||
@@ -7514,7 +7514,7 @@ function App() {
|
||||
display: 'flex',
|
||||
alignItems: 'center',
|
||||
justifyContent: 'space-between',
|
||||
background: bgMain,
|
||||
background: isV2Ui ? 'var(--gn-bg-panel-2)' : bgMain,
|
||||
borderBottom: 'none',
|
||||
userSelect: 'none',
|
||||
WebkitAppRegion: isWebRuntime ? 'no-drag' : 'drag',
|
||||
|
||||
@@ -52,12 +52,12 @@ describe('v2 workbench adaptive tab width', () => {
|
||||
);
|
||||
});
|
||||
|
||||
it('rounds all four corners of every v2 workbench tab', () => {
|
||||
it('rounds all four corners without drawing an accent bar above the active tab', () => {
|
||||
expect(themeSource).toMatch(
|
||||
/\.gn-v2-main-tabs \.ant-tabs-tab \{[^}]*border-radius: 8px !important;/s,
|
||||
);
|
||||
expect(themeSource).toMatch(
|
||||
/\.gn-v2-main-tabs \.ant-tabs-tab\.ant-tabs-tab-active \{[^}]*box-shadow: inset 0 2px 0 var\(--gn-accent\) !important;/s,
|
||||
expect(themeSource).not.toMatch(
|
||||
/\.gn-v2-main-tabs \.ant-tabs-tab\.ant-tabs-tab-active \{[^}]*box-shadow:/s,
|
||||
);
|
||||
expect(themeSource).toMatch(
|
||||
/\.gn-v2-main-tabs \.ant-tabs-tab\.ant-tabs-tab-active::after \{[^}]*display: none;/s,
|
||||
|
||||
@@ -3713,10 +3713,6 @@ body[data-ui-version="v2"] .gn-v2-main-tabs .ant-tabs-tab {
|
||||
border-radius: 8px !important;
|
||||
}
|
||||
|
||||
body[data-ui-version="v2"] .gn-v2-main-tabs .ant-tabs-tab.ant-tabs-tab-active {
|
||||
box-shadow: inset 0 2px 0 var(--gn-accent) !important;
|
||||
}
|
||||
|
||||
body[data-ui-version="v2"] .gn-v2-main-tabs .ant-tabs-tab.ant-tabs-tab-active::after {
|
||||
display: none;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user