Commit Graph

128 Commits

Author SHA1 Message Date
flow
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
flow
6d27ef5eea
fix(ResourceFolder): don't create two smart ptrs for the same raw ptr
Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-24 17:04:01 -03:00
Sefa Eyeoglu
1a35fec134
Merge pull request #696 from Ryex/import-all-the-things
Fixes https://github.com/PrismLauncher/PrismLauncher/issues/581
Fixes https://github.com/PrismLauncher/PrismLauncher/issues/700
2023-01-16 10:04:09 +01:00
flow
ebb0596c1a
fix: don't fail mod parsing when encountering invalid modListVersion
The spec (admitely a very old one) states that this entry should always
have the value "2". However, some mods do not follow this convention,
causing issues.

One notable example is the 1.6 version of Aether II for 1.7.10, that has
this value set at "5" for whatever reason.

Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13 21:15:10 -03:00
Rachel Powers
574af2c795 chore: cleanup review suggestions
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-01-09 17:18:08 -07:00
Rachel Powers
03b75bf2a9 feat: Import all the things!
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-01-07 15:04:22 -07:00
Sefa Eyeoglu
f3f628410d
Merge pull request #576 from Ryex/identify-zip-packs
fix https://github.com/PrismLauncher/PrismLauncher/issues/349
2023-01-07 17:33:34 +01:00
Rachel Powers
0ebf04a021
fix newlines
Co-authored-by: flow <flowlnlnln@gmail.com>
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-30 10:21:49 -07:00
flow
d55f47077a
Merge pull request #626 from leo78913/mods-provider-column
closes https://github.com/PrismLauncher/PrismLauncher/issues/402
2022-12-30 11:39:03 -03:00
Rachel Powers
7f438425aa refactor: add an identify function to make easy to reuse
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-29 19:47:19 -07:00
flow
257970c27d
refactor(Mods): make provider() return a std::optional
This makes it easier to check if a mod has a provider or not, without
having to do a string comparison.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-29 13:21:49 -03:00
Rachel Powers
3691f3a296 fix: cleanup and suggested changes
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-26 14:50:15 -07:00
Sefa Eyeoglu
6ea1234a3b
Merge pull request #618 from TheKodeToad/safer-destructive-actions
Fixes https://github.com/PolyMC/PolyMC/issues/948
2022-12-26 17:48:43 +01:00
Rachel Powers
8422e3ac01 feat: zip resource validation check for flame
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-24 20:43:17 -07:00
Rachel Powers
cfce54fe46 fix: update parse tests
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-24 20:43:17 -07:00
Rachel Powers
a7c9b2f172 feat: validate world saves
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-24 20:43:17 -07:00
Rachel Powers
eb31a951a1 feat: worldSave parsing and validation
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-24 20:43:01 -07:00
Rachel Powers
ccfe605920 feat: add shaderpack validation
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-24 15:55:10 -07:00
Rachel Powers
878614ff68 feat: add a ModUtils::validate
moves the reading of mod files into `ModUtils` namespace

Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-24 09:42:02 -07:00
Rachel Powers
64c51a70a3 feat: add initial support for parseing datapacks
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-24 09:42:02 -07:00
leo78913
aa3633d2d7
fix: translate unknown mod provider
Co-authored-by: flow <flowlnlnln@gmail.com>
Signed-off-by: leo78913 <leo3758@riseup.net>
2022-12-16 11:13:54 -03:00
flow
c440f33122
fix(ResourceModel): use a single ConcurrentTask for parsing tasks
This avoids creating a bunch of threads that fills up the maximum amount
allowed by QThreadPool, and causes a deadlock between the helper threads
and the main thread (main thread tries to create threads in painting
code, but isn't able to, so it keeps waiting for a thread to free up,
but all the threads are waiting on the main thread to process some
events).

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-15 13:51:07 -03:00
leo78913
4ee29b388d feat: add a provider column to the mods page
Signed-off-by: leo78913 <leo3758@riseup.net>
2022-12-15 12:02:08 -03:00
TheKodeToad
127b094c41 Improve handling of destructive actions
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2022-12-14 15:20:42 +00:00
flow
5622bcc563
Merge pull request #461 from flowln/fix_big_resource_pack_imgs
Fixes https://github.com/PrismLauncher/PrismLauncher/issues/360
2022-12-11 04:16:21 -08:00
Sefa Eyeoglu
8cac61f0be
fix: check resource pack validity solely using pack format
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-11-27 18:41:52 +01:00
flow
f55fc51e9b
fix: remove commented-out assertions
They may not hold true at all times, and that's fine.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-11-20 11:11:08 -03:00
flow
df0f9259c0
refactor: move RP/TP validation to their respective utils
This makes it easier to validate individual resources, and allows the
logic to be used in other places in the future, if we need to.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-11-20 11:10:26 -03:00
Ryan Cao
1f6b8f9d2b
fix instance IDs and resource pack imports
Signed-off-by: Ryan Cao <70191398+ryanccn@users.noreply.github.com>
2022-11-19 23:59:30 +08:00
Ryan Cao
a33b804923
fix: add resource pack format for 1.19.3
Co-authored-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
Signed-off-by: Ryan Cao <70191398+ryanccn@users.noreply.github.com>
2022-11-19 23:47:47 +08:00
Ryan Cao
f527958cb3
fix: check if packFormat is valid for resourcepack parsing
Signed-off-by: Ryan Cao <70191398+ryanccn@users.noreply.github.com>
2022-11-19 23:42:56 +08:00
Ryan Cao
b1bdc6f745
fix resource packs and add support for texture packs
Signed-off-by: Ryan Cao <70191398+ryanccn@users.noreply.github.com>
2022-11-19 23:38:05 +08:00
flow
c4c1e75de8
fix: use QPixmapCache only from the main thread
It's a required condition.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-11-15 18:14:03 -03:00
flow
7705f290ca
fix: don't retry to load RP images that can't fit in the cache
Avoids an infinite loop when the image is too big.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-11-15 12:07:11 -03:00
flow
cedc7754d9
Merge pull request #428 from DioEgizio/fixes-to-CI 2022-11-14 14:16:01 -08:00
TheLastRar
aef5349aee Pass index.parent() as parent parameter for rowCount
Signed-off-by: TheLastRar <TheLastRar@users.noreply.github.com>
2022-11-14 19:05:57 +00:00
TheLastRar
ac993aa31f Use Q_UNUSED instead of [[maybe_unused]] in onParseFailed
Qt5 on Ubuntu cannot handle [[maybe_unused]] in this function

Signed-off-by: TheLastRar <TheLastRar@users.noreply.github.com>
2022-11-14 19:05:57 +00:00
TheLastRar
fce323b945 Check parent in rowCount/columnCount/canFetchMore
Signed-off-by: TheLastRar <TheLastRar@users.noreply.github.com>
2022-11-14 19:05:57 +00:00
TheLastRar
08f8623cb7 Mark paramaters of onParseFailed as unused
Signed-off-by: TheLastRar <TheLastRar@users.noreply.github.com>
2022-11-14 19:05:56 +00:00
txtsd
0a04c3a2a7 fix: Fix the error that CodeQL caught
Signed-off-by: txtsd <code@ihavea.quest>
2022-11-13 18:54:55 +01:00
flow
76050880f1
fix: use unicode variant for marking '.index' hidden
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-11-04 16:53:21 -03: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
Trial97
600c49f7f0
Replaced tomlc99 with tomlplusplus
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2022-09-24 00:10:27 +03:00
Sefa Eyeoglu
a24d589845
fix: ensure all resource folders exist
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-20 10:39:05 +02:00
Sefa Eyeoglu
23fc453fae
fix: comments and naming of texture pack stuff
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-20 10:26:15 +02:00
Sefa Eyeoglu
aad6f74db6
fix: tests
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-20 10:26:15 +02:00
Sefa Eyeoglu
07dcefabcb
feat: add texture pack parsing
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-09-20 10:26:15 +02:00
flow
0873b8d304
fix: prevent container detaching in ResourceFolderModel
and use const accessors whenever we can!

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-16 20:12:31 -03:00
flow
c9eb584ac8
fix: prevent deletes by shared pointer accidental creation
This fixes the launcher crashing when opening the game :iea:

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-16 20:12:30 -03:00
flow
10493bd44a
fix: move newly allocated resources to the main thread
This avoids them getting deleted when the worker thread exits, due to
thread affinity on the created thread.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-16 20:12:30 -03:00