diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 63e1fb1c5..9f578aaa4 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1 +1,2 @@ github: lwouis +patreon: lwouis diff --git a/alt-tab-macos.xcodeproj/project.pbxproj b/alt-tab-macos.xcodeproj/project.pbxproj index 7ac19699f..4047231af 100644 --- a/alt-tab-macos.xcodeproj/project.pbxproj +++ b/alt-tab-macos.xcodeproj/project.pbxproj @@ -41,6 +41,7 @@ BF0C8603F7BA6D1ED7B9E624 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = BF0C8DC4F163F11248C637CE /* Localizable.strings */; }; BF0C8658CC748011E57691B7 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = BF0C84F4B25A7C26A88ADE92 /* Localizable.strings */; }; BF0C865E3C3F3B353A7A7CBC /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = BF0C86FFF1C801761B7CE363 /* Localizable.strings */; }; + BF0C86BA26EFA59DEE24C70B /* Support.md in Sources */ = {isa = PBXBuildFile; fileRef = BF0C815B4782DEEEDB2C76C5 /* Support.md */; }; BF0C87732A6E660899D13BFD /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = BF0C886B1D6E707E9E6BE46C /* InfoPlist.strings */; }; BF0C884D88B74F05B8BBF956 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = BF0C88A25E1ED37E5F80AC91 /* Localizable.strings */; }; BF0C8879F979414A87AB2958 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = BF0C89348E07FC05870FEE62 /* InfoPlist.strings */; }; @@ -185,6 +186,7 @@ BF0C80A05C11C8ADC366EC4A /* lb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = lb; path = InfoPlist.strings; sourceTree = ""; }; BF0C8113492C0FFCB4454BC9 /* sl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sl; path = Localizable.strings; sourceTree = ""; }; BF0C8118F91A00A04AD4DE26 /* bg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = bg; path = InfoPlist.strings; sourceTree = ""; }; + BF0C815B4782DEEEDB2C76C5 /* Support.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = Support.md; sourceTree = ""; }; BF0C816D6B12CC13F741E61F /* hi */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = hi; path = Localizable.strings; sourceTree = ""; }; BF0C816F38751995E4F49BB0 /* he */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = he; path = InfoPlist.strings; sourceTree = ""; }; BF0C817E063D1405392D6C5B /* he */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = he; path = Localizable.strings; sourceTree = ""; }; @@ -1358,6 +1360,7 @@ D04BA765138B5E1C512245BE /* Thanks.md */, D04BA177B11330ED7E08E6C2 /* _includes */, D04BADB5AA570748C717D31A /* Changelog-bare.md */, + BF0C815B4782DEEEDB2C76C5 /* Support.md */, ); path = docs; sourceTree = ""; @@ -1724,6 +1727,7 @@ BF0C898511686611E4D7D81E /* Button.swift in Sources */, BF0C8E16F38203AEC71E062B /* TableView.swift in Sources */, BF0C832C5BF4C8E9C95F7767 /* MissionControl.swift in Sources */, + BF0C86BA26EFA59DEE24C70B /* Support.md in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/appcast.xml b/appcast.xml index 67bb6a804..fd4626515 100644 --- a/appcast.xml +++ b/appcast.xml @@ -4,6 +4,20 @@ alt-tab-macos en + + Version 6.65.0 + Mon, 29 Jan 2024 17:14:02 +0000 + 10.12 + https://alt-tab-macos.netlify.app/changelog-bare + + + + Version 6.64.0 Tue, 24 Oct 2023 21:47:44 +0000 diff --git a/docs/Changelog.md b/docs/Changelog.md index 3eb1b3e26..6c91dde94 100644 --- a/docs/Changelog.md +++ b/docs/Changelog.md @@ -1,5 +1,13 @@ # Release notes +# [6.65.0](https://github.com/lwouis/alt-tab-macos/compare/v6.64.0...v6.65.0) (2024-01-29) + + +### Features + +* update da/de/es/sv localizations ([c88426e](https://github.com/lwouis/alt-tab-macos/commit/c88426e)) +* users can check status of required system permissions ([70ee681](https://github.com/lwouis/alt-tab-macos/commit/70ee681)) + # [6.64.0](https://github.com/lwouis/alt-tab-macos/compare/v6.63.0...v6.64.0) (2023-10-24) diff --git a/docs/Contributors.md b/docs/Contributors.md index 9bf4dbe5c..8386020c3 100644 --- a/docs/Contributors.md +++ b/docs/Contributors.md @@ -42,6 +42,7 @@ They helped [localize the app](https://poeditor.com/join/project/8AOEZ0eAZE): * Admin * Albert Abdilim * Alex +* Alexander Kilian * Ali Gokmen * Ali. tas103 * Allen Guan @@ -93,6 +94,7 @@ They helped [localize the app](https://poeditor.com/join/project/8AOEZ0eAZE): * Hokuto Kato * Huandngoc * Ialiendeg +* Ida Bomholt Dyrholm Jacobsen * Igor Aradski * Indexerrowaty * isametry diff --git a/docs/Introduction.md b/docs/Introduction.md index 4863f7564..c1b9ffe2a 100644 --- a/docs/Introduction.md +++ b/docs/Introduction.md @@ -4,7 +4,7 @@ permalink: / # Introduction -[![Screenshot](public/demo/frontpage.jpg)](public/demo/frontpage.jpg) +[Screenshot](public/demo/frontpage.jpg) **AltTab** brings the power of Windows’s "alt-tab" window switcher to macOS. @@ -51,9 +51,9 @@ AltTab is available in: Bahasa Indonesia, Català, Dansk, Deutsch, Eesti keel, E Change the shortcut keys, switch to a Windows theme and more, using the Preferences window: -| [![Screenshot1](public/demo/preferences-appearance.jpg)](public/demo/preferences-appearance.jpg) | [![Screenshot 2](public/demo/preferences-controls.jpg)](public/demo/preferences-controls.jpg) | -| [![Screenshot3](public/demo/preferences-blacklist.jpg)](public/demo/preferences-blacklist.jpg) | [![Screenshot 4](public/demo/preferences-policies.jpg)](public/demo/preferences-policies.jpg) | -| [![Screenshot5](public/demo/preferences-general.jpg)](public/demo/preferences-general.jpg) | | +| [Screenshot1](public/demo/preferences-appearance.jpg) | [Screenshot 2](public/demo/preferences-controls.jpg) | +| [Screenshot3](public/demo/preferences-blacklist.jpg) | [Screenshot 4](public/demo/preferences-policies.jpg) | +| [Screenshot5](public/demo/preferences-general.jpg) | | ## Alternatives @@ -76,7 +76,7 @@ There are also related apps which don’t really overlap in functionality, but t | 1 row | 2 rows | Windows theme | |-------|---------|-------| -| [![Screenshot](public/demo/1-row.jpg)](public/demo/1-row.jpg) | [![Screenshot](public/demo/2-rows.jpg)](public/demo/2-rows.jpg) | [![Screenshot](public/demo/windows-theme.jpg)](public/demo/windows-theme.jpg) | +| [Screenshot](public/demo/1-row.jpg) | [Screenshot](public/demo/2-rows.jpg) | [Screenshot](public/demo/windows-theme.jpg) | ## License diff --git a/docs/Support.md b/docs/Support.md new file mode 100644 index 000000000..eab45c7a2 --- /dev/null +++ b/docs/Support.md @@ -0,0 +1,6 @@ +# Support this project + +There are 2 ways to support this project: + +* [Patreon](https://www.patreon.com/lwouis/membership) +* [GitHub Sponsors](https://github.com/sponsors/lwouis) diff --git a/docs/_includes/main.scss b/docs/_includes/main.scss index f887fdd74..351942bd7 100644 --- a/docs/_includes/main.scss +++ b/docs/_includes/main.scss @@ -139,7 +139,8 @@ nav { word-break: break-word; img { - max-width: 100%; + width: 100%; + height: auto; } code, pre, tt { diff --git a/docs/_layouts/default.html b/docs/_layouts/default.html index caedb9456..579dec9ba 100644 --- a/docs/_layouts/default.html +++ b/docs/_layouts/default.html @@ -37,8 +37,7 @@
- +

{{ site.title }}

{{ site.github.project_tagline }}

@@ -48,15 +47,12 @@

{{ site.title }}

diff --git a/resources/l10n/Localizable.strings b/resources/l10n/Localizable.strings index a8b6054f8..413449aa7 100644 --- a/resources/l10n/Localizable.strings +++ b/resources/l10n/Localizable.strings @@ -355,6 +355,9 @@ /* No comment provided by engineer. */ "Start at login:" = "Start at login:"; +/* Menubar option */ +"Support this project ❤️" = "Support this project ❤️"; + /* No comment provided by engineer. */ "Theme:" = "Theme:"; diff --git a/resources/l10n/ar.lproj/Localizable.strings b/resources/l10n/ar.lproj/Localizable.strings index e373ddf58..9998ad869 100644 --- a/resources/l10n/ar.lproj/Localizable.strings +++ b/resources/l10n/ar.lproj/Localizable.strings @@ -374,6 +374,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "شغّل البرنامج عند الدخول:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "المظهر:"; diff --git a/resources/l10n/bg.lproj/Localizable.strings b/resources/l10n/bg.lproj/Localizable.strings index 655c56a0d..df7d88775 100644 --- a/resources/l10n/bg.lproj/Localizable.strings +++ b/resources/l10n/bg.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Пусни при стартиране"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Тема:"; diff --git a/resources/l10n/bn.lproj/Localizable.strings b/resources/l10n/bn.lproj/Localizable.strings index 2e1f7ce9a..214fa08ce 100644 --- a/resources/l10n/bn.lproj/Localizable.strings +++ b/resources/l10n/bn.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "লগইন থেকে শুরু করুন:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "থিম:"; diff --git a/resources/l10n/ca.lproj/Localizable.strings b/resources/l10n/ca.lproj/Localizable.strings index 705b74145..eeea4c723 100644 --- a/resources/l10n/ca.lproj/Localizable.strings +++ b/resources/l10n/ca.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Obrir en iniciar la sessió:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/cs.lproj/Localizable.strings b/resources/l10n/cs.lproj/Localizable.strings index 0b28ced7c..de1c4533d 100644 --- a/resources/l10n/cs.lproj/Localizable.strings +++ b/resources/l10n/cs.lproj/Localizable.strings @@ -376,6 +376,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Spustit při přihlášení:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Styl:"; diff --git a/resources/l10n/da.lproj/Localizable.strings b/resources/l10n/da.lproj/Localizable.strings index 2492c64f7..14124211f 100644 --- a/resources/l10n/da.lproj/Localizable.strings +++ b/resources/l10n/da.lproj/Localizable.strings @@ -177,7 +177,7 @@ "Hide in %@" = "Hide in %@"; /*No comment provided by engineer.*/ -"Hide Space number labels:" = "Hide Space number labels:"; +"Hide Space number labels:" = "Skjul Mellemrum etiket:"; /*No comment provided by engineer.*/ "Hide status icons:" = "Hide status icons:"; @@ -192,7 +192,7 @@ "Hold" = "Hold"; /*No comment provided by engineer.*/ -"I think the app could be improved with…" = "I think the app could be improved with…"; +"I think the app could be improved with…" = "Jeg synes appen kunne forbedres med..."; /*No comment provided by engineer.*/ "Ignore shortcuts when active" = "Ignore shortcuts when active"; @@ -201,7 +201,7 @@ "Ignore shortcuts while a window from these apps is active" = "Ignore shortcuts while a window from these apps is active"; /*No comment provided by engineer.*/ -"Latest releases" = "Latest releases"; +"Latest releases" = "Seneste udgivelser"; /*No comment provided by engineer.*/ "Left" = "Left"; @@ -249,13 +249,13 @@ "Open Screen Recording Preferences…" = "Open Screen Recording Preferences…"; /*No comment provided by engineer.*/ -"Optional: email (if you want a reply)" = "Optional: email (if you want a reply)"; +"Optional: email (if you want a reply)" = "Valgfri: e-mail (hvis du vil have svar)"; /*No comment provided by engineer.*/ "Policies" = "Policies"; /*No comment provided by engineer.*/ -"Preferences…" = "Preferences…"; +"Preferences…" = "Indstillinger"; /*No comment provided by engineer.*/ "Preview selected window:" = "Preview selected window:"; @@ -264,7 +264,7 @@ "Quit" = "Quit"; /*No comment provided by engineer.*/ -"Quit %@" = "Quit %@"; +"Quit %@" = "Afslut %@"; /*No comment provided by engineer.*/ "Quit app" = "Quit app"; @@ -315,13 +315,13 @@ "Send anyway" = "Send anyway"; /*No comment provided by engineer.*/ -"Send debug profile (CPU, memory, etc)" = "Send debug profile (CPU, memory, etc)"; +"Send debug profile (CPU, memory, etc)" = "Send debug profil (CPU, hukommelse, osv.)"; /*No comment provided by engineer.*/ -"Send feedback" = "Send feedback"; +"Send feedback" = "Send evaluering"; /*No comment provided by engineer.*/ -"Send feedback…" = "Send feedback…"; +"Send feedback…" = "Send evaluering... "; /*No comment provided by engineer.*/ "Share improvement ideas, or report bugs" = "Share improvement ideas, or report bugs"; @@ -345,13 +345,13 @@ "Shortcut already assigned to another action: %@" = "Shortcut already assigned to another action: %@"; /*No comment provided by engineer.*/ -"Show" = "Show"; +"Show" = "Vis"; /*No comment provided by engineer.*/ "Show at the end" = "Show at the end"; /*No comment provided by engineer.*/ -"Show on:" = "Show on:"; +"Show on:" = "Vis på:"; /*No comment provided by engineer.*/ "Show standard tabs as windows:" = "Show standard tabs as windows:"; @@ -360,7 +360,7 @@ "Show windows from:" = "Show windows from:"; /*No comment provided by engineer.*/ -"Source code repository" = "Source code repository"; +"Source code repository" = "Kildekode sted"; /*No comment provided by engineer.*/ "Space" = "Space"; @@ -371,8 +371,11 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start at login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ -"Theme:" = "Theme:"; +"Theme:" = "Tema:"; /*No comment provided by engineer.*/ "Then release:" = "Then release:"; diff --git a/resources/l10n/de.lproj/Localizable.strings b/resources/l10n/de.lproj/Localizable.strings index 4aceac070..f9d02cf27 100644 --- a/resources/l10n/de.lproj/Localizable.strings +++ b/resources/l10n/de.lproj/Localizable.strings @@ -108,7 +108,7 @@ "Check for updates…" = "Nach Updates suchen…"; /*Menubar option*/ -"Check permissions…" = "Check permissions…"; +"Check permissions…" = "Überprüfe Berechtigungen…"; /*No comment provided by engineer.*/ "Close window" = "Fenster schließen"; @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Beim Anmelden starten:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Thema:"; diff --git a/resources/l10n/el.lproj/Localizable.strings b/resources/l10n/el.lproj/Localizable.strings index 34201eacf..3640b37af 100644 --- a/resources/l10n/el.lproj/Localizable.strings +++ b/resources/l10n/el.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start at login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Θέμα:"; diff --git a/resources/l10n/en.lproj/Localizable.strings b/resources/l10n/en.lproj/Localizable.strings index bf09f12ad..c79d13e33 100644 --- a/resources/l10n/en.lproj/Localizable.strings +++ b/resources/l10n/en.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start at login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Theme:"; diff --git a/resources/l10n/es.lproj/Localizable.strings b/resources/l10n/es.lproj/Localizable.strings index f0224d576..77db30edd 100644 --- a/resources/l10n/es.lproj/Localizable.strings +++ b/resources/l10n/es.lproj/Localizable.strings @@ -108,7 +108,7 @@ "Check for updates…" = "Comprobar actualizaciones…"; /*Menubar option*/ -"Check permissions…" = "Check permissions…"; +"Check permissions…" = "Verificar permisos..."; /*No comment provided by engineer.*/ "Close window" = "Cerrar ventana"; @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Cargar al inicio:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/et.lproj/Localizable.strings b/resources/l10n/et.lproj/Localizable.strings index edd34f4b7..9d9f2725c 100644 --- a/resources/l10n/et.lproj/Localizable.strings +++ b/resources/l10n/et.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start at login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Teema:"; diff --git a/resources/l10n/fa.lproj/Localizable.strings b/resources/l10n/fa.lproj/Localizable.strings index 691d089d6..cfacd5ef6 100644 --- a/resources/l10n/fa.lproj/Localizable.strings +++ b/resources/l10n/fa.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start at login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "تم"; diff --git a/resources/l10n/fi.lproj/Localizable.strings b/resources/l10n/fi.lproj/Localizable.strings index b73e002fd..e1f13a11e 100644 --- a/resources/l10n/fi.lproj/Localizable.strings +++ b/resources/l10n/fi.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Käynnistä kirjautuessa:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Teema:"; diff --git a/resources/l10n/fr.lproj/Localizable.strings b/resources/l10n/fr.lproj/Localizable.strings index 18576e9d9..25c62d523 100644 --- a/resources/l10n/fr.lproj/Localizable.strings +++ b/resources/l10n/fr.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Lancer au démarrage :"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Thème  :"; diff --git a/resources/l10n/gl.lproj/Localizable.strings b/resources/l10n/gl.lproj/Localizable.strings index 6c2b042de..01a1a8cbc 100644 --- a/resources/l10n/gl.lproj/Localizable.strings +++ b/resources/l10n/gl.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Cargar ao comezo:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/he.lproj/Localizable.strings b/resources/l10n/he.lproj/Localizable.strings index b3dc28921..6f68173f5 100644 --- a/resources/l10n/he.lproj/Localizable.strings +++ b/resources/l10n/he.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "התחל בהפעלת המחשב:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "סגנון:"; diff --git a/resources/l10n/hi.lproj/Localizable.strings b/resources/l10n/hi.lproj/Localizable.strings index cc9079b2a..04216d971 100644 --- a/resources/l10n/hi.lproj/Localizable.strings +++ b/resources/l10n/hi.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "लॉग इन पे चलाओ:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "अंदाज:"; diff --git a/resources/l10n/hr.lproj/Localizable.strings b/resources/l10n/hr.lproj/Localizable.strings index 0f75d7d92..17e4c9b04 100644 --- a/resources/l10n/hr.lproj/Localizable.strings +++ b/resources/l10n/hr.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start at login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Theme:"; diff --git a/resources/l10n/hu.lproj/Localizable.strings b/resources/l10n/hu.lproj/Localizable.strings index 155d3eb72..0deb098c4 100644 --- a/resources/l10n/hu.lproj/Localizable.strings +++ b/resources/l10n/hu.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Betöltés bejelentkezéskor:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Téma:"; diff --git a/resources/l10n/id.lproj/Localizable.strings b/resources/l10n/id.lproj/Localizable.strings index bad290adb..aef39954d 100644 --- a/resources/l10n/id.lproj/Localizable.strings +++ b/resources/l10n/id.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Mulai saat masuk:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/it.lproj/Localizable.strings b/resources/l10n/it.lproj/Localizable.strings index f99ef72c7..0f882d7ad 100644 --- a/resources/l10n/it.lproj/Localizable.strings +++ b/resources/l10n/it.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Avvia al login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/ja.lproj/Localizable.strings b/resources/l10n/ja.lproj/Localizable.strings index d0cccd8fb..b939c961e 100644 --- a/resources/l10n/ja.lproj/Localizable.strings +++ b/resources/l10n/ja.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "ログイン時に起動:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "テーマ:"; diff --git a/resources/l10n/ko.lproj/Localizable.strings b/resources/l10n/ko.lproj/Localizable.strings index 65c96d4e2..21181464b 100644 --- a/resources/l10n/ko.lproj/Localizable.strings +++ b/resources/l10n/ko.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "로그인 시 자동 실행:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "테마:"; diff --git a/resources/l10n/ku.lproj/Localizable.strings b/resources/l10n/ku.lproj/Localizable.strings index 83df77106..c686d49a5 100644 --- a/resources/l10n/ku.lproj/Localizable.strings +++ b/resources/l10n/ku.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Di Têketinê de destpêbike"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Têma:"; diff --git a/resources/l10n/lb.lproj/Localizable.strings b/resources/l10n/lb.lproj/Localizable.strings index e298d2c07..db16b8965 100644 --- a/resources/l10n/lb.lproj/Localizable.strings +++ b/resources/l10n/lb.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start at login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Theme:"; diff --git a/resources/l10n/nl.lproj/Localizable.strings b/resources/l10n/nl.lproj/Localizable.strings index 10fa24615..95d0ef876 100644 --- a/resources/l10n/nl.lproj/Localizable.strings +++ b/resources/l10n/nl.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start bij inloggen:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Thema:"; diff --git a/resources/l10n/no.lproj/Localizable.strings b/resources/l10n/no.lproj/Localizable.strings index 43f836e3a..162a32a93 100644 --- a/resources/l10n/no.lproj/Localizable.strings +++ b/resources/l10n/no.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start ved innlogging:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/pl.lproj/Localizable.strings b/resources/l10n/pl.lproj/Localizable.strings index 530d138ff..0ea3f3213 100644 --- a/resources/l10n/pl.lproj/Localizable.strings +++ b/resources/l10n/pl.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Uruchom przy zalogowaniu:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Motyw:"; diff --git a/resources/l10n/pt-BR.lproj/Localizable.strings b/resources/l10n/pt-BR.lproj/Localizable.strings index b99fa766b..66769e98d 100644 --- a/resources/l10n/pt-BR.lproj/Localizable.strings +++ b/resources/l10n/pt-BR.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Iniciar ao efetuar login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/pt.lproj/Localizable.strings b/resources/l10n/pt.lproj/Localizable.strings index 19e90a0df..b89894aaa 100644 --- a/resources/l10n/pt.lproj/Localizable.strings +++ b/resources/l10n/pt.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Iniciar ao efectuar login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/ro.lproj/Localizable.strings b/resources/l10n/ro.lproj/Localizable.strings index 5398a0fd7..1c4d2e6af 100644 --- a/resources/l10n/ro.lproj/Localizable.strings +++ b/resources/l10n/ro.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start la autentificare:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Temă:"; diff --git a/resources/l10n/ru.lproj/Localizable.strings b/resources/l10n/ru.lproj/Localizable.strings index c0e2798f9..9183c2aab 100644 --- a/resources/l10n/ru.lproj/Localizable.strings +++ b/resources/l10n/ru.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Запускать при входе в систему:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Тема:"; diff --git a/resources/l10n/sk.lproj/Localizable.strings b/resources/l10n/sk.lproj/Localizable.strings index 55860a5e1..13fa41f6f 100644 --- a/resources/l10n/sk.lproj/Localizable.strings +++ b/resources/l10n/sk.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Spustiť pri štarte systému:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Téma:"; diff --git a/resources/l10n/sl.lproj/Localizable.strings b/resources/l10n/sl.lproj/Localizable.strings index 3e6d977ae..8b9e5e967 100644 --- a/resources/l10n/sl.lproj/Localizable.strings +++ b/resources/l10n/sl.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start at login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/sq.lproj/Localizable.strings b/resources/l10n/sq.lproj/Localizable.strings index e670620f8..18e23d5c7 100644 --- a/resources/l10n/sq.lproj/Localizable.strings +++ b/resources/l10n/sq.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Starto gjatë identifikimit:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Motivi:"; diff --git a/resources/l10n/sr.lproj/Localizable.strings b/resources/l10n/sr.lproj/Localizable.strings index 22a70b838..9432037a8 100644 --- a/resources/l10n/sr.lproj/Localizable.strings +++ b/resources/l10n/sr.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Startuj nakon prijave:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/sv.lproj/Localizable.strings b/resources/l10n/sv.lproj/Localizable.strings index 30b74aa14..e1ad786b5 100644 --- a/resources/l10n/sv.lproj/Localizable.strings +++ b/resources/l10n/sv.lproj/Localizable.strings @@ -108,7 +108,7 @@ "Check for updates…" = "Leta efter uppdateringar…"; /*Menubar option*/ -"Check permissions…" = "Check permissions…"; +"Check permissions…" = "Kontrollera behörigheter…"; /*No comment provided by engineer.*/ "Close window" = "Stäng fönster"; @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Starta vid inloggning:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/ta.lproj/Localizable.strings b/resources/l10n/ta.lproj/Localizable.strings index 7e1489faa..6228b906d 100644 --- a/resources/l10n/ta.lproj/Localizable.strings +++ b/resources/l10n/ta.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start at login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Theme:"; diff --git a/resources/l10n/tr.lproj/Localizable.strings b/resources/l10n/tr.lproj/Localizable.strings index c1f61f255..a91bab38d 100644 --- a/resources/l10n/tr.lproj/Localizable.strings +++ b/resources/l10n/tr.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Sistem açılışında çalıştır:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Tema:"; diff --git a/resources/l10n/uk.lproj/Localizable.strings b/resources/l10n/uk.lproj/Localizable.strings index bf06dc838..398f2a425 100644 --- a/resources/l10n/uk.lproj/Localizable.strings +++ b/resources/l10n/uk.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Запускати під час входу:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Тема:"; diff --git a/resources/l10n/uz.lproj/Localizable.strings b/resources/l10n/uz.lproj/Localizable.strings index a43a9d1bf..f1c0a6636 100644 --- a/resources/l10n/uz.lproj/Localizable.strings +++ b/resources/l10n/uz.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Start at login:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Theme:"; diff --git a/resources/l10n/vi.lproj/Localizable.strings b/resources/l10n/vi.lproj/Localizable.strings index fb2d1a2d8..ef675a21a 100644 --- a/resources/l10n/vi.lproj/Localizable.strings +++ b/resources/l10n/vi.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "Khởi động khi đăng nhập:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "Chủ đề:"; diff --git a/resources/l10n/zh-CN.lproj/Localizable.strings b/resources/l10n/zh-CN.lproj/Localizable.strings index 59fb146e8..5cb4badcf 100644 --- a/resources/l10n/zh-CN.lproj/Localizable.strings +++ b/resources/l10n/zh-CN.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "开机启动:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "主题:"; diff --git a/resources/l10n/zh-TW.lproj/Localizable.strings b/resources/l10n/zh-TW.lproj/Localizable.strings index cea1f58fc..ebee82640 100644 --- a/resources/l10n/zh-TW.lproj/Localizable.strings +++ b/resources/l10n/zh-TW.lproj/Localizable.strings @@ -371,6 +371,9 @@ /*No comment provided by engineer.*/ "Start at login:" = "在登入時啟動:"; +/*Menubar option*/ +"Support this project ❤️" = "Support this project ❤️"; + /*No comment provided by engineer.*/ "Theme:" = "主題:"; diff --git a/scripts/convert_svg_to_png.sh b/scripts/convert_svg_to_png.sh index c377b2841..3e6152f52 100755 --- a/scripts/convert_svg_to_png.sh +++ b/scripts/convert_svg_to_png.sh @@ -15,7 +15,7 @@ function convert() { # -resize 24x24 \ # "resources/icons/window-controls/$1.svg" \ # "resources/icons/window-controls/$1-magik.png" - /Applications/Inkscape.app/Contents/Resources/bin/inkscape \ + /Applications/Inkscape.app/Contents/MacOS/inkscape \ -z \ -w "$((size * 2))" -h "$((size * 2))" \ "$currentDir/resources/icons/window-controls/$1.svg" \ diff --git a/scripts/extract_l10n_strings.sh b/scripts/extract_l10n_strings.sh index 262314a53..aa1066cfb 100755 --- a/scripts/extract_l10n_strings.sh +++ b/scripts/extract_l10n_strings.sh @@ -5,10 +5,14 @@ set -exu fileDirectory="resources/l10n" stringsFile="$fileDirectory/Localizable.strings" -convertFile() { - echo "$(iconv -f $1 -t $2 $stringsFile)" > $stringsFile -} - rm $stringsFile +# generate fresh Localizable.strings find src -name '*.swift' | xargs genstrings -a -o $fileDirectory -convertFile UTF-16LE UTF-8 +# convert to utf8 +echo "$(iconv -f UTF-16LE -t UTF-8 $stringsFile)" > $stringsFile +file $stringsFile +# remove the BOM if there is one to be deterministic; iconv may add a BOM or not, depending on the platform +mv $stringsFile $stringsFile.tmp +sed $'1s/\xef\xbb\xbf//' < $stringsFile.tmp > $stringsFile +rm $stringsFile.tmp +file $stringsFile diff --git a/src/api-wrappers/MissionControl.swift b/src/api-wrappers/MissionControl.swift index cbdd47af1..db750574d 100644 --- a/src/api-wrappers/MissionControl.swift +++ b/src/api-wrappers/MissionControl.swift @@ -3,7 +3,6 @@ import Foundation class MissionControl { static func isActive() -> Bool { // when Mission Control is active, the Dock process spawns some windows. We observe this side-effect and infer - var missionControlHint = false for window in CGWindow.windows(.optionOnScreenOnly) { // ownerName == "Dock" && title == nil is a sign that Mission Control may be active if window.ownerName() == "Dock" && window.title() == nil diff --git a/src/logic/Windows.swift b/src/logic/Windows.swift index 169a95e89..d8f2df348 100644 --- a/src/logic/Windows.swift +++ b/src/logic/Windows.swift @@ -318,7 +318,7 @@ class Windows { } func sortByAppNameThenWindowTitle(_ w1: Window, _ w2: Window) -> ComparisonResult { - var order = w1.application.runningApplication.localizedName.localizedStandardCompare(w2.application.runningApplication.localizedName) + let order = w1.application.runningApplication.localizedName.localizedStandardCompare(w2.application.runningApplication.localizedName) if order == .orderedSame { return w1.title.localizedStandardCompare(w2.title) } diff --git a/src/ui/App.swift b/src/ui/App.swift index 63b7c65e8..624b99b9e 100644 --- a/src/ui/App.swift +++ b/src/ui/App.swift @@ -15,6 +15,7 @@ class App: AppCenterApplication, NSApplicationDelegate { static let version = Bundle.main.object(forInfoDictionaryKey: "CFBundleVersion") as! String static let licence = Bundle.main.object(forInfoDictionaryKey: "NSHumanReadableCopyright") as! String static let repository = "https://github.com/lwouis/alt-tab-macos" + static let website = "https://alt-tab-macos.netlify.app" static var app: App! var menubar: Menubar! var thumbnailsPanel: ThumbnailsPanel! @@ -178,6 +179,10 @@ class App: AppCenterApplication, NSApplicationDelegate { showSecondaryWindow(feedbackWindow) } + @objc func supportProject() { + NSWorkspace.shared.open(URL(string: App.website + "/support")!) + } + @objc func showPreferencesWindow() { showSecondaryWindow(preferencesWindow) } diff --git a/src/ui/Menubar.swift b/src/ui/Menubar.swift index 954da5490..3352b5edb 100644 --- a/src/ui/Menubar.swift +++ b/src/ui/Menubar.swift @@ -32,6 +32,10 @@ class Menubar { withTitle: NSLocalizedString("Send feedback…", comment: "Menubar option"), action: #selector(App.app.showFeedbackPanel), keyEquivalent: "") + menu.addItem( + withTitle: NSLocalizedString("Support this project ❤️", comment: "Menubar option"), + action: #selector(App.app.supportProject), + keyEquivalent: "") menu.addItem(NSMenuItem.separator()) menu.addItem( withTitle: String(format: NSLocalizedString("Quit %@", comment: "Menubar option. %@ is AltTab"), App.name), diff --git a/src/ui/preferences-window/tabs/AboutTab.swift b/src/ui/preferences-window/tabs/AboutTab.swift index 32143c2f4..b055413d1 100644 --- a/src/ui/preferences-window/tabs/AboutTab.swift +++ b/src/ui/preferences-window/tabs/AboutTab.swift @@ -18,13 +18,17 @@ class AboutTab { appInfo.spacing = GridView.interPadding appInfo.alignment = .centerY let sendFeedback = NSButton(title: NSLocalizedString("Send feedback…", comment: ""), target: nil, action: #selector(App.app.showFeedbackPanel)) + let supportProject = NSButton(title: NSLocalizedString("Support this project ❤️", comment: ""), target: nil, action: #selector(App.app.supportProject)) let grid = GridView([ [appInfo], [sendFeedback], + [supportProject], ]) let sendFeedbackCell = grid.cell(atColumnIndex: 0, rowIndex: 1) sendFeedbackCell.xPlacement = .center sendFeedbackCell.row!.topPadding = GridView.interPadding + let supportProjectCell = grid.cell(atColumnIndex: 0, rowIndex: 2) + supportProjectCell.xPlacement = .center grid.fit() return grid