From c8a1b811bffd13dc6dfa39a7c5c0d4ee76cd11e5 Mon Sep 17 00:00:00 2001
From: Ariver <ar@MacBook-Air.local>
Date: Mon, 11 May 2026 12:53:34 +0800
Subject: [PATCH] Release TagLauncher 5.5.0

---
 Apptag/DataLayer.swift |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/Apptag/DataLayer.swift b/Apptag/DataLayer.swift
index 84d03d5..6147cac 100644
--- a/Apptag/DataLayer.swift
+++ b/Apptag/DataLayer.swift
@@ -283,6 +283,20 @@
         TagDatabase.save(store)
     }
 
+    /// Replace the full editable tag set for multiple apps.
+    static func setTags(_ tags: [String], to paths: [String]) {
+        var store = TagDatabase.load()
+        let validTags = tags.filter { store.tags[$0] != nil }
+        for path in paths {
+            if validTags.isEmpty {
+                store.appTags.removeValue(forKey: path)
+            } else {
+                store.appTags[path] = validTags
+            }
+        }
+        TagDatabase.save(store)
+    }
+
     static func moveApp(path: String, from sourceTag: String, to targetTag: String, color: Int, copy: Bool) {
         var store = TagDatabase.load()
         if store.tags[targetTag] == nil {

--
Gitblit v1.9.3