Commit Graph

236 Commits

Author SHA1 Message Date
5655a33515 Added Dependency API
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-04-21 18:42:05 +03:00
709736d3f9 Make response const
I don't think the segfault fix was ideal :P
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-04-18 09:28:10 +01:00
2e9403a324 This was moved
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-04-17 13:19:59 +01:00
ba17efa381 Smol fixes
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-04-17 13:18:25 +01:00
b8e0c8ebc6 Boring changes
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-04-17 10:16:03 +01:00
6d5c629b43 Added dependencies to the APIs
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-04-10 00:04:35 +03:00
3a7961834a Remove seek
Don't need it if the data is already in a byte array.

Signed-off-by: Kode <TheKodeToad@proton.me>
2023-04-09 21:28:40 +01:00
813ccc1381 How did i-
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-04-07 11:03:11 +01:00
b65f4c9536 Better collectFileListRecursively error
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-04-06 19:59:24 +01:00
012d8bb468 Revert concurrent syntax
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-04-06 19:58:09 +01:00
d7a137ad13 Remove more prototype not good code
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-04-06 19:24:19 +01:00
073aaf9b3b Remove "prototype" field
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-04-06 19:19:41 +01:00
871d647c93 Use local metadata
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-04-06 19:18:36 +01:00
e42050cc8a Skip lookup if no files and fail if zipping fails
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-28 14:22:28 +01:00
46f448dfba Improve invokeMethod syntax
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-19 21:26:25 +00:00
710156b9f1 Replace native file separator - this was accidentally brought to my attention on Modrinth's guild
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-19 21:25:12 +00:00
8837f06e4e Only add summary if not empty
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-18 14:01:41 +00:00
ddca838e46 Info and error dialogs
TODO: is there a better approach?

Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-18 12:24:18 +00:00
5d5fcae501 Further reduce buggy behaviour
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-06 17:24:04 +00:00
970ec8187c More refactoring
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-05 18:25:57 +00:00
87384182a1 Fix abort?
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-04 11:07:07 +00:00
f583e617ec Implement abort (possible broken?) and therefore make it work without crashing!
The shared pointer was going out of scope 🤦.

Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-04 10:37:56 +00:00
a2716f5cf6 Improve code
Even more broken now (it is stuck loading forever)!

Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-04 10:24:25 +00:00
2343aad088 Make it work! (TODO make it not crash)
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-03 15:00:07 +00:00
dcaa907fed Mod loader support
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-03 11:25:11 +00:00
adcdf28d64 Move task to another thread
I don't know whether this is the prefered method.

Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-03 11:24:36 +00:00
6505b0c065 Move logic to task
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-03-02 19:48:41 +00:00
b724607e31 feat(RD): add shader pack downloader
Signed-off-by: flow <flowlnlnln@gmail.com>
2023-02-05 17:02:56 -03:00
c3ea303a37 feat(RD): add resource pack downloader
Signed-off-by: flow <flowlnlnln@gmail.com>
2023-02-05 17:02:52 -03:00
435273e08a fix(Inst.Import): don't allow bad file path in mrpack import
This checks the URL of the path of the file to be downloaded,
ensuring that it always contains the root .minecraft target folder,
following the warning in the mrpack documentation.

Signed-off-by: flow <flowlnlnln@gmail.com>
2023-02-02 17:11:24 -03:00
29f7ea752f refactor: make shared_qobject_ptr ctor explicit
This turns issues like creating two shared ptrs from a single raw ptr
from popping up at runtime, instead making them a compile error.

Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-25 16:57:51 -03:00
6e841a3b7e Merge branch 'develop' into remove-updater
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-01-24 14:40:17 +01:00
ea5020e188 fix(license): add/fix my copyright/license headers
*sobbing in messy legal stuff i know nothing about*

Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-23 11:12:43 -03:00
c95c81d42f fix(ModUpdater): ensure instead of require icon_url
The spec says that this can be null, and indeed some mods have it set to
null, and should still be considered as valid.

Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13 16:59:37 -03:00
ba677a8cb7 refactor: change some ResourceAPI from NetJob to Task
This makes it easier to create resource apis that aren't network-based.

Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13 16:23:09 -03:00
36571c5e22 refactor(RD): clear up sorting methods
This refactors the sorting methods to join every bit of it into a single
list, easing maintanance. It also removes the weird index contraint on
the list of methods by adding an index field to the DS that holds the
method.

Lastly, it puts the available methods on their respective API, so other
resources on the same API can re-use them later on.

Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13 16:23:07 -03:00
45d1319891 refactor(RD): decouple ResourceModels from ResourcePages
This makes it so that we don't need a reference to the parent page in
the model. It will be useful once we change the page from a widget-based
one to a QML page.

It also makes tasks be created in the dialog instead of the page, so
that the dialog can also have the necessary information to mark versions
as selected / deselected easily. It also makes the task pointers into
smart pointers.

Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13 16:23:07 -03:00
6a18079953 refactor: generalize mod models and APIs to resources
Firstly, this abstract away behavior in the mod download models that can
also be applied to other types of resources into a superclass, allowing
other resource types to be implemented without so much code duplication.

For that, this also generalizes the APIs used (currently, ModrinthAPI
and FlameAPI) to be able to make requests to other types of resources.

It also does a general cleanup of both of those. In particular, this
makes use of std::optional instead of invalid values for errors and,
well, optional values :p

This is a squash of some commits that were becoming too interlaced
together to be cleanly separated.

Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13 16:23:00 -03:00
807da6a035 fix: Remove extra line breaks for modrinth descriptions
Signed-off-by: Joshua Goins <josh@redstrate.com>
2023-01-12 10:08:52 -05:00
e3f8d99087 refactor(Inst. Import): use m_* for member variables in MR components
Makes it clearer what is being changed when.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-17 12:41:10 -03:00
22aebc2215 fix(Inst. Import): correctly set component versions when updating
This makes it so that the later call to parse the old manifest doesn't
change the class data, so that the new data con continue there and be
reflected on the component list later.

Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-17 12:38:58 -03:00
5450e0edf3 fix(Inst.Import): don't set managed pack info from imported ZIPs
This prevents the Managed Pack page from showing up even though there's
no way for it to work correctly.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-13 13:43:27 -03:00
bb386a1162 fix(ManagedPackPage): only update the current instance exactly
Also carry on the original ID to avoid updating the wrong instance.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06 17:00:34 -03:00
968366c2ae feat+fix: allow forwarding extra info to InstanceImportTask
This allows us to pass to the creation instances their actual pack ID
and version ID, that in Flame's case, are only available before starting
to create an instance.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06 17:00:32 -03:00
82699cc297 feat: allow skipping the update confirmation dialog
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06 17:00:32 -03:00
08d008a5aa refactor: abstract away update confirmation dialog
... so that we can avoid code duplication.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06 17:00:29 -03:00
cba2608c1c feat: add logic for the modrinth instance modpack page
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06 16:54:54 -03:00
e29259cd55 Fix: Resolve ambiguous overload errors
Clang-cl fails to select the correct function and instead errors

Signed-off-by: TheLastRar <TheLastRar@users.noreply.github.com>
2022-11-04 18:11:39 +00:00
93894f62ff fix: avoid segfault for unexpected API reponse
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-10-28 00:08:15 +02:00
dd6f670dec fix: Fixed memory leak
Signed-off-by: timoreo <contact@timoreo.fr>
2022-09-26 11:50:55 +02:00