From 2e682d746cfdc891b3bdf05d3a6e10c5a1fdaf72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=96=E7=95=8C?= Date: Wed, 4 Feb 2026 23:56:35 +0800 Subject: [PATCH] Fix main-thread blocking I/O --- .../Views/Abstract/ShareButton.swift | 51 ++-- .../Views/Dashboard/Cards/ProfileCard.swift | 129 ++++++--- .../Dashboard/Cards/ProfilePickerSheet.swift | 247 +++++++++++++----- .../Profile/EditProfileContentViewModel.swift | 37 +-- .../Profile/ImportProfileViewModel.swift | 23 +- .../Views/Profile/NewProfileMenuView.swift | 32 ++- .../Views/Profile/NewProfileViewModel.swift | 61 +++-- .../Views/Setting/CoreView.swift | 56 ++-- .../Views/Setting/ServiceLogView.swift | 2 +- .../Views/Setting/ServiceLogViewModel.swift | 30 ++- Library/Database/Profile+RW.swift | 35 +++ Library/Database/Profile+Transferable.swift | 102 +++++++- Library/Database/Profile+Update.swift | 16 +- Library/Network/ExtensionProfile.swift | 9 +- Library/Network/HTTPClient.swift | 13 + Library/Network/RootHelperXPC.swift | 2 +- Library/Shared/BlockingIO.swift | 35 +++ 17 files changed, 643 insertions(+), 237 deletions(-) create mode 100644 Library/Shared/BlockingIO.swift diff --git a/ApplicationLibrary/Views/Abstract/ShareButton.swift b/ApplicationLibrary/Views/Abstract/ShareButton.swift index 1721bbb..35ade79 100644 --- a/ApplicationLibrary/Views/Abstract/ShareButton.swift +++ b/ApplicationLibrary/Views/Abstract/ShareButton.swift @@ -35,22 +35,23 @@ public struct ProfileShareButton