Nori
Zbudowałem aplikacje historii schowka dla macOS i Windows. Tekst, obrazy i pliki mają własne podglądy i działania, a podpowiedzi pokazują, jak klawisze modyfikujące i uprawnienia wpływają na obsługę.
Projekt
Aplikacja pokazuje tekst, linki, kod, kolory, obrazy i pliki na kartach dopasowanych do ich typu. Klawiatura wystarcza, aby otworzyć historię, wyszukać element i wkleić go do ostatnio używanej aplikacji.
Wersja macOS korzysta ze SwiftUI, AppKit i SwiftData, a wersja Windows jest osobną implementacją w C# i WPF. Wspólne są zasady klasyfikacji, prywatności i wyszukiwania oraz projekt interfejsu.
Jak to działa
Rozpoznanie skopiowanej treści
Aplikacja odbiera skopiowaną treść, rozpoznaje jej typ, np. tekst lub obraz, i sprawdza znaczniki zakazu zapisu oraz oznaki danych poufnych.
Wybór miejsca przechowywania
Zwykłe kopie trafiają do lokalnej historii; wykryte dane poufne są maskowane i pozostają tylko w pamięci, a elementy z zakazem zapisu są pomijane.
Wybór karty i użycie treści
Karta pokazuje treść w formie dopasowanej do jej typu; można ją wybrać i wkleić do wcześniej aktywnej aplikacji albo skopiować.
Przed zapisem zawartość schowka trafia do migawki, którą klasyfikuje czysta funkcja stosująca reguły prywatności. Pierwszeństwo mają znaczniki zakazujące zapisu, a treści rozpoznane jako poufne są maskowane i przechowywane wyłącznie w pamięci.
Obsługa klawiszy i podpowiedzi na ekranie korzystają z tej samej funkcji decyzyjnej. W macOS panel pozostawia aplikację źródłową aktywną; w Windows zapamiętuje jej okno i przywraca mu fokus przed wklejeniem.
Co wynika z dokumentacji
Testy klasyfikacji obejmują kolejność elementów i kopiowanie wielu plików. Podpowiedzi i działania wynikają z tych samych reguł, dzięki czemu interfejs pokazuje wpływ klawiszy modyfikujących i uprawnień.
Dane demonstracyjne i narzędzia do zrzutów ekranu umożliwiają kontrolę interfejsu bez dotykania rzeczywistej historii. Wersja Windows zapisuje stany ekranu także w CI.
- Odstęp sprawdzania zmian w macOS
- 200 ms
- Przechowywanie wykrytych danych poufnych
- 10 min w pamięci
Zakres
W macOS zwykła historia jest zapisywana lokalnie bez szyfrowania. Automatyczne wklejanie wymaga uprawnienia Dostępność; bez niego działanie zmienia się na kopiowanie.
