mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-11-25 17:43:18 +00:00
Initial navigation voiceover support
This commit is contained in:
parent
6fe1f84daf
commit
f0c3398118
@ -80,14 +80,23 @@ public class ChatListController: TelegramController, KeyShortcutResponder, UIVie
|
||||
self.tabBarItem.image = icon
|
||||
self.tabBarItem.selectedImage = icon
|
||||
|
||||
self.navigationItem.leftBarButtonItem = UIBarButtonItem(title: self.presentationData.strings.Common_Edit, style: .plain, target: self, action: #selector(self.editPressed))
|
||||
self.navigationItem.rightBarButtonItem = UIBarButtonItem(image: PresentationResourcesRootController.navigationComposeIcon(self.presentationData.theme), style: .plain, target: self, action: #selector(self.composePressed))
|
||||
let leftBarButtonItem = UIBarButtonItem(title: self.presentationData.strings.Common_Edit, style: .plain, target: self, action: #selector(self.editPressed))
|
||||
leftBarButtonItem.accessibilityLabel = self.presentationData.strings.Common_Edit
|
||||
self.navigationItem.leftBarButtonItem = leftBarButtonItem
|
||||
|
||||
let rightBarButtonItem = UIBarButtonItem(image: PresentationResourcesRootController.navigationComposeIcon(self.presentationData.theme), style: .plain, target: self, action: #selector(self.composePressed))
|
||||
rightBarButtonItem.accessibilityLabel = "Compose"
|
||||
self.navigationItem.rightBarButtonItem = rightBarButtonItem
|
||||
} else {
|
||||
self.navigationItem.title = "Channels"
|
||||
self.navigationItem.rightBarButtonItem = UIBarButtonItem(title: self.presentationData.strings.Common_Edit, style: .plain, target: self, action: #selector(self.editPressed))
|
||||
let rightBarButtonItem = UIBarButtonItem(title: self.presentationData.strings.Common_Edit, style: .plain, target: self, action: #selector(self.editPressed))
|
||||
rightBarButtonItem.accessibilityLabel = self.presentationData.strings.Common_Edit
|
||||
self.navigationItem.rightBarButtonItem = rightBarButtonItem
|
||||
}
|
||||
|
||||
self.navigationItem.backBarButtonItem = UIBarButtonItem(title: self.presentationData.strings.DialogList_Title, style: .plain, target: nil, action: nil)
|
||||
let backBarButtonItem = UIBarButtonItem(title: self.presentationData.strings.DialogList_Title, style: .plain, target: nil, action: nil)
|
||||
backBarButtonItem.accessibilityLabel = self.presentationData.strings.Common_Back
|
||||
self.navigationItem.backBarButtonItem = backBarButtonItem
|
||||
|
||||
self.scrollToTop = { [weak self] in
|
||||
if let strongSelf = self {
|
||||
@ -271,7 +280,11 @@ public class ChatListController: TelegramController, KeyShortcutResponder, UIVie
|
||||
|
||||
private func updateThemeAndStrings() {
|
||||
self.tabBarItem.title = self.presentationData.strings.DialogList_Title
|
||||
self.navigationItem.backBarButtonItem = UIBarButtonItem(title: self.presentationData.strings.DialogList_Title, style: .plain, target: nil, action: nil)
|
||||
|
||||
let backBarButtonItem = UIBarButtonItem(title: self.presentationData.strings.DialogList_Title, style: .plain, target: nil, action: nil)
|
||||
backBarButtonItem.accessibilityLabel = self.presentationData.strings.Common_Back
|
||||
self.navigationItem.backBarButtonItem = backBarButtonItem
|
||||
|
||||
self.searchContentNode?.updateThemeAndPlaceholder(theme: self.presentationData.theme, placeholder: self.presentationData.strings.DialogList_SearchLabel)
|
||||
var editing = false
|
||||
self.chatListDisplayNode.chatListNode.updateState { state in
|
||||
@ -281,12 +294,16 @@ public class ChatListController: TelegramController, KeyShortcutResponder, UIVie
|
||||
let editItem: UIBarButtonItem
|
||||
if editing {
|
||||
editItem = UIBarButtonItem(title: self.presentationData.strings.Common_Done, style: .done, target: self, action: #selector(self.donePressed))
|
||||
editItem.accessibilityLabel = self.presentationData.strings.Common_Done
|
||||
} else {
|
||||
editItem = UIBarButtonItem(title: self.presentationData.strings.Common_Edit, style: .plain, target: self, action: #selector(self.editPressed))
|
||||
editItem.accessibilityLabel = self.presentationData.strings.Common_Edit
|
||||
}
|
||||
if self.groupId == nil {
|
||||
self.navigationItem.leftBarButtonItem = editItem
|
||||
self.navigationItem.rightBarButtonItem = UIBarButtonItem(image: PresentationResourcesRootController.navigationComposeIcon(self.presentationData.theme), style: .plain, target: self, action: #selector(self.composePressed))
|
||||
let rightBarButtonItem = UIBarButtonItem(image: PresentationResourcesRootController.navigationComposeIcon(self.presentationData.theme), style: .plain, target: self, action: #selector(self.composePressed))
|
||||
rightBarButtonItem.accessibilityLabel = "Compose"
|
||||
self.navigationItem.rightBarButtonItem = rightBarButtonItem
|
||||
} else {
|
||||
self.navigationItem.rightBarButtonItem = editItem
|
||||
}
|
||||
@ -764,6 +781,7 @@ public class ChatListController: TelegramController, KeyShortcutResponder, UIVie
|
||||
|
||||
@objc func editPressed() {
|
||||
let editItem = UIBarButtonItem(title: self.presentationData.strings.Common_Done, style: .done, target: self, action: #selector(self.donePressed))
|
||||
editItem.accessibilityLabel = self.presentationData.strings.Common_Done
|
||||
if self.groupId == nil {
|
||||
self.navigationItem.leftBarButtonItem = editItem
|
||||
} else {
|
||||
@ -780,6 +798,7 @@ public class ChatListController: TelegramController, KeyShortcutResponder, UIVie
|
||||
|
||||
@objc func donePressed() {
|
||||
let editItem = UIBarButtonItem(title: self.presentationData.strings.Common_Edit, style: .plain, target: self, action: #selector(self.editPressed))
|
||||
editItem.accessibilityLabel = self.presentationData.strings.Common_Edit
|
||||
if self.groupId == nil {
|
||||
self.navigationItem.leftBarButtonItem = editItem
|
||||
} else {
|
||||
|
||||
@ -25,7 +25,8 @@ final class NetworkStatusTitleView: UIView, NavigationBarTitleView, NavigationBa
|
||||
var title: NetworkStatusTitle = NetworkStatusTitle(text: "", activity: false, hasProxy: false, connectsViaProxy: false, isPasscodeSet: false, isManuallyLocked: false) {
|
||||
didSet {
|
||||
if self.title != oldValue {
|
||||
self.titleNode.attributedText = NSAttributedString(string: title.text, font: Font.bold(17.0), textColor: self.theme.rootController.navigationBar.primaryTextColor)
|
||||
self.titleNode.attributedText = NSAttributedString(string: self.title.text, font: Font.bold(17.0), textColor: self.theme.rootController.navigationBar.primaryTextColor)
|
||||
self.accessibilityLabel = self.title.text
|
||||
self.activityIndicator.isHidden = !self.title.activity
|
||||
if self.title.connectsViaProxy {
|
||||
self.proxyNode.status = self.title.activity ? .connecting : .connected
|
||||
@ -97,6 +98,9 @@ final class NetworkStatusTitleView: UIView, NavigationBarTitleView, NavigationBa
|
||||
|
||||
super.init(frame: CGRect())
|
||||
|
||||
self.isAccessibilityElement = true
|
||||
self.accessibilityTraits = UIAccessibilityTraitHeader
|
||||
|
||||
self.addSubnode(self.activityIndicator)
|
||||
self.addSubnode(self.titleNode)
|
||||
self.addSubnode(self.proxyNode)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user