1
0
mirror of https://github.com/SKCraft/Launcher.git synced 2024-11-28 12:57:07 +01:00
Commit Graph

146 Commits

Author SHA1 Message Date
Henry Le Grys
3effa7d674 Re-add offline session button & alter play button 2021-02-09 01:36:04 +00:00
Henry Le Grys
d2127e9b13 Implement Microsoft OAuth login process 2021-02-09 01:24:55 +00:00
Henry Le Grys
3ddaea55dc Remove old replaced authentication classes 2021-02-08 21:46:33 +00:00
Henry Le Grys
194e977176 Flesh out account selector some more 2021-02-08 21:16:54 +00:00
Henry Le Grys
18a99b338e Fix persistence, download & persist avatar locally 2021-02-08 20:38:49 +00:00
Henry Le Grys
b6252863da Start refactoring auth framework
Featuring:
* New account selection dialog
* Upgrade to Java 8!
* Questionable transitional class names
* Lots of swing code!
2021-02-08 05:48:05 +00:00
Henry Le Grys
25a433ab5b Use explicit wait/notify for popup feature selection dialog
Was getting some persistent strange behaviours with this particular
invokeAndWait call, so I've swapped it out for a manually implemented
wait & notify
2021-02-07 00:41:46 +00:00
Henry Le Grys
4aaa4f9931 Update Gradle & plugins to support Java 9+ better 2021-02-05 04:05:48 +00:00
Henry Le Grys
ffd3e54fc8 Support unpacked jars in self-updater 2021-02-02 03:36:01 +00:00
Henry Le Grys
27da4e8e4c Fix misspelled field in launcher configuration 2021-01-30 01:46:22 +00:00
Henry Le Grys
40fcfdf992 Fix library handling bug in cases of bad JSON key ordering 2021-01-29 16:21:59 +00:00
Henry Le Grys
9aced19edc Change equals & hash code calculation for libraries
The two methods actually agree with each other now
2021-01-26 03:12:38 +00:00
Henry Le Grys
f880192919 Reduce game arguments to strings where possible
Helps to reduce the size of the manifest a little, and looks nicer!
2021-01-26 01:11:02 +00:00
Henry Le Grys
67f3fc1fa4 Add a scanner to download missing targets of .url.txt files 2021-01-25 14:38:26 +00:00
Henry Le Grys
d0d8ad79ee Fix native handling for cases where some platforms are not present 2021-01-25 13:00:24 +00:00
Henry Le Grys
3a7c250736 Improve fabric loader processor by better utilizing fabric meta API
Removes a bunch of hardcoded workarounds :)
2021-01-06 23:07:11 +00:00
Henry Le Grys
7707e5e45e Add support for HTTPS redirects 2021-01-06 03:21:40 +00:00
Henry Le Grys
92048fbd3a Ensure the launcher directory is referenced absolutely
Fixes #379
2021-01-05 23:06:24 +00:00
Henry Le Grys
f53ee9b6fa Ignore 'all artifacts' list during re-serialization 2021-01-05 03:53:47 +00:00
Henry Le Grys
15a87f0df3 Verify libraries & game jars during updates 2021-01-05 03:18:52 +00:00
Henry Le Grys
3981fe4ab2 Download all libraries for every platform when building packs 2021-01-05 02:59:33 +00:00
Henry Le Grys
d6ac0983de Fix forge loaders being named wrong & warning for wrong loader version 2020-12-25 00:49:55 +00:00
Henry
dd62193b0b
Fix extraction of folders inside ZipExtract (#271) 2020-12-24 23:18:54 +00:00
Henry
495d94370c
Use absolute paths for legacy launcher wrapper support (#335) 2020-12-24 18:58:03 +00:00
Henry Le Grys
e22e70ea81 Add flag in version info: loader should override version arguments
Fixes #4
2020-12-23 00:23:35 +00:00
Henry Le Grys
b9fc461063 Delegate to platform classloader to let processors run on Java 9+
Fixes #1
2020-12-22 23:19:04 +00:00
Henry Le Grys
ffdea1f59a Update gradle buildscripts to use 'application' plugin 2020-12-22 22:01:15 +00:00
Henry Le Grys
9f9f94ddb3 Cleanup install processor & update documentation 2020-12-22 16:12:39 +00:00
Henry Le Grys
ca08bbda34 Update natives handling to handle architecture-specific native strings
Fixes #2
2020-12-22 14:14:50 +00:00
Henry Le Grys
5f0b44acd3 Add custom serializer for game arguments for more concise version JSON 2020-12-22 13:50:25 +00:00
Henry Le Grys
00aba629dc Update & document backwards compatibility measures
Fixes errors when launching old (manifest version < 3) packs
2020-12-20 00:26:49 +00:00
Henry Le Grys
22ac043cdd Bump minimum manifest version 2020-12-19 19:13:02 +00:00
Henry Le Grys
b12e3610b5 Fix Updater logic for downloading a missing version manifest
This codepath was unlikely to be hit since modern manifests always embed
the version manifest, but good to have a working fallback...
2020-12-07 03:44:03 +00:00
Henry Le Grys
fb7a99549e Set progress dialog as resizable
Fixes a bug under Linux where the dialog never resizes, even when the
details button is clicked.
2020-12-03 12:30:27 +00:00
Henry Le Grys
9a32ab8dc3 Add support for Fabric loader & expand SidedData
Also improved library handling some more
2020-12-03 01:17:18 +00:00
Henry Le Grys
e1062303df Fix argument passing & add back commandline for legacy versions
- Game/jvm arguments are now passed one-at-a-time, never grouped
- Added support for legacy version manifests by adding in the missing
arguments
- Correctly pull arguments from old manifests
- Some slightly hacky handling for old library stanzas
- Short-circuit if library URL has empty path to prevent accidentally
downloading HTML pages as jars
- Add launcherShortname prop, passed to --versionType
2020-12-02 04:14:29 +00:00
Henry Le Grys
aeedf09f8c Refactor loader processing into subclasses for greater flexibility 2020-12-02 02:29:52 +00:00
Henry Le Grys
8b6f3abaf9 Skip extra files that are server-only 2020-12-02 01:22:26 +00:00
Henry Le Grys
25d7b8227c Remove unused properties from launcher.properties 2020-12-02 01:01:43 +00:00
Henry Le Grys
86247c98a9 Update launcher/runner component to new models
- Fix game arguments being missing from version manifest due to new format
- Update Runner to use more substitutions & support new argument model
- Move loader/installer libraries to their own section to avoid runtime conflicts
- Implement some basic feature matching for arguments
2020-12-01 23:41:55 +00:00
Henry Le Grys
410031a86f Initial 1.16 update
oh lord okay
- Update to new launchermeta endpoint for version manifests
- Fix library handling (libraries now seem to give us the URL most of the time)
- Write entire new system for handling the forge installer process
- Fix asset handling, mostly (still TODO is remove all traces of assetSource, it's given to us by launchermeta now)
2020-12-01 18:41:44 +00:00
Magi1053
3448a018d3
Use absolute paths for legacy launcher wrapper support 2020-01-29 18:29:32 -06:00
Jan-Otto Kröpke
1c212fa148
Fix extraction of folders inside ZipExtract 2018-12-24 02:23:51 +01:00
sk89q
40b5fb838c Update to Java 9/10. Fancy version is still broken. 2018-07-14 19:09:40 -07:00
Albert Pham
403f2848b8
Merge pull request #215 from me4502/master
Add argument to configuration for auto-joining a server.
2017-11-11 07:54:21 -08:00
Albert Pham
768f7a5a0c
Merge pull request #188 from Matrix89/master
Add clear console button.
2017-11-11 07:53:28 -08:00
Matthew Miller
21e67328c7 Added server argument to configuration 2017-11-11 15:42:16 +10:00
Oliver Kahrmann
300da2df56 Fix runtime issue with Java 9 (java.xml.bind API) 2017-10-20 19:04:11 +02:00
sk89q
f9a728dcd6 Add minecraft.applet.TargetDirectory flag for legacy MC. 2017-08-18 15:34:24 -07:00
Matrix89
23a05d1299 Add clear console button 2017-03-24 18:14:30 +02:00
Oliver Kahrmann
bd532842b3 Reload news page when pressing "Check for Updates" 2016-07-31 22:35:48 +02:00
Jurek Weber
b2ae3316c4 use HTTPS instead of HTTP 2016-05-24 10:27:03 +02:00
sk89q
d01d93c349 Revert 'Use a JList rather than JTable for the instance list.' 2016-04-06 18:23:16 -07:00
sk89q
aa4a51882b Detect BSD as Linux. 2016-04-05 22:02:40 -07:00
Wyatt Childers
8ab5a647af Updated maven_repos.json
https://central.maven.org/ now forces users to use https://repo1.maven.org
2016-01-12 22:29:09 -05:00
sk89q
1673dc57e8 Select nearest entry on right click of instance list. 2015-11-14 16:22:20 -08:00
sk89q
991d39ced6 Use a JList rather than JTable for the instance list. 2015-11-14 14:13:50 -08:00
sk89q
2cd6ba59ff Load UI assets in the background. 2015-11-14 12:09:46 -08:00
sk89q
c1cbff754e Possibly improve detection of 32-bit/64-bit. 2015-08-03 14:25:54 -07:00
sk89q
300c8167d8 Clean up JavaRuntimeFinder. 2015-08-03 14:21:03 -07:00
sk89q
4c8a65d8a3 Set better memory defaults. 2015-08-03 14:16:23 -07:00
sk89q
3e18bcde89 Fix the Launch/Install context menu options not being localized.
Fixes #72
2015-08-03 13:46:58 -07:00
sk89q
64ee00bd1d Fix the launcher frame starting too small on some systems.
Fixes #83
2015-08-03 13:44:25 -07:00
sk89q
40555cce59 Merge pull request #82 from seebs/master
Avoid pathological failure mode when trimming lines.
2015-08-03 13:40:54 -07:00
Seebs
2a50a19d73 Avoid pathological failure mode when trimming lines
If for any reason the document associated with a LimitLinesDocumentListener
ended up not getting shorter when its first line was removed (this is,
of course, impossible), sklauncher would wedge in a busy loop that
completely killed the GUI thread forever.

Solution, part #1: Don't do a while loop, just remove multiple lines
if you need to.

But wait, why are we having this problem at all? It turns out that there
are problems when the document's length changes, which can manifest as
tons of BadLocationExceptions going uncaught in the AWT thread which is
trying to refresh the window. Why? Probably because the insert into the
document isn't happening in the Swing run queue, but concurrently with
it. So use an invokeLater to do the actual insertion.

With these two changes, and a console set to 125 lines, I got no failures.
Previously, if I set the console to 125 lines, it would die catastrophically
before Minecraft was done starting up.

Also performance may be noticably better. It's pretty common for things
to dump 20+ lines into the buffer at once. If you have a 10,000 line buffer,
and you then delete the first line of it 20 times, that's actually a whole
lot of allocation and shuffling going on.
2015-07-30 19:00:08 -05:00
sk89q
454aa327a4 [Creator] Add mod update checker. 2015-07-27 19:56:53 -07:00
sk89q
4364d1f709 Have TableColumnAdjuster re-adjust columns later after model change. 2015-07-27 19:52:26 -07:00
sk89q
a3ad521e38 Add HttpRequest.asJson(TypeReference type). 2015-07-27 19:52:06 -07:00
sk89q
8959f6ef76 Suppress unchecked warnings in LoginDialog. 2015-07-24 17:07:24 -07:00
sk89q
8eeee1081d Add an about dialog. 2015-07-24 16:51:19 -07:00
sk89q
4a35f5f5b6 Fix some native compatibility issues. 2015-07-24 11:54:08 -07:00
sk89q
815383a3a8 [Creator] Add test online option. 2015-07-24 11:38:29 -07:00
sk89q
0cc95225dd Add new creator tools. 2015-07-23 23:46:18 -07:00
sk89q
4fc8c274c3 Expand the build tools to encompass many more tasks. 2015-07-21 01:23:57 -07:00
sk89q
080ac12545 [Build Tools] Don't confirm process close. 2015-07-20 16:03:40 -07:00
sk89q
cdfb01d9a6 Change LaunchSupervisor to take a LaunchOptions value object. 2015-07-20 14:52:43 -07:00
sk89q
3306e67304 Add SwingHelper.readImageIcon(). 2015-07-20 14:52:16 -07:00
sk89q
4ee2871934 Add ConsoleFrame.hideMessages(). 2015-07-20 14:51:43 -07:00
Slind14
be85ff175f un-editable icon 2015-03-21 14:32:09 +01:00
sk89q
0d8784992b Create instance directory more eagerly. 2015-02-23 00:07:46 -08:00
sk89q
b1c14da7e4 Try harder to create the initial instance folder on update. 2015-02-22 14:50:36 -08:00
sk89q
d6e7c02174 Remove "(not installed)" etc. which causes wrapping. 2015-02-20 13:23:11 -08:00
sk89q
c734ab751b Add a background to the fancy launcher. 2015-02-20 03:30:56 -08:00
sk89q
5270e81ac3 Show the main launcher view slightly quicker. 2015-02-20 01:40:57 -08:00
sk89q
ed4d6d2875 Make the split pane opaque on the launcher frame. 2015-02-20 01:39:34 -08:00
sk89q
b4926c0826 Make the background transparent on the news page view. 2015-02-20 01:38:42 -08:00
sk89q
f4f406d9cf Remove the header on the instance list. 2015-02-20 01:38:27 -08:00
sk89q
540a3bcaab Refactor startup and add new dark fancy theme. 2015-02-20 01:38:18 -08:00
sk89q
4b5bf7dca9 Fix memory leak with old launcher window. 2015-02-19 22:11:07 -08:00
sk89q
930456bb05 Remove extra fields on LauncherFrame. 2015-02-19 22:08:31 -08:00
sk89q
8cf14a5ce1 Split up LauncherFrame. 2015-02-19 21:34:57 -08:00
sk89q
515de39754 Remove unnecessary dependencies for the launcher. 2015-02-19 04:06:19 -08:00
sk89q
a67b8820e5 Switch to MigLayout for the main launcher frame. 2015-02-19 04:05:53 -08:00
sk89q
ab6ec9ed71 Add a fancy skinned version of the launcher. 2015-02-19 03:13:07 -08:00
sk89q
c41fb73bd1 Rename SharedLocale._() to tr(). 2015-02-18 21:32:26 -08:00
sk89q
5b6681b8ea Switch to Gradle. Use git log --follow for history.
This converts the project into a multi-module Gradle build.

By default, Git does not show history past a rename, so use git log
--follow to see further history.
2015-02-18 21:30:25 -08:00