From d3ea404c238cdb4a44bd997d66bb04288402aada Mon Sep 17 00:00:00 2001 From: Oliver Wiese <oliver.wiese@fu-berlin.de> Date: Tue, 8 Oct 2019 17:32:24 +0200 Subject: [PATCH] improve text --- enzevalos_iphone/Base.lproj/Main.storyboard | 9 ++--- .../CryptoManagementViewController.swift | 14 ++++---- enzevalos_iphone/FolderViewController.swift | 4 ++- .../ImportKeyOverviewController.swift | 8 ++++- enzevalos_iphone/KeyTableViewController.swift | 22 ++++++++----- enzevalos_iphone/KeyViewController.swift | 6 ++-- enzevalos_iphone/PasteKeyViewController.swift | 9 +++-- enzevalos_iphone/de.lproj/Localizable.strings | 33 +++++++++++++++---- enzevalos_iphone/en.lproj/Localizable.strings | 25 ++++++++++++-- 9 files changed, 92 insertions(+), 38 deletions(-) diff --git a/enzevalos_iphone/Base.lproj/Main.storyboard b/enzevalos_iphone/Base.lproj/Main.storyboard index df9a21a2..98babbb3 100644 --- a/enzevalos_iphone/Base.lproj/Main.storyboard +++ b/enzevalos_iphone/Base.lproj/Main.storyboard @@ -16,7 +16,7 @@ <objects> <tableViewController storyboardIdentifier="UITableViewController-Ouw-WD-EV6" id="Ouw-WD-EV6" customClass="ReadViewController" customModule="enzevalos_iphone" customModuleProvider="target" sceneMemberID="viewController"> <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" allowsSelection="NO" rowHeight="44" sectionHeaderHeight="8" sectionFooterHeight="1" id="oZT-OA-Re5"> - <rect key="frame" x="0.0" y="0.0" width="414" height="808"/> + <rect key="frame" x="0.0" y="0.0" width="414" height="896"/> <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> <color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <sections> @@ -182,7 +182,7 @@ </constraints> </view> <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="qTi-rO-CH3"> - <rect key="frame" x="187.66666666666663" y="0.0" width="186.33333333333337" height="44"/> + <rect key="frame" x="187.66666666666663" y="5.6666666666666679" width="186.33333333333337" height="33"/> <constraints> <constraint firstAttribute="height" constant="44" id="voC-CF-ncN"/> </constraints> @@ -811,6 +811,7 @@ </refreshControl> <connections> <outlet property="lastUpdateButton" destination="ZNc-Kc-oC1" id="ZUS-YO-vnu"/> + <outlet property="manageButton" destination="yw6-dD-zxn" id="O2z-zM-opk"/> <segue destination="TFs-eK-jti" kind="show" identifier="showInboxSegue" id="Qjs-MH-bHU"/> <segue destination="Ouw-WD-EV6" kind="show" identifier="readFolderMailSegue" id="6Ug-AV-lba"/> </connections> @@ -2109,7 +2110,7 @@ Um deine sicheren E-Mails auch auf einem anderen Gerät lesen zu können, muss d <!--Paste Key View Controller--> <scene sceneID="1zk-8x-X7c"> <objects> - <viewController storyboardIdentifier="PasteKeyALTViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="dtZ-NT-daG" customClass="PasteKeyViewController" customModule="enzevalos_iphone" customModuleProvider="target" sceneMemberID="viewController"> + <viewController storyboardIdentifier="PasteKeyViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="dtZ-NT-daG" customClass="PasteKeyViewController" customModule="enzevalos_iphone" customModuleProvider="target" sceneMemberID="viewController"> <view key="view" contentMode="scaleToFill" id="CHD-6c-e74"> <rect key="frame" x="0.0" y="0.0" width="414" height="896"/> <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> @@ -2163,6 +2164,6 @@ Um deine sicheren E-Mails auch auf einem anderen Gerät lesen zu können, muss d <segue reference="DcR-GX-scc"/> <segue reference="NPH-pL-mw2"/> <segue reference="Fv4-FT-5gV"/> - <segue reference="ecN-Wn-7S0"/> + <segue reference="6Ug-AV-lba"/> </inferredMetricsTieBreakers> </document> diff --git a/enzevalos_iphone/CryptoManagementViewController.swift b/enzevalos_iphone/CryptoManagementViewController.swift index 289c9dc4..fb3990fc 100644 --- a/enzevalos_iphone/CryptoManagementViewController.swift +++ b/enzevalos_iphone/CryptoManagementViewController.swift @@ -28,11 +28,11 @@ class CryptoManagementViewController: UITableViewController { get { switch self { case .Info: - return "Here you can organize and manage your and others cryptographic idenities." + return NSLocalizedString("Management.Crypto.Name.Info", comment: "Here you can organize and manage your and others cryptographic idenities.") case .YourID: - return "YourID" + return NSLocalizedString("Management.Crypto.Name.You", comment: "Your ID") case .OtherID: - return "OtherID" + return NSLocalizedString("Management.Name.Crypto.Other", comment: "Other ID") } } } @@ -102,7 +102,9 @@ class CryptoManagementViewController: UITableViewController { private func infoCell(cellForRowAt indexPath: IndexPath) -> UITableViewCell { - return simpleCell(type: .Info, cellForRowAt: indexPath) + let cell = simpleCell(type: .Info, cellForRowAt: indexPath) + cell.textLabel?.numberOfLines = 0 + return cell } private func yourIDCell(cellForRowAt indexPath: IndexPath) -> UITableViewCell { @@ -116,9 +118,7 @@ class CryptoManagementViewController: UITableViewController { private func simpleCell(type: Cells, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: type.name, for: indexPath) - - cell.detailTextLabel?.text = type.text - + cell.textLabel?.text = type.text return cell } diff --git a/enzevalos_iphone/FolderViewController.swift b/enzevalos_iphone/FolderViewController.swift index c7dee764..2b9a56cc 100644 --- a/enzevalos_iphone/FolderViewController.swift +++ b/enzevalos_iphone/FolderViewController.swift @@ -24,7 +24,8 @@ class FolderViewController: UITableViewController { var mailHandler = AppDelegate.getAppDelegate().mailHandler var folders: [Folder] = [] - + @IBOutlet weak var manageButton: UIBarButtonItem! + var isFirstFolderViewController = true var presentedFolder: Folder? = nil @@ -44,6 +45,7 @@ class FolderViewController: UITableViewController { self.refreshControl?.addTarget(self, action: #selector(FolderViewController.refresh), for: UIControl.Event.valueChanged) self.refreshControl?.attributedTitle = NSAttributedString(string: NSLocalizedString("PullToRefresh", comment: "Pull to refresh")) lastUpdateText = NSLocalizedString("Updating", comment: "Getting new data") + manageButton.title = NSLocalizedString("Management.Button", comment: "Manage") if isFirstFolderViewController { folders = DataHandler.handler.allRootFolders.sorted().filter { $0.path != UserManager.backendInboxFolderPath } diff --git a/enzevalos_iphone/ImportKeyOverviewController.swift b/enzevalos_iphone/ImportKeyOverviewController.swift index a44a7c56..66b32a1b 100644 --- a/enzevalos_iphone/ImportKeyOverviewController.swift +++ b/enzevalos_iphone/ImportKeyOverviewController.swift @@ -21,6 +21,7 @@ class ImportKeyOverviewController: UITableViewController, ButtonCellHandler { override func viewDidLoad() { super.viewDidLoad() + self.title = NSLocalizedString("Import.Overview.Title", comment: "Add a key") } // MARK: - Table view data source @@ -40,7 +41,12 @@ class ImportKeyOverviewController: UITableViewController, ButtonCellHandler { // Info field identifier = "InfoTextCell" let cell = tableView.dequeueReusableCell(withIdentifier: identifier, for: indexPath) - cell.textLabel?.text = "Eigentlich werden die Schlüssel zu den Identitäten in Mails gefunden. Aber du kannst auch Schlüssel mittels iTunes hinzufügen oder als Text einfügen. Letzteres kann verwendet werden um zum Beispiel einen PGP-Schlüssel von der Webseite einer Person zu importieren. Diese beginnen mit ======== Begin Public KEY ========...." + var text = NSLocalizedString("Import.Overview.Info.Public", comment: "Copy and paste a key etc.") + if self.currentState == .Secret { + text = NSLocalizedString("Import.Overview.Info.Secret", comment: "Secret key info") + } + cell.textLabel?.text = text + return cell } else if indexPath.section == 1 { return ButtonCell.createButtonCell(tableView: tableView, normalTitle: NSLocalizedString("Import.Button.Itunes", comment: "import from iTunes"), id: KeyActions.iTunes.hashValue, listener: self) diff --git a/enzevalos_iphone/KeyTableViewController.swift b/enzevalos_iphone/KeyTableViewController.swift index 071e2c11..e2962110 100644 --- a/enzevalos_iphone/KeyTableViewController.swift +++ b/enzevalos_iphone/KeyTableViewController.swift @@ -32,32 +32,32 @@ class KeyTableViewController: UITableViewController { override func viewDidLoad() { super.viewDidLoad() - var title = "Your IDs" + var title = NSLocalizedString("KeyTable.Title.You", comment: "Your IDs") var showAddButton = false var onlyOneRow = false switch type { case .PublicKey: - title = "Other people's IDs" + title = NSLocalizedString("KeyTable.Title.Other", comment: "Other people's IDs") publicKeys = DataHandler.handler.findPublicKeys() showAddButton = true case .SecretKey: - title = "Your IDs" + title = NSLocalizedString("KeyTable.Title.You", comment: "Your IDs") secretKeys = DataHandler.handler.findSecretKeys() showAddButton = true case .ImportSecretKeyItunes: - title = "New Secret Keys" + title = NSLocalizedString("KeyTable.Title.New.SecretKeys", comment: "New Secret Keys") importableKeys = ItunesKeyHandling.iTunesKeyHandler.extractSecretKeys(withKnownKeys: true) if importableKeys.count == 0 { onlyOneRow = true } case .ImportPublicKeyItunes: - title = "New Public Keys" + title = NSLocalizedString("KeyTable.Title.New.PublicKeys", comment: "New Public Keys") importableKeys = ItunesKeyHandling.iTunesKeyHandler.extractPublicKeys(withKnownKeys: true) if importableKeys.count == 0 { onlyOneRow = true } case .ImportFromList: - title = "Extracted Keys" + title = NSLocalizedString("KeyTable.Title.ExtractedKeys", comment: "Extracted Keys") if importableKeys.count == 0 { onlyOneRow = true } @@ -132,7 +132,11 @@ class KeyTableViewController: UITableViewController { let cell = UITableViewCell(style: .default, reuseIdentifier: "InfoCell") cell.accessoryType = .none cell.textLabel?.numberOfLines = 0 - cell.textLabel?.text = "No keys to import. Please, add a key file (.asc or .gpg) via iTunes in the Letterbox folder." + var text = NSLocalizedString("KeyTable.Info.NoKeys.Itunes", comment: "No keys to import. Please, add a key file (.asc or .gpg) via iTunes in the Letterbox folder.") + if type == .ImportFromList { + text = NSLocalizedString("KeyTable.Info.NoKeys.List", comment: "No keys to import. Please, enter a valid text.") + } + cell.textLabel?.text = text tableView.isUserInteractionEnabled = false return cell } else { @@ -144,10 +148,10 @@ class KeyTableViewController: UITableViewController { if key.isNew() { cell.accessoryType = .none - cell.mailAddress.text = "Click here to import" + cell.mailAddress.text = NSLocalizedString("KeyCell.Import.Click", comment: "Click here to import") }else { cell.accessoryType = .checkmark - cell.mailAddress.text = "Already imported" + cell.mailAddress.text = NSLocalizedString("KeyCell.Import.Already", comment: "Already imported") } } diff --git a/enzevalos_iphone/KeyViewController.swift b/enzevalos_iphone/KeyViewController.swift index 7a7fee51..5536004e 100644 --- a/enzevalos_iphone/KeyViewController.swift +++ b/enzevalos_iphone/KeyViewController.swift @@ -121,14 +121,14 @@ extension KeyViewController: UITableViewDataSource { } else if toRowType(indexPath) == .discoveryMail { let cell = tableView.dequeueReusableCell(withIdentifier: "DiscoveryMailCell")! - cell.textLabel?.text = "Discovered by " + cell.textLabel?.text = NSLocalizedString("Key.DiscoveryChannel", comment: "Discovered by ") if let label = cell.detailTextLabel { if record?.key?.firstMail != nil { - label.text = "mail" + label.text = NSLocalizedString("Key.DiscoveryChannel.Mail", comment: "mail") } else { cell.accessoryType = .none - label.text = "????" + label.text = NSLocalizedString("Key.DiscoveryChannel.Unknown", comment: "unknown") } } diff --git a/enzevalos_iphone/PasteKeyViewController.swift b/enzevalos_iphone/PasteKeyViewController.swift index 7d1d5b76..443586f6 100644 --- a/enzevalos_iphone/PasteKeyViewController.swift +++ b/enzevalos_iphone/PasteKeyViewController.swift @@ -39,7 +39,7 @@ class PasteKeyViewController: UIViewController, UITextViewDelegate { static func pushPasteKeyView(navigationController: UINavigationController?) -> PasteKeyViewController? { let mainStoryboard = UIStoryboard(name: "Main", bundle: Bundle.main) - if let viewController = mainStoryboard.instantiateViewController(withIdentifier: "PasteKeyALTViewController") as? PasteKeyViewController { + if let viewController = mainStoryboard.instantiateViewController(withIdentifier: "PasteKeyViewController") as? PasteKeyViewController { navigationController?.pushViewController(viewController, animated: true) return viewController } @@ -71,12 +71,11 @@ class PasteKeyViewController: UIViewController, UITextViewDelegate { } else { updateUI(state: state) } - self.title = "Paste a key" - nextBtn = UIBarButtonItem(title: "Next", style: .done, target: nil, action: #selector(nextButton(btn:))) + self.title = NSLocalizedString("Import.PasteKey.Title", comment: "Just paste a key") + nextBtn = UIBarButtonItem(title: NSLocalizedString("Button.Next", comment: "next"), style: .done, target: nil, action: #selector(nextButton(btn:))) nextBtn?.isEnabled = false self.navigationItem.rightBarButtonItem = nextBtn - - + pasteArea.delegate = self } diff --git a/enzevalos_iphone/de.lproj/Localizable.strings b/enzevalos_iphone/de.lproj/Localizable.strings index 2156b6cf..2ea54f9e 100644 --- a/enzevalos_iphone/de.lproj/Localizable.strings +++ b/enzevalos_iphone/de.lproj/Localizable.strings @@ -71,6 +71,7 @@ "Message" = "Nachricht"; "MoreInformation" = "Weitere Informationen"; "Next" = "Weiter"; +"Button.Next" = "Weiter"; "next" = "weiter"; "None" = "Keine"; "NormalPassword" = "Normal, Passwort"; @@ -301,11 +302,31 @@ "Time.Day.One" = "ein Tag"; "Time.Day.Multiple" = "%d Tage"; "Time.Day.Today" = "heute"; -"Management.Crypto.Title" = "Management"; +"Management.Button" = "Verwalte"; +"Management.Crypto.Title" = "Verwalte deine und fremde IDs"; +"Management.Crypto.Name.Info" = "Hier kannst du deine und fremde kryptographischen Identitäten verwalten."; +"Management.Crypto.Name.You" = "Deine ID"; +"Management.Name.Crypto.Other" = "Fremde ID"; +"Import.Overview.Title" = "Hinzufügen einer ID"; +"Import.Overview.Info.Public" = "IDs basieren auf kryptographischen Schlüsseln und üblicherweise werden diese automatisch aus den Mails importiert. Aber du kannst auch selbstständig mittels iTunes oder per \"copy-and-paste\" von einer Webseite oder Mail einfügen."; +"Import.Overview.Info.Secret" = "Deine ID basiert auf einem kryptographischen Schlüssel und üblicherweise benötigst du nur eine. Aber wenn du bereits eine andere ID auf einem anderen Gerät hast, kannst du diese mittels iTunes or per \"copy-and-paste\" einfügen."; "Import.Button.Paste" = "Einfügen eines Schlüssels"; "Import.Button.Itunes" = "Übertragung mittels iTunes"; -"Import.PasteKey.Area.Default" = "Hier kann ein Schlüssel aus einer Mail, Datei oder von einer Webseite kopiert und eingefügt werden....\nEin Schlüssel startet mit -----BEGIN PGP PUBLIC KEY BLOCK-----...."; -"Import.PasteKey.Info.Start" = "You copy a key from a mail, file or website and and paste it below. \nA key starts with -----BEGIN PGP PUBLIC KEY BLOCK-----"; -"Import.PasteKey.Info.WrongFormat" = "Your pasted text looks like a key but is not correct. Please, check your input again. \nA key starts with -----BEGIN PGP PUBLIC KEY BLOCK----- and ends with -----END PGP PUBLIC KEY BLOCK-----."; -"Import.PasteKey.Info.NoKeyFormat" = "Your pasted text does not contain a key. \nA key starts with -----BEGIN PGP PUBLIC KEY BLOCK----- and ends with -----END PGP PUBLIC KEY BLOCK-----."; -"Import.PasteKey.Info.Key" = "Your pasted text contains at least one key. Please, go ahead to get an overview about them."; +"Import.PasteKey.Title" = "Einfügen eines Schlüssels"; +"Import.PasteKey.Area.Default" = "Bitte, füge den Schlüssel hier ein..."; +"Import.PasteKey.Info.Start" = "Du kannst einen Schlüssel aus einer Mail, Datei oder von einer Webseite kopieren und unten einfügen. \nEin Schlüssel beginnt mit -----BEGIN PGP PUBLIC KEY BLOCK-----."; +"Import.PasteKey.Info.WrongFormat" = "Dein eingefügter Text sieht wie ein Schlüssel aus, aber ist nicht korrekt. Bitte überprüfe den Text nochmal.\nEin Schlüssel startet mit -----BEGIN PGP PUBLIC KEY BLOCK----- und endet mit -----END PGP PUBLIC KEY BLOCK-----."; +"Import.PasteKey.Info.NoKeyFormat" = "Dein eingefügter Text beinhaltet keinen Schlüssel. \nEin Schlüssel startet mit -----BEGIN PGP PUBLIC KEY BLOCK----- und endet mit -----END PGP PUBLIC KEY BLOCK-----."; +"Import.PasteKey.Info.Key" = "Dein eingefügter Text beinhaltet mindestens einen Schlüssel. Klicke auf Weiter um die Schlüssel auszuwählen."; +"Key.DiscoveryChannel" = "Erhalten durch "; +"Key.DiscoveryChannel.Mail" = "mail"; +"Key.DiscoveryChannel.Unknown" = "unbekannt"; +"KeyTable.Title.Other" = "Fremde IDs"; +"KeyTable.Title.You" = "Deine IDs"; +"KeyTable.Title.New.SecretKeys" = "Neue geheime Schlüssel"; +"KeyTable.Title.New.PublicKeys" = "Neue öffentliche Schlüssel"; +"KeyTable.Title.ExtractedKeys" = "Gefundene Schlüssel"; +"KeyTable.Info.NoKeys.Itunes" = "Keine Schlüssel zum Importieren. Bitte füge einen Schlüssel als Datei (.asc oder .gpg) mittels iTunes in den Letterbox Ordner."; +"KeyTable.Info.NoKeys.List" = "Keine Schlüssel zum Importieren. Bitte, gib einen gültigen Text ein."; +"KeyCell.Import.Click" = "Klick hier zum Importieren"; +"KeyCell.Import.Already" = "Bereits importiert"; diff --git a/enzevalos_iphone/en.lproj/Localizable.strings b/enzevalos_iphone/en.lproj/Localizable.strings index 618dc82c..1c14f515 100644 --- a/enzevalos_iphone/en.lproj/Localizable.strings +++ b/enzevalos_iphone/en.lproj/Localizable.strings @@ -73,6 +73,7 @@ "Message" = "Message"; // ???? "MoreInformation" = "More Information"; "Next" = "Next"; +"Button.Next" = "Next"; "next" = "next"; "None" = "None"; "NormalPassword" = "Normal, password"; @@ -270,12 +271,32 @@ "Time.Day.One" = "one day"; "Time.Day.Multiple" = "%d days"; "Time.Day.Today" = "today"; -"Management.Crypto.Title" = "Management"; +"Management.Button" = "Manage"; +"Management.Crypto.Title" = "Manage your and other's IDs"; +"Management.Crypto.Name.Info" = "You can organize and manage your and others cryptographic idenities."; +"Management.Crypto.Name.You" = "Your ID"; +"Management.Name.Crypto.Other" = "Other's ID"; +"Import.Overview.Title" = "Add a ID"; +"Import.Overview.Info.Public" = "IDs base on cryptographic keys and typically these keys are automatically extracted from mails. But you can import keys via iTunes or copy-and-paste them from a mail or website."; +"Import.Overview.Info.Secret" = "Your ID bases on a cryptographic key and typically you only need one ID. But if you have an other ID on an other device, then you can import the ID via iTunes or copy-and-paste it."; "Import.Button.Paste" = "Paste a key"; "Import.Button.Itunes" = "Transfer via iTunes"; +"Import.PasteKey.Title" = "Paste a key"; "Import.PasteKey.Area.Default" = "Please, paste a key here..."; -"Import.PasteKey.Info.Start" = "You copy a key from a mail, file or website and and paste it below. \nA key starts with -----BEGIN PGP PUBLIC KEY BLOCK-----"; +"Import.PasteKey.Info.Start" = "You can copy a key from a mail, file or website and and paste it below. \nA key starts with -----BEGIN PGP PUBLIC KEY BLOCK-----."; "Import.PasteKey.Info.WrongFormat" = "Your pasted text looks like a key but is not correct. Please, check your input again. \nA key starts with -----BEGIN PGP PUBLIC KEY BLOCK----- and ends with -----END PGP PUBLIC KEY BLOCK-----."; "Import.PasteKey.Info.NoKeyFormat" = "Your pasted text does not contain a key. \nA key starts with -----BEGIN PGP PUBLIC KEY BLOCK----- and ends with -----END PGP PUBLIC KEY BLOCK-----."; "Import.PasteKey.Info.Key" = "Your pasted text contains at least one key. Please, go ahead to get an overview about them."; +"Key.DiscoveryChannel" = "Discovered by "; +"Key.DiscoveryChannel.Mail" = "mail"; +"Key.DiscoveryChannel.Unknown" = "unknown"; +"KeyTable.Title.Other" = "Other people's IDs"; +"KeyTable.Title.You" = "Your IDs"; +"KeyTable.Title.New.SecretKeys" = "New secret keys"; +"KeyTable.Title.New.PublicKeys" = "New public keys"; +"KeyTable.Title.ExtractedKeys" = "Extracted keys"; +"KeyTable.Info.NoKeys.Itunes" = "No keys to import. Please, add a key file (.asc or .gpg) via iTunes in the Letterbox folder."; +"KeyTable.Info.NoKeys.List" = "No keys to import. Please, enter a valid text."; +"KeyCell.Import.Click" = "Click here to import"; +"KeyCell.Import.Already" = "Already imported"; -- GitLab