Jason A. Donenfeld
71d26b4122
TunnelsManager: Wait for 6 seconds on deactivation instead of 5
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-02-06 01:52:31 +01:00
Roopesh Chander
71525c9d4e
wg-quick conf parser: Handle inline comments correctly
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-05 16:45:32 +05:30
Roopesh Chander
02a96d4566
macOS: Select tunnel after adding it with 'Add empty tunnel'
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-05 16:39:19 +05:30
Roopesh Chander
466db151b8
macOS: Ensure fields are updated on saving
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-05 16:15:43 +05:30
Roopesh Chander
1be133f269
iOS: Ensure fields are updated on saving
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-05 15:54:23 +05:30
Roopesh Chander
80de2ac6ac
macOS: Apply runtime configuration by diff-ing
...
And apply the diff on the tableView as insertRows/removeRows.
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-05 12:36:35 +05:30
Roopesh Chander
8a6a60482c
TunnelViewModel: Don't call peer change handler if there are no changes
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-05 12:36:34 +05:30
Roopesh Chander
657ec34d19
macOS: Tunnel detail: Refactor calculation of tableViewModelRows
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-05 12:36:34 +05:30
Jason A. Donenfeld
f7a31ca7bb
x25519: demand RNG is successful
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-02-05 00:49:48 +01:00
Jason A. Donenfeld
3c61db3a21
Config: Add template for macOS key
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-02-03 13:47:42 +01:00
Roopesh Chander
618d89941a
iOS: SwitchCell should hold the observation token
...
And should nil the token when preparing for reuse.
This also reverts "iOS: Tunnel detail: Refactor updation of status"
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-03 12:40:19 +05:30
Roopesh Chander
cbc602245e
iOS: KeyValueCell should hold the observation token
...
And should nil the token when preparing for reuse.
Otherwise, the observation closure is still active even after the cell
gets reused.
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-03 12:40:19 +05:30
Roopesh Chander
4ff6105053
iOS: Apply runtime configuration by diff-ing
...
And apply the diff on the tableView as insert/remove/reloads.
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-02 19:22:01 +05:30
Roopesh Chander
4134baced1
iOS: Tunnel detail: Keep track of visible fields with a [Bool] array
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-02 18:10:57 +05:30
Jason A. Donenfeld
0c5739db82
Strings: fix backwards clock wording
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-02-01 14:49:38 +01:00
Roopesh Chander
1f51ff6b17
iOS: Tunnel detail: Reload runtime config every second
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-02-01 15:27:17 +05:30
Roopesh Chander
08e5d65045
iOS: Tunnel detail: Refactor updation of status
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-31 18:46:46 +05:30
Roopesh Chander
1189b3d700
Fix handling of 'PersistentKeepalive: every n seconds'
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-31 18:22:08 +05:30
Roopesh Chander
f292a0ec7a
iOS: Make it compile again
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-31 18:17:04 +05:30
Roopesh Chander
3b29578524
Configure timers to fire even when tracking mouse events
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-31 17:04:34 +05:30
Roopesh Chander
70ac48ceba
macOS: Tunnel detail: Reload runtime config every second
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-31 16:48:51 +05:30
Roopesh Chander
acecc70397
Logger: Convert do-catch to try?
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-28 17:50:48 +05:30
Roopesh Chander
b0bb2e993a
Runtime info: Make bytecount and timestamp info prettier
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-28 17:27:08 +05:30
Roopesh Chander
d1f83d167e
Persistent Keepalive detail should read 'every n seconds'
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-28 16:07:28 +05:30
Roopesh Chander
a796c6c485
TunnelsManager: Invoke reload() in a subsequent runloop
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-26 14:31:42 +05:30
Roopesh Chander
6ad3487a9d
macOS: Delay .deactivated status to workaround system bug
...
For some time after it's connection status becomes .disconnected,
if a tunnel gets started, it gets automatically killed by the system
after ~25 seconds.
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-26 14:25:38 +05:30
Roopesh Chander
eabeb8ff05
macOS: Select the active tunnel when showing the manage tunnels window
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-24 18:35:11 +05:30
Roopesh Chander
52eec55d36
TunnelsTracker: Simplify using TunnelsManager.tunnelInOperation()
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-24 18:11:55 +05:30
Roopesh Chander
3c80490273
TunnelsManager: func tunnelInOperation()
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-24 18:11:26 +05:30
Roopesh Chander
c36a9e4ffd
macOS: Ensure status is up-to-date on startup
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-24 16:51:01 +05:30
Roopesh Chander
812e660491
Config file parsing: Fix bug when there are comments at the end
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-24 16:23:07 +05:30
Jason A. Donenfeld
2fe9f83ba5
macOS: show runtime configuration in tunnel manager
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-24 01:37:57 +01:00
Jason A. Donenfeld
22625e8cc4
Tunnel: support getting runtime configuration
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-24 01:37:57 +01:00
Roopesh Chander
19f353127e
macOS: Tunnel detail: Fix updation of tunnelEditVC
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-23 19:26:43 +05:30
Roopesh Chander
e5a76be6fd
macOS: Deactivate any active tunnel when app exits
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-23 16:31:30 +05:30
Roopesh Chander
76527ef0f8
macOS: Adapt to TunnelsManagerListDelegate changes
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-23 16:21:20 +05:30
Roopesh Chander
11e44f9ae5
iOS: Fix stale tunnel being shown on iPad
...
When the detail view is shown in the iPad and we delete
the current tunnel with a list view swipe rather than the delete button,
the detail view should go blank.
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-23 16:11:55 +05:30
Roopesh Chander
77d4a02139
iOS: Fix handling of deletion outside app
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-23 14:48:45 +05:30
Roopesh Chander
54f45cb3f8
macOS: reload: Iterate in reverse
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 20:06:52 +05:30
Jason A. Donenfeld
704de3b26c
TunnelsManager: refresh status after replacing insides
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-22 15:35:14 +01:00
Jason A. Donenfeld
d05b735703
TunnelsManager: use new helper
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-22 15:20:57 +01:00
Roopesh Chander
9f362e8cb0
macOS: Tunnel edit: Handle deletion outside app
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 19:30:21 +05:30
Roopesh Chander
2677efc9bf
macOS: Tunnel detail: Handle deletion outside app
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 19:30:21 +05:30
Roopesh Chander
2aad8cf0e8
macOS: Handle tunnel deletions outside the app
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 19:30:21 +05:30
Jason A. Donenfeld
668c4a475c
macOS: remove mobile network tweeks
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-22 13:11:28 +01:00
Jason A. Donenfeld
557b093232
MacOS: StatusMenu: Properly localize menu title
...
Partially revert "macOS: StatusMenu: Remove unused menu title"
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-22 11:26:07 +01:00
Roopesh Chander
6f9fa35c5a
macOS: Disable save button if the syntax highlighter detects any errors
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 12:57:32 +05:30
Roopesh Chander
d37e230ee0
macOS: Fix crash when importing using NoTunnelsDetailVC's button
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 05:00:39 +05:30
Roopesh Chander
e812683d6c
macOS: StatusMenu: Remove unused menu title
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 04:41:52 +05:30
Roopesh Chander
6d8e5cf3ed
Let there be newlines at the end of all files
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 04:40:47 +05:30
Roopesh Chander
244a2df2dd
Fix localization
...
- Use Unicode ellipses
- Use single quotes everywhere
- Use smart quotes
- Minor text change ("You cannot undo this action.")
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 04:35:13 +05:30
Roopesh Chander
0848765f50
macOS: Use Unicode version of '...' for menu text
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 04:16:22 +05:30
Roopesh Chander
8951ea338f
macOS: Fix status-related menu items
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 04:11:24 +05:30
Roopesh Chander
273ee04450
Better os() directives
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 04:06:37 +05:30
Jason A. Donenfeld
e2b068af1a
macOS: Tunnel edit: actually clean up error handling
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-21 23:21:47 +01:00
Jason A. Donenfeld
4e2f4e7124
XCode: set default signing identity back
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-21 23:17:08 +01:00
Roopesh Chander
6509009afc
macOS: Tunnel edit: Clean up error handling when saving
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 03:26:01 +05:30
Jason A. Donenfeld
0b2a4c2811
macOS: Observe private key changes for new tunnels too
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-21 22:55:25 +01:00
Jason A. Donenfeld
e1198b6e08
macOS: Better highlighter default value and move c implementation
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-21 22:22:20 +01:00
Jason A. Donenfeld
d7a88300f6
macOS: Make highlighter themes static
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-21 22:13:14 +01:00
Roopesh Chander
b22aeaeb20
Avoid using return in single-line closures
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 02:01:32 +05:30
Roopesh Chander
e0798b8a97
macOS: Make color theme use a dict
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 02:01:32 +05:30
Roopesh Chander
1bc2177883
macOS: Reset attributes for each syntax highlight cycle
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 01:19:16 +05:30
Roopesh Chander
15517c4c3d
macOS: Refactor syntax highlighting
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-22 01:18:07 +05:30
Roopesh Chander
f6c9ce2d71
macOS: Simplify NSColor extension
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-21 19:07:42 +05:30
Jason A. Donenfeld
5aa0f1a25f
macOS: show icon for inactive state
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-18 21:17:53 +01:00
Jason A. Donenfeld
602639ee25
highlighter: do not rely on localized case comparisons
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-18 09:32:49 +01:00
Jason A. Donenfeld
d06887d435
Xcode: move directives to toplevel project when possible
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-18 09:32:49 +01:00
Jason A. Donenfeld
470e4e7f7f
global: Fix up copyright headers
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-18 09:32:49 +01:00
Roopesh Chander
86165d25f7
TunnelsManager: Remove unused variable
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-18 09:32:49 +01:00
Roopesh Chander
69b973efdc
macOS: Tunnel detail: Better alignment for bottom controls
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-18 09:32:49 +01:00
Roopesh Chander
dc8f27c5c3
macOS: Rafactor by introducing a TunnelsTracker
...
The TunnelTracker is now the central place to track what the current
tunnel is, and for keeping track of the tunnel list.
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-18 01:34:24 +05:30
Roopesh Chander
796342ddec
macOS: Fix autolayout errors on Add Empty Tunnel
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-17 14:20:09 +05:30
Roopesh Chander
b7a5b8eff1
macOS: Update copyright year
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-17 14:08:11 +05:30
Roopesh Chander
8a0245190c
macOS: Make sure app is active when showing the About dialog
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-17 14:05:23 +05:30
Roopesh Chander
98775bf8a0
macOS: Application: Fix comment
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-17 14:03:59 +05:30
Roopesh Chander
7d5eb476e4
macOS: Manage tunnels: Make keyboard shortcuts discoverable
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-17 02:43:24 +05:30
Roopesh Chander
c477d24d67
macOS: Manage tunnels: Keyboard shortcuts
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-17 01:44:50 +05:30
Roopesh Chander
bf9cb092a9
macOS: Tunnel edit: Rename action handling methods
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-17 01:28:57 +05:30
Roopesh Chander
dbd5108475
macOS: Tunnel detail: Rename action handling methods
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-17 00:41:32 +05:30
Roopesh Chander
47c5f23a0a
macOS: Tunnels list: Rename action handling methods
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-17 00:38:44 +05:30
Roopesh Chander
a2871e63a7
macOS: Support window management keyboard shortcuts
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-16 18:01:59 +05:30
Jason A. Donenfeld
811714e21a
macOS: Networks should show allowedIPs and disappear when inactive
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-15 22:35:30 +01:00
Roopesh Chander
f63c9fd598
macOS: Use tunnelOverheadBytes for automatic MTU in macOS
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-16 01:51:56 +05:30
Roopesh Chander
e29cf19fdd
macOS: Different status bar icon looks for different states
...
- Looks dimmed when no tunnel is active
- Looks normal when a tunnel is active
- Animates when a tunnel is activating
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-16 01:26:10 +05:30
Roopesh Chander
26ea353933
macOS: Add About dialog
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-14 14:52:37 +05:30
Roopesh Chander
cd5427ef92
macOS: Add app icon
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-14 14:52:37 +05:30
Roopesh Chander
595f7943e2
macOS: Edit view: Auto hide editor scrollbars
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-14 14:52:37 +05:30
Roopesh Chander
55f022688d
macOS: To set default size, change frame instead of min size
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-14 14:52:37 +05:30
Roopesh Chander
96bd50504b
macOS: Fix editor scrolling
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-14 14:52:37 +05:30
Eric Kuck
97fec0d992
Default view controller sizes
...
Signed-off-by: Eric Kuck <eric@bluelinelabs.com>
2019-01-14 14:52:36 +05:30
Jason A. Donenfeld
470532d146
ConfTextView: enable undo and disable junk
...
Double space stil makes a period, unfortunately.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-14 14:52:36 +05:30
Eric Kuck
321b88864c
Cut/copy/paste now work
...
Signed-off-by: Eric Kuck <eric@bluelinelabs.com>
2019-01-14 14:52:36 +05:30
Jason A. Donenfeld
ba731e0099
Resync highlighter
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-14 14:52:36 +05:30
Eric Kuck
70848c04de
Syntax highlighter color updates
...
Signed-off-by: Eric Kuck <eric@bluelinelabs.com>
2019-01-14 14:52:36 +05:30
Roopesh Chander
13e8c6b178
macOS: Support for on-demand activation
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-14 14:52:36 +05:30
Roopesh Chander
53e915c578
macOS: Quit menu item
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-14 14:52:36 +05:30
Roopesh Chander
bc8ea55023
macOS: Get the app back in focus after macOS' VPN prompt
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-14 14:52:35 +05:30
Roopesh Chander
e0af06844d
macOS: Fix 'Network' entry in menu
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-14 14:52:35 +05:30
Roopesh Chander
8980b5a524
macOS: Ensure a tunnel is selected when '-' is clicked
...
Signed-off-by: Roopesh Chander <roop@roopc.net>
2019-01-14 14:52:35 +05:30