From 2ed5586d3c48d78c4dc9ad1ef00b2e47f7238915 Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Sat, 30 May 2026 17:34:47 +0800
Subject: [PATCH] Prepare 7.8.4 quick search toggle release
---
Apptag/EditModeViews.swift | 65 +++++++++++++++++++++++++++++---
1 files changed, 58 insertions(+), 7 deletions(-)
diff --git a/Apptag/EditModeViews.swift b/Apptag/EditModeViews.swift
index 2a2c60e..1053557 100644
--- a/Apptag/EditModeViews.swift
+++ b/Apptag/EditModeViews.swift
@@ -314,6 +314,8 @@
struct UncategorizedDropConfirmBubble: View {
let title: String
let message: String
+ let doNotRemindTitle: String
+ @Binding var doNotRemind: Bool
let cancelTitle: String
let confirmTitle: String
let onCancel: () -> Void
@@ -347,6 +349,33 @@
.multilineTextAlignment(.leading)
.fixedSize(horizontal: false, vertical: true)
.frame(maxWidth: .infinity, alignment: .leading)
+
+ Button {
+ doNotRemind.toggle()
+ } label: {
+ HStack(spacing: 10) {
+ ZStack {
+ RoundedRectangle(cornerRadius: 4, style: .continuous)
+ .fill(doNotRemind ? Color.accentColor : Color.white.opacity(0.10))
+ RoundedRectangle(cornerRadius: 4, style: .continuous)
+ .stroke(Color.white.opacity(0.92), lineWidth: 1.6)
+ if doNotRemind {
+ Image(systemName: "checkmark")
+ .font(.system(size: 12, weight: .bold))
+ .foregroundStyle(.white)
+ }
+ }
+ .frame(width: 18, height: 18)
+
+ Text(doNotRemindTitle)
+ .font(.system(size: 13, weight: .medium))
+ .foregroundStyle(.white.opacity(0.82))
+ .lineLimit(2)
+ .multilineTextAlignment(.leading)
+ }
+ .contentShape(Rectangle())
+ }
+ .buttonStyle(.plain)
HStack(spacing: 12) {
Spacer(minLength: 0)
@@ -406,7 +435,7 @@
.foregroundStyle(.white)
.frame(maxWidth: .infinity, alignment: .leading)
- Button(action: onCancel) {
+ Button(action: { DispatchQueue.main.async(execute: onCancel) }) {
Image(systemName: "xmark")
.font(.system(size: 12, weight: .bold))
.foregroundStyle(.white.opacity(0.82))
@@ -427,15 +456,37 @@
.fixedSize(horizontal: false, vertical: true)
.frame(maxWidth: .infinity, alignment: .leading)
- Toggle(doNotRemindTitle, isOn: $doNotRemind)
- .toggleStyle(.checkbox)
- .font(.system(size: 13, weight: .medium))
- .foregroundStyle(.white.opacity(0.80))
+ Button {
+ doNotRemind.toggle()
+ } label: {
+ HStack(spacing: 10) {
+ ZStack {
+ RoundedRectangle(cornerRadius: 4, style: .continuous)
+ .fill(doNotRemind ? Color.accentColor : Color.white.opacity(0.10))
+ RoundedRectangle(cornerRadius: 4, style: .continuous)
+ .stroke(Color.white.opacity(0.92), lineWidth: 1.6)
+ if doNotRemind {
+ Image(systemName: "checkmark")
+ .font(.system(size: 12, weight: .bold))
+ .foregroundStyle(.white)
+ }
+ }
+ .frame(width: 18, height: 18)
+
+ Text(doNotRemindTitle)
+ .font(.system(size: 13, weight: .medium))
+ .foregroundStyle(.white.opacity(0.82))
+ .lineLimit(2)
+ .multilineTextAlignment(.leading)
+ }
+ .contentShape(Rectangle())
+ }
+ .buttonStyle(.plain)
HStack(spacing: 12) {
Spacer(minLength: 0)
- Button(action: onCancel) {
+ Button(action: { DispatchQueue.main.async(execute: onCancel) }) {
Text(cancelTitle)
.font(.system(size: 13, weight: .semibold))
.foregroundStyle(.white.opacity(0.86))
@@ -447,7 +498,7 @@
}
.buttonStyle(.plain)
- Button(action: onConfirm) {
+ Button(action: { DispatchQueue.main.async(execute: onConfirm) }) {
Text(confirmTitle)
.font(.system(size: 13, weight: .semibold))
.foregroundStyle(.white)
--
Gitblit v1.9.3