From 845d5ca65c63e10db3762549a73cb71439f99ec3 Mon Sep 17 00:00:00 2001 From: projectdx Date: Tue, 24 Feb 2026 00:59:28 +0900 Subject: [PATCH] feat: add settings page and torrent drag-drop modal flow --- src/App.vue | 130 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 126 insertions(+), 4 deletions(-) diff --git a/src/App.vue b/src/App.vue index c695fba..134cb73 100644 --- a/src/App.vue +++ b/src/App.vue @@ -17,6 +17,8 @@ import { type TaskFilter = 'all' | 'active' | 'waiting' | 'stopped' type AddTab = 'url' | 'torrent' +type AppPage = 'downloads' | 'settings' +type SettingsTab = 'basic' | 'advanced' | 'lab' const binaryPath = ref('aria2c') const rpcPort = ref(6800) @@ -32,6 +34,24 @@ const errorMessage = ref('') const successMessage = ref('') const autoRefresh = ref(true) const filter = ref('all') +const page = ref('downloads') +const settingsTab = ref('basic') + +const settingTheme = ref<'auto' | 'light' | 'dark'>('dark') +const settingHideWindowOnStartup = ref(false) +const settingTraySpeed = ref(true) +const settingShowDockProgress = ref(true) +const settingLanguage = ref('한국어') +const settingRunOnLogin = ref(false) +const settingRememberWindow = ref(true) +const settingAutoResume = ref(true) +const settingUploadLimit = ref(256) +const settingDownloadLimit = ref(0) +const settingMagnetAsTorrent = ref(true) +const settingAutoDownloadTorrentMeta = ref(true) +const settingBtForceEncryption = ref(false) +const settingKeepSeeding = ref(true) +const settingSeedRatio = ref(1) const showAddModal = ref(false) const addTab = ref('url') @@ -205,6 +225,18 @@ function openAddModal() { addTab.value = 'url' } +function openDownloadsPage() { + page.value = 'downloads' +} + +function openSettingsPage() { + page.value = 'settings' +} + +function saveSettings() { + pushSuccess('설정이 저장되었습니다.') +} + function closeAddModal() { showAddModal.value = false modalDropActive.value = false @@ -460,20 +492,25 @@ onUnmounted(() => { -
+

다운로드 중

@@ -587,6 +624,91 @@ onUnmounted(() => {
+
+
+ + +
+

기본

+ +
+
+ +
+ + + +
+
+ +
+ + + +
+ +
+ + +
+ +
+ + + +
+ +
+ +
+ +
+ + +
+ +
+

BitTorrent

+ + + + + +
+ +
+ + +
+
+ +
+

{{ settingsTab === 'advanced' ? '고급 설정 화면(포팅 진행 중)' : '실험실 설정 화면(포팅 진행 중)' }}

+
+
+
+
+