From cf71ff242045cb9f4cfafa248df2851fb0152159 Mon Sep 17 00:00:00 2001 From: Ethan Bills Date: Fri, 20 Dec 2024 10:08:38 -0800 Subject: [PATCH] fix: clicking/interacting outside window not dismissing hover container closes #398 --- DockDoor/Localizable.xcstrings | 1564 +++++++++-------- .../WindowDismissalContainer.swift | 44 +- 2 files changed, 829 insertions(+), 779 deletions(-) diff --git a/DockDoor/Localizable.xcstrings b/DockDoor/Localizable.xcstrings index 44863f79..208c062f 100644 --- a/DockDoor/Localizable.xcstrings +++ b/DockDoor/Localizable.xcstrings @@ -93,13 +93,13 @@ "value" : "" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "" @@ -272,13 +272,13 @@ "value" : "• 독(Dock)에서의 향상된 시각 정보를 위해 허용합니다" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "• Allows for enhanced visual information in the dock" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "• Allows for enhanced visual information in the dock" @@ -451,13 +451,13 @@ "value" : "• 독(Dock)에 있는 항목과의 실시간 상호작용을 가능하게 합니다" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "• Enables real-time interaction with dock items" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "• Enables real-time interaction with dock items" @@ -630,13 +630,13 @@ "value" : "• 이미지와 창의 미리보기를 생성합니다" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "• To capture previews of images and windows" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "• To capture previews of images and windows" @@ -809,13 +809,13 @@ "value" : "• 독에 마우스를 올렸는지 감지합니다" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "• To detect when you hover over the dock" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "• To detect when you hover over the dock" @@ -987,13 +987,13 @@ "value" : "1/%lldx" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "1/%lldx" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "1/%lldx" @@ -1165,16 +1165,16 @@ "value" : "손쉬운 사용" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Toegankelijkheid" + "state" : "new", + "value" : "Accessibility" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Accessibility" + "state" : "translated", + "value" : "Toegankelijkheid" } }, "pl" : { @@ -1344,16 +1344,16 @@ "value" : "손쉬운 사용 권한" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Toegankelijkheidsmachtigingen" + "state" : "new", + "value" : "Accessibility Permissions" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Accessibility Permissions" + "state" : "translated", + "value" : "Toegankelijkheidsmachtigingen" } }, "pl" : { @@ -1523,16 +1523,16 @@ "value" : "손쉬운사용:" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Toegankelijkheid:" + "state" : "new", + "value" : "Accessibility:" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Accessibility:" + "state" : "translated", + "value" : "Toegankelijkheid:" } }, "pl" : { @@ -1701,13 +1701,13 @@ "value" : "프리뷰가 도크와 맞지 않으면 이것을 조정하세요" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Adjust this if the preview is misaligned with dock" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Adjust this if the preview is misaligned with dock" @@ -1881,16 +1881,16 @@ "value" : "항상" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Altijd" + "state" : "new", + "value" : "Always" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Always" + "state" : "translated", + "value" : "Altijd" } }, "pl" : { @@ -2060,16 +2060,16 @@ "value" : "항상 표시" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Altijd zichtbaar" + "state" : "new", + "value" : "Always visible" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Always visible" + "state" : "translated", + "value" : "Altijd zichtbaar" } }, "pl" : { @@ -2239,16 +2239,16 @@ "value" : "항상 보기; 불투명도 최대" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Altijd zichtbaar; volle doorzichtigheid" + "state" : "new", + "value" : "Always visible; Full opacity" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Always visible; Full opacity" + "state" : "translated", + "value" : "Altijd zichtbaar; volle doorzichtigheid" } }, "pl" : { @@ -2417,16 +2417,16 @@ "value" : "금액" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "aantal" + "state" : "new", + "value" : "amount" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "amount" + "state" : "translated", + "value" : "aantal" } }, "pl" : { @@ -2595,13 +2595,13 @@ "value" : "애니메이션 속도" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Animation speed" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Animation speed" @@ -2773,16 +2773,16 @@ "value" : "앱명 스타일" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "App Naam Stijl" + "state" : "new", + "value" : "App Name Style" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "App Name Style" + "state" : "translated", + "value" : "App Naam Stijl" } }, "pl" : { @@ -2952,16 +2952,16 @@ "value" : "모양" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Uiterlijk" + "state" : "new", + "value" : "Appearance" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Appearance" + "state" : "translated", + "value" : "Uiterlijk" } }, "pl" : { @@ -3130,16 +3130,16 @@ "value" : "모양 설정" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Uiterlijk Instellingen" + "state" : "new", + "value" : "Appearance settings" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Appearance settings" + "state" : "translated", + "value" : "Uiterlijk Instellingen" } }, "pl" : { @@ -3308,16 +3308,16 @@ "value" : "모든 설정을 기본값으로 초기화하시겠습니까?" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Weet je zeker dat je alle instellingen wil resetten naar de standaard waarden?" + "state" : "new", + "value" : "Are you sure you want to reset all settings to their default values?" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Are you sure you want to reset all settings to their default values?" + "state" : "translated", + "value" : "Weet je zeker dat je alle instellingen wil resetten naar de standaard waarden?" } }, "pl" : { @@ -3486,16 +3486,16 @@ "value" : "자동 업데이트" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Automatische Updates" + "state" : "new", + "value" : "Automatic Updates" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Automatic Updates" + "state" : "translated", + "value" : "Automatische Updates" } }, "pl" : { @@ -3665,16 +3665,16 @@ "value" : "자동으로 업데이트 확인" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Controleer automatisch voor updates" + "state" : "new", + "value" : "Automatically check for updates" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Automatically check for updates" + "state" : "translated", + "value" : "Controleer automatisch voor updates" } }, "pl" : { @@ -3843,13 +3843,13 @@ "value" : "블러 정도" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Blur amount" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Blur amount" @@ -4022,16 +4022,16 @@ "value" : "왼쪽 하단" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Linksonderaan" + "state" : "new", + "value" : "Bottom Left" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Bottom Left" + "state" : "translated", + "value" : "Linksonderaan" } }, "pl" : { @@ -4201,16 +4201,16 @@ "value" : "오른쪽 하단" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Rechtsonderaan" + "state" : "new", + "value" : "Bottom Right" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Bottom Right" + "state" : "translated", + "value" : "Rechtsonderaan" } }, "pl" : { @@ -4379,16 +4379,16 @@ "value" : "따듯한 커피 한 잔 감사합니다" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Koop hier een koffie voor me, bedankt!" + "state" : "new", + "value" : "Buy me a coffee here, thank you!" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Buy me a coffee here, thank you!" + "state" : "translated", + "value" : "Koop hier een koffie voor me, bedankt!" } }, "pl" : { @@ -4559,16 +4559,16 @@ "value" : "이것도 볼 수 있나요?" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Kan je dit zien?" + "state" : "new", + "value" : "Can you even see this?" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Can you even see this?" + "state" : "translated", + "value" : "Kan je dit zien?" } }, "pl" : { @@ -4737,16 +4737,16 @@ "value" : "취소" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Annuleer" + "state" : "new", + "value" : "Cancel" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Cancel" + "state" : "translated", + "value" : "Annuleer" } }, "pl" : { @@ -4822,6 +4822,12 @@ } } } + }, + "Cannot Add Color" : { + + }, + "Cannot Remove Color" : { + }, "Check for Updates" : { "localizations" : { @@ -4915,16 +4921,16 @@ "value" : "업데이트 확인" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Controleer op Updates" + "state" : "new", + "value" : "Check for Updates" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Check for Updates" + "state" : "translated", + "value" : "Controleer op Updates" } }, "pl" : { @@ -5093,13 +5099,13 @@ "value" : "Close" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Close" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Close" @@ -5272,16 +5278,16 @@ "value" : "색상" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Kleuren" + "state" : "new", + "value" : "Colors" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Colors" + "state" : "translated", + "value" : "Kleuren" } }, "pl" : { @@ -5450,15 +5456,15 @@ "value" : "커맨드키 (⌘)" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", + "state" : "new", "value" : "Command (⌘)" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", + "state" : "translated", "value" : "Command (⌘)" } }, @@ -5628,13 +5634,13 @@ "value" : "여기에서 번역에 기여하세요!" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Contribute translation here!" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Contribute translation here!" @@ -5806,15 +5812,15 @@ "value" : "컨트롤키 (⌃)" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", + "state" : "new", "value" : "Control (⌃)" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", + "state" : "translated", "value" : "Control (⌃)" } }, @@ -5984,16 +5990,16 @@ "value" : "현재 키 조합: %@" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Huidige Toetscombinatie: %@" + "state" : "new", + "value" : "Current Keybind: %@" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Current Keybind: %@" + "state" : "translated", + "value" : "Huidige Toetscombinatie: %@" } }, "pl" : { @@ -6162,16 +6168,16 @@ "value" : "현재 버전" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Huidige Versie" + "state" : "new", + "value" : "Current Version" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Current Version" + "state" : "translated", + "value" : "Huidige Versie" } }, "pl" : { @@ -6341,16 +6347,16 @@ "value" : "현재 버전: %@" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Huidige Versie: %@" + "state" : "new", + "value" : "Current Version: %@" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Current Version: %@" + "state" : "translated", + "value" : "Huidige Versie: %@" } }, "pl" : { @@ -6520,16 +6526,16 @@ "value" : "기본값" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Standaard" + "state" : "new", + "value" : "Default" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Default" + "state" : "translated", + "value" : "Standaard" } }, "pl" : { @@ -6700,16 +6706,16 @@ "value" : "기본값(중간 크기)" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Standaard (Medium Groot)" + "state" : "new", + "value" : "Default (Medium Large)" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Default (Medium Large)" + "state" : "translated", + "value" : "Standaard (Medium Groot)" } }, "pl" : { @@ -6879,13 +6885,13 @@ "value" : "Dock 미리보기 & 창 전환" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Dock Previews & Window Switcher" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Dock Previews & Window Switcher" @@ -7058,13 +7064,13 @@ "value" : "Dock 미리보기만" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Dock Previews only" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Dock Previews only" @@ -7236,13 +7242,13 @@ "value" : "DockDoor는 컴퓨터의 화면 및 오디오를 녹화하지 않으며, 창 미리보기 화면만 띄웁니다. 모든 정보는 저장 및 공유하지 않으며, 모든 작업은 본 기기에서 안전하게 이루어집니다." } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "DockDoor does not record your screen or audio. It only captures static window previews. No information is stored or shared; all processing occurs privately on your device." } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "DockDoor does not record your screen or audio. It only captures static window previews. No information is stored or shared; all processing occurs privately on your device." @@ -7414,16 +7420,16 @@ "value" : "DockDoor는 화면 녹화 권한이 필요합니다. macOS Sequoia를 사용하신다면, 새로운 시스템 보안 정책으로 인해 설치하신 모든 캡처 앱에서 이 창을 매주, 매달, 혹은 재부팅 후에 보시게 될 겁니다." } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Dackdoor heeft toestemming nodig om schermopname te maken. In macOS Sequoia, zie je deze pop-up elke week of maand wanneer het is heropgestart. Dit is een nieuwe systeem weide veiligheids-beleid voor alle schermopnemende apps." + "state" : "new", + "value" : "DockDoor needs screen recording access. In macOS Sequoia, you'll see this prompt every week or month and after reboots. This is a new system-wide security policy for all screen capture apps." } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "DockDoor needs screen recording access. In macOS Sequoia, you'll see this prompt every week or month and after reboots. This is a new system-wide security policy for all screen capture apps." + "state" : "translated", + "value" : "Dackdoor heeft toestemming nodig om schermopname te maken. In macOS Sequoia, zie je deze pop-up elke week of maand wanneer het is heropgestart. Dit is een nieuwe systeem weide veiligheids-beleid voor alle schermopnemende apps." } }, "pl" : { @@ -7592,16 +7598,16 @@ "value" : "색 편집" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Bewerk Kleur" + "state" : "new", + "value" : "Edit Color" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Edit Color" + "state" : "translated", + "value" : "Bewerk Kleur" } }, "pl" : { @@ -7770,13 +7776,13 @@ "value" : "요소 중첩" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Elements Overlap" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Elements Overlap" @@ -7950,13 +7956,13 @@ "value" : "임베디드" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Embedded" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Embedded" @@ -8128,13 +8134,13 @@ "value" : "자동으로 업데이트 확인하기" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Enable automatic checking for updates" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Enable automatic checking for updates" @@ -8307,13 +8313,13 @@ "value" : "호버 창 슬라이딩 애니메이션 활성화" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Enable Hover Window Sliding Animation" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Enable Hover Window Sliding Animation" @@ -8485,13 +8491,13 @@ "value" : "창 미리보기 슬라이딩 애니메이션 활성화" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Enable Preview Window Sliding Animation" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Enable Preview Window Sliding Animation" @@ -8663,16 +8669,16 @@ "value" : "윈도우 스위치 활성화" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Sta venster schakelaar toe" + "state" : "new", + "value" : "Enable Window Switcher" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Enable Window Switcher" + "state" : "translated", + "value" : "Sta venster schakelaar toe" } }, "pl" : { @@ -8841,16 +8847,16 @@ "value" : "활성화됨" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Aan" + "state" : "new", + "value" : "Enabled" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Enabled" + "state" : "translated", + "value" : "Aan" } }, "pl" : { @@ -9019,13 +9025,13 @@ "value" : "도크 경험을 향상하세요!" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Enhance your dock experience!" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Enhance your dock experience!" @@ -9197,16 +9203,16 @@ "value" : "이제 모든 준비가 끝났어요!" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Alles is nu ingesteld!" + "state" : "new", + "value" : "Everything is now set up!" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Everything is now set up!" + "state" : "translated", + "value" : "Alles is nu ingesteld!" } }, "pl" : { @@ -9377,16 +9383,16 @@ "value" : "매무 매우 작음" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Extra Extra Klein" + "state" : "new", + "value" : "Extra Extra Small" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Extra Extra Small" + "state" : "translated", + "value" : "Extra Extra Klein" } }, "pl" : { @@ -9557,16 +9563,16 @@ "value" : "매우 작음" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Extra Klein" + "state" : "new", + "value" : "Extra Small" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Extra Small" + "state" : "translated", + "value" : "Extra Klein" } }, "pl" : { @@ -9735,13 +9741,13 @@ "value" : "Force Quit" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Force Quit" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Force Quit" @@ -9913,16 +9919,16 @@ "value" : "버그가 있나요?" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Een bug gevonden?" + "state" : "new", + "value" : "Found a Bug?" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Found a Bug?" + "state" : "translated", + "value" : "Een bug gevonden?" } }, "pl" : { @@ -10092,16 +10098,16 @@ "value" : "일반" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Algemeen" + "state" : "new", + "value" : "General" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "General" + "state" : "translated", + "value" : "Algemeen" } }, "pl" : { @@ -10270,16 +10276,16 @@ "value" : "일반 설정" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Algemene Instellingen" + "state" : "new", + "value" : "General settings" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "General settings" + "state" : "translated", + "value" : "Algemene Instellingen" } }, "pl" : { @@ -10448,16 +10454,16 @@ "value" : "시작하기" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Begin" + "state" : "new", + "value" : "Get Started" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Get Started" + "state" : "translated", + "value" : "Begin" } }, "pl" : { @@ -10627,13 +10633,13 @@ "value" : "허용" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Granted" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Granted" @@ -10805,16 +10811,16 @@ "value" : "아이디어가 있나요?" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Heb je een idee?" + "state" : "new", + "value" : "Have an Idea?" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Have an Idea?" + "state" : "translated", + "value" : "Heb je een idee?" } }, "pl" : { @@ -10984,16 +10990,16 @@ "value" : "도움말" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Hulp" + "state" : "new", + "value" : "Help" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Help" + "state" : "translated", + "value" : "Hulp" } }, "pl" : { @@ -11162,16 +11168,16 @@ "value" : "Help and questions settings" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Instellingen voor hulp en vragen" + "state" : "new", + "value" : "Help and questions settings" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Help and questions settings" + "state" : "translated", + "value" : "Instellingen voor hulp en vragen" } }, "pl" : { @@ -11340,16 +11346,16 @@ "value" : "버그와 같은 이슈들을 제보하여 DockDoor를 개선해 주세요." } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Help ons DockDoor verbeteren door problemen die je ervaart te rapporteren." + "state" : "new", + "value" : "Help us improve DockDoor by reporting any issues you encounter." } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Help us improve DockDoor by reporting any issues you encounter." + "state" : "translated", + "value" : "Help ons DockDoor verbeteren door problemen die je ervaart te rapporteren." } }, "pl" : { @@ -11520,16 +11526,16 @@ "value" : "숨김" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Verborgen" + "state" : "new", + "value" : "Hidden" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Hidden" + "state" : "translated", + "value" : "Verborgen" } }, "pl" : { @@ -11698,13 +11704,13 @@ "value" : "하이라이트 그라데이션 색상" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Highlight Gradient Colors" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Highlight Gradient Colors" @@ -11877,13 +11883,13 @@ "value" : "호버 창 열기 지연" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Hover Window Open Delay" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Hover Window Open Delay" @@ -12056,13 +12062,13 @@ "value" : "호버 창 제목 스타일" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Hover Window Title Style" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Hover Window Title Style" @@ -12234,13 +12240,13 @@ "value" : "DockDoor를 유용하게 사용하고 계신다면, 저희 팀을 후원해 주세요!" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "If you find DockDoor useful, consider donating. Your support helps keep the project going!" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "If you find DockDoor useful, consider donating. Your support helps keep the project going!" @@ -12413,13 +12419,13 @@ "value" : "메뉴 막대의 아이콘에 접근하려면 앱을 실행하여 10초 간 노출시킬 수 있습니다." } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "If you need to access the menu bar icon, launch the app to reveal it for 10 seconds." } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "If you need to access the menu bar icon, launch the app to reveal it for 10 seconds." @@ -12591,16 +12597,16 @@ "value" : "하나의 창만 있는 앱 무시" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Negeer apps met één venster" + "state" : "new", + "value" : "Ignore Apps with One Window" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Ignore Apps with One Window" + "state" : "translated", + "value" : "Negeer apps met één venster" } }, "pl" : { @@ -12769,13 +12775,13 @@ "value" : "Include Hidden and Minimized Windows in the Window Switcher" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Include Hidden and Minimized Windows in the Window Switcher" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Include Hidden and Minimized Windows in the Window Switcher" @@ -12947,13 +12953,13 @@ "value" : "초기화 키" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Initialization Key" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Initialization Key" @@ -13125,13 +13131,13 @@ "value" : "Keep previews visible during lateral movement" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Keep previews visible during lateral movement" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Keep previews visible during lateral movement" @@ -13305,16 +13311,16 @@ "value" : "크게" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Groot" + "state" : "new", + "value" : "Large" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Large" + "state" : "translated", + "value" : "Groot" } }, "pl" : { @@ -13483,16 +13489,16 @@ "value" : "마지막으로 확인함: %@" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Laatst Gecontroleerd: %@" + "state" : "new", + "value" : "Last checked: %@" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Last checked: %@" + "state" : "translated", + "value" : "Laatst Gecontroleerd: %@" } }, "pl" : { @@ -13661,16 +13667,16 @@ "value" : "로그인할 때 DockDoor 실행" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Start DockDoor bij het inloggen" + "state" : "new", + "value" : "Launch DockDoor at login" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Launch DockDoor at login" + "state" : "translated", + "value" : "Start DockDoor bij het inloggen" } }, "pl" : { @@ -13839,13 +13845,13 @@ "value" : "준비를 시작해봐요" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Let's set things up" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Let's set things up" @@ -13924,6 +13930,9 @@ } } } + }, + "Maximum number of colors (%lld) reached." : { + }, "Medium" : { "comment" : "Window size option", @@ -14019,15 +14028,15 @@ "value" : "중간" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", + "state" : "new", "value" : "Medium" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", + "state" : "translated", "value" : "Medium" } }, @@ -14198,13 +14207,13 @@ "value" : "메뉴바 아이콘 숨김" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Menu Bar Icon Hidden" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Menu Bar Icon Hidden" @@ -14376,13 +14385,13 @@ "value" : "Minimize" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Minimize" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Minimize" @@ -14461,6 +14470,9 @@ } } } + }, + "Minimum number of colors reached." : { + }, "Never visible" : { "comment" : "Traffic light buttons visibility option", @@ -14555,16 +14567,16 @@ "value" : "항상 보이지 않음" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Nooit zichtbaar" + "state" : "new", + "value" : "Never visible" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Never visible" + "state" : "translated", + "value" : "Nooit zichtbaar" } }, "pl" : { @@ -14733,16 +14745,16 @@ "value" : "다음" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Volgende pagina" + "state" : "new", + "value" : "Next page" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Next page" + "state" : "translated", + "value" : "Volgende pagina" } }, "pl" : { @@ -14912,16 +14924,16 @@ "value" : "동작 없음" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Geen Actie" + "state" : "new", + "value" : "No action" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "No action" + "state" : "translated", + "value" : "Geen Actie" } }, "pl" : { @@ -15092,13 +15104,13 @@ "value" : "호버 동작 없음" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "No hover action" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "No hover action" @@ -15270,16 +15282,16 @@ "value" : "No recent checks" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Geen recente checks" + "state" : "new", + "value" : "No recent checks" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "No recent checks" + "state" : "translated", + "value" : "Geen recente checks" } }, "pl" : { @@ -15449,13 +15461,13 @@ "value" : "허용되지 않음" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Not granted" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Not granted" @@ -15627,16 +15639,16 @@ "value" : "확인" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Ok" + "state" : "new", + "value" : "OK" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "OK" + "state" : "translated", + "value" : "Ok" } }, "pl" : { @@ -15806,13 +15818,13 @@ "value" : "창을 가리키면; 버튼이 가리킬 때까지 어둡게 표시됨" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "On window hover; Dimmed until button hover" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "On window hover; Dimmed until button hover" @@ -15985,13 +15997,13 @@ "value" : "창에 마우스를 올렸을 때; 불투명도 최대" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "On window hover; Full opacity" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "On window hover; Full opacity" @@ -16163,13 +16175,13 @@ "value" : "Only takes effect when dock auto-hide is enabled" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Only takes effect when dock auto-hide is enabled" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Only takes effect when dock auto-hide is enabled" @@ -16342,16 +16354,16 @@ "value" : "손쉬운 사용 설정 열기" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Open Toegankelijkheidsinstellingen" + "state" : "new", + "value" : "Open Accessibility Settings" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Open Accessibility Settings" + "state" : "translated", + "value" : "Open Toegankelijkheidsinstellingen" } }, "pl" : { @@ -16521,16 +16533,16 @@ "value" : "화면 기록 설정 열기" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Open Schermopname Instellingen" + "state" : "new", + "value" : "Open Screen Recording Settings" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Open Screen Recording Settings" + "state" : "translated", + "value" : "Open Schermopname Instellingen" } }, "pl" : { @@ -16699,16 +16711,16 @@ "value" : "설정 열기" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Open Instellingen" + "state" : "new", + "value" : "Open Settings" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Open Settings" + "state" : "translated", + "value" : "Open Instellingen" } }, "pl" : { @@ -16877,15 +16889,15 @@ "value" : "옵션 키 (⌥)" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", + "state" : "new", "value" : "Option (⌥)" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", + "state" : "translated", "value" : "Option (⌥)" } }, @@ -17056,16 +17068,16 @@ "value" : "권한 오류" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Machtigingsfout" + "state" : "new", + "value" : "Permission error" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Permission error" + "state" : "translated", + "value" : "Machtigingsfout" } }, "pl" : { @@ -17235,16 +17247,16 @@ "value" : "권한" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Machtigingen" + "state" : "new", + "value" : "Permissions" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Permissions" + "state" : "translated", + "value" : "Machtigingen" } }, "pl" : { @@ -17413,16 +17425,16 @@ "value" : "권한 설정" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Machtigingsinstellingen" + "state" : "new", + "value" : "Permissions settings" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Permissions settings" + "state" : "translated", + "value" : "Machtigingsinstellingen" } }, "pl" : { @@ -17592,16 +17604,16 @@ "value" : "변경사항을 적용하기 위해 앱을 종료하세요! :)" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Sluit de app om de wijzigingen toe te passen! :)" + "state" : "new", + "value" : "Please Quit the App to Apply Changes! :)" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Please Quit the App to Apply Changes! :)" + "state" : "translated", + "value" : "Sluit de app om de wijzigingen toe te passen! :)" } }, "pl" : { @@ -17771,16 +17783,16 @@ "value" : "변경사항을 적용하기 위해 앱을 껐다가 켜주세요! :)" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Start de app opnieuw op om de wijzigingen toe te passen! :)" + "state" : "new", + "value" : "Please Restart the App to Apply Changes! :)" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Please Restart the App to Apply Changes! :)" + "state" : "translated", + "value" : "Start de app opnieuw op om de wijzigingen toe te passen! :)" } }, "pl" : { @@ -17949,16 +17961,16 @@ "value" : "변경사항을 적용하기 위해 앱을 껐다 켜주세요. OK를 누르면 앱이 종료됩니다." } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Herstart de app om je veranderingen op te slaan. Druk OK om te app af te sluiten." + "state" : "new", + "value" : "Please restart the application to apply your changes. Click OK to quit the app." } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Please restart the application to apply your changes. Click OK to quit the app." + "state" : "translated", + "value" : "Herstart de app om je veranderingen op te slaan. Druk OK om te app af te sluiten." } }, "pl" : { @@ -18128,13 +18140,13 @@ "value" : "팝오버" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Popover" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Popover" @@ -18307,13 +18319,13 @@ "value" : "초기화 키를 누른 상태에서 아무 키 조합이나 눌러 키 바인딩을 설정하세요." } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Press any key combination after holding the initialization key to set the keybind." } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Press any key combination after holding the initialization key to set the keybind." @@ -18485,13 +18497,13 @@ "value" : "아무 키나 눌러서 단축키를 설정하세요" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Press any key to set the keybind." } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Press any key to set the keybind." @@ -18663,16 +18675,16 @@ "value" : "아무 키나 누르세요" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Druk op een toets..." + "state" : "new", + "value" : "Press any key..." } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Press any key..." + "state" : "translated", + "value" : "Druk op een toets..." } }, "pl" : { @@ -18842,16 +18854,16 @@ "value" : "키 조합 입력..." } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Druk de toetscombinatie in..." + "state" : "new", + "value" : "Press the key combination..." } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Press the key combination..." + "state" : "translated", + "value" : "Druk de toetscombinatie in..." } }, "pl" : { @@ -19020,13 +19032,13 @@ "value" : "Prevent dock from hiding during previews" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Prevent dock from hiding during previews" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Prevent dock from hiding during previews" @@ -19198,13 +19210,13 @@ "value" : "Prevents previews from disappearing when moving sideways to adjacent windows" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Prevents previews from disappearing when moving sideways to adjacent windows" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Prevents previews from disappearing when moving sideways to adjacent windows" @@ -19376,13 +19388,13 @@ "value" : "호버 동작 미리보기" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Preview Hover Action" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Preview Hover Action" @@ -19554,13 +19566,13 @@ "value" : "호버 딜레이 미리보기" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Preview Hover Delay" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Preview Hover Delay" @@ -19732,13 +19744,13 @@ "value" : "Preview Window Fade Out Duration" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Preview Window Fade Out Duration" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Preview Window Fade Out Duration" @@ -19910,13 +19922,13 @@ "value" : "Preview Window Open Delay" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Preview Window Open Delay" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Preview Window Open Delay" @@ -20088,13 +20100,13 @@ "value" : "Preview windows are sized to 1/%lld of your screen dimensions" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Preview windows are sized to 1/%lld of your screen dimensions" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Preview windows are sized to 1/%lld of your screen dimensions" @@ -20266,13 +20278,13 @@ "value" : "Quit" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Quit" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Quit" @@ -20445,16 +20457,16 @@ "value" : "앱 종료" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Sluit App" + "state" : "new", + "value" : "Quit App" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Quit App" + "state" : "translated", + "value" : "Sluit App" } }, "pl" : { @@ -20623,16 +20635,16 @@ "value" : "DockDoor 종료" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Sluit DockDoor" + "state" : "new", + "value" : "Quit DockDoor" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Quit DockDoor" + "state" : "translated", + "value" : "Sluit DockDoor" } }, "pl" : { @@ -20801,13 +20813,13 @@ "value" : "제거" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Remove" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Remove" @@ -20979,13 +20991,13 @@ "value" : "버그 제보하기" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Report a Bug" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Report a Bug" @@ -21157,13 +21169,13 @@ "value" : "Request a Feature" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Request a Feature" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Request a Feature" @@ -21335,13 +21347,13 @@ "value" : "Required for capturing window previews of other apps" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Required for capturing window previews of other apps" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Required for capturing window previews of other apps" @@ -21513,13 +21525,13 @@ "value" : "Required for dock hover detection and window switcher hotkeys" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Required for dock hover detection and window switcher hotkeys" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Required for dock hover detection and window switcher hotkeys" @@ -21692,15 +21704,15 @@ "value" : "초기화" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", + "state" : "new", "value" : "Reset" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", + "state" : "translated", "value" : "Reset" } }, @@ -21871,16 +21883,16 @@ "value" : "모든 설정 초기화" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Reset Alle Instellingen" + "state" : "new", + "value" : "Reset All Settings" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Reset All Settings" + "state" : "translated", + "value" : "Reset Alle Instellingen" } }, "pl" : { @@ -22049,16 +22061,16 @@ "value" : "모든 설정을 기본값으로 초기화" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Reset Alle Instellingen naar Standaard" + "state" : "new", + "value" : "Reset All Settings to Defaults" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Reset All Settings to Defaults" + "state" : "translated", + "value" : "Reset Alle Instellingen naar Standaard" } }, "pl" : { @@ -22227,16 +22239,16 @@ "value" : "기본 설정으로 초기화" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Reset naar Standaard" + "state" : "new", + "value" : "Reset to Defaults" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Reset to Defaults" + "state" : "translated", + "value" : "Reset naar Standaard" } }, "pl" : { @@ -22405,13 +22417,13 @@ "value" : "앱 다시 시작하기" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Restart app" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Restart app" @@ -22584,16 +22596,16 @@ "value" : "앱 다시 시작하기" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Herstart app" + "state" : "new", + "value" : "Restart App" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Restart App" + "state" : "translated", + "value" : "Herstart app" } }, "pl" : { @@ -22762,16 +22774,16 @@ "value" : "재시작 필요합니다" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Herstart nodig" + "state" : "new", + "value" : "Restart required" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Restart required" + "state" : "translated", + "value" : "Herstart nodig" } }, "pl" : { @@ -22940,13 +22952,13 @@ "value" : "색을 우클릭하여 삭제하세요." } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Right click a color to remove it." } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Right click a color to remove it." @@ -23119,16 +23131,16 @@ "value" : "화면 기록:" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Scherm Vastleggen:" + "state" : "new", + "value" : "Screen Capturing:" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Screen Capturing:" + "state" : "translated", + "value" : "Scherm Vastleggen:" } }, "pl" : { @@ -23297,13 +23309,13 @@ "value" : "화면 녹화" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Screen recording" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Screen recording" @@ -23476,16 +23488,16 @@ "value" : "화면 기록 권한" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Schermopname Machtigingen" + "state" : "new", + "value" : "Screen Recording Permissions" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Screen Recording Permissions" + "state" : "translated", + "value" : "Schermopname Machtigingen" } }, "pl" : { @@ -23654,16 +23666,16 @@ "value" : "초" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "seconden" + "state" : "new", + "value" : "seconds" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "seconds" + "state" : "translated", + "value" : "seconden" } }, "pl" : { @@ -23833,16 +23845,16 @@ "value" : "See a large preview of the window" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Zie een grote voorvertoning van het scherm" + "state" : "new", + "value" : "See a large preview of the window" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "See a large preview of the window" + "state" : "translated", + "value" : "Zie een grote voorvertoning van het scherm" } }, "pl" : { @@ -24013,16 +24025,16 @@ "value" : "See a preview of the window" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Zie een voorvertoning van het scherm" + "state" : "new", + "value" : "See a preview of the window" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "See a preview of the window" + "state" : "translated", + "value" : "Zie een voorvertoning van het scherm" } }, "pl" : { @@ -24191,16 +24203,16 @@ "value" : "더 보기..." } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Zie meer..." + "state" : "new", + "value" : "See more..." } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "See more..." + "state" : "translated", + "value" : "Zie meer..." } }, "pl" : { @@ -24369,13 +24381,13 @@ "value" : "초기화 키와 키 바인딩 설정" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Set Initialization Key and Keybind" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Set Initialization Key and Keybind" @@ -24548,13 +24560,13 @@ "value" : "Shadowed" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Shadowed" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Shadowed" @@ -24726,13 +24738,13 @@ "value" : "Show App Name in Dock Previews" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Show App Name in Dock Previews" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Show App Name in Dock Previews" @@ -24904,16 +24916,16 @@ "value" : "메뉴 막대에 아이콘 표시" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Laat Menu Bar Icon Zien" + "state" : "new", + "value" : "Show Menu Bar Icon" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Show Menu Bar Icon" + "state" : "translated", + "value" : "Laat Menu Bar Icon Zien" } }, "pl" : { @@ -25082,16 +25094,16 @@ "value" : "Show Window Title in" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Laat de Schermnaam Zien in" + "state" : "new", + "value" : "Show Window Title in" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Show Window Title in" + "state" : "translated", + "value" : "Laat de Schermnaam Zien in" } }, "pl" : { @@ -25260,16 +25272,16 @@ "value" : "Show Window Title in Previews" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Laat de Schermnaam Zien in Voorvertoning" + "state" : "new", + "value" : "Show Window Title in Previews" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Show Window Title in Previews" + "state" : "translated", + "value" : "Laat de Schermnaam Zien in Voorvertoning" } }, "pl" : { @@ -25439,16 +25451,16 @@ "value" : "창 제목 표시" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Laat de Schermnaam Zien" + "state" : "new", + "value" : "Show Window Titles" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Show Window Titles" + "state" : "translated", + "value" : "Laat de Schermnaam Zien" } }, "pl" : { @@ -25618,13 +25630,13 @@ "value" : "미리보기에서 창 제목 표시" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Show Window Titles on Previews" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Show Window Titles on Previews" @@ -25798,16 +25810,16 @@ "value" : "Simulate a click" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Simuleer een klik" + "state" : "new", + "value" : "Simulate a click" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Simulate a click" + "state" : "translated", + "value" : "Simuleer een klik" } }, "pl" : { @@ -25977,16 +25989,16 @@ "value" : "Simulate a click (open the window)" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Simuleer een klik (open het scherm)" + "state" : "new", + "value" : "Simulate a click (open the window)" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Simulate a click (open the window)" + "state" : "translated", + "value" : "Simuleer een klik (open het scherm)" } }, "pl" : { @@ -26157,16 +26169,16 @@ "value" : "작게" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Klein" + "state" : "new", + "value" : "Small" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Small" + "state" : "translated", + "value" : "Klein" } }, "pl" : { @@ -26335,13 +26347,13 @@ "value" : "Sort Window Previews by Date" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Sort Window Previews by Date" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Sort Window Previews by Date" @@ -26513,13 +26525,13 @@ "value" : "Start recording keybind" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Start recording keybind" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Start recording keybind" @@ -26692,13 +26704,13 @@ "value" : "키 입력 기록 시작" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Start Recording Keybind" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Start Recording Keybind" @@ -26872,13 +26884,13 @@ "value" : "아원자" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Subatomic" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Subatomic" @@ -27050,13 +27062,13 @@ "value" : "Suggest new features to make DockDoor even better." } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Suggest new features to make DockDoor even better." } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Suggest new features to make DockDoor even better." @@ -27228,13 +27240,13 @@ "value" : "Support DockDoor" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Support DockDoor" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Support DockDoor" @@ -27406,13 +27418,13 @@ "value" : "The changes to permissions will take effect after restarting." } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "The changes to permissions will take effect after restarting." } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "The changes to permissions will take effect after restarting." @@ -27584,13 +27596,13 @@ "value" : "The selected positions for Traffic Light Buttons and Window Title will overlap." } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "The selected positions for Traffic Light Buttons and Window Title will overlap." } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "The selected positions for Traffic Light Buttons and Window Title will overlap." @@ -27762,13 +27774,13 @@ "value" : "Toggle" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Toggle" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Toggle" @@ -27940,13 +27952,13 @@ "value" : "Toggle Full Screen" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Toggle Full Screen" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Toggle Full Screen" @@ -28119,16 +28131,16 @@ "value" : "왼쪽 상단" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Linksboven" + "state" : "new", + "value" : "Top Left" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Top Left" + "state" : "translated", + "value" : "Linksboven" } }, "pl" : { @@ -28298,16 +28310,16 @@ "value" : "오른쪽 상단" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Rechtsboven" + "state" : "new", + "value" : "Top Right" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Top Right" + "state" : "translated", + "value" : "Rechtsboven" } }, "pl" : { @@ -28476,13 +28488,13 @@ "value" : "Traffic Light Buttons Position" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Traffic Light Buttons Position" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Traffic Light Buttons Position" @@ -28654,13 +28666,13 @@ "value" : "신호등 버튼 가시성" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Traffic Light Buttons Visibility" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Traffic Light Buttons Visibility" @@ -28832,13 +28844,13 @@ "value" : "Un-minimize" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Un-minimize" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Un-minimize" @@ -29010,16 +29022,16 @@ "value" : "최신 버전입니다" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Actueel" + "state" : "new", + "value" : "Up to date" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Up to date" + "state" : "translated", + "value" : "Actueel" } }, "pl" : { @@ -29188,13 +29200,13 @@ "value" : "최신 버전입니다" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Up to Date" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Up to Date" @@ -29366,16 +29378,16 @@ "value" : "업데이트 사용 가능" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Update beschikbaar" + "state" : "new", + "value" : "Update available" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Update available" + "state" : "translated", + "value" : "Update beschikbaar" } }, "pl" : { @@ -29544,16 +29556,16 @@ "value" : "업데이트 설정" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Update instellingen" + "state" : "new", + "value" : "Update settings" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Update settings" + "state" : "translated", + "value" : "Update instellingen" } }, "pl" : { @@ -29723,15 +29735,15 @@ "value" : "업데이트" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", + "state" : "new", "value" : "Updates" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", + "state" : "translated", "value" : "Updates" } }, @@ -29902,13 +29914,13 @@ "value" : "기본 MacOS 키 바인드 ⌘ + ⇥ 사용" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Use default MacOS keybind ⌘ + ⇥" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Use default MacOS keybind ⌘ + ⇥" @@ -30080,13 +30092,13 @@ "value" : "균일한 이미지 미리보기 반경 사용" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Use Uniform Image Preview Radius" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Use Uniform Image Preview Radius" @@ -30258,16 +30270,16 @@ "value" : "버전 %@" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Versie %@" + "state" : "new", + "value" : "Version %@" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Version %@" + "state" : "translated", + "value" : "Versie %@" } }, "pl" : { @@ -30436,13 +30448,13 @@ "value" : "Want to see for yourself? Review our source code" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Want to see for yourself? Review our source code" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Want to see for yourself? Review our source code" @@ -30614,13 +30626,13 @@ "value" : "Want to see the app in your language?" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Want to see the app in your language?" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Want to see the app in your language?" @@ -30792,13 +30804,13 @@ "value" : "개발 후원하기" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Want to support development?" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Want to support development?" @@ -30970,13 +30982,13 @@ "value" : "DockDoor에 오신 것을 환영합니다!" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Welcome to DockDoor!" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Welcome to DockDoor!" @@ -31150,13 +31162,13 @@ "value" : "이게 뭐야? 개미를 위한 창문인가?" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "What is this? A window for ANTS?" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "What is this? A window for ANTS?" @@ -31329,13 +31341,13 @@ "value" : "When hovering over the preview" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "When hovering over the preview" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "When hovering over the preview" @@ -31509,13 +31521,13 @@ "value" : "도크 타일 미리 보기를 표시할 때" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "When Showing Dock Tile Previews" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "When Showing Dock Tile Previews" @@ -31689,13 +31701,13 @@ "value" : "윈도우 스위쳐를 사용하는 경우" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "When Using Window Switcher" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "When Using Window Switcher" @@ -31867,13 +31879,13 @@ "value" : "When you click the button below, DockDoor will restart and move to the menu bar to run in the background." } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "When you click the button below, DockDoor will restart and move to the menu bar to run in the background." } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "When you click the button below, DockDoor will restart and move to the menu bar to run in the background." @@ -32046,13 +32058,13 @@ "value" : "권한이 필요한 이유" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Why we need permissions" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Why we need permissions" @@ -32224,16 +32236,16 @@ "value" : "윈도우 버퍼" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Scherm Buffer" + "state" : "new", + "value" : "Window Buffer" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Window Buffer" + "state" : "translated", + "value" : "Scherm Buffer" } }, "pl" : { @@ -32403,13 +32415,13 @@ "value" : "윈도우 캐시 수명" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Window Cache Lifespan" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Window Cache Lifespan" @@ -32581,13 +32593,13 @@ "value" : "Window Image Cache Lifespan" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Window Image Cache Lifespan" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Window Image Cache Lifespan" @@ -32759,13 +32771,13 @@ "value" : "Window Image Resolution Scale (higher means lower resolution)" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Window Image Resolution Scale (higher means lower resolution)" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Window Image Resolution Scale (higher means lower resolution)" @@ -32937,13 +32949,13 @@ "value" : "Window Preview Size" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Window Preview Size" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Window Preview Size" @@ -33116,16 +33128,16 @@ "value" : "창 크기" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Scherm Formaat" + "state" : "new", + "value" : "Window Size" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Window Size" + "state" : "translated", + "value" : "Scherm Formaat" } }, "pl" : { @@ -33295,16 +33307,16 @@ "value" : "윈도우 스위쳐" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Scherm Wisseler" + "state" : "new", + "value" : "Window Switcher" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Window Switcher" + "state" : "translated", + "value" : "Scherm Wisseler" } }, "pl" : { @@ -33474,16 +33486,16 @@ "value" : "Window Switcher only" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Alleen Scherm Wisseler" + "state" : "new", + "value" : "Window Switcher only" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Window Switcher only" + "state" : "translated", + "value" : "Alleen Scherm Wisseler" } }, "pl" : { @@ -33652,16 +33664,16 @@ "value" : "창 제목 위치" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Schermnaam Positie" + "state" : "new", + "value" : "Window Title Position" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Window Title Position" + "state" : "translated", + "value" : "Schermnaam Positie" } }, "pl" : { @@ -33830,16 +33842,16 @@ "value" : "Window Title Visibility" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Schermnaam Zichtbaarheid" + "state" : "new", + "value" : "Window Title Visibility" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Window Title Visibility" + "state" : "translated", + "value" : "Schermnaam Zichtbaarheid" } }, "pl" : { @@ -34008,16 +34020,16 @@ "value" : "창 전환 설정" } }, - "nl" : { + "nb" : { "stringUnit" : { - "state" : "translated", - "value" : "Scherm wisselings instellingen" + "state" : "new", + "value" : "Windows switching settings" } }, - "no" : { + "nl" : { "stringUnit" : { - "state" : "new", - "value" : "Windows switching settings" + "state" : "translated", + "value" : "Scherm wisselings instellingen" } }, "pl" : { @@ -34187,13 +34199,13 @@ "value" : "DockDoor의 작동을 위해 손쉬운 사용 권한을 허용해야 합니다." } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "You need to give DockDoor access to the accessibility API in order for it to function." } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "You need to give DockDoor access to the accessibility API in order for it to function." @@ -34365,13 +34377,13 @@ "value" : "앱 버전: %@" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Your app is on version %@" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Your app is on version %@" @@ -34543,13 +34555,13 @@ "value" : "Z" } }, - "nl" : { + "nb" : { "stringUnit" : { "state" : "new", "value" : "Z" } }, - "no" : { + "nl" : { "stringUnit" : { "state" : "new", "value" : "Z" diff --git a/DockDoor/Views/Hover Window/WindowDismissalContainer.swift b/DockDoor/Views/Hover Window/WindowDismissalContainer.swift index 6553a3f3..cfdec250 100644 --- a/DockDoor/Views/Hover Window/WindowDismissalContainer.swift +++ b/DockDoor/Views/Hover Window/WindowDismissalContainer.swift @@ -6,6 +6,7 @@ struct WindowDismissalContainer: NSViewRepresentable { let mouseLocation: CGPoint let bestGuessMonitor: NSScreen let dockPosition: DockPosition + func makeNSView(context: Context) -> MouseTrackingNSView { let view = MouseTrackingNSView(appName: appName, mouseLocation: mouseLocation, bestGuessMonitor: bestGuessMonitor, dockPosition: dockPosition) @@ -26,8 +27,11 @@ class MouseTrackingNSView: NSView { private var fadeOutTimer: Timer? private let fadeOutDuration: TimeInterval private var trackingTimer: Timer? + private var globalMouseMonitor: Any? + private var inactivityTimer: Timer? private let baseDistanceThreshold: CGFloat = 600 + private let inactivityTimeout: TimeInterval = 10.0 init(appName: String, mouseLocation: CGPoint, bestGuessMonitor: NSScreen, dockPosition: DockPosition, frame frameRect: NSRect = .zero) { self.appName = appName @@ -38,6 +42,7 @@ class MouseTrackingNSView: NSView { super.init(frame: frameRect) setupTrackingArea() setupMouseMonitors() + setupGlobalMouseMonitor() } @available(*, unavailable) @@ -51,6 +56,25 @@ class MouseTrackingNSView: NSView { addTrackingArea(trackingArea) } + private func setupGlobalMouseMonitor() { + // Monitor for mouse down events globally + globalMouseMonitor = NSEvent.addGlobalMonitorForEvents(matching: [.leftMouseDown, .rightMouseDown, .otherMouseDown]) { [weak self] event in + guard let self, + let window else { return } + + // Convert the click location to window coordinates + let clickLocation = event.locationInWindow + let windowFrame = window.frame + + // Check if the click is outside our window + if !windowFrame.contains(clickLocation) { + DispatchQueue.main.async { + self.startFadeOut() + } + } + } + } + private func setupMouseMonitors() { // The trackingTimer is used to track any lingering cases where the user does not interact with the window at all. // In such cases, we hide the window if it goes a decent distance from the initial location of the dock icon. @@ -72,16 +96,29 @@ class MouseTrackingNSView: NSView { } deinit { - clearTimer() + clearTimers() + if let monitor = globalMouseMonitor { + NSEvent.removeMonitor(monitor) + } } - private func clearTimer() { + private func clearTimers() { trackingTimer?.invalidate() + inactivityTimer?.invalidate() + inactivityTimer = nil + } + + private func resetInactivityTimer() { + inactivityTimer?.invalidate() + inactivityTimer = Timer.scheduledTimer(withTimeInterval: inactivityTimeout, repeats: false) { [weak self] _ in + self?.startFadeOut() + } } func resetOpacity() { cancelFadeOut() setWindowOpacity(to: 1.0, duration: 0.0) + resetInactivityTimer() } override func mouseExited(with event: NSEvent) { @@ -91,8 +128,9 @@ class MouseTrackingNSView: NSView { override func mouseEntered(with event: NSEvent) { cancelFadeOut() setWindowOpacity(to: 1.0, duration: 0.2) + resetInactivityTimer() - clearTimer() + clearTimers() SharedPreviewWindowCoordinator.shared.cancelDebounceWorkItem() }