aboutsummaryrefslogtreecommitdiffstats
path: root/WireGuard/WireGuard/UI
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2018-10-31 16:38:05 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2018-10-31 16:38:05 +0100
commitfff1a70ab9cad053a39d787d70609528a78d3cfa (patch)
tree6f168ae7d8ef4f706c48386b2a61406e3b7fcb38 /WireGuard/WireGuard/UI
parentTunnelManager: bound recursion in startActivation (diff)
downloadwireguard-apple-fff1a70ab9cad053a39d787d70609528a78d3cfa.tar.xz
wireguard-apple-fff1a70ab9cad053a39d787d70609528a78d3cfa.zip
UI: not all subclasses of CopyableLabelTableViewCell have a detailTextLabel, so generalize
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'WireGuard/WireGuard/UI')
-rw-r--r--WireGuard/WireGuard/UI/iOS/CopyableLabelTableViewCell.swift6
-rw-r--r--WireGuard/WireGuard/UI/iOS/TunnelDetailTableViewController.swift4
-rw-r--r--WireGuard/WireGuard/UI/iOS/TunnelEditTableViewController.swift4
3 files changed, 13 insertions, 1 deletions
diff --git a/WireGuard/WireGuard/UI/iOS/CopyableLabelTableViewCell.swift b/WireGuard/WireGuard/UI/iOS/CopyableLabelTableViewCell.swift
index 779fe8f..ffe8d6f 100644
--- a/WireGuard/WireGuard/UI/iOS/CopyableLabelTableViewCell.swift
+++ b/WireGuard/WireGuard/UI/iOS/CopyableLabelTableViewCell.swift
@@ -6,6 +6,10 @@ import UIKit
class CopyableLabelTableViewCell: UITableViewCell {
var copyableGesture = true
+ var textToCopy: String? {
+ fatalError("textToCopy must be implemented by subclass")
+ }
+
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
@@ -41,7 +45,7 @@ class CopyableLabelTableViewCell: UITableViewCell {
}
override func copy(_ sender: Any?) {
- UIPasteboard.general.string = self.detailTextLabel?.text
+ UIPasteboard.general.string = textToCopy
}
override func prepareForReuse() {
diff --git a/WireGuard/WireGuard/UI/iOS/TunnelDetailTableViewController.swift b/WireGuard/WireGuard/UI/iOS/TunnelDetailTableViewController.swift
index fe413c9..72df738 100644
--- a/WireGuard/WireGuard/UI/iOS/TunnelDetailTableViewController.swift
+++ b/WireGuard/WireGuard/UI/iOS/TunnelDetailTableViewController.swift
@@ -311,6 +311,10 @@ class TunnelDetailTableViewKeyValueCell: CopyableLabelTableViewCell {
set(value) { detailTextLabel?.text = value }
}
+ override var textToCopy: String? {
+ return self.detailTextLabel?.text
+ }
+
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: .value1, reuseIdentifier: TunnelDetailTableViewKeyValueCell.id)
}
diff --git a/WireGuard/WireGuard/UI/iOS/TunnelEditTableViewController.swift b/WireGuard/WireGuard/UI/iOS/TunnelEditTableViewController.swift
index e0b11e4..a536499 100644
--- a/WireGuard/WireGuard/UI/iOS/TunnelEditTableViewController.swift
+++ b/WireGuard/WireGuard/UI/iOS/TunnelEditTableViewController.swift
@@ -441,6 +441,10 @@ class TunnelEditTableViewKeyValueCell: CopyableLabelTableViewCell {
valueTextField.spellCheckingType = .no
}
+ override var textToCopy: String? {
+ return self.valueTextField.text
+ }
+
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}