Commit Graph

912 Commits

Author SHA1 Message Date
Jason A. Donenfeld eccd16a7ff Version bump 2019-04-12 10:32:06 +02:00
Roopesh Chander 7f4b5b4a7b Log view: Don't use a global array to store log entries 2019-04-10 17:57:36 +05:30
Roopesh Chander af9bd363bd macOS: Log view: Stop updating the log once the log view is dismissed 2019-04-10 15:42:39 +05:30
Jason A. Donenfeld 8eb3795efb Version bump 2019-04-09 10:49:48 +02:00
Roopesh Chander 43024dfcbb Swift 5 migration: Handle changes in Data's pointer interface 2019-04-09 11:25:04 +05:30
Roopesh Chander 283462dc9b Swift 5 migration: Fix switch warnings
We now get a warning when switching over enums from system
frameworks even when we handle all public cases because
there can be future cases that aren't handled.

When such a future case is introduced, we'll get a warning.
2019-04-09 11:25:04 +05:30
Roopesh Chander 394833ca80 Xcode: Move to Swift 5.0
No code changes were necessary
2019-04-07 16:42:36 +05:30
Roopesh Chander 7d7b7cd5d6 macOS: Minor fix to export panel texts 2019-04-06 17:59:42 +05:30
Roopesh Chander f361b8a674 macOS: Tunnels list: Suppress alert buttons when removing tunnels is in progress
Also refactor the deletion alert into a separate helper class
2019-04-06 17:53:41 +05:30
Roopesh Chander 8bbf4e084a TunnelsManager: When setting a config, also set isAvailable cache 2019-04-06 00:26:06 +05:30
Roopesh Chander 1507a97e11 macOS: Tunnels list: Show the confirmation alert till removal completes
Fix tunnel selection during deletion
2019-04-06 00:08:45 +05:30
Roopesh Chander 740350bed5 TunnelsManager: Fix comparing tunnels with tunnelProviders in reload() 2019-04-05 13:43:08 +05:30
Roopesh Chander 3a10eb0748 TunnelsManager: Cache isTunnelConfigurationAvailableInKeychain 2019-04-05 13:29:17 +05:30
Roopesh Chander d8d18fcb3d macOS: Attempt to remove keychain item only if verified 2019-04-04 15:29:25 +05:30
Roopesh Chander ae553ff316 macOS: Simplify reusing of the detail VC when applicable 2019-04-04 12:24:32 +05:30
Roopesh Chander c8ac2c1995 macOS: Hide other-user tunnels in the status menu 2019-04-03 19:18:53 +05:30
Roopesh Chander fb4dca6018 macOS: Better handling of tunnels created by another user
Previously, the tunnels just got deleted.
2019-04-03 19:04:12 +05:30
Roopesh Chander fc7cf7f4de iOS: Log view: Make log text selectable 2019-04-01 23:29:15 +05:30
Roopesh Chander c62f0f0f6d macOS: Log view: Fix autoscroll to end of log
Looks like the tableview doesn't know how much to scroll to get to the
end when we use usesAutomaticRowHeights. So we wait for the tableview
to realize its frame has changed and then scroll to the bottom of the
frame explicitly.

Also, we keep track of whether the scroll view is scrolled to the end or
not every time scrolling happens, not just when we add log entries to
the table.
2019-04-01 23:07:48 +05:30
Roopesh Chander d04ce0e15f macOS: Bring app to front before 'exiting with an active tunnel' alert 2019-03-29 00:17:37 +05:30
Roopesh Chander b5025b51cd macOS: If a sheet is being shown, ignore quit and bring window to front
Otherwise, the 'exiting with an active tunnel' alert could get queued up
to be shown after the current sheet is dismissed.
2019-03-29 00:17:37 +05:30
Roopesh Chander d3f5c82081 macOS: Log view: No need to disable Close button 2019-03-28 19:32:58 +05:30
Roopesh Chander f36f7e456c iOS: Ability to view the log 2019-03-28 19:28:27 +05:30
Roopesh Chander 16b9f191d9 iOS: Xcode: Minor project rearrangement 2019-03-28 14:10:42 +05:30
Roopesh Chander cccb42ddae macOS: Ability to view the log 2019-03-28 13:57:06 +05:30
Roopesh Chander 368be1354e Add LogViewHelper 2019-03-27 17:55:52 +05:30
Roopesh Chander 4e73e7b2e0 macOS: Syntax highlighter: Free spans array 2019-03-22 17:53:34 +05:30
Roopesh Chander 4629414981 macOS: Hide exclude private IPs when PrivateKey / PublicKey is missing 2019-03-22 16:00:45 +05:30
Roopesh Chander ae4a728428 macOS: Syntax highlighter: Swift can bridge c strings automatically 2019-03-22 15:31:02 +05:30
Roopesh Chander 7754f81dca macOS: On Add new, Exclude Private IPs should remain hidden
because there aren't any peers in the bootstrapped config.
2019-03-22 15:15:26 +05:30
Roopesh Chander 2abe092818 Xcode: iOS: Remove armv7 as 'Required device capabilities' 2019-03-20 14:23:56 +05:30
Jason A. Donenfeld f71ee2277f macOS: Privacy notice is provided by system dialogs
So it really doesn't make sense to add our own. This causes several
popups when trying to add a tunnel, which is madness.
2019-03-20 04:24:23 +01:00
Jason A. Donenfeld 10f58df9f3 macOS: Login item: Add a simple login item 2019-03-19 21:15:38 -06:00
Jason A. Donenfeld 0475efb37d Version bump 2019-03-19 21:25:38 +01:00
Roopesh Chander 998e6e43bc iOS: Delete confirmation prompt should be a question 2019-03-19 21:23:46 +01:00
Roopesh Chander dbeb389d26 macOS: Add 'Deactivate' status menu item 2019-03-19 21:23:46 +01:00
Jason A. Donenfeld 19efbcf679 Version: CFBundleVersion must always increase for macOS app store
So we'll just start doing it like that, then.
2019-03-19 06:00:40 +01:00
Jason A. Donenfeld 0b5a36a4bf Swiftlint: variable_name -> identifier_name 2019-03-18 22:26:13 -06:00
Jason A. Donenfeld 128a485eee Version bump 2019-03-18 22:13:27 -06:00
Jason A. Donenfeld e6f7b7e01e macos: TunnelsList: set allowsEmptySelection after making initial selection
Otherwise we never get the event that the selection changed, so we don't
wind up showing anything in the details pane.
2019-03-18 22:13:27 -06:00
Roopesh Chander 4eeb4696f8 iOS: Consolidate all showConfirmationAlert()s into one place 2019-03-18 14:54:05 -06:00
Roopesh Chander 2dcb23a998 iOS: Tunnels list: Ability to remove multiple tunnels at a time 2019-03-18 14:54:05 -06:00
Roopesh Chander 42d7641b98 iOS: Tunnel edit: Add missing enum values 2019-03-18 14:54:05 -06:00
Roopesh Chander 36f7340daa macOS: ButtonedDetailViewController: Set min dimensions 2019-03-19 01:28:52 +05:30
Jason A. Donenfeld 2e86e5ac35 ringlogger: document races 2019-03-18 12:50:00 -06:00
Roopesh Chander 2a7dcac258 macOS: Tunnels list: Double-click to activate / deactivate 2019-03-18 12:03:41 +05:30
Roopesh Chander 6766644d80 macOS: Tunnels list: Don't allow empty selection 2019-03-18 12:03:41 +05:30
Roopesh Chander b1c731f8d7 on-demand: macOS: Remove unused class ControlRow 2019-03-18 06:46:56 +01:00
Roopesh Chander 094ab4fed7 on-demand: macOS: Integrate Ethernet and Wi-Fi controls in one row 2019-03-18 06:46:56 +01:00
Roopesh Chander f8c1837f1e on-demand: View model should account for isActivateOnDemandEnabled
This is needed to correctly handle NETunnelProviderManager's
isOnDemandEnabled property getting changed outside of the app.
2019-03-18 06:46:56 +01:00