瀏覽代碼

Merge pull request #601 from deltachat/prep-1.3

prep 1.3
bjoern 5 年之前
父節點
當前提交
491ede982d

+ 1 - 4
.swiftlint.yml

@@ -7,6 +7,7 @@ disabled_rules:
 - large_tuple
 - todo
 - trailing_whitespace
+- type_body_length
 
 excluded:
 - Carthage
@@ -40,10 +41,6 @@ function_parameter_count:
   warning: 6
   error: 8
 
-type_body_length:
-  warning: 600
-  error: 800
-
 file_length:
   warning: 1000
   error: 1500

+ 22 - 0
CHANGELOG.md

@@ -1,5 +1,27 @@
 # Delta Chat iOS Changelog
 
+## v1.3.0
+2020-03-26
+
+* add global search for chats, contacts, messages - just swipe down in the chatlist
+* show padlock beside encrypted messages
+* tweak checkmarks for "delivered" and "read by recipient"
+* add option "Settings / Advanced / On-demand location streaming" -
+  once enabled, you can share your location with all group members by
+  taping on the "Attach" icon in a group
+* add gallery-options to chat-profiles
+* on forwarding, "Saved messages" will be always shown at the top of the list
+* streamline confirmation dialogs on chat creation and on forwarding to "Saved messages"
+* faster contact-suggestions, improved search for contacts
+* improve interoperability eg. with Cyrus server
+* fix group creation if group was created by non-delta clients
+* fix showing replies from non-delta clients
+* fix crash when using empty groups
+* several other fixes
+* update translations and help
+
+
+
 ## v1.2.1
 2020-03-04
 

+ 4 - 4
deltachat-ios.xcodeproj/project.pbxproj

@@ -1539,7 +1539,7 @@
 				CODE_SIGN_ENTITLEMENTS = "deltachat-ios/deltachat-ios.entitlements";
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				CODE_SIGN_STYLE = Automatic;
-				CURRENT_PROJECT_VERSION = 26;
+				CURRENT_PROJECT_VERSION = 27;
 				DEVELOPMENT_TEAM = 8Y86453UA8;
 				ENABLE_BITCODE = NO;
 				HEADER_SEARCH_PATHS = (
@@ -1556,7 +1556,7 @@
 					"$(PROJECT_DIR)/deltachat-ios/libraries/deltachat-core-rust/target/universal/release",
 					"$(PROJECT_DIR)/deltachat-ios/libraries/deltachat-core-rust/target/universal/debug",
 				);
-				MARKETING_VERSION = 1.2.1;
+				MARKETING_VERSION = 1.3.0;
 				OTHER_CFLAGS = (
 					"$(inherited)",
 					"-isystem",
@@ -1613,7 +1613,7 @@
 				CODE_SIGN_ENTITLEMENTS = "deltachat-ios/deltachat-ios.entitlements";
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				CODE_SIGN_STYLE = Automatic;
-				CURRENT_PROJECT_VERSION = 26;
+				CURRENT_PROJECT_VERSION = 27;
 				DEVELOPMENT_TEAM = 8Y86453UA8;
 				ENABLE_BITCODE = NO;
 				HEADER_SEARCH_PATHS = (
@@ -1630,7 +1630,7 @@
 					"$(PROJECT_DIR)/deltachat-ios/libraries/deltachat-core-rust/target/universal/release",
 					"$(PROJECT_DIR)/deltachat-ios/libraries/deltachat-core-rust/target/universal/debug",
 				);
-				MARKETING_VERSION = 1.2.1;
+				MARKETING_VERSION = 1.3.0;
 				OTHER_CFLAGS = (
 					"$(inherited)",
 					"-isystem",

+ 3 - 1
deltachat-ios/Controller/ChatViewController.swift

@@ -1125,7 +1125,9 @@ extension ChatViewController: MessagesLayoutDelegate {
         alert.addAction(galleryAction)
         alert.addAction(documentAction)
         alert.addAction(voiceMessageAction)
-        alert.addAction(locationStreamingAction)
+        if UserDefaults.standard.bool(forKey: "location_streaming") {
+            alert.addAction(locationStreamingAction)
+        }
         alert.addAction(UIAlertAction(title: String.localized("cancel"), style: .cancel, handler: nil))
         self.present(alert, animated: true, completion: nil)
     }

+ 19 - 9
deltachat-ios/Controller/SettingsController.swift

@@ -19,7 +19,7 @@ internal final class SettingsViewController: UITableViewController {
         case autocryptPreferences = 6
         case sendAutocryptMessage = 7
         case exportBackup = 8
-        case exportKey = 9
+        case advanced = 9
         case help = 10
     }
 
@@ -137,9 +137,9 @@ internal final class SettingsViewController: UITableViewController {
         return cell
     }()
 
-    private var exportKeyCell: ActionCell = {
+    private var advancedCell: ActionCell = {
         let cell = ActionCell()
-        cell.tag = CellTags.exportKey.rawValue
+        cell.tag = CellTags.advanced.rawValue
         cell.actionTitle = String.localized("menu_advanced")
         cell.selectionStyle = .default
         return cell
@@ -171,12 +171,12 @@ internal final class SettingsViewController: UITableViewController {
         let autocryptSection = SectionConfigs(
             headerTitle: String.localized("autocrypt"),
             footerTitle: String.localized("autocrypt_explain"),
-            cells: [autocryptPreferencesCell, sendAutocryptMessageCell, exportKeyCell]
+            cells: [autocryptPreferencesCell, sendAutocryptMessageCell]
         )
         let backupSection = SectionConfigs(
-            headerTitle: String.localized("pref_backup"),
+            headerTitle: nil,
             footerTitle: String.localized("pref_backup_explain"),
-            cells: [exportBackupCell])
+            cells: [advancedCell, exportBackupCell])
         let helpSection = SectionConfigs(
             headerTitle: nil,
             footerTitle: appNameAndVersion,
@@ -287,7 +287,7 @@ internal final class SettingsViewController: UITableViewController {
         case .autocryptPreferences: handleAutocryptPreferencesToggle()
         case .sendAutocryptMessage: sendAutocryptSetupMessage()
         case .exportBackup: createBackup()
-        case .exportKey: showKeyManagementDialog()
+        case .advanced: showAdvancedDialog()
         case .help: coordinator?.showHelp()
         }
     }
@@ -361,8 +361,9 @@ internal final class SettingsViewController: UITableViewController {
         present(askAlert, animated: true, completion: nil)
     }
 
-    private func showKeyManagementDialog() {
-        let alert = UIAlertController(title: String.localized("pref_manage_keys"), message: nil, preferredStyle: .safeActionSheet)
+    private func showAdvancedDialog() {
+        let alert = UIAlertController(title: String.localized("menu_advanced"), message: nil, preferredStyle: .safeActionSheet)
+
         alert.addAction(UIAlertAction(title: String.localized("pref_managekeys_export_secret_keys"), style: .default, handler: { _ in
             let msg = String.localizedStringWithFormat(String.localized("pref_managekeys_export_explain"), self.externalPathDescr)
             let alert = UIAlertController(title: nil, message: msg, preferredStyle: .alert)
@@ -372,6 +373,7 @@ internal final class SettingsViewController: UITableViewController {
             alert.addAction(UIAlertAction(title: String.localized("cancel"), style: .cancel, handler: nil))
             self.present(alert, animated: true, completion: nil)
         }))
+
         alert.addAction(UIAlertAction(title: String.localized("pref_managekeys_import_secret_keys"), style: .default, handler: { _ in
             let msg = String.localizedStringWithFormat(String.localized("pref_managekeys_import_explain"), self.externalPathDescr)
             let alert = UIAlertController(title: nil, message: msg, preferredStyle: .alert)
@@ -381,6 +383,14 @@ internal final class SettingsViewController: UITableViewController {
             alert.addAction(UIAlertAction(title: String.localized("cancel"), style: .cancel, handler: nil))
             self.present(alert, animated: true, completion: nil)
         }))
+
+        let locationStreaming = UserDefaults.standard.bool(forKey: "location_streaming")
+        let title = locationStreaming ?
+            "Disable on-demand location streaming" : String.localized("pref_on_demand_location_streaming")
+        alert.addAction(UIAlertAction(title: title, style: .default, handler: { _ in
+            UserDefaults.standard.set(!locationStreaming, forKey: "location_streaming")
+        }))
+
         alert.addAction(UIAlertAction(title: String.localized("cancel"), style: .cancel, handler: nil))
         present(alert, animated: true, completion: nil)
     }

+ 0 - 2
deltachat-ios/Helper/Constants.swift

@@ -11,8 +11,6 @@ struct Constants {
         static let deltachatImapPasswordKey = "__DELTACHAT_IMAP_PASSWORD_KEY__"
     }
 
-
-
     static let defaultShadow = UIImage(color: UIColor(hexString: "ff2b82"), size: CGSize(width: 1, height: 1))
     static let onlineShadow = UIImage(color: UIColor(hexString: "3ed67e"), size: CGSize(width: 1, height: 1))
 

+ 1 - 1
docs/release-checklist.md

@@ -53,5 +53,5 @@ on https://appstoreconnect.apple.com :
 in both cases, make sure, the provided test-email-address is working.
 finally, back on command line:
 
-9. commit changes from 1.-4. add add a tag:
+9. commit changes from 1.-5. add add a tag:
    $ git tag v1.2.3; git push --tags