Commit Graph

4787 Commits

Author SHA1 Message Date
Sefa Eyeoglu
1cdadafdf8
refactor: use QCommandLineParser instead
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-26 13:21:27 +02:00
timoreo
dd6f670dec
fix: Fixed memory leak
Signed-off-by: timoreo <contact@timoreo.fr>
2022-09-26 11:50:55 +02:00
timoreo
9ff364b0d3
huge nit: added const refs, everywhere
Signed-off-by: timoreo <contact@timoreo.fr>
2022-09-26 11:50:31 +02:00
Sefa Eyeoglu
58a5331f7b
Merge pull request #1164 from Scrumplex/fix-sort-languages 2022-09-25 19:50:55 +02:00
Alexandru Ionut Tripon
ed261f0af9
Update launcher/minecraft/mod/tasks/LocalModParseTask.cpp
Co-authored-by: flow <flowlnlnln@gmail.com>
Signed-off-by: Alexandru Ionut Tripon <alexandru.tripon97@gmail.com>
2022-09-25 20:38:55 +03:00
flow
c01b475cbf
Merge pull request #1165 from ErogigGit/develop 2022-09-25 09:33:29 -03:00
ErogigGit
3d4feeec8d DCO Remediation Commit for ErogigGit <eric.hagerstrand@gmail.com>
I, ErogigGit <eric.hagerstrand@gmail.com>, hereby add my Signed-off-by to this commit: 8a4f1c66f8

Signed-off-by: ErogigGit <eric.hagerstrand@gmail.com>
2022-09-24 23:31:30 +02:00
Trial97
a1800ec23f
Prefer the system tomlplusplus
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2022-09-25 00:20:01 +03:00
ErogigGit
8a4f1c66f8 Allow double clicking to mark for dowload
Signed-off-by: Erogig <erogigabyte@gmail.com>
2022-09-24 22:37:51 +02:00
Sefa Eyeoglu
b187231b0e
fix: sort languages by their name instead of key
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-24 11:53:41 +02:00
Sefa Eyeoglu
60b38de69f
fix: fallback for languages without a native name
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-24 11:48:33 +02:00
Trial97
600c49f7f0
Replaced tomlc99 with tomlplusplus
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2022-09-24 00:10:27 +03:00
flow
e7380e70a3
fix: use placeholder icon when the project has no icon in MR
Projects with no icon return a null icon URL in Modrinth's API.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-23 18:05:58 -03:00
flow
3df8594f19
feat: change project item delegate for modrinth modpacks
more info! \ ^-^/

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-23 16:59:40 -03:00
flow
ee4a829293
fix: remove manual icon resize in ModModel
THis fixes a FIXME, now that we fixed the issue :o

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-23 16:59:40 -03:00
flow
1862f3c124
fix: set icon sizes correctly in ProjectItemDelegate
no more dumb hacks with icons!!

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-23 16:59:40 -03:00
Sefa Eyeoglu
777ab3416f
feat: also format resource/texture pack names
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-21 15:00:28 +02:00
Sefa Eyeoglu
ecf5ab75e7
feat: support more formatting codes
also fix some crashes

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-21 14:59:01 +02:00
flow
4f6d964217
fix: don't change groups when updating an instance
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:10 -03:00
flow
06019f01e3
feat: add dialog to ask whether to chaneg instance's name
This prevents custom names from being lost when updating, by only
changing the name if the old instance name constains the old version,
so that we can update it if the user whishes to.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:10 -03:00
flow
ddde885084
fix: show warning in case there's no old index when updating
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:10 -03:00
flow
be8c6f218c
refactor: setAbortStatus -> setAbortable
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:10 -03:00
flow
9eb35ea7c8
fix: don't load specific settings for managed pack info
This avoids loading all settings for all instances when searching for
one with a specific managed pack name.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:10 -03:00
flow
d2fdbec41d
fix: move file deletion to the end of the instance update
This makes it harder for problems in the updating process to affect the
current instance. Network issues, for instance, will no longer put the
instance in an invalid state.

Still, a possible improvement to this would be passing that logic to
InstanceStaging instead, to be handled with the instance commiting
directly. However, as it is now, the code would become very spaguetti-y,
and given that the override operation in the commiting could also put
the instance into an invalid state, it seems to me that, in order to
fully error-proof this, we would need to do a copy operation on the
whole instance, in order to modify the copy, and only in the end
override everything an once with a rename. That also has the possibility
of corrupting the instance if done without super care, however, so I
think we may need to instead create an automatic backup system, with an
undo command of sorts, or something like that. This doesn't seem very
trivial though, so it'll probably need to wait until another PR. In the
meantime, the user is advised to always backup their instances before
doing this kind of action, as always.

What a long commit message o.O

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:09 -03:00
flow
2dd372600c
fix: some abort-related issues
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:09 -03:00
flow
eda6cf11ef
feat(ui): improve info dialog before updating an instance
Adds a 'Cancel' option, and add a note about doing a backup before
updating.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:09 -03:00
flow
68facd6b93
fix(ui): hook up abort status signal in ProgressDialog
Now we have a visual indication on when tasks are abortable!

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:09 -03:00
flow
87002fb8f8
fix: hook up setAbortStatus in instance import tasks
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:09 -03:00
flow
6a50fa35ec
feat: add canAbort() status change in Task
By now, it's a recurring pattern of wanting to restrict aborting in
certain situations. This avoids further code duplication, and adds a
signal that external users can hook up to to respond to such change.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:09 -03:00
flow
6541570969
fix: simplify abort handling and add missing emits
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:09 -03:00
flow
4b0ceea894
fix: correctly set managed pack fields in CF pack
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:09 -03:00
flow
8c0816c166
feat: add override awareness to CF modpack updating
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:08 -03:00
flow
be769d07f1
fix: correctly set all managed pack fields in Modrinth pack
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:08 -03:00
flow
3a9d58e31c
feat: add override handling in modrinth pack update
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:08 -03:00
flow
7024acac06
feat: add override helper functions
These help us keep track of relevant metadata information about
overrides, so that we know what they are when we update a pack.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:08 -03:00
flow
6131346e2f
refactor: change the way instance names are handled
While working on pack updating, instance naming always gets in the way,
since we need both way of respecting the user's name choice, and a
standarized way of getting the original pack name / version.

This tries to circunvent such problems by abstracting away the naming
schema into it's own struct, holding both the original name / version,
and the user-defined name, so that everyone can be happy and world peace
can be achieved! (at least that's what i'd hope :c).

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:08 -03:00
flow
eed73c9078
refactor: clean up InstanceImportTask a bit
Also removes a divide by two in the download progress
(why was it there???)

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:08 -03:00
flow
795d6f35ee
feat: add curseforge modpack updating
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:08 -03:00
flow
ebd46705d5
refactor: move creation of CF file download task to a separate function
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:08 -03:00
flow
72d2ca234e
refactor: move flame modpack import to separate file
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:07 -03:00
flow
2246c3359b
refactor: add throw_on_blocked arg to Flame file parse
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:07 -03:00
flow
242fb156a2
feat: add 'getFiles' by fileIds route in Flame API
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:07 -03:00
flow
208ed73e59
feat: add early modrinth pack updating
Still some FIXMEs and TODOs to consider, but the general thing is here!

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:06 -03:00
flow
4441b37338
refactor: move modrinth modpack import to separate file
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:32:36 -03:00
flow
941d75824a
refactor: add instance creation abstraction and move vanilla
This is so that 1. Code is more cleanly separated, and 2. Allows to more
easily add instance updating :)

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:32:36 -03:00
flow
ec9ddc4f22
chore: add helper function for copying managed pack data between insts.
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:32:36 -03:00
Sefa Eyeoglu
98b6f90172
fix: add more legacy architectures
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-20 16:01:08 +02:00
Sefa Eyeoglu
7e280de361
refactor: drop 64-bit check
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-20 16:01:08 +02:00
Sefa Eyeoglu
7bd8bd13fe
feat: support multiarch system classifiers
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-20 16:01:06 +02:00
Sefa Eyeoglu
09e85e948c
refactor: introduce RuntimeContext
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-20 15:59:43 +02:00