From e31c7c6cd71a20482b43e1e8d63dadcca6191971 Mon Sep 17 00:00:00 2001 From: Michael Starke Date: Mon, 19 Aug 2019 14:20:27 +0200 Subject: [PATCH 1/2] Updated translations --- .../en.lproj/AutotypeDoctorReportViewController.strings | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/MacPass/en.lproj/AutotypeDoctorReportViewController.strings b/MacPass/en.lproj/AutotypeDoctorReportViewController.strings index e8f267e0..b5a81f3d 100644 --- a/MacPass/en.lproj/AutotypeDoctorReportViewController.strings +++ b/MacPass/en.lproj/AutotypeDoctorReportViewController.strings @@ -2,8 +2,8 @@ /* Class = "NSTextFieldCell"; title = "MacPass will send key press events to the system when Autotype or Global Autotype is executed. Since macOS 10.14 Mojave this is only possible, if Accessibility permissions are granted to the application."; ObjectID = "6GI-KJ-Xue"; */ "6GI-KJ-Xue.title" = "MacPass will send key press events to the system when Autotype or Global Autotype is executed. Since macOS 10.14 Mojave this is only possible, if Accessibility permissions are granted to the application."; -/* Class = "NSTextFieldCell"; title = "MacPass will read every window title when Global Autotype is executed to find a match. Since macOS 10.15 Catalina it is not possible to read any window title, if the user has not granted permissions to record the screen. If you are running macOS 10.15 or higher, MacPass will try to capture the left top most pixel on your screen to initate a request to record the screen. This pixel will not be stored and processed in any way."; ObjectID = "7of-1z-Nfk"; */ -"7of-1z-Nfk.title" = "MacPass will read every window title when Global Autotype is executed to find a match. Since macOS 10.15 Catalina it is not possible to read any window title, if the user has not granted permissions to record the screen. If you are running macOS 10.15 or higher, MacPass will try to capture the left top most pixel on your screen to initate a request to record the screen. This pixel will not be stored and processed in any way."; +/* Class = "NSTextFieldCell"; title = "MacPass will read every window title when Global Autotype is executed to find a match. Since macOS 10.15 Catalina it is not possible to read any window title, if the user has not granted permissions to record the screen. If you are running macOS 10.15 or higher, MacPass will check if it can read every window title of currently visible windows. This test will not read the actual title. The titles aren't stored or processed in any way."; ObjectID = "7of-1z-Nfk"; */ +"7of-1z-Nfk.title" = "MacPass will read every window title when Global Autotype is executed to find a match. Since macOS 10.15 Catalina it is not possible to read any window title, if the user has not granted permissions to record the screen. If you are running macOS 10.15 or higher, MacPass will check if it can read every window title of currently visible windows. This test will not read the actual title. The titles aren't stored or processed in any way."; /* Class = "NSButtonCell"; title = "Open Accessibilty Preferences…"; ObjectID = "8m1-vs-pd5"; */ "8m1-vs-pd5.title" = "Open Accessibilty Preferences…"; @@ -14,5 +14,5 @@ /* Class = "NSTextFieldCell"; title = "Accessibility"; ObjectID = "aIL-8W-63g"; */ "aIL-8W-63g.title" = "Accessibility"; -/* Class = "NSButtonCell"; title = "Open Screen Sharing Preferences…"; ObjectID = "lgB-Ys-L9R"; */ -"lgB-Ys-L9R.title" = "Open Screen Sharing Preferences…"; +/* Class = "NSButtonCell"; title = "Open Screen Recording Preferences…"; ObjectID = "lgB-Ys-L9R"; */ +"lgB-Ys-L9R.title" = "Open Screen Recording Preferences…"; From 7fc1dd8a1b3716b1af03a90507080b9b7eb23500 Mon Sep 17 00:00:00 2001 From: Michael Starke Date: Mon, 19 Aug 2019 14:21:12 +0200 Subject: [PATCH 2/2] Do not relay on taking a screenshot to determine screen recording permissions. Instead read window titles of all visible windows. --- MacPass.xcodeproj/project.pbxproj | 4 +-- .../AutotypeDoctorReportViewController.xib | 6 ++-- MacPass/MPAutotypeDoctor.m | 34 ++++++++++--------- 3 files changed, 23 insertions(+), 21 deletions(-) diff --git a/MacPass.xcodeproj/project.pbxproj b/MacPass.xcodeproj/project.pbxproj index 50aec9a9..894f8e30 100644 --- a/MacPass.xcodeproj/project.pbxproj +++ b/MacPass.xcodeproj/project.pbxproj @@ -809,6 +809,7 @@ 4CC6DB7917D23719002C6091 /* KPKNode+IconImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "KPKNode+IconImage.m"; sourceTree = ""; }; 4CCA7EEC1797866F00B0B55E /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/GeneralPreferences.strings; sourceTree = ""; }; 4CCA8E9A18D91ED9001A6754 /* Quartz.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quartz.framework; path = System/Library/Frameworks/Quartz.framework; sourceTree = SDKROOT; }; + 4CCCE532230ACB73009B3D4D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/AutotypeDoctorReportViewController.strings; sourceTree = ""; }; 4CCCE7FF1D75CA48006AA951 /* MPArrayController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPArrayController.h; sourceTree = ""; }; 4CCCE8001D75CA48006AA951 /* MPArrayController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPArrayController.m; sourceTree = ""; }; 4CCEDE28179F203B008402BE /* MPOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPOutlineView.h; sourceTree = ""; }; @@ -976,7 +977,6 @@ 78E1F8AF22E3A3DF00E738AE /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/IntegrationPreferences.strings; sourceTree = ""; }; 78E1F8B122E3A5D600E738AE /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/AutotypeDoctorReportViewController.xib; sourceTree = ""; }; 78E1F8B422E3A5DB00E738AE /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/AutotypeDoctorReportViewController.strings; sourceTree = ""; }; - 78E1F8B622E3A5E900E738AE /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/AutotypeDoctorReportViewController.strings; sourceTree = ""; }; 78E1F8B822E3B06700E738AE /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/PickcharsView.strings; sourceTree = ""; }; 78E1F8BA22E3B0B700E738AE /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/PickfieldView.strings; sourceTree = ""; }; 78E1F8BC22E3B12300E738AE /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/OpenPanelAccessoryView.strings; sourceTree = ""; }; @@ -2679,7 +2679,7 @@ children = ( 78E1F8B122E3A5D600E738AE /* Base */, 78E1F8B422E3A5DB00E738AE /* ru */, - 78E1F8B622E3A5E900E738AE /* en */, + 4CCCE532230ACB73009B3D4D /* en */, ); name = AutotypeDoctorReportViewController.xib; sourceTree = ""; diff --git a/MacPass/Base.lproj/AutotypeDoctorReportViewController.xib b/MacPass/Base.lproj/AutotypeDoctorReportViewController.xib index e9275fa6..c3c3ddf7 100644 --- a/MacPass/Base.lproj/AutotypeDoctorReportViewController.xib +++ b/MacPass/Base.lproj/AutotypeDoctorReportViewController.xib @@ -72,14 +72,14 @@ - MacPass will read every window title when Global Autotype is executed to find a match. Since macOS 10.15 Catalina it is not possible to read any window title, if the user has not granted permissions to record the screen. If you are running macOS 10.15 or higher, MacPass will try to capture the left top most pixel on your screen to initate a request to record the screen. This pixel will not be stored and processed in any way. + MacPass will read every window title when Global Autotype is executed to find a match. Since macOS 10.15 Catalina it is not possible to read any window title, if the user has not granted permissions to record the screen. If you are running macOS 10.15 or higher, MacPass will check if it can read every window title of currently visible windows. This test will not read the actual title. The titles aren't stored or processed in any way.