Commit Graph

289 Commits

Author SHA1 Message Date
Forkk
0b1e0221f0 Merge branch 'develop' of github.com:MultiMC/MultiMC5 into develop 2014-01-08 21:50:58 -06:00
Petr Mrázek
5650a28fc6 Hopefully fix OSX icon file 2014-01-08 21:06:31 +01:00
Forkk
87b12a63a1 Make CMake output version type info 2014-01-07 19:30:08 -06:00
Forkk
d7564a51ce Bump minor version number and update changelog. 2014-01-07 19:21:42 -06:00
Forkk
3629f9b999 Merge branch 'develop' of github.com:MultiMC/MultiMC5 into new-version-system 2014-01-07 18:31:49 -06:00
Petr Mrázek
fb83299e59 Deploy jars instead of extracting them at runtime, remove non-working nvidia fix 2014-01-08 01:28:33 +01:00
Forkk
3202b972f8 Rework version numbering system.
Again...
2014-01-07 18:09:05 -06:00
Petr Mrázek
267f18ca81 Add hack for Nvidia 2014-01-06 22:05:45 +01:00
Petr Mrázek
ced640f68c Merge branch 'develop' of github.com:MultiMC/MultiMC5 into develop 2014-01-05 16:53:51 +01:00
Petr Mrázek
a64eebf8eb Add an option to force using local updater binary (for updater development) 2014-01-05 14:24:33 +01:00
Forkk
ebc14a9d9d Prepend a 5 to version strings. 2014-01-04 21:44:18 -06:00
Petr Mrázek
b49fa9d2a9 Mess with the updater again. 2014-01-05 00:06:55 +01:00
Jan Dalheimer
3b97e3c363 Fix a few things related to the translations 2014-01-04 11:49:06 +01:00
Jan Dalheimer
b3dd1eba21 Notifications system. Mainly to be used in case the updater breaks. 2014-01-03 19:19:27 +01:00
Forkk
431cfbc60a Implement the news button
Make the news button open the latest news post in the user's web
browser.

Also remove the webkit dependency. I was planning on using it to
display the news in a custom window, but we'll just use the user's
browser for now.
2014-01-02 14:37:56 -06:00
Forkk
17f1864a71 Merge branch 'develop' of github.com:MultiMC/MultiMC5 into feature_news
Conflicts:
	CMakeLists.txt
	gui/MainWindow.h
2014-01-02 13:38:20 -06:00
Noah Mayr
1bdac97af5 Fixed buttons on osx by adding the accessible plugin. 2014-01-02 15:22:57 +01:00
Petr Mrázek
0e78d34d4c ThreadTask for all your ThreadNeeds
Use only when absolutely required.
2014-01-01 19:21:58 +01:00
Sky
821fb5e0ae Move assets migration to a task. Needs threading. 2014-01-01 14:56:26 +00:00
Petr Mrázek
3a4ecb57d0 Enable high DPI support on OSX 2013-12-31 02:34:00 +01:00
Petr Mrázek
952b63f68d Refactor icon lists heavily
* Icon list now uses a filesystem watcher for updates
* Icon folder is user-customizable
* All the little details. ALL OF THEM.
2013-12-31 01:32:51 +01:00
Jan Dalheimer
55e62a81b6 LiteLoader support 2013-12-28 14:22:36 +01:00
Petr Mrázek
7652b3d64a Various updater fixes
Updater tests for path utils
The updater now doesn't use splitpath on Windows (fixes problems with Windows XP)
Fix up paths for the OSX updater - should now install the updates into the right place
Fix translations install path - translation isntall and deploy should be fixed
2013-12-28 04:23:48 +01:00
Jan Dalheimer
82c87aa06f Initial FTB support. Allows "tracking" of FTB instances. 2013-12-21 23:40:37 +01:00
Petr Mrázek
d6c71488b3 Some test madness 2013-12-20 23:04:11 +01:00
Andrew
9d8006b597 Merge branch 'develop' of github.com:MultiMC/MultiMC5 into feature_news
Conflicts:
	CMakeLists.txt
2013-12-15 15:01:34 -06:00
Andrew
0ee8f90d40 Added a system to load news from MultiMC.org's RSS
Currently it doesn't show it anywhere in the UI. That's next.
2013-12-15 14:50:27 -06:00
Petr Mrázek
5a3043398e Use asset sizes from the index to make the progress bar better 2013-12-15 15:00:09 +01:00
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
Petr Mrázek
f15306a0ac Use ctest 2013-12-14 14:17:59 +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
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
39aebddf3b Add support for 1.7.4 user_type (needs testing with legacy accounts) 2013-12-13 02:47:59 +01:00
Sky
afa5e14e20 Better (but unsorted) Java detection 2013-12-11 04:54:00 +00:00
Andrew
f0104edc3d Move fixup_bundle CMake stuff into a separate file 2013-12-10 13:37:15 -06: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
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
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
6d438b2ef3 Work on new assets system. Working legacy assets importer, disabled assets downloading for now 2013-12-08 02:58:44 +00:00
robotbrainify
c6f0d9ce93 fix revert 2013-12-06 17:37:12 -05:00
robotbrainify
c614fe1cef revert 2013-12-06 17:36:22 -05:00
robotbrainify
5ad95134dc work on pasting instance logs
blame clang for formatting changes
2013-12-06 16:24:55 -05:00
Andrew
48ec8e67b8 Implement DownloadUpdateTask
Installing updates is not implemented yet. That's next.
2013-12-05 13:52:55 -06:00
Andrew
bf94aaea75 Rework the update checking system 2013-12-04 12:34:12 -06: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
Andrew
613699b362 Merge branch 'develop' of github.com:MultiMC/MultiMC5 into develop 2013-12-01 14:28:47 -06:00
Andrew
2427ad6871 Rework MultiMC's versioning system 2013-12-01 14:27:36 -06:00
Petr Mrázek
75c4d97b90 Exclude more debug libs (on OSX), debug builds include debug libs. 2013-12-01 17:33:40 +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
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
Anthony Parrott
6518296e99 Fix OS X packaging problem
GLOB_RECURSE was pointing at the wrong directory - it needed to point
at the directories that had the dylib files in them to fix them so they
didn’t point at the local installed version of Qt
2013-11-29 02:31:30 -05:00
Andrew
0395474a0c Nuke dead code 2013-11-28 22:05:58 -06:00
Andrew
f3a9dde52e Rework the password dialog
It's now used as a general purpose "account edit dialog". It'll be used
for entering usernames, passwords, or both.
2013-11-28 21:40:40 -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
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
7d7579d7f0 Move "manage accounts" to right, use player skin when available 2013-11-27 16:56:15 +00: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
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
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
Andrew
962639aa6d Added data structures for Mojang Account. 2013-11-11 12:59:59 -06:00
Petr Mrázek
bb7e8985f6 Reformat and (slightly) decruft all the things. 2013-11-04 02:53:05 +01:00
Petr Mrázek
4466929074 Add instance copying, fix instance creation (with identical names) 2013-11-03 21:28:04 +01:00
Sky
bade253a1a Added NagUtils, nag people about trying to override JVM memory options 2013-11-03 15:20:26 +00:00
Sky
b0ef429786 Add selectable message box helper, use it, make login GUI error label selectable 2013-10-29 12:40:09 +00: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
Orochimarufan
78882ff6b1 Fix MainWindow Icon; Fix WM_CLASS issue; now links QX11Extras and libxcb on linux 2013-10-18 18:43:19 +02:00
Sky
40a2456646 Huge Java detection refactor, version dialogs on first run (no JavaPath set) and "auto detect" button 2013-10-14 03:00:06 +01:00
Sky
f2291ef161 Move mod info frame and handler to MCModInfoFrame, use on all instances 2013-10-08 21:45:48 +01:00
Sky
b5816f976e Merge branch 'develop' of github.com:Drayshak/MultiMC5 into develop 2013-10-06 01:15:43 +01:00
Sky
7aeea14a02 Merge branch 'develop' of https://github.com/MultiMC/MultiMC5 into develop 2013-10-06 01:13:20 +01:00
Sky
d48aae7a16 Fix Linux CMake issues arising from Windows workaround 2013-10-06 01:09:21 +01:00
Petr Mrázek
f83119ce7e Added file logger 2013-10-06 01:13:40 +02:00
Sky
1dee4bb60d Add naive Windows Java detection - JavaUtils for finding it on other systems (incomplete) 2013-10-05 01:08:13 +01:00
Andrew
48bd3add29 Added a make target that prints the version name. 2013-10-01 17:01:41 -05:00
Andrew
1ed822d6e8 Made run script instal as executable.
Also fixed a small bug with the run script.
2013-10-01 16:30:30 -05:00
Andrew
02a7d147ef Add run script to install.
Also renamed "translations_target" to "translations". The old name was
dumb and annoying.
2013-10-01 16:13:21 -05:00
Andrew
22bdf67bf7 Merge branch 'master' into develop
This pulls in some changes I made to the CMakeLists file earlier.
2013-10-01 03:31:20 -05:00
Petr Mrázek
c05a39147a Implemented xz and pack200 unpackers required for proper forge installation.
Merge branch 'feature_forge_unpackers' into develop

Conflicts:
	CMakeLists.txt
2013-09-30 03:29:12 +02:00
Petr Mrázek
e45b444242 Add tweaks to make things build on windows 2013-09-30 03:26:23 +02:00
Petr Mrázek
8b0f8b9e59 ``Working'' forge unpackers. Needs a lot of hardening but good for alpha. 2013-09-30 02:34:46 +02:00
Petr Mrázek
d267d86f6e Replace lzma with xz. Tweaks to fix debug builds. 2013-09-28 18:43:30 +02:00
Petr Mrázek
2173abb9a8 Fix stuff up some more 2013-09-28 18:27:34 +02:00
Petr Mrázek
071ac45925 Merge branch 'develop' of https://github.com/hyperfang8/MultiMC5 into develop 2013-09-28 18:25:55 +02:00
Petr Mrázek
d903b0f0ea no unstable stuff. disable it. 2013-09-28 14:01:57 +02:00
hyperfang8
5c8def4ecc Disable pack200 and Enable MultiMCLauncher dep
I disable pack200 in cmake because it fails to compile.
I also renable MultiMCLauncher dep because resource file requires it.
2013-09-28 11:00:34 +02:00
Sky
8c36e69b06 Attempt fix for cmake warning spam on Windows 2013-09-26 12:49:58 +01:00
Petr Mrázek
2c8dc0b855 Compression algo dependencies, still need hackery... 2013-09-26 02:59:56 +02:00
Petr Mrázek
984c36e571 Implement basic yggdrasil auth.
No fancy login token saving involved.
2013-09-23 00:29:40 +02:00
Petr Mrázek
ceca6959d2 Working 1.6 modding (currently only forge) 2013-09-22 04:21:36 +02:00
Andrew
db3c26f53e Fixed CMakeLists install target on Linux. 2013-09-19 12:19:01 -05:00
Petr Mrázek
b979d0ce5d Implement legacy forge button!
Many refactors of the task system.
Progress dialog now accepts generic ProgressProvider objects
2013-09-18 00:00:35 +02:00
Petr Mrázek
d38b90530b Forge version list implementation. Needs integration and testing. 2013-09-16 00:54:39 +02:00
Petr Mrázek
7721c57e5e Split OneSixVersion into parts. 2013-09-11 23:43:17 +02:00
Stiepen22
3a08f01509 Changed CMakeList.txt to support translations 2013-09-08 20:18:55 +02:00
Petr Mrázek
6bea4ec988 Use HttpMetaCache to minimize network use. 2013-09-08 02:15:20 +02:00
Petr Mrázek
6892c11e9f Move a good chunk of the singleton objects into a new QApplication subclass. 2013-09-07 04:00:58 +02:00
Petr Mrázek
634e22298b Untested ETag cache class.
Yep.
2013-09-06 21:58:51 +02:00
Petr Mrázek
d587e7ada4 Eh, Derp. 2013-09-05 22:35:57 +02:00
Petr Mrázek
f8e8414d54 Speed up the downloads. Massively. 2013-09-02 00:25:40 +02:00
Petr Mrázek
5ff6fbf464 Basic 1.6 mod management (no jar mods) 2013-08-28 04:38:29 +02:00
Petr Mrázek
a63c7340a6 Nuke the old instance model, LONG LIVE THE NEW ONE 2013-08-26 06:30:11 +02:00
Petr Mrázek
7686741ef9 Do not assume clang on OSX. 2013-08-26 04:45:40 +02:00
Petr Mrázek
00742af3a6 OS compatibility and generic cleanup.
Removed bspatch/patchlib
Now builds and runs on Windows
2013-08-26 02:53:29 +02:00
Petr Mrázek
f0990fae4b Many improvements
PermGen can be tweaked from the settings menu
Groups are saved on change/exit
Install target is no longer completely broken
All the deplibs are now static
Added notes dialog
Fixed ini file format support (can save strings with newlines, tabs. UTF-8 is explicitly used!)
Rename button now uses line breaks so it doesn't grow ever wider (Added a custom tool button subclass)
There is now a CAT button. Meow.
2013-08-25 22:48:41 +02:00
Petr Mrázek
bbc47cb8bd Sync, removal of webkit as a dependency, removal of the web windows. 2013-08-20 02:29:36 +02:00
Petr Mrázek
c92ad7dcf8 Drag and Drop, mod management. 2013-08-18 20:52:17 +02:00
Petr Mrázek
253067c782 Move all the things (YES. Move them.)
Also, implemented some basic modlist logic, to be wired up.
2013-08-17 13:40:51 +02:00
Petr Mrázek
1782d5ad9a Implement icon picker, bring back raster icons. 2013-08-11 01:07:15 +02:00
Petr Mrázek
2e0cbf393a Massive renaming in the backend folder, all around restructure in the same. 2013-07-29 00:59:35 +02:00
TakSuyu
dc39d09339 Merge remote-tracking branch 'upstream/master'
Conflicts:
	gui/mainwindow.cpp
2013-07-27 12:55:51 -07:00
TakSuyu
44498f9894 Renamed some files to support naming scheme
changed modeditwindow -> legacymodeditdialog
added modeditdialog
mapped slots for modeditdialog
2013-07-27 12:42:32 -07:00
Stiepen
b5450042b5 Broke instance loading(?), also attempted to make Toolbar grayed out when no instance is selected. For debug purposes it is initially not grayed out 2013-07-14 22:01:30 +02:00
Petr Mrázek
e49b818698 Add queued downloader, some super-minor UI tweaks in stuff that's not even visible yet. 2013-06-30 22:39:57 +02:00
Andrew
3b38e5f924 Implemented LWJGL version lists.
The LWJGL list actually doesn't use tasks for loading. Instead, it takes advantage of the
QNetworkAccessManager's asynchronous requests. This is a system that I may look to implement for other version
lists and things such as the Minecraft version list and possibly even instance mod lists.

Loading things this way means that code that wants to load a list can simply call the load list function, rather
than having to get a task from the list and execute the task. Unfortunately, it also means we can't have task
progress dialogs for loading lists, but it shouldn't really be too difficult to write one that works with this
system.

At some point in the future, I'll probably end up putting all the code for this method of loading lists into a
base class and then update the other lists to support it.
2013-05-17 11:53:22 -05:00
Andrew
055198303c Removed old plugin system and implemented some version list stuff. 2013-05-03 14:41:37 -05:00
Andrew
276cfb18a6 Fix quazip issues. 2013-04-01 12:04:40 -05:00
Andrew
ebb2c54975 Merge branch 'master' of git://github.com/peterix/MultiMC5
Conflicts:
	CMakeLists.txt
	gui/mainwindow.cpp
2013-03-28 11:37:12 -05:00
Andrew
168ed3e8e5 Implemented version lists.
Further work on this is still needed. Currently there is no sorting or filtering of any kind. In addition,
changes need to be made to fix issues with bad ETags since the current system here is based on MultiMC 4's
version list system before it was fixed.
2013-03-28 11:33:31 -05:00
Orochimarufan
e4f86893a8 fix merge issues, make console window work again 2013-03-22 14:40:55 +01:00
Orochimarufan
cd1fdbbbc2 Merge branch 'master' of http://github.com/peterix/MultiMC5
Conflicts:
	CMakeLists.txt
	main.cpp
2013-03-22 14:01:54 +01:00
Orochimarufan
f01bf10dc5 Implement Keyring system base 2013-03-22 13:51:21 +01:00
Petr Mrázek
e4806ab08d Add SVG icon rendering/cache 2013-03-20 07:59:35 +01:00
Andrew
ad70e3fd4c Changed spaces to tabs in CMakeLists.txt because space indenting is the work of satan. 2013-03-19 19:15:19 -05:00
Guilherme Espada
bf49e58d11 Add travis CI building.
Uses GCC
2013-03-19 20:17:35 +00:00
Petr Mrázek
46f93311af Instance view, model, delegate. 2013-03-11 22:19:17 +01:00
Andrew
36396f7c6a Massive re-organization. 2013-02-26 16:47:39 -06:00
Andrew
23474da175 Merge branch 'master' of git://github.com/peterix/MultiMC5
Conflicts:
	CMakeLists.txt
	main.cpp
2013-02-25 13:31:37 -06:00
Andrew
498225debd Rewrote the settings system. It may still need some work. 2013-02-25 13:24:46 -06:00
Orochimarufan
3a173648e7 Implement ConsoleWindow 2013-02-22 18:18:23 +01:00
Orochimarufan
10c707363b Merge branch 'master' of http://github.com/Forkk/MultiMC5 2013-02-22 16:19:37 +01:00
Orochimarufan
9f174ad4e7 Implement Instance launching
Use --launch <instance> to test
2013-02-22 16:17:31 +01:00
Andrew
a7111b1328 Added interface for game update tasks. 2013-02-21 18:10:17 -06:00
Orochimarufan
eda7b6cf9d Merge branch 'inst_rewrite' of http://github.com/Forkk/MultiMC5 2013-02-21 21:55:47 +01:00
Orochimarufan
d891032219 use QtCreator's $QTPATH in CMake 2013-02-21 21:55:35 +01:00
Andrew Okin
9118de4b7c Fixed install on Linux 2013-02-21 14:52:23 -06:00
Andrew
2e0f6091b4 Changed java/endian.h to java/javaendian.h in CMakeLists 2013-02-21 14:36:01 -06:00
Orochimarufan
ca1fd44637 Merge branch 'master' of http://github.com/peterix/MultiMC5
Conflicts:
	CMakeLists.txt
	gui/mainwindow.cpp
	main.cpp
2013-02-21 20:40:32 +01:00
Orochimarufan
576e979df4 Implement About Dialog
Prepared XDG icon theme in :/icons/multimc. will only be usefull as soon
as Qt decides to support custom fallback themes. use the resources
directly for now.
2013-02-21 19:35:52 +01:00
Andrew Okin
3649904974 Fixed CXX flags. 2013-02-21 12:35:33 -06:00
Andrew
96e4f73a94 Include Git commit hash in config.h 2013-02-21 11:02:48 -06:00
Andrew
faddeb2c13 Reorganized the main CMakeLists file and added an icon on Windows. 2013-02-21 10:32:13 -06:00
Andrew
dd2e836b4c Split MultiMC up into a few separate libraries.
Fixed plugin system.

Tons of other stuff...
2013-02-20 19:10:09 -06:00