Skip to content

Commit 98084d6

Browse files
committed
fix(ui): add independent scroll containers to fix scroll wheel on Linux
Providers page was using DndContext which may interfere with scroll wheel events on Linux/Ubuntu WebKitGTK. Added independent scroll containers with `overflow-y-auto` to all main pages, matching the pattern already used by the MCP panel which works correctly. Changes: - App.tsx: Wrap ProviderList in independent scroll container - SkillsPage: Use consistent h-[calc(100vh-8rem)] layout - SettingsPage: Add overflow-hidden and overflow-x-hidden for consistency
1 parent a627e1b commit 98084d6

File tree

3 files changed

+24
-21
lines changed

3 files changed

+24
-21
lines changed

src/App.tsx

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -303,20 +303,25 @@ function App() {
303303
return <AgentsPanel onOpenChange={() => setCurrentView("providers")} />;
304304
default:
305305
return (
306-
<div className="mx-auto max-w-[56rem] px-6 space-y-4">
307-
<ProviderList
308-
providers={providers}
309-
currentProviderId={currentProviderId}
310-
appId={activeApp}
311-
isLoading={isLoading}
312-
onSwitch={switchProvider}
313-
onEdit={setEditingProvider}
314-
onDelete={setConfirmDelete}
315-
onDuplicate={handleDuplicateProvider}
316-
onConfigureUsage={setUsageProvider}
317-
onOpenWebsite={handleOpenWebsite}
318-
onCreate={() => setIsAddOpen(true)}
319-
/>
306+
<div className="mx-auto max-w-[56rem] px-6 flex flex-col h-[calc(100vh-8rem)] overflow-hidden">
307+
{/* 独立滚动容器 - 解决 Linux/Ubuntu 下 DndContext 与滚轮事件冲突 */}
308+
<div className="flex-1 overflow-y-auto overflow-x-hidden pb-12">
309+
<div className="space-y-4">
310+
<ProviderList
311+
providers={providers}
312+
currentProviderId={currentProviderId}
313+
appId={activeApp}
314+
isLoading={isLoading}
315+
onSwitch={switchProvider}
316+
onEdit={setEditingProvider}
317+
onDelete={setConfirmDelete}
318+
onDuplicate={handleDuplicateProvider}
319+
onConfigureUsage={setUsageProvider}
320+
onOpenWebsite={handleOpenWebsite}
321+
onCreate={() => setIsAddOpen(true)}
322+
/>
323+
</div>
324+
</div>
320325
</div>
321326
);
322327
}

src/components/settings/SettingsPage.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ export function SettingsPage({
151151
const isBusy = useMemo(() => isLoading && !settings, [isLoading, settings]);
152152

153153
return (
154-
<div className="mx-auto max-w-[56rem] flex flex-col h-[calc(100vh-8rem)] px-6">
154+
<div className="mx-auto max-w-[56rem] flex flex-col h-[calc(100vh-8rem)] overflow-hidden px-6">
155155
{isBusy ? (
156156
<div className="flex flex-1 items-center justify-center">
157157
<Loader2 className="h-8 w-8 animate-spin text-muted-foreground" />
@@ -172,7 +172,7 @@ export function SettingsPage({
172172
<TabsTrigger value="about">{t("common.about")}</TabsTrigger>
173173
</TabsList>
174174

175-
<div className="flex-1 overflow-y-auto pr-2">
175+
<div className="flex-1 overflow-y-auto overflow-x-hidden pr-2">
176176
<TabsContent value="general" className="space-y-6 mt-0">
177177
{settings ? (
178178
<>

src/components/skills/SkillsPage.tsx

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -205,12 +205,10 @@ export const SkillsPage = forwardRef<SkillsPageHandle, SkillsPageProps>(
205205
}, [skills, searchQuery, filterStatus]);
206206

207207
return (
208-
<div className="flex flex-col h-full min-h-0 bg-background/50">
209-
{/* 顶部操作栏(固定区域)已移除,由 App.tsx 接管 */}
210-
208+
<div className="mx-auto max-w-[56rem] px-6 flex flex-col h-[calc(100vh-8rem)] overflow-hidden bg-background/50">
211209
{/* 技能网格(可滚动详情区域) */}
212-
<div className="flex-1 min-h-0 overflow-y-auto animate-fade-in">
213-
<div className="mx-auto max-w-[56rem] px-6 py-4">
210+
<div className="flex-1 overflow-y-auto overflow-x-hidden animate-fade-in">
211+
<div className="py-4">
214212
{loading ? (
215213
<div className="flex items-center justify-center h-64">
216214
<RefreshCw className="h-8 w-8 animate-spin text-muted-foreground" />

0 commit comments

Comments
 (0)