Brandon Evans
bc45daeb74
Only adjust available versions for Apple data source
2021-02-04 21:25:00 -07:00
Matt Kiazyk
b53c480764
Adds a DownloadFileSize when using Apple Data Source
2021-02-01 21:18:49 -06:00
Brandon Evans
352816f64a
Merge pull request #87 from RobotsAndPencils/auth-pref-ui-change
...
Show stored username in General preference pane even when we don't have a valid session
2021-01-26 08:50:18 -07:00
Brandon Evans
75457dd9eb
Show stored username in General preference pane
...
This reverts the change from 90c067997b so that the username is shown in situations where we don't have a valid session but could almost certainly get one. Instead, to achieve what that commit was trying to do, we'll instead remove the username from UserDefaults if auth fails with an invalid username or password error. I think this will more closely match what users expect in this UI.
I've added a comment in the UI explaining why it is the way it is. It might also be worth considering renaming AuthenticationState or its cases to better reflect that it's probably more about the (short-lived) session state than whether the user has signed in before and has stored their credentials.
2021-01-25 19:56:28 -07:00
Brandon Evans
58cddb88f6
Try to improve auth error messages
2021-01-25 19:36:49 -07:00
Brandon Evans
cb507c3d02
Prepare user for helper installation before post-install steps
2021-01-23 20:25:28 -07:00
Brandon Evans
044f066422
Extract HelperInstallState to new file
2021-01-23 19:38:11 -07:00
Brandon Evans
d84173e29c
Prepare user for helper installation
...
Doesn't yet handle the post-install steps that need the helper.
2021-01-23 19:38:11 -07:00
Brandon Evans
e21e4d9cdf
Handle helper installation errors
2021-01-22 22:18:59 -07:00
Brandon Evans
cd2bde2272
Move Xcode path into XcodeInstallState.installed case
2021-01-16 13:09:48 -07:00
Brandon Evans
62237bf4a8
Fix a bug when an installed version was appended
...
We were appending a version without appending a corresponding AvailableXcode, and these two arrays were being zipped later so they wouldn't line up. This change simplifies this method a bit by working on only a single array, and then also moves that appending to the end after the array of Xcodes is created.
2021-01-16 11:40:04 -07:00
Brandon Evans
26da7969a1
Make sure install updates happen on main queue
2021-01-16 10:15:39 -07:00
Brandon Evans
ed023218b8
Simplify Version comparison
2021-01-16 10:15:39 -07:00
Brandon Evans
faad4c2ab7
Fix bug where adjusted versions weren't used to look up AvailableXcodes
2021-01-16 10:15:39 -07:00
Brandon Evans
baa8491786
If build metadata identifiers match, treat it as a match regardless of other version components
2021-01-16 10:15:39 -07:00
Brandon Evans
ad02e89449
Add failing test to cover removing an uninstalled version, fix it
...
https://github.com/RobotsAndPencils/XcodesApp/pull/44#issuecomment-756783640
2021-01-16 10:15:32 -07:00
Brandon Evans
93f819f2f3
Add downloaders to SettingsView
2021-01-08 17:22:38 -07:00
Brandon Evans
23cd43011b
Bundle aria2c 1.35.0 executable and source
2021-01-08 17:22:38 -07:00
Brandon Evans
fecb40893f
Don't replace existing install state when updating
2021-01-07 21:25:08 -07:00
Brandon Evans
4a33d010a8
Confirm before cancelling installation
2021-01-07 21:25:08 -07:00
Brandon Evans
482b32e4e0
Add isTesting to make NSTestCase check more clear
2021-01-07 21:25:07 -07:00
Brandon Evans
bfb3fd9ea5
Add install functionality
...
I'm omitting aria2 support for now.
2021-01-07 21:25:07 -07:00
Brandon Evans
a3e9101397
Replace .alert with .emittingError
2021-01-04 16:23:35 -07:00
Brandon Evans
b1e6cffd09
Use helper from Current
2021-01-03 10:18:08 -07:00
Matt Kiazyk
7d1e22e668
Remove some unused code
2021-01-01 13:01:07 -06:00
Matt Kiazyk
72bdadb796
PR Cleanup
2020-12-31 16:06:03 -06:00
Matt Kiazyk
7bfb94d75a
Uninstall a xcode version
2020-12-31 12:36:31 -06:00
Brandon Evans
b32687484d
Move Xcode selection state into window
2020-12-29 13:48:17 -07:00
Brandon Evans
047288384d
Reflect currently-selected Xcode in list
2020-12-28 19:58:36 -07:00
Brandon Evans
9dc3d21f2e
Rename launch to open
...
This is the preferred verb when it's user-facing, according to Apple's style guide.
2020-12-28 12:42:28 -07:00
Brandon Evans
ba0c429766
Add trailing inspector pane
2020-12-28 12:42:28 -07:00
Brandon Evans
bc209f6112
Add privileged helper that runs xcode-select
2020-12-28 10:38:27 -07:00
Brandon Evans
1fef255c3d
Add app icon to installed rows
2020-12-28 07:55:12 -07:00
Brandon Evans
4d2600f821
Add Xcode command menu
2020-12-27 23:23:33 -07:00
Brandon Evans
912ac0a28e
Allow launching and copying the path of an installed Xcode
2020-12-27 23:22:57 -07:00
Brandon Evans
adad238b2a
Move uninstalled Xcode property into AppState
2020-12-27 23:22:57 -07:00
Brandon Evans
acd82fa07a
Extract AppState.XcodeVersion to Xcode
2020-12-27 23:22:57 -07:00
Brandon Evans
33b5f96ed2
Merge XcodeList into AppState
2020-12-27 18:29:25 -07:00
Brandon Evans
293aef80e3
Add Xcode Releases data source
2020-12-27 18:29:25 -07:00
Brandon Evans
b342baff02
Update when the app launches or becomes active and it's been a day since last update
2020-12-27 18:29:25 -07:00
Brandon Evans
9b26688255
Add refresh menu item and progress view
2020-12-27 18:29:24 -07:00
Brandon Evans
4ef8428151
Convert XcodeList to Combine
2020-12-27 18:29:24 -07:00
Chad Sykes
ee10d2f92b
Some variable renaming based on PR feedback
2020-12-27 16:14:10 -07:00
Chad Sykes
74cb2198f5
Add missing error alerts to the SignIn views (this does not fix the error formatting from AppState for fear of merge issues)
2020-12-27 13:36:28 -07:00
Chad Sykes
c9c31ff6f5
Fix warning about executing updating the UI from outside the main thread
2020-12-27 13:21:07 -07:00
Chad Sykes
4e03c59d0a
Disable the action button when the AppState isProcessingRequest
2020-12-27 12:22:57 -07:00
Brandon Evans
bfb56660bf
Sign In instead of Login
2020-12-22 22:11:42 -07:00
Brandon Evans
5149e817da
Store credentials in the keychain
...
Like xcodes, storing the username in defaults so we know which item to look up in the keychain later. This also fixes the Xcode list update logic to not only validate the session but login with saved credentials if it fails.
2020-12-22 22:06:18 -07:00
Brandon Evans
34adfb73a2
Reorganize files a bit
2020-12-22 21:01:33 -07:00