mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2025-12-06 05:25:41 -05:00
feat: Update Notepad to use Metadata (READ ME)
- Potential breaking changes; SAVE your notes before updating - The new system will store files locally to free up Session data - Session metadata will be saved in JSON via: `notepad-session.json` - Local files will be saved in: `/.local/state/DankMaterialShell/notepad-files`
This commit is contained in:
@@ -44,12 +44,6 @@ Singleton {
|
||||
property int wallpaperCyclingInterval: 300 // seconds (5 minutes)
|
||||
property string wallpaperCyclingTime: "06:00" // HH:mm format
|
||||
property string lastBrightnessDevice: ""
|
||||
property string notepadContent: ""
|
||||
property string notepadCurrentFileName: ""
|
||||
property string notepadCurrentFileUrl: ""
|
||||
property string notepadLastSavedContent: ""
|
||||
property var notepadTabs: []
|
||||
property int notepadCurrentTabIndex: 0
|
||||
|
||||
Component.onCompleted: {
|
||||
loadSettings()
|
||||
@@ -104,45 +98,11 @@ Singleton {
|
||||
wallpaperCyclingInterval = settings.wallpaperCyclingInterval !== undefined ? settings.wallpaperCyclingInterval : 300
|
||||
wallpaperCyclingTime = settings.wallpaperCyclingTime !== undefined ? settings.wallpaperCyclingTime : "06:00"
|
||||
lastBrightnessDevice = settings.lastBrightnessDevice !== undefined ? settings.lastBrightnessDevice : ""
|
||||
notepadContent = settings.notepadContent !== undefined ? settings.notepadContent : ""
|
||||
|
||||
// Generate system themes but don't override user's theme choice
|
||||
if (typeof Theme !== "undefined") {
|
||||
Theme.generateSystemThemesFromCurrentTheme()
|
||||
}
|
||||
notepadCurrentFileName = settings.notepadCurrentFileName !== undefined ? settings.notepadCurrentFileName : ""
|
||||
notepadCurrentFileUrl = settings.notepadCurrentFileUrl !== undefined ? settings.notepadCurrentFileUrl : ""
|
||||
notepadLastSavedContent = settings.notepadLastSavedContent !== undefined ? settings.notepadLastSavedContent : ""
|
||||
notepadTabs = settings.notepadTabs !== undefined ? settings.notepadTabs : []
|
||||
notepadCurrentTabIndex = settings.notepadCurrentTabIndex !== undefined ? settings.notepadCurrentTabIndex : 0
|
||||
|
||||
// Migrate legacy single notepad to tabs if needed
|
||||
if (notepadTabs.length === 0 && (notepadContent || notepadCurrentFileName)) {
|
||||
notepadTabs = [{
|
||||
id: Date.now(),
|
||||
title: notepadCurrentFileName || "Untitled",
|
||||
content: notepadContent,
|
||||
fileName: notepadCurrentFileName,
|
||||
fileUrl: notepadCurrentFileUrl,
|
||||
lastSavedContent: notepadLastSavedContent,
|
||||
hasUnsavedChanges: false
|
||||
}]
|
||||
notepadCurrentTabIndex = 0
|
||||
}
|
||||
|
||||
// Ensure at least one tab exists
|
||||
if (notepadTabs.length === 0) {
|
||||
notepadTabs = [{
|
||||
id: Date.now(),
|
||||
title: "Untitled",
|
||||
content: "",
|
||||
fileName: "",
|
||||
fileUrl: "",
|
||||
lastSavedContent: "",
|
||||
hasUnsavedChanges: false
|
||||
}]
|
||||
notepadCurrentTabIndex = 0
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
|
||||
@@ -178,13 +138,7 @@ Singleton {
|
||||
"wallpaperCyclingMode": wallpaperCyclingMode,
|
||||
"wallpaperCyclingInterval": wallpaperCyclingInterval,
|
||||
"wallpaperCyclingTime": wallpaperCyclingTime,
|
||||
"lastBrightnessDevice": lastBrightnessDevice,
|
||||
"notepadContent": notepadContent,
|
||||
"notepadCurrentFileName": notepadCurrentFileName,
|
||||
"notepadCurrentFileUrl": notepadCurrentFileUrl,
|
||||
"notepadLastSavedContent": notepadLastSavedContent,
|
||||
"notepadTabs": notepadTabs,
|
||||
"notepadCurrentTabIndex": notepadCurrentTabIndex
|
||||
"lastBrightnessDevice": lastBrightnessDevice
|
||||
}, null, 2))
|
||||
}
|
||||
|
||||
@@ -594,4 +548,4 @@ Singleton {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user