فهرست منبع

code cleaning

Bastian van de Wetering 6 سال پیش
والد
کامیت
4547ac070a

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

@@ -88,6 +88,7 @@
 		7AE0A5491FC42F65005ECB4B /* NewChatViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AE0A5481FC42F65005ECB4B /* NewChatViewController.swift */; };
 		8B6D425BC604F7C43B65D436 /* Pods_deltachat_ios.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6241BE1534A653E79AD5D01D /* Pods_deltachat_ios.framework */; };
 		AE0D26FD1FB1FE88002FAFCE /* ChatListController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE0D26FC1FB1FE88002FAFCE /* ChatListController.swift */; };
+		AE25F09022807AD800CDEA66 /* GroupNameCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE25F08F22807AD800CDEA66 /* GroupNameCell.swift */; };
 		AE38B31822672DFC00EC37A1 /* ActionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE38B31722672DFC00EC37A1 /* ActionCell.swift */; };
 		AE38B31A2267328200EC37A1 /* Colors.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE38B3192267328200EC37A1 /* Colors.swift */; };
 		AE8519EA2272FDCA00ED86F0 /* DeviceContactsHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8519E92272FDCA00ED86F0 /* DeviceContactsHandler.swift */; };
@@ -278,6 +279,7 @@
 		8DE110C607A0E4485C43B5FA /* Pods-deltachat-ios.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-deltachat-ios.debug.xcconfig"; path = "Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios.debug.xcconfig"; sourceTree = "<group>"; };
 		A8615D4600859851E53CAA9C /* Pods-deltachat-ios.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-deltachat-ios.release.xcconfig"; path = "Pods/Target Support Files/Pods-deltachat-ios/Pods-deltachat-ios.release.xcconfig"; sourceTree = "<group>"; };
 		AE0D26FC1FB1FE88002FAFCE /* ChatListController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatListController.swift; sourceTree = "<group>"; };
+		AE25F08F22807AD800CDEA66 /* GroupNameCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GroupNameCell.swift; sourceTree = "<group>"; };
 		AE38B31722672DFC00EC37A1 /* ActionCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActionCell.swift; sourceTree = "<group>"; };
 		AE38B3192267328200EC37A1 /* Colors.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Colors.swift; sourceTree = "<group>"; };
 		AE8519E92272FDCA00ED86F0 /* DeviceContactsHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DeviceContactsHandler.swift; sourceTree = "<group>"; };
@@ -633,6 +635,7 @@
 				789E879C21D6DF86003ED1C5 /* ProgressHud.swift */,
 				AE38B31722672DFC00EC37A1 /* ActionCell.swift */,
 				AE851ACD227CA54300ED86F0 /* InitialsLabel.swift */,
+				AE25F08F22807AD800CDEA66 /* GroupNameCell.swift */,
 			);
 			path = View;
 			sourceTree = "<group>";
@@ -956,6 +959,7 @@
 				7070FB8F20FF4118000DC258 /* dc_loginparam.c in Sources */,
 				AE851AC7227C776400ED86F0 /* Location.swift in Sources */,
 				7AE0A5491FC42F65005ECB4B /* NewChatViewController.swift in Sources */,
+				AE25F09022807AD800CDEA66 /* GroupNameCell.swift in Sources */,
 				78E45E3A21D3CFBC00D4B15E /* SettingsController.swift in Sources */,
 				AE8519EA2272FDCA00ED86F0 /* DeviceContactsHandler.swift in Sources */,
 				78ED838321D5379000243125 /* TextFieldCell.swift in Sources */,

+ 2 - 0
deltachat-ios/Controller/ChatDetailViewController.swift

@@ -8,6 +8,8 @@
 
 import UIKit
 
+// TODO: checkout if it makes sense to  run group chats and single chats within this chatDetailViewController or maybe seperate these
+
 class ChatDetailViewController: UIViewController {
 
 	weak var coordinator: ChatDetailCoordinator?

+ 0 - 56
deltachat-ios/Controller/GroupNameController.swift

@@ -117,62 +117,6 @@ class GroupNameController: UITableViewController {
 
 
 
-class GroupLabelCell: UITableViewCell {
-
-	private let groupBadgeSize: CGFloat = 60
-	var groupNameUpdated: ((String) -> ())?
-
-	lazy var groupBadge: InitialsLabel = {
-		let badge = InitialsLabel(size: groupBadgeSize)
-		badge.set(color: UIColor.lightGray)
-		return badge
-	}()
-
-	lazy var inputField: UITextField = {
-		let textField = UITextField()
-		textField.placeholder = "Group Name"
-		textField.borderStyle = .none
-		textField.becomeFirstResponder()
-		textField.autocorrectionType = .no
-		textField.addTarget(self, action: #selector(nameFieldChanged), for: .editingChanged)
-		return textField
-	}()
-
-	override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
-		super.init(style: style, reuseIdentifier: reuseIdentifier)
-		setupSubviews()
-	}
-
-	required init?(coder aDecoder: NSCoder) {
-		fatalError("init(coder:) has not been implemented")
-	}
-
-	private func setupSubviews() {
-
-		contentView.addSubview(groupBadge)
-		groupBadge.translatesAutoresizingMaskIntoConstraints = false
-
-		groupBadge.leadingAnchor.constraint(equalTo: contentView.layoutMarginsGuide.leadingAnchor, constant: 0).isActive = true
-		groupBadge.topAnchor.constraint(equalTo: contentView.layoutMarginsGuide.topAnchor, constant: 5).isActive = true
-		groupBadge.bottomAnchor.constraint(equalTo: contentView.layoutMarginsGuide.bottomAnchor, constant: -5).isActive = true
-		groupBadge.widthAnchor.constraint(equalToConstant: groupBadgeSize).isActive = true
-		groupBadge.heightAnchor.constraint(equalToConstant: groupBadgeSize).isActive = true
-
-		contentView.addSubview(inputField)
-		inputField.translatesAutoresizingMaskIntoConstraints = false
-
-		inputField.leadingAnchor.constraint(equalTo: groupBadge.trailingAnchor, constant: 15).isActive = true
-		inputField.heightAnchor.constraint(equalToConstant: 45).isActive = true
-		inputField.centerYAnchor.constraint(equalTo: groupBadge.centerYAnchor, constant: 0).isActive = true
-		inputField.trailingAnchor.constraint(equalTo: contentView.layoutMarginsGuide.trailingAnchor, constant: 0).isActive = true
-	}
-
-	@objc func nameFieldChanged() {
-		let groupName = inputField.text ?? ""
-		groupBadge.set(name: groupName)
-		groupNameUpdated?(groupName)
-	}
-}
 
 
 

+ 6 - 4
deltachat-ios/Controller/NewGroupViewController.swift

@@ -20,9 +20,7 @@ class NewGroupViewController: UITableViewController {
     }
   }
 
-  @objc func didPressGroupCreationNextButton() {
-		coordinator?.showGroupNameController(contactIdsForGroup: contactIdsForGroup)
-  }
+
 
   override func viewDidLoad() {
     super.viewDidLoad()
@@ -30,7 +28,7 @@ class NewGroupViewController: UITableViewController {
     navigationItem.prompt = "0 members and me"
     tableView.register(ContactCell.self, forCellReuseIdentifier: contactCellReuseIdentifier)
     navigationController?.navigationBar.prefersLargeTitles = false
-    let groupCreationNextButton = UIBarButtonItem(title: "Next", style: .done, target: self, action: #selector(didPressGroupCreationNextButton))
+    let groupCreationNextButton = UIBarButtonItem(title: "Next", style: .done, target: self, action: #selector(nextButtonPressed))
     navigationItem.rightBarButtonItem = groupCreationNextButton
   }
 
@@ -77,4 +75,8 @@ class NewGroupViewController: UITableViewController {
       }
     }
   }
+	
+	@objc func nextButtonPressed() {
+		coordinator?.showGroupNameController(contactIdsForGroup: contactIdsForGroup)
+	}
 }

+ 0 - 1
deltachat-ios/Coordinator/AppCoordinator.swift

@@ -185,7 +185,6 @@ class NewChatCoordinator: Coordinator {
 		self.navigationController = navigationController
 	}
 
-
 	func showNewGroupController() {
 		let newGroupController = NewGroupViewController()
 		let coordinator = NewGroupCoordinator(navigationController: self.navigationController)

+ 67 - 0
deltachat-ios/View/GroupNameCell.swift

@@ -0,0 +1,67 @@
+//
+//  GroupNameCell.swift
+//  deltachat-ios
+//
+//  Created by Bastian van de Wetering on 06.05.19.
+//  Copyright © 2019 Jonas Reinsch. All rights reserved.
+//
+
+import UIKit
+
+class GroupLabelCell: UITableViewCell {
+
+	private let groupBadgeSize: CGFloat = 60
+	var groupNameUpdated: ((String) -> Void)?	// use this callback to update editButton in navigationController
+
+	lazy var groupBadge: InitialsLabel = {
+		let badge = InitialsLabel(size: groupBadgeSize)
+		badge.set(color: UIColor.lightGray)
+		return badge
+	}()
+
+	lazy var inputField: UITextField = {
+		let textField = UITextField()
+		textField.placeholder = "Group Name"
+		textField.borderStyle = .none
+		textField.becomeFirstResponder()
+		textField.autocorrectionType = .no
+		textField.addTarget(self, action: #selector(nameFieldChanged), for: .editingChanged)
+		return textField
+	}()
+
+	override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
+		super.init(style: style, reuseIdentifier: reuseIdentifier)
+		setupSubviews()
+	}
+
+	required init?(coder aDecoder: NSCoder) {
+		fatalError("init(coder:) has not been implemented")
+	}
+
+	private func setupSubviews() {
+
+		contentView.addSubview(groupBadge)
+		groupBadge.translatesAutoresizingMaskIntoConstraints = false
+
+		groupBadge.leadingAnchor.constraint(equalTo: contentView.layoutMarginsGuide.leadingAnchor, constant: 0).isActive = true
+		groupBadge.topAnchor.constraint(equalTo: contentView.layoutMarginsGuide.topAnchor, constant: 5).isActive = true
+		groupBadge.bottomAnchor.constraint(equalTo: contentView.layoutMarginsGuide.bottomAnchor, constant: -5).isActive = true
+		groupBadge.widthAnchor.constraint(equalToConstant: groupBadgeSize).isActive = true
+		groupBadge.heightAnchor.constraint(equalToConstant: groupBadgeSize).isActive = true
+
+		contentView.addSubview(inputField)
+		inputField.translatesAutoresizingMaskIntoConstraints = false
+
+		inputField.leadingAnchor.constraint(equalTo: groupBadge.trailingAnchor, constant: 15).isActive = true
+		inputField.heightAnchor.constraint(equalToConstant: 45).isActive = true
+		inputField.centerYAnchor.constraint(equalTo: groupBadge.centerYAnchor, constant: 0).isActive = true
+		inputField.trailingAnchor.constraint(equalTo: contentView.layoutMarginsGuide.trailingAnchor, constant: 0).isActive = true
+	}
+
+	@objc func nameFieldChanged() {
+		let groupName = inputField.text ?? ""
+		groupBadge.set(name: groupName)
+		groupNameUpdated?(groupName)
+	}
+}
+