Commit Graph

214 Commits

Author SHA1 Message Date
Petr Mrázek
d15a6490f6 Fix bugs introduced by unit test branch
Account json was getting rewritten by a folder
Missing icon on Windows (hopefully fixed, `doing it live`)
2013-12-14 19:26:50 +01:00
Jan Dalheimer
f273334212 More tests for the UpdateChecker class. It should be done for now. 2013-12-14 19:19:14 +01:00
Jan Dalheimer
a02e62f17f Tests for parsing of channel lists in UpdateChecker 2013-12-14 16:02:51 +01:00
Petr Mrázek
8f856f5573 Merge branch 'testing' of https://github.com/02JanDal/MultiMC5 into develop
Conflicts:
	MultiMC.cpp
2013-12-14 14:00:23 +01:00
Sky
4623aa44f5 Add status shown specifically when downloading assets 2013-12-14 10:06:32 +00:00
Sky
20a332e97c Make the account selection list use checkboxes rather than text for active boolean 2013-12-14 09:35:23 +00:00
Petr Mrázek
bbd17b6224 Fix twitch 2013-12-14 01:18:54 +01:00
Sky
b69351d50d Merge branch 'develop' of github.com:Drayshak/MultiMC5 into develop 2013-12-13 14:58:35 +00:00
Sky
979946b7bb First sweep moving URLs to a constants file 2013-12-13 14:58:11 +00:00
Petr Mrázek
0af6f96c3d Do not log auth crud 2013-12-13 03:06:10 +01:00
Petr Mrázek
382e4fe6b3 Fix syntax error
You do not need goto for that. Really.
2013-12-13 02:52:54 +01:00
Petr Mrázek
7d20e2478a Merge branch 'develop' of github.com:MultiMC/MultiMC5 into develop 2013-12-13 02:48:31 +01:00
Petr Mrázek
39aebddf3b Add support for 1.7.4 user_type (needs testing with legacy accounts) 2013-12-13 02:47:59 +01:00
Andrew
a954fc1a32 Fix updater removing all files.
Yeah, I don't know what I was thinking, but somehow it worked before.
2013-12-12 17:10:43 -06:00
Petr Mrázek
bf34aa7fbd Use temporary files for the java checker 2013-12-13 00:02:58 +01:00
Sky
808ca76363 Make sure adding forced candidates doesn't result in duplicates 2013-12-12 15:25:02 +00:00
Sky
b963ff7416 Don't break Linux and OS X builds :( 2013-12-12 15:04:24 +00:00
Sky
a2b0941029 Java version list should be sorted, JRE->JDK, 64->32 2013-12-12 14:56:32 +00:00
Sky
3e8e0dd639 Fix checker progress derp 2013-12-11 09:39:25 +00:00
Petr Mrázek
26a7544325 Merge https://github.com/Drayshak/MultiMC5 into develop 2013-12-11 08:39:35 +01:00
Petr Mrázek
bace3c2eab Swap https -> http for asset indexes 2013-12-11 08:34:22 +01:00
Sky
afa5e14e20 Better (but unsorted) Java detection 2013-12-11 04:54:00 +00:00
Petr Mrázek
10e13df00d Use metacache for minecraft.jar downloads 2013-12-10 20:33:24 +01:00
Petr Mrázek
1b185eba41 Nuke. 2013-12-10 07:52:36 +01:00
Petr Mrázek
aa61bbe9e4 Merge branch 'develop' of github.com:MultiMC/MultiMC5 into develop
Conflicts:
	CMakeLists.txt
	gui/MainWindow.cpp
2013-12-10 07:22:22 +01:00
Petr Mrázek
3f5c46a1c4 Finish assets update for 1.7.3 2013-12-10 07:12:52 +01:00
Andrew
712b87c643 Merge branch 'develop' of github.com:MultiMC/MultiMC5 into develop 2013-12-09 12:06:33 -06:00
Andrew
7f52bed9e3 Merge branch 'feature_updater' into develop 2013-12-09 12:04:05 -06:00
Petr Mrázek
8db2e5db81 Merge branch 'feature_assets' into develop 2013-12-08 22:19:58 +01:00
Petr Mrázek
b0dbd4f4af Fix offline mode bugs 2013-12-08 22:06:04 +01:00
Petr Mrázek
d68f49ffc0 Merge branch 'feature_pasting' of https://github.com/robotbrain/MultiMC5 into develop 2013-12-08 17:39:32 +01:00
Petr Mrázek
0cb8ff40b2 Finish preliminary offline support
* ProgressProvider now has an abort() call
* Abort button support added to the progress dialog
* YggdrasilTask and MojangAccount adapted to support abort

YggdrasilTask will time out after 10 seconds of no network activity, or when the user pushes the Play Offline button.
In offline mode, all instance update tasks are skipped! This will need further work.
2013-12-08 17:34:45 +01:00
Sky
2fe27fd0da More work on new assets system. Works given a properly constructed assets folder, no downloading yet 2013-12-08 06:12:53 +00:00
Sky
6d438b2ef3 Work on new assets system. Working legacy assets importer, disabled assets downloading for now 2013-12-08 02:58:44 +00:00
robotbrainify
4548930e34 Open the url direectly. 2013-12-06 17:17:32 -05:00
robotbrainify
e2728317e7 Fixes to pasting 2013-12-06 17:13:09 -05:00
robotbrainify
5ad95134dc work on pasting instance logs
blame clang for formatting changes
2013-12-06 16:24:55 -05:00
Andrew
6ac94ddcb6 Finish implementing update installation.
Also add the option to update on exit.
2013-12-06 12:59:58 -06:00
Andrew
e90f1a2756 Implement update installer 2013-12-05 20:32:52 -06:00
Andrew
48ec8e67b8 Implement DownloadUpdateTask
Installing updates is not implemented yet. That's next.
2013-12-05 13:52:55 -06:00
Petr Mrázek
f028aa76bc Offline mode support, part 1
Refactor MojangAccount so it exposes a less generic interface and supports login. Hide the ugly details.
Yggdrasil tasks are now only used from MojangAccount.
2013-12-05 02:39:52 +01:00
Andrew
bf94aaea75 Rework the update checking system 2013-12-04 12:34:12 -06:00
Jan Dalheimer
4435016fae Fix some bugs that surfaced 2013-12-02 12:02:37 +01:00
Jan Dalheimer
0a6399b52c Unit testing 2013-12-02 11:09:56 +01:00
Petr Mrázek
6aa9bd0f77 Renew the updater branch
Now with some actual consensus on what the updater will do!
2013-12-02 00:55:24 +01:00
Petr Mrázek
f56eff04ef Fix (hopefully) library dependency resolution.
Installing libs is now enabled, hardcoded.
Enable -Wall for all builds.
Fix many warnings and latent bugs.
2013-12-01 16:34:51 +01:00
Petr Mrázek
a3fbf05c7b Fix private info censor 2013-12-01 02:14:32 +01:00
Petr Mrázek
f27a6c39ea Fix login and startup logging issues
Auth uses the refresh endpoint instead of validate. This means less password entering.
Console will now only autoscroll when already scrolled all the way down.
Better conformance with the Yggdrasil auth protocol (not complete yet, but Mojang launcher isn't complete either).
Fix bug that prevented saving the account data (uninitialized variable).
Accounts can now trigger account list saving, this is used for the refresh endpoint.
2013-12-01 02:00:42 +01:00
Jan Dalheimer
8334b6a09f Fix crash when no instances are available 2013-11-30 12:28:35 +01:00
Jan Dalheimer
8831856172 Remember the last selected instance and select it on startup 2013-11-30 12:28:20 +01:00
Andrew
0395474a0c Nuke dead code 2013-11-28 22:05:58 -06:00
Andrew
bfc9e1e5d5 Verify access tokens before launching Minecraft
Kind of an important thing to do... Heh...
2013-11-28 20:45:52 -06:00
Andrew
f7b64a551b Add icon for when no default account is selected
Also fixed a bug where the icon on the accounts button wouldn't change
when the user checked the "Use as default" checkbox in the account
selection dialog.
2013-11-28 15:46:04 -06:00
Petr Mrázek
60e325b8af Merge https://github.com/brainiac744/MultiMC5 into develop 2013-11-28 21:28:57 +01:00
Anthony Parrott
c0c7037e18 Could reach end of rulesFromJsonV4 method without returning a QList
It was possible for execution to reach the end of the rulesFromJsonV4
method without returning. This was causing a crash on OS X when parsing
rules inside an instance.
2013-11-28 14:50:04 -05:00
Sky
191e850cf1 Add support for "no default account" 2013-11-27 23:39:36 +00:00
Andrew
a4c5f0135e Allow setting no default account
This allows the user to select an account to use every time they launch
an instance.
2013-11-27 16:14:18 -06:00
Sky
38732636d3 Nuke skins.json, use nice yggdrasil implementation instead. Grabs all Mojang account skins on addition, active on startup 2013-11-27 18:45:29 +00:00
Sky
7d7579d7f0 Move "manage accounts" to right, use player skin when available 2013-11-27 16:56:15 +00:00
Petr Mrázek
7024e5a83e Fix for latest snapshot ``changes'' 2013-11-27 01:50:38 +01:00
Petr Mrázek
d6b09f7c13 Add java checker to the instance settings 2013-11-25 01:14:30 +01:00
Petr Mrázek
088b039cf7 Detect java bitness on launch, use appropriate libraries
Fixes problems with latest snapshot
2013-11-25 00:46:52 +01:00
Petr Mrázek
82225a21e1 Merge branch 'feature_yggdrasil' into develop
Conflicts:
	gui/MainWindow.cpp
	logic/OneSixInstance.h

Fix missing session id functionality for legacy and old onesix.
2013-11-24 18:41:35 +01:00
Petr Mrázek
ca297fca79 Prepare for rework of instance launch/update
Added missing licenses
Added a Java functionality checker (detects 32/64bit java)
Refactor of *Update - no longer based on BaseUpdate, but Task directly
Fixed runner script to not derp up on 32bit linux. Could add more detection and error reporting there.
Resources are now split into graphics and generated. Generated resources are placed in the build tree and included from there.
Used the Java checker in the main settings dialog (TODO: instance settings).
Partial support for ${arch}-using libraries - both 32 and 64 variants of ${arch} are downloaded.
2013-11-24 06:36:16 +01:00
Petr Mrázek
4124faf474 Fix console window (now not a QDialog)
It now opens and coloses as expected, depending on user
preferences and the status of the various processes involved.
Console window geometry and state are remembered between runs.
2013-11-23 01:41:28 +01:00
Andrew
75e7932607 Properly implement launching and downloading
Also added a system to select an active account to log in with.
2013-11-22 12:47:39 -06:00
Andrew
23bc195b3c Implement removing accounts. 2013-11-22 10:54:52 -06:00
Petr Mrázek
7f5eb5d61a Implement user info stub for newest minecraft snapshot 2013-11-22 01:04:14 +01:00
Andrew
abf8408911 Nuke and pave the old login system
Also, account list now saves profile lists.
2013-11-20 18:31:15 -06:00
Andrew
928e0d0b15 Implement saving account list to file
Currently it only saves when accounts are added or removed. We'll have
to fix this, but we need signals for when account objects change first.
2013-11-19 12:53:30 -06:00
Petr Mrázek
57a9dadb08 Forge XZ downloads now use temp files local to MultiMC, files are removed. 2013-11-19 00:47:59 +01:00
Petr Mrázek
294c2d122f Fix assets URL (expected to change... again) 2013-11-18 20:12:24 +01:00
Andrew
a9a0b65358 Implement loading accounts from list. 2013-11-18 12:58:03 -06:00
Andrew
cdca530139 Implement account list and account list dialog 2013-11-18 12:05:35 -06:00
Petr Mrázek
210629e274 Use the forge mirrors for downloading forge libraries
Let's hope we never, ever see a forge download error again.
2013-11-17 11:44:18 +01:00
Petr Mrázek
2a45302dfc Mark forge lib downloads as failed when they fail 2013-11-16 20:36:01 +01:00
Andrew
ad8aeb0b2b Implement auth task's response processing.
The authenticate task can now successfully log a user in.
2013-11-14 14:32:43 -06:00
Andrew
9cfd5ae465 Add test authentication task.
It doesn't actually do anything with the server's reply yet.
2013-11-14 12:17:38 -06:00
Andrew
d84b1a91f4 Add abstract base class for Yggdrasil tasks. 2013-11-13 14:12:31 -06:00
Petr Mrázek
9693a5e6e9 Fix signal derp from previous commit
Console should now properly close/not close based on minecraft return code/signal.
2013-11-13 00:24:49 +01:00
Petr Mrázek
fdc58bb913 Fix console not staying open on minecraft crash 2013-11-12 09:23:39 +01:00
Andrew
962639aa6d Added data structures for Mojang Account. 2013-11-11 12:59:59 -06:00
Petr Mrázek
e611aef0e7 Recover from the bin folder of converted legacy instance being deleted.
Use the new vanilla jar as the base jar if mcbackup.jar is missing.
2013-11-11 04:45:31 +01:00
Petr Mrázek
b097d2f744 Use the right LWJGL path while creating an instance 2013-11-11 03:47:14 +01:00
Petr Mrázek
452cc1849f Fix Sourceforge lwjgl version index download. 2013-11-06 20:59:44 +01:00
Sky
605423b8e4 Read mcmod.info first, forgeversion.properties second 2013-11-05 23:46:06 +00:00
Petr Mrázek
bb7e8985f6 Reformat and (slightly) decruft all the things. 2013-11-04 02:53:05 +01:00
Petr Mrázek
d6e4fb2971 Implement instance sorting options. 2013-11-04 00:11:20 +01:00
Petr Mrázek
4466929074 Add instance copying, fix instance creation (with identical names) 2013-11-03 21:28:04 +01:00
Sky
ab21b6977d Catch assets index failure 2013-11-03 16:02:59 +00:00
Sky
bade253a1a Added NagUtils, nag people about trying to override JVM memory options 2013-11-03 15:20:26 +00:00
Petr Mrázek
f39a83edc6 Hack for Intel graphics drivers on Windows. 2013-10-31 01:39:37 +01:00
Petr Mrázek
6ecb833dbf Fix problem with instance list not using the instance folder path 2013-10-28 20:55:12 +01:00
Petr Mrázek
9233477295 S3 bucket listing support and network code refactors.
* Adds support for listing all objects in an S3 bucket.
* Renames a bunch of network related classes (Download->Action)
* Net actions now have static constructors
2013-10-26 19:55:48 +02:00
Sky
0430a2a38f Add assets download status to status bar. 2013-10-26 02:31:58 +01:00
Petr Mrázek
c8b84257ae Actually use QJson for Yggdrasil requests 2013-10-23 02:08:39 +02:00
Sky
c65bab6efe Respect console options (opening a console at all, automatically closing) 2013-10-22 18:25:10 +01:00
Petr Mrázek
32ce5c5c02 Local libs that won't get replaced/redownloaded 2013-10-20 23:18:40 +02:00
Petr Mrázek
205570be32 Support version format 9, fix version-related segfault, (maybe) fix forge lists. 2013-10-18 01:00:46 +02:00
Sky
a600286e33 Use Yggdrasil error response when available, or fall back to legacy HTTP error codes 2013-10-17 00:46:25 +01:00