Commit Graph

1887 Commits

Author SHA1 Message Date
flow
3225f514f6
refactor: move general info from Mod to Resource
This allows us to create other resources that are not Mods, but can
still share a significant portion of code.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-20 10:41:59 -03:00
flow
2d63c86022
feat: make Task a QRunnable
This makes it possible to run a task in another thread.

I added a variable to toggle debug prints because they seem to trigger
an assertion on Qt internals when the task in on another thread. Of
course, this isn't awesome, but can wait until we improve our logging.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-20 10:41:59 -03:00
Sefa Eyeoglu
afb9ebcd99
fix: distinguish Coremods
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-08-20 12:53:13 +02:00
Sefa Eyeoglu
92d7e44525
Merge pull request #878 from flowln/lazy_settings 2022-08-20 12:50:56 +02:00
Sefa Eyeoglu
a517f442ea
Merge pull request #1023 from flowln/better_shared_ptr 2022-08-20 12:50:50 +02:00
Sefa Eyeoglu
311758233b
Merge pull request #1044 from flowln/better_orphan_fix 2022-08-20 12:50:43 +02:00
Sefa Eyeoglu
6e086eb808
Merge pull request #992 from Scrumplex/refactor-version 2022-08-20 12:50:25 +02:00
Sefa Eyeoglu
7e8644430c
Merge pull request #1007 from Gingeh/disable-update-button 2022-08-20 12:50:19 +02:00
Sefa Eyeoglu
70a8f6743a
Merge pull request #919 from kumquat-ir/download-all-blocked 2022-08-20 12:50:01 +02:00
Sefa Eyeoglu
d5a2185030
Merge pull request #1068 from TayouVR/improvedWindowsJavaCheck 2022-08-19 14:26:36 +02:00
Tayou
26f31e9288
use qEnvironmentVariable instead of qgetenv in JavaUtils
Signed-off-by: Tayou <tayou@gmx.net>
2022-08-18 23:59:35 +02:00
Sefa Eyeoglu
e654e66839
Merge pull request #1049 from flowln/waiting_for_news_-_- 2022-08-18 22:53:41 +02:00
Tayou
bb4861cf0d check for java installs in PATH on windows
this should find java installs from scoop as well as any other installer, that registers java in the PATH environment variable.

Signed-off-by: Tayou <tayou@gmx.net>
2022-08-18 18:24:32 +02:00
Sefa Eyeoglu
01505910f4
refactor: move classpath definition into NewLaunch itself
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-08-18 18:14:01 +02:00
Sefa Eyeoglu
ab766a0598
Merge pull request #968 from magneticflux-/utf8-logging
Decode process lines as UTF-8
2022-08-18 10:44:01 +02:00
Mitchell Skaggs
3c4b45c9e7
Use C locale codec for decoding
This should correctly decode multi-byte non-UTF-8 text, such as Windows-936 (Simplified Chinese)

Signed-off-by: Mitchell Skaggs <skaggsm333@gmail.com>
2022-08-13 10:39:05 -05:00
flow
93507a263b
fix: hide 'More news...' button if the news aren't loaded yet
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-12 17:41:11 -03:00
Sefa Eyeoglu
1175461030
refactor: switch to new versioning scheme
The new versioning system is based on the versioning system used by the
GNOME Foundation for the GNOME desktop.

We are dropping the "major version" as defined by SemVer and move to a
version number with a most and least significant number.

The most significant number must be incremented, if there are new
features or significant changes since last major release.

Otherwise, the least significant number must be incremented, if there
are only minor changes since the last release. New features or
significant changes mustn't be introduced by a bump of the least
significant number.

If a minor change would introduce small user-facing changes (like a
message-box or slight UI changes), it could still be classified as a
minor change.
At the end of the day, a human shall decide, if a change is minor or
significant, as there is no clear line that would separate a "minor" and
a "significant" change in a GUI-application.

Definitions:

feature: New user-facing functionality
significant change: Something that changes user-facing behavior
minor change: Something that fixes unexpected behavior

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-08-12 14:22:24 +02:00
flow
2f5e55bea0
fix: only remove orphaned metadata on first opening
This avoids deleting the metadata while one is updating their mods.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-11 13:11:56 -03:00
timoreo
c375e7b4df
Merge pull request #897 from jamierocks/atl-updating-initial 2022-08-11 08:50:05 +02:00
timoreo
5d188c69ed
Merge pull request #1039 from budak7273/fix-world-safety-nag-title-text 2022-08-11 07:33:13 +02:00
timoreo
1a5986abe0
Merge pull request #920 from flowln/metacache_fix 2022-08-11 07:32:43 +02:00
Robb
cebac3c10e
Make new title strings translatable
Signed-off-by: Robb <computerguy440+gh@gmail.com>
2022-08-10 12:07:24 -05:00
timoreo
a5da3db966
Merge pull request #1018 from Scrumplex/fix-infinite-auth-loop 2022-08-10 18:14:26 +02:00
Robb
cd30f75173
fix: Make world safety nag title text match the action being performed instead of always saying 'Copy World'
Signed-off-by: Robb <computerguy440+gh@gmail.com>
2022-08-09 16:01:21 -05:00
Mitchell Skaggs
94df4ceb36
Fix use of Qt 5.14 enum
Signed-off-by: Mitchell Skaggs <skaggsm333@gmail.com>
2022-08-09 00:17:53 -05:00
Mitchell Skaggs
a14476c5fb
Replace local 8-bit decoding with UTF-8 decoding
Handles incomplete byte sequences using `QTextDecoder`

Signed-off-by: Mitchell Skaggs <skaggsm333@gmail.com>
2022-08-08 23:54:01 -05:00
Sefa Eyeoglu
d82bb29919
fix: don't apply GameMode/MangoHud, if they aren't supported
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-08-08 21:19:46 +02:00
Sefa Eyeoglu
33af0c6a7c
refactor: don't include mangohud's library path
This could cause issues on some environments. Users should just put
MangoHud libs into global LD_LIBRARY_PATH, just like with any other
library

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-08-08 21:16:37 +02:00
Sefa Eyeoglu
68f3f98bc3
feat: detect GameMode and MangoHud's presence
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-08-08 21:16:37 +02:00
Sefa Eyeoglu
f873cd5b1a
refactor: store current capabilities
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-08-08 21:16:37 +02:00
flow
7b27f200b1
fix: don't mutate QHash while iterating over it
Even though it was using a QMutableHashIterator, sometimes it didn't
work quite well, so this is a bit better.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-05 16:30:12 -03:00
flow
f4b207220c
fix: add some more nullptr checks / protection
die sigsegv 🔫

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-05 15:10:44 -03:00
flow
d835e1d14e
refactor: simplify smart pointers more
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-05 11:38:46 -03:00
flow
75f92de8f8
Merge pull request #1017 from flowln/kill_orphan_metadata
Remove orphaned metadata to avoid problems with auto-updating instances
2022-08-04 12:57:20 -07:00
flow
362ecdb583
refactor+fix: use QSharedPointer for shared_qobject_ptr
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-04 15:33:51 -03:00
Sefa Eyeoglu
355762aa30
fix: emit abort in LaunchController
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-08-04 10:07:36 +02:00
Sefa Eyeoglu
be4fb65470
fix: Add root path detection on OpenBSD
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-08-03 21:14:32 +02:00
Sefa Eyeoglu
4ed296bad4
fix: allow user to interrupt launch after 3 tries
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-08-03 20:38:40 +02:00
Gingeh
a8aa862919 Move large condition into a new lambda
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
2022-08-03 16:39:30 +10:00
flow
31ba1de53b
fix: remove orphaned metadata to avoid problems with auto-updating insts
Just as my master has taught me. 🔫

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-02 16:15:39 -03:00
Gingeh
f33b31e048 Check for running instance when re-opening the mod folder page and when selecting mods
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
2022-08-02 14:14:45 +10:00
Gingeh
0d10ebb7ca Update launcher/ui/pages/instance/ModFolderPage.h
Co-authored-by: flow <flowlnlnln@gmail.com>
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
2022-08-02 12:50:25 +10:00
flow
4a8abc948e
fix: prevent segfault due to callbacks into deleted objects
Since network requests are, for the most part, asynchronous, there's a
chance a request only comes through after the request sender has already
been deleted.

This adds a global (read static) hash table relating models for the mod
downloader to their status (true = alive, false = destroyed). It is a
bit of a hack, but I couldn't come up with a better way of doing this.

To reproduce the issue before this commit: scroll really quickly through
CF mods, to trigger network requests for their versions and description.
Then, in the middle of it close the mod downloader. Sometimes this will
create a crash.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 18:34:15 -03:00
Gingeh
77b640b76b Disable "Check for Updates" and "Download Mods" while the game is running
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
2022-08-01 20:56:05 +10:00
Gingeh
a8dfe98b1a Disable "Check for Updates" if all mods are removed
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
2022-08-01 20:56:05 +10:00
flow
cee41b87f7
fix(ui): force redraw of mod list when (de)selecting a mod
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:31 -03:00
flow
7a95314e42
feat(ui): remember mod download dialog's geometry
Makes it consistent with other modal dialogs.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:31 -03:00
flow
6aaf1f4f21
feat: lazy-load CF mod descriptions
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:30 -03:00
flow
368a0ddd44
feat: add mod descriptions to CF mods
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:30 -03:00
flow
0808a10b7b
feat: cache mod versions
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:30 -03:00
flow
6f052baa94
refactor: use function cb instead of class cb in getVersions
I've discovered even more functional programming! :^)

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:30 -03:00
flow
5bc67d3f6b
feat: cache extra mod info (like links and body)
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:30 -03:00
flow
74c6c5cfbc
refactor: use function cb instead of class cb in getModInfo
I've discovered functional programming :^)
This makes this route more fit for general use.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:30 -03:00
flow
158b7fd166
feat+refactor: clean up ProgressWidget and add progress indicatior to
mod downloader

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:30 -03:00
flow
c3f647dc96
feat: add (semi) instant searching in mod downloader
It has a delay of 350ms from the last typed character to search, in
order to cache small changes while typing.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:30 -03:00
flow
5936c7b65c
change: preserve search term across different mod providers
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:29 -03:00
flow
a8bcd85c93
feat+refactor: add shortcuts to mod downloader and clean up
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:29 -03:00
flow
127b558f95
change: change button names to be more user-friendly
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:29 -03:00
flow
6e9a27f40f
feat: display the 'body' of a MR mod on the mod downloader
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:29 -03:00
flow
4a13dbe3bb
feat: create delegate for project item views
This allows us to define custom painting for list view items. In
particular, this is applied to the mod downloader, in order to allow
displaying both the mod name and mod description, and settings their
effects (like bold or underline) independent of each other.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:29 -03:00
flow
0f61f5ba03
fix(ui): missing tr() in mod download dialog's title
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01 07:33:29 -03:00
kumquat-ir
9c105914f0 use BlockedModsDialog for ftb packs as well
Signed-off-by: kumquat-ir <66188216+kumquat-ir@users.noreply.github.com>
2022-07-31 15:05:47 -04:00
kumquat-ir
579582740e Merge remote-tracking branch 'origin/develop' into download-all-blocked
Signed-off-by: kumquat-ir <66188216+kumquat-ir@users.noreply.github.com>
2022-07-31 14:54:50 -04:00
Ryan Cao
b15544c163
Trash instances instead of deleting (when possible) (#549)
Squashed because of :pofat: commit history
2022-07-30 14:42:33 -03:00
LennyMcLennington
94a63e3859
Merge pull request #941 from Scrumplex/bump-cxx-standard
Bump to C++17
2022-07-30 17:10:59 +01:00
timoreo
74120fe1f3
Merge pull request #699 from Scrumplex/resolve-ftb-mods-cf 2022-07-28 09:43:39 +02:00
DavidoTek
b4e8abd0ad feat: win32 enable dark titlebar for dark theme
Signed-off-by: DavidoTek <54072917+DavidoTek@users.noreply.github.com>
2022-07-26 23:25:17 +02:00
flow
336f1f4f50
Merge pull request #974 from flowln/accounts_qt6
Fix adding multiple accounts in Qt6
2022-07-26 16:08:05 -03:00
flow
1ce0f0e7a5
fix: progress dialog going away even if the task was not aborted
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-26 20:33:33 +02:00
flow
fbf1901d86
refactor: shuffle some things around to improve readability
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-26 20:33:33 +02:00
flow
0382f33c46
fix(ui): pump events to show "Copying modpack files..." text
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-26 20:33:33 +02:00
flow
13372f3f99
chore: clean up FTBPackInstallTask a bit and connect missing signals
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-26 20:33:33 +02:00
flow
e741cb7f0a
fix: add abort handlign in Flame's FileResolvingTask
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-26 20:33:33 +02:00
Sefa Eyeoglu
fb289c6b17
chore: add license headers
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-26 20:33:29 +02:00
Sefa Eyeoglu
75a7ea55d4
feat: implement mod resolving for FTB
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-26 20:33:10 +02:00
Sefa Eyeoglu
86573a5ccd
Merge pull request #961 from flowln/fix_resource_filter 2022-07-26 20:14:18 +02:00
flow
6fe55a79f1
fix: use const qualifier for operator==() and allow other comparisons
This fixes an implicit behavior changed by C++17.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-26 15:11:56 -03:00
flow
1a6cb9ee99
chore: add some debugging prints in AccountList
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-26 15:11:56 -03:00
LennyMcLennington
65a945f968
Merge pull request #956 from flowln/jar_mods_aa
Fix segmentation fault when using jar mods
2022-07-25 06:57:40 +01:00
flow
a9e8ed5087
fix: pump events and do a queued start for concurrent tasks
Heavy workloads can consume a ton of time doing their stuff, and starve
the event loop out of events. This adds an event processing call after
every concurrent task has been completed, to decrease the event loop
stravation on such loads.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-24 17:46:54 -03:00
flow
00520b6a0e
feat: add hashing tasks to the sequential task in ModUpdateDialog
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-24 17:46:54 -03:00
flow
e6f2a3893a
refactor+feat: improve code separation in ensure metadata
... and avoid calculating the same hash multiple times

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-24 17:46:54 -03:00
flow
631a93bcd8
refactor: add a HashUtils place for hashing stuff
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-24 17:46:54 -03:00
flow
b1763353ea
feat: do incremental calculation of CF's hash
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-24 17:46:53 -03:00
flow
15ec1abb6a
feat: use QIODevice for calcuating the JAR hash on Modrinth
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-24 17:46:53 -03:00
flow
cfda8dbb2b
refactor: use QIODevice instead of a whole QByteArray for hash calc.
This allows Qt to do its thing and optimize the data gathering from the
JAR.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-24 17:46:53 -03:00
flow
3aa2003951
fix: filter in external resource pages not working
For some reason, using setFilterFixedString() doesn't seem to update the
QRegularExpression object with a new value, instead leaving it empty. It
updates QRegExp just fine, so maybe that's an Qt bug? o.O

Anyway, using regex in the filter is kinda cool actually :D

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-23 23:50:56 -03:00
flow
0e473f4570
Merge pull request #951 from flowln/performace_tab_fix
Hide the entire performance tab on the instance settings in non-Linux OSes
2022-07-23 18:31:04 -03:00
flow
1157436a24
fix: sigsegv when trying to use jar mods
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-23 14:24:24 -03:00
flow
813dfbd2d3
fix: hide the entire performance tab on instance settings in non-Linux
"just woke up after a major release has just been made" coding style

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-23 13:29:39 -03:00
Sefa Eyeoglu
ba7dfb360c
fix: actually substitute variables in pre/post launch
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-23 17:51:58 +02:00
timoreo
6aad750fe0
Merge pull request #893 from Scrumplex/refactor-env-handling 2022-07-23 14:08:10 +02:00
Sefa Eyeoglu
c65f5f7728
Merge pull request #877 from Scrumplex/refactor-offline-accounts 2022-07-23 13:54:36 +02:00
timoreo
74b62727af
Merge pull request #947 from flowln/unicode_uhh 2022-07-23 13:38:48 +02:00
Sefa Eyeoglu
2e94562f79
fix: treat accounts as offline, if auth servers are down
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-23 12:38:01 +02:00
flow
439e7bbf4e
change: unicode chars for folders and disabled mods in mod list
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-22 17:45:27 -03:00
txtsd
75cfaf0672
Merge pull request #938 from Scrumplex/fix-i18n3 2022-07-22 22:45:53 +05:30
flow
33853b6107
fix: use single-space unicode char for checkmark in mod list
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-22 11:48:08 -03:00
flow
ab6e1b112b
change(cache): use cache-specific http headers for their lifetime
This uses the 'Age', 'Cache-Control' and 'Expires' HTTP headers to more
accurately set up the cache lifetime, falling back to a static 1-week
time if they're not present in the response.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-21 19:19:24 -03:00
Sefa Eyeoglu
c666c3e251
refactor!: bump to C++17 and C17
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-20 14:22:10 +02:00
Sefa Eyeoglu
9cc1773fa7
fix: move HTML code outside of translation
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-20 10:15:21 +02:00
Sefa Eyeoglu
e78c7af715
Merge pull request #936 from Scrumplex/fix-windows-crap-2 2022-07-20 10:07:10 +02:00
Sefa Eyeoglu
fd2b206997
fix: support LD_* for OpenBSD
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-19 18:07:58 +02:00
Sefa Eyeoglu
2d53c7c5b2
refactor: filter values in environment variables
Before this change, you had to specify custom LD_* variables using the
prefix GAME_LD_*. Now instead of dropping all LD_* variables by default,
we should just filter them and remove the values we *know* are from our
start script.

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-19 18:07:58 +02:00
Sefa Eyeoglu
28ae5d710e
fix: fix translations for mod updater
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-19 18:03:45 +02:00
Sefa Eyeoglu
8fc1653b0c
fix: fix Java Checker on Windows, again
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-19 11:12:11 +02:00
kumquat-ir
20b1723e78 merge origin/develop
Signed-off-by: kumquat-ir <66188216+kumquat-ir@users.noreply.github.com>
2022-07-18 14:05:23 -04:00
kumquat-ir
be78afeee5 qtcreator moment
Signed-off-by: kumquat-ir <66188216+kumquat-ir@users.noreply.github.com>
2022-07-18 14:03:06 -04:00
flow
0cb47cf7d7
fix: dark placeholder text in dark background on dark theme
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-18 14:25:00 -03:00
flow
54b335711a
fix: raw-pointers and leaks in ModFolderLoadTask
Co-authored-by: timoreo <contact@timoreo.fr>
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:56:23 -03:00
flow
6bb8332b4b
fix: bogus returns in EnsureMetadataTask
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:43:12 -03:00
flow
de9e304236
fix: std::list -> QList
Qt6 removed Qlist::toStdList() 😭

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:45 -03:00
flow
650af5eb64
change: use ModStatus as a simple member instead of a pointer
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:44 -03:00
flow
47bdcb6050
feat: make second metadata pass concurrent
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:44 -03:00
flow
58dc3e93d3
fix: clean up execWithTask in Progress Dialog
This prevents weird problems, such as dialogs being non-modal when they
should be!

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:44 -03:00
flow
79b0a16f7a
fix: try finding a good height for short changelogs
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:44 -03:00
flow
2b65ee433f
fix: changelogs with too much space between lines
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:44 -03:00
flow
001bbef9ee
fix: don't use shared_ptr for a background task T_T
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:44 -03:00
flow
c4316e81e6
change: make Mod a QObject used as a pointer
Prevents problems when copying it around!

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:44 -03:00
flow
fac63541a4
fix: work around HoeDown bug(?) in changelog line breaks
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:44 -03:00
flow
dfd6cb29be
feat: improve changelog and sort updatable mods
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:44 -03:00
flow
5f75e531e6
fix: handling around disabled mods
Don't update disabled mods to prevent mod duplication. Also, chop
filename in the metadata with a '.disabled'.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:43 -03:00
flow
a7648d60ce
fix: don't require non-essential items in mod index
Also adds slug field.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:43 -03:00
flow
52c45c2d32
feat: add some mod api calls
- Get Project: Already existed but required a specific caller type. This
  is more general.
- Get Projects: A single call to multiple of the above

Both providers support these calls.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:43 -03:00
flow
fd6755c93f
change: mod metadata improvements
- Use slug instead of name
- Keep temporary status before having local details

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:43 -03:00
flow
a53ee2e35c
fix: mod parsing of 'String-fied' version (i.e. OpenBlocks)
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:43 -03:00
flow
4e6978ff6f
feat: improve metadata gen. networking and performance
This makes the metadata generation code a lot messier and harder to use,
but there's not really much else that can be done about it while
preserving all it's capabilities :(

At least we now have speed

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:43 -03:00
flow
91a5c4bdcb
feat: add metadata get/delete via mod id
This is, in many cases, more reliable than name comparisons, so it's
useful specially in cases where a mod changes name between versions

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:43 -03:00
flow
9a07ede615
fix: filter out opted-out mods in mod downloader
Maintains Pre-Updater behaviour

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:43 -03:00
flow
dfab55112b
feat: remove existing mod when updating/redownloading it
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:42 -03:00
flow
1709b47bb7
fix: don't double add mods in mod downloader/updater
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:42 -03:00
flow
2d10c246a8
feat: add update mods to the ui / mod model
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:42 -03:00
flow
6e2869834f
feat: add mod update dialog
This subclasses the Review mods dialog to make a "Update review" one.
Also, all the necessary components built until now are put together in a
coherent unity that checks and generates metadata on-the-fly and checks for
mod updates, while giving and receiving feedback to the user.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:42 -03:00
flow
b8b71c7dd2
feat: add mod update check tasks
Those tasks take a list of mods and check on the mod providers for
updates. They assume that the mods have metadata already.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:42 -03:00
flow
c3f6c3dd82
feat: add changelog to mod providers
The Modrinth changelog is fairly straight-forward, as it's given to us
directly with the API call we already did. Flame, on the other hand,
requires us to do another call to get the changelog, so it can introduce
quite a heavy performance impact. This way, we make it optional to get
such changelog.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:42 -03:00
flow
844b245776
feat: add EnsureMetadataTask
This task is responsible for checking if the mod has metadata for a
specific provider, and create it if it doesn't.

In the context of the mod updater, this is not the best architecture,
since we do a single task for each mod. However, this way of structuring
it allows us to use it later on in more diverse scenarios.

This way we decouple this task from the mod updater, trading off some performance
(though that will be mitigated when we have a way of running arbitrary tasks
concurrently).

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:42 -03:00
flow
4bcf8e6975
feat: add api call to flame
Call added:
- Get Fingerprints Matches
- Get Mod File Changelog

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:42 -03:00
flow
0e52112016
feat: add some api calls to modrinth
Calls added:
- Get version from hash
- Get versions from hashes
- Latest version of a project from a hash, loader(s), and game version(s)
- Latest versions of multiple project from hashes, loader(s), and game version(s)

Some of those are not used yet, but may be of use later on, so we have
it if we need it :)

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:41 -03:00
flow
32a9545360
libs: add murmur2 library
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:41 -03:00
flow
9a44c92211
feat: add MultipleOptionsTask
This is a variation of a Sequential Task, in which a subtask failing
will prompt the next one to execute, and a subtask being successful will
stop the task.

This way, this can be used for easily managing fallbacks with tasks. :D

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:41 -03:00
flow
dd6aabf9ab
feat: add ChooseProviderDialog
Allows you to prompt the user for choosing a (mod) provider. This should
be fairly independent of the mod updater logic, so it can be used for
other ends later down the road :^)

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:41 -03:00
flow
91776311c7
fix: allow aborting upload tasks
This maintains the same behaviour as the Download task.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:41 -03:00
flow
882c82f82c
fix: always update global progress of sequential tasks
Previously, it would not update the global counter if the subTask didn't
update its progress, even though progress was being made.

This also prevents a segmentation fault while aborting the task.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:41 -03:00
flow
43b9db6e45
change: allow deleting mods while preserving their metadata
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:41 -03:00
flow
032ceefa1d
feat: add some helping methods to WideBar
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:41 -03:00
flow
05fa266e6b
fix: provide default value to is_indexed in ModDownloadTask
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:40 -03:00
Sefa Eyeoglu
56085310cb
Merge pull request #913 from Gingeh/cape-without-skin 2022-07-17 09:57:03 +02:00
kumquat-ir
6a1d611fd1 Restore ScrollMessageBox
Signed-off-by: kumquat-ir <66188216+kumquat-ir@users.noreply.github.com>
2022-07-17 02:40:27 -04:00
flow
c8a72c876d
fix: add missing HttpMetaCache entry for CF mods
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-16 21:25:29 -03:00
flow
ec87a8ddfc
fix: add expiration time to cache entries
This is to prevent problems where the cache entry would still be used
way after the remote resource got updated. The limit is hardcoded for 1
week, which I think is a reasonable time, but this could be further
tweaked.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-16 21:25:28 -03:00
kumquat-ir
33e34ebb83 Add "Open All" button to blocked mods dialog
Signed-off-by: kumquat-ir <66188216+kumquat-ir@users.noreply.github.com>
2022-07-16 19:14:54 -04:00
Sefa Eyeoglu
396b3c3952
fix: add missing full-stop to message
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-16 21:26:23 +02:00
Sefa Eyeoglu
17ea51ce27
fix: fix memory leak on Windows
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-16 20:08:08 +02:00
Gingeh
4dfc01899a Make skin upload optional
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
2022-07-15 12:23:11 +10:00
flow
509f7bd018
fix: move time record overrides to BaseInstance
This is needed so that we can show time stats in the UI without having
to load all type-specific settings, which would make all the previous
changes useless :c

This is apparently done with console settings too, so I don't think
there's a problem doing this too :>

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-12 21:15:59 -03:00
Sefa Eyeoglu
a4672ba00f
fix: remove unnecessary code for Windows
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-11 19:09:20 +02:00
Sefa Eyeoglu
c0bf267bae
fix: fix unicode issue with JavaChecker on Windows
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-11 18:53:20 +02:00
Sefa Eyeoglu
8f4d7ac655
Merge pull request #678 from Scrumplex/improvements-around-proprietary-services 2022-07-11 14:56:09 +02:00
Kenneth Chew
eae8a2914e
Remove use of obsolete method
Fixes Qt 6 build

Signed-off-by: Kenneth Chew <kenneth.c0@protonmail.com>
2022-07-10 19:09:58 -04:00
Sefa Eyeoglu
b3b76d5d56
Merge branch 'develop' into feature/sparkle-mac
# Conflicts:
#	.github/workflows/build.yml
2022-07-10 19:38:30 +02:00
Sefa Eyeoglu
eb33a87ff5
fix: remove TODOs
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-10 18:11:13 +02:00
Jamie Mansfield
bf560f4594
ATLauncher: Move the UI support implementation into it's own class
This will allow it to be used in multiple locations.
2022-07-10 11:27:42 +01:00
Sefa Eyeoglu
f464b347b2
fix: install TLS plugins for release builds
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-10 12:19:15 +02:00
Sefa Eyeoglu
eb5ed50824
fix: set UNICODE and _UNICODE for Qt 5 builds
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-10 12:19:15 +02:00
Sefa Eyeoglu
3b4539de79
chore: update license headers
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-10 12:19:15 +02:00
Sefa Eyeoglu
3e4d1c04de
fix: include TLS plugins in bundle
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-10 12:19:15 +02:00
Sefa Eyeoglu
15c5bbcf22
fix: fix slots for Qt 6
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-10 12:19:15 +02:00
Sefa Eyeoglu
c363423718
refactor: fix deprecation up to Qt 6
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-10 12:19:15 +02:00
Sefa Eyeoglu
e58158c3cd
feat: add Qt 6 support to CMake
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-10 12:19:14 +02:00
Sefa Eyeoglu
ff2cd50bfa
refactor: replace QRegExp with QRegularExpression
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-10 12:17:52 +02:00
Sefa Eyeoglu
984692dc62
refactor: fix deprecation up to Qt 5.15
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-10 12:17:52 +02:00
Jamie Mansfield
a7fc23dd96
ATLauncher: Reset existing directory if required 2022-07-10 11:15:48 +01:00
txtsd
c1bcbf8c63
Merge pull request #880 from Scrumplex/fix-loader-importance
Make loader components not important
2022-07-10 15:44:17 +05:30
Jamie Mansfield
9e69b8fe1b
ATLauncher: Parse keeps and deletes from pack manifests 2022-07-10 11:05:11 +01:00
Jamie Mansfield
e0ae631d59
ATLauncher: Add modes to install task and display appropriate message
This will display the update/reinstall message for the installation
method currently in use..
2022-07-10 10:55:05 +01:00
dada513
3b187b5246
Merge pull request #876 from Scrumplex/revert-updater-stuff
Revert "fix: remove updater if it is not used"
2022-07-10 10:50:03 +02:00
Sefa Eyeoglu
e6fe701727
Merge pull request #808 from Scrumplex/fix-lgtm-warnings 2022-07-09 01:10:59 +02:00
flow
35a698ef72
Merge pull request #884 from jopejoe1/ftbuifixed
Updated FTB Classic layout
2022-07-08 16:19:14 -03:00
flow
998271414e
Merge pull request #890 from Scrumplex/fix-technic-forge
Fix Technic instances using Forge
2022-07-08 16:18:59 -03:00
Sefa Eyeoglu
4ab0e70a9a
fix(technic): map loader libraries to components properly
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-08 17:28:06 +02:00
Sefa Eyeoglu
08989bde5e
Merge pull request #839 from flowln/modrinth_packs_bug_hunt 2022-07-08 16:25:35 +02:00
Sefa Eyeoglu
87cbff391c
fix: disable MSA login if it is NOT supported
Co-authored-by: flow <flowlnlnln@gmail.com>
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-08 16:25:03 +02:00
Sefa Eyeoglu
962923bbce
chore: add missing license headers
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-08 16:25:03 +02:00
Sefa Eyeoglu
311b081e60
feat: add validation for Flame key and MSA client ID
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-08 16:25:03 +02:00
Sefa Eyeoglu
4103948132
feat: track capabilities of application
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-08 16:25:03 +02:00
Sefa Eyeoglu
906f26698b
fix: spelling of CF
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-08 16:25:03 +02:00
Sefa Eyeoglu
8a1a583afe
refactor: rename references to CurseForge to Flame
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-08 16:25:03 +02:00
jopejoe1
9e19b73ce6 Updated FTB Classic layout
Signed-off-by: jopejoe1 <johannes@joens.email>
2022-07-07 23:18:13 +02:00
Sefa Eyeoglu
301b811310
fix: make loader components not important
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-07 09:58:03 +02:00
flow
273cf3d565
feat: lazy-load MinecraftInstance settings
Makes the startup go fast!

vrum

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-06 17:17:54 -03:00
flow
f432cfd73a
change: put settings initialization in a separate function
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-06 16:18:09 -03:00
Sefa Eyeoglu
ffa756ccee
fix: remove tests for updater
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-06 18:13:51 +02:00
Sefa Eyeoglu
e210a4b244
Revert "fix: remove updater if it is not used"
This reverts commit 2ff0aa09e3.

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-06 18:13:51 +02:00
Sefa Eyeoglu
f1902a4471
Merge pull request #794 from Scrumplex/resolve-jars-dynamically 2022-07-06 17:40:09 +02:00
Sefa Eyeoglu
04b865adae
Merge pull request #707 from Jan200101/PR/gamemode
Add Performance related settings
2022-07-06 17:11:43 +02:00
Jan200101
cad581388f
Add Performance related settings
Integrates support for Feral Gamemode, discrete GPU support for Mesa and the proprietary Nvidia driver and MangoHud support

Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
2022-07-06 09:34:14 +02:00
flow
e5f6dc1b14
fix: aborts when using a Qt build with assertions enabled
Preventing undefined behaviour hooray! :D

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-03 12:44:19 -03:00
flow
145da82cd8
fix: show invalid version even when there's none
Having a blank instead of _anything_ is bad UX. Instead, even when
there's not a valid version (most likely disabled redistribution), we
show a message in the UI, to differentiate from the loading state.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-03 12:43:05 -03:00
flow
64776d6bac
feat+fix: cache Flame modpack versions
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-03 12:43:05 -03:00
flow
64d123f524
fix: use better naming for Modrinth pack versions
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-03 12:43:04 -03:00
flow
0ec4ade683
feat+fix: cache versions and extra info in Modrinth packs
When you change a copy thinking you're changing the original data smh

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-03 12:43:04 -03:00
flow
4bfc445cf8
fix: add progress indicator on Flame mod resolution dialog
This code is super :pofat: omg

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-03 12:43:04 -03:00
flow
4232b1cedb
fix: don't use uniform sizes in Modrinth modpack viewer
Apparently, when Qt sees an icon with the height smaller than the rest,
with this option set, it will change the height of all other items to be
that one, causing #828.

While we do lose some performance changing this option, the issue is
gone, so :|

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-03 12:43:00 -03:00
Sefa Eyeoglu
474d77ac57
feat: resolve JARs dynamically
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-03 17:31:01 +02:00
Sefa Eyeoglu
278d2169da
fix: initialize accountIsOnline to fix build
CMAKE_BUILD_TYPE=Release makes the build fail otherwise.

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-07-03 14:32:31 +02:00
Sefa Eyeoglu
5599b5a337
Merge pull request #855 from Gingeh/account-list 2022-07-03 12:55:36 +02:00
flow
cd22da9c62
Merge pull request #864 from ivanpu/uncensored-offline
Don't censor "offline" word when that's the access token
2022-07-02 17:56:04 -03:00
flow
fb75c23f4e
Merge pull request #784 from Scrumplex/refactor-cmake
Refactor tests
2022-07-02 17:50:08 -03:00
Ezekiel Smith
7f22994f68
Merge pull request #831 from flowln/abort_connections
Add missing connections to the abort signal in some tasks
2022-07-03 01:50:36 +10:00
Ezekiel Smith
7aba7b6064
Merge pull request #818 from flowln/tiny_mod_icons
Always scale mod icons to the right size
2022-07-03 01:49:09 +10:00
Ezekiel Smith
e32030f364
Merge pull request #860 from kthchew/fix/status-version
Show MC version of instance in status bar
2022-07-03 01:47:27 +10:00
Ivan Puntiy
b40619bcbd don't censor offline access token 2022-07-02 18:05:33 +03:00
timoreo
fe2e1d931f
Merge pull request #786 from flowln/concurrent_tasks_slimmed 2022-07-01 20:09:18 +02:00
timoreo
2e17e78052
Merge pull request #845 from flowln/news_in_launcher 2022-07-01 20:04:06 +02:00
Sefa Eyeoglu
8cec4b60a6
fix: update NewLaunch package name 2022-07-01 19:50:41 +02:00
flow
02201631e7
feat: use ConcurrentTask for mod downloads
Way faster :)

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-01 08:34:17 -03:00
flow
8e80b4bfc1
feat: add ConcurrentTask
This tasks (or rather, meta-task) has the ability to run several other
sub tasks concurrently.

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-01 08:34:10 -03:00
Sefa Eyeoglu
63dfc0633f
Merge pull request #652 from flowln/mod_page 2022-07-01 10:00:36 +02:00
Kenneth Chew
79840f0fca
Remove redundant type name from status bar
The type name is always "Minecraft", so it showed "Minecraft X.X.X (Minecraft)"
2022-06-30 23:02:56 -04:00
Kenneth Chew
06bf7b0f31
Fix Minecraft version not appearing in status bar 2022-06-30 23:02:56 -04:00
Gingeh
dbb63b97bd
Merge branch 'PolyMC:develop' into account-list 2022-07-01 10:43:41 +10:00
Gingeh
b5d2570fe2
Change Online status to Ready 2022-06-30 22:17:15 +10:00
flow
5f951e8f21
change: better regex for removing 'The' when sorting mods
Teh :|

Co-authored-by: timoreo22 <timo.oreo34@gmail.com>
2022-06-30 07:04:47 -03:00
Sefa Eyeoglu
286f82cc99
Merge pull request #826 from kthchew/fix/kill-menubar 2022-06-30 11:50:43 +02:00
timoreo22
ed5415aeb8
Merge pull request #837 from DioEgizio/fix-sort-mr 2022-06-30 08:24:51 +02:00
Gingeh
bef79df6bb Disable the refresh button for offline accounts 2022-06-30 09:08:53 +10:00
Gingeh
91b5f0228d add tr() to offline account name
Co-authored-by: flow <flowlnlnln@gmail.com>
2022-06-30 08:59:41 +10:00
Gingeh
84bd5ace6c Move account checkboxes to the profile column (oops) 2022-06-29 19:58:41 +10:00
Gingeh
63589d2ba9 Rename profile column to username and update the tooltip 2022-06-29 18:49:06 +10:00
Gingeh
d6f4ff26b5 Disable skin buttons for offline accounts 2022-06-29 18:46:39 +10:00
Gingeh
b606a2e040 Make the profile and account name columns use all available space 2022-06-29 18:45:36 +10:00
Gingeh
f685139d89 Move the profile name column to the left 2022-06-29 18:43:29 +10:00
Gingeh
68d6ce60a9 Don't show account name for offline accounts 2022-06-29 18:42:01 +10:00
Ezekiel Smith
774ed044fc
Merge pull request #827 from kthchew/fix/menubar-separator
Workaround Qt bug to fix menu bar separators on macOS
2022-06-27 01:14:15 +10:00
Ezekiel Smith
9cc235cde0
Merge pull request #811 from jn64/fix/window-title
Fix duplicate name in window title
2022-06-27 01:13:58 +10:00
flow
9ef38171e2
fix: use clicked instead of pressed signal for button clicks
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-06-26 08:10:52 -03:00
flow
455e4de6f3
feat: add news reader dialog
Makes it easier to read about new blog posts! Yay :D
2022-06-25 20:15:16 -03:00
flow
4e319254dd
fix: use right name for the content of a News entry 2022-06-25 20:14:27 -03:00
DioEgizio
04e8780dd0
fix(modrinth): fix sorting 2022-06-24 10:47:02 +02:00
DioEgizio
0fe4384067
Update launcher/ui/pages/modplatform/flame/FlamePage.ui
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-06-23 17:58:54 +02:00
DioEgizio
bdfcd0b99e chore(flame): reword warning 2022-06-23 17:06:49 +02:00
flow
5da87d1904
fix: add missing connections to the abort signal
Beginning with efa3fbff39, we separated
the failing and the aborting signals, as they can mean different
things in certain contexts. Still, some places are not yet changed to
reflect this modification. This can cause aborting of progress dialogs
to not work, instead making the application hang in an unusable satte.

This goes through some places where it's not hooked up yet, fixing their
behaviour in those kinds of situation.
2022-06-22 20:20:39 -03:00
Sefa Eyeoglu
04e822acfb
fix: remove old reference to launchermeta 2022-06-22 20:47:47 +02:00
Kenneth Chew
c31fce3621
Workaround Qt bug to fix menu bar separators on macOS 2022-06-22 00:34:04 -04:00
Kenneth Chew
5c05cf2206
Disable launch actions in menu bar when last instance is deleted
This caused a crash when the action was selected!
2022-06-21 19:19:55 -04:00
Kenneth Chew
d4e544c62c
Separate the kill and launch instance actions 2022-06-21 19:19:55 -04:00
Ezekiel Smith
90025ed45d
Merge pull request #812 from jn64/fix/about-labels
Make version labels in About dialog selectable
2022-06-22 01:13:43 +10:00
Ezekiel Smith
964151d9c7
Merge pull request #817 from flowln/zip_ensure_path
Don't create unnecessary folders when extracting ZIPs
2022-06-22 01:13:23 +10:00
Ezekiel Smith
409c9bf9d2
Merge pull request #778 from Scrumplex/track-real-architecture
Track real CPU architecture for instances
2022-06-22 01:13:10 +10:00
flow
a135c06bcf
fix: scale mod icons to the right size 2022-06-21 06:41:56 -03:00
jn64
fa6829a6a1 Set beam cursor on selectable labels 2022-06-20 14:28:38 +08:00
jn64
5335540c33 Rename main window 2022-06-20 13:45:36 +08:00
flow
7f62de3854
fix: don't create unnecessary folders when extracting ZIPs 2022-06-19 22:03:02 -03:00
jn64
0afa2e92d5 Make GitHub link focusable by keyboard 2022-06-18 22:20:38 +08:00
jn64
6d1b166ad7 Make labels selectable
User can copy version/build info easily.
2022-06-18 22:19:23 +08:00
jn64
4b6ddfb89b Add version to Qt applicationDisplayName 2022-06-18 20:00:28 +08:00
Sefa Eyeoglu
9ec260619b
fix: fix warnings reported by LGTM.com 2022-06-17 16:34:32 +02:00
flow
03e454b71d
Merge pull request #694 from Technous285/develop-1
Add OpenBSD support
2022-06-15 06:32:14 -03:00
DioEgizio
1f6cef6f8a
fix https://github.com/PolyMC/PolyMC/issues/798 2022-06-15 09:11:23 +02:00
Ezekiel Smith
e6b1a1fa76
Merge pull request #716 from flowln/mod_perma_2
Hide index folder on Windows
2022-06-14 23:58:35 +10:00
Ezekiel Smith
3e8d450741
Merge pull request #665 from jamierocks/h-managed-packs
PackPlatforms: Record where packs come from
2022-06-14 23:54:44 +10:00
Ezekiel Smith
27239b2dde
Merge pull request #634 from flowln/donate_links
More links for CF / Modrinth mods / modpacks
2022-06-14 23:52:00 +10:00
Sefa Eyeoglu
effe46db86
refactor: move away from UnitTest.cmake 2022-06-14 14:44:49 +02:00
Sefa Eyeoglu
e25cdd9d12
refector: move download action to ExternalResourcesPage 2022-06-14 07:04:31 -03:00
flow
d394235ee0
refactor: Create a more clear hierarchy for some instance pages
Previously, the Shaders, Texture packs and Resource packs tabs had as
parent the ModFolderPage, making it so that making changes only to the
Mods page would require checking the id of the page for the correct one.
This was hackish and error-prone.

Now, those pages all inherit from a single class, ExternalResourcesPage,
that handles the basic behaviour of all of them, while allowing for
individual modification in code.

This is still not a clear separation, since internally, all those
resources are derived from Mods, so for now there's still some awkward
common code :/
2022-06-14 07:04:31 -03:00
Sefa Eyeoglu
349fc4143d
Merge pull request #714 from Scrumplex/fix-tests
Fix mod metadata tests
2022-06-13 23:10:35 +02:00
Sefa Eyeoglu
4be9e6a0bc
refactor: make is_indexed false by default
Co-authored-by: flow <flowlnlnln@gmail.com>
2022-06-13 22:07:42 +02:00
Sefa Eyeoglu
d08815bbc1
Merge pull request #759 from flowln/mod_perma_3 2022-06-12 19:17:08 +02:00
flow
794022d399
Merge pull request #783 from Scrumplex/fix-avoid-settings-register-warnings
Avoid re-registering InstanceType
2022-06-12 13:46:46 -03:00
flow
4448418b63
fix: segfault when the same mod is present enabled and disabled at once
This maintains the previous behaviour
2022-06-12 09:44:03 -03:00
flow
9f1f37e780
fix: correctly handle disabled mods with metadata
im stupid
2022-06-12 09:25:25 -03:00
flow
40ccd1a469
fix: handling of incomplete mods
(i.e. mods without ModDetails that may have metadata)
2022-06-12 09:25:21 -03:00
Sefa Eyeoglu
a4ef0940ed
chore: add license headers 2022-06-12 13:50:58 +02:00
Sefa Eyeoglu
2ff0aa09e3
fix: remove updater if it is not used 2022-06-12 13:39:47 +02:00
Sefa Eyeoglu
32217a774f
fix(tests): wait until ModFolderModel has updated 2022-06-12 13:33:17 +02:00
Sefa Eyeoglu
8856c8cd62
refactor(test): fix loading mod metadata setting 2022-06-12 13:33:17 +02:00
flow
e843b8e188
fix(test): fix packwiz test 2022-06-12 13:33:17 +02:00
Sefa Eyeoglu
c4f2e3a955
Merge pull request #771 from flowln/modrinth_multiple_downloads 2022-06-12 10:50:57 +02:00
Sefa Eyeoglu
91301ec7fe
Merge pull request #632 from ryanccn/macos-app-heuristic 2022-06-12 10:46:49 +02:00
Ryan Cao
13b03e7e50
Update Application.cpp 2022-06-12 11:44:04 +08:00
Sefa Eyeoglu
8a0aa5a0c8
fix: avoid re-registering InstanceType 2022-06-11 23:06:42 +02:00
dada513
2bd8e7dca4
Merge pull request #780 from flowln/guo_ext_2 2022-06-11 19:45:51 +02:00
dada513
d75571ffa1
Merge pull request #773 from vancez/fix-launch-button 2022-06-11 19:41:02 +02:00
dada513
2ee4b6768d
Merge pull request #770 from flowln/technic_links 2022-06-11 19:34:59 +02:00
flow
37160f973f
fix: account for the dequeued url when checking the number of urls
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-06-11 14:31:50 -03:00
Sefa Eyeoglu
51258ab28c
Merge pull request #709 from Scrumplex/fix-instancetypes
Always store InstanceType
2022-06-11 19:29:46 +02:00
flow
29e5a213a5
fix: dequeue first added file in mrpack import
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-06-11 14:19:51 -03:00
Sefa Eyeoglu
2d261607df
Merge pull request #732 from MrMelon54/develop 2022-06-11 19:14:26 +02:00
flow
54144154f9
fix: apply client overrides in mrpacks
another oopsie x.x
2022-06-11 13:44:31 -03:00
Sefa Eyeoglu
81daffe68e
fix: remove file filter from translation 2022-06-11 14:10:42 +02:00
flow
2ea20a8b29
fix: allow discovering mrpacks in languages without dot 2022-06-11 07:12:59 -03:00
Sefa Eyeoglu
2257c875f5
Merge pull request #708 from ryanccn/custom-user-agent 2022-06-11 10:53:58 +02:00
Sefa Eyeoglu
8a2e8ad953
feat: track real CPU architecture for instances 2022-06-11 10:48:58 +02:00
Vance
fa5b1d9978
change slot name 2022-06-10 15:48:18 +08:00
Ryan Cao
529fb07b42
I changed my mind 2022-06-10 15:18:47 +08:00
Vance
4a261cac1a
fix: update toolbar when instance state changes 2022-06-10 10:25:13 +08:00
flow
b3c8f9d508
revert: don't check modrinth whitelisted hosts
people didn't seem to like it, and its not required
2022-06-09 19:57:51 -03:00
flow
1b878030aa
fix: enable using more than one download url in mrpacks
Kinda, it's ugly and hackish, since we don't have the facilities to
do this properly (yet!)
2022-06-09 19:54:50 -03:00
flow
46e403b20b
fix: properly parse mrpacks without the 'env' field
It's optional, so some files may not have it (like most of FO).
2022-06-09 19:53:29 -03:00
flow
1b1f728c58
fix: allow opening external links in technic modpack page 2022-06-09 18:46:19 -03:00
MrMelon
1d9797660b
QString::locateAwareCompare() is better for human-like sorting 2022-06-07 15:27:57 +01:00
MrMelon
89d4405563
Simplify sorting logic to a single std::sort call 2022-06-06 22:18:19 +01:00
flow
8966364648
Merge pull request #685 from kthchew/fix/technic-quilt
Add Quilt support for Technic modpacks
2022-06-06 18:03:05 -03:00
MrMelon
1c60e9b4fc
Add initial sorting function 2022-06-06 21:51:08 +01:00
Ryan Cao
757fa1410c
Update launcher/Application.cpp
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-06-05 23:52:21 +08:00
Sefa Eyeoglu
7a3acc3249
refactor(ui): use tabs for APIPage 2022-06-04 22:04:36 +02:00
DioEgizio
91b85f9919 Revert "Merge pull request #315 from txtsd/display_scaling"
This reverts commit fcf728f3b5.
2022-06-04 17:09:11 +02:00
Ryan Cao
4cecba8787
make $LAUNCHER_VER actually work 2022-06-04 22:59:57 +08:00
Ryan Cao
5930acc418
change UI to scroll
let me just say, this does not look right
2022-06-04 22:54:05 +08:00
flow
c2a43c6f40
fix: hide .index folder on Windows 2022-06-04 11:02:59 -03:00
Sefa Eyeoglu
1ab00ca8b2
Merge pull request #426 from flowln/mod_perma
Add on-disk mod metadata information
2022-06-04 13:23:38 +02:00
Sefa Eyeoglu
778baa6dbe
fix: always store InstanceType 2022-06-04 11:59:12 +02:00
Ryan Cao
25ab121e42
feat: custom user-agent 2022-06-04 15:33:17 +08:00
Technous285
38ff76d2b8
Add OpenBSD support
Adds OpenBSD support.
2022-06-02 02:02:42 +10:00
glowiak
1a004f0c4d
Update MCEditTool.cpp 2022-06-01 15:50:43 +02:00
glowiak
7d21bf15e8
Update UpdateController.cpp 2022-06-01 15:50:02 +02:00
Sefa Eyeoglu
a88ad8025b
Merge pull request #682 from istudyatuni/fix-add-account-behaviour 2022-06-01 10:13:35 +02:00
Ryan Cao
e06bf17d13
Merge branch 'PolyMC:develop' into macos-app-heuristic 2022-06-01 00:12:14 +08:00
Kenneth Chew
7ac16ed073
Use QStringList instead of QSet<QString>
Co-authored-by: flow <flowlnlnln@gmail.com>
2022-05-30 14:40:20 -04:00
Kenneth Chew
3585e4764b
Add Quilt support for Technic modpacks 2022-05-30 14:14:03 -04:00
Sefa Eyeoglu
9054ee18a1
Merge pull request #505 from flowln/improve_download_ux 2022-05-30 13:41:02 +02:00
Ilia
9d8b95107d fix: do not show the "profile select" dialog if the user refused to add an account 2022-05-30 13:33:07 +03:00
timoreo
2746251dcd
Fix modrinth search filters 2022-05-29 18:23:34 +02:00
Sefa Eyeoglu
adf1e1982a
fix: remove unnecessary translation (#674) 2022-05-29 16:14:01 +02:00
Sefa Eyeoglu
f5405e835e
Merge pull request #624 from ryanccn/global-jvm-args
Make global JVM arguments multi-line
2022-05-29 16:10:55 +02:00
Sefa Eyeoglu
85ee7fb3a4
Merge pull request #672 from Scrumplex/fix-ftblegacy-pack-version
fix: add version to Legacy FTB packs
2022-05-29 16:10:43 +02:00
Sefa Eyeoglu
65d23fc9b9
Merge pull request #671 from Scrumplex/fix-importing-flame-mmc-packs 2022-05-29 15:15:18 +02:00
Sefa Eyeoglu
db1abb02d6
Merge pull request #661 from flowln/wow_curseforge_is_being_uncompetitive_im_so_surprised 2022-05-29 14:42:49 +02:00
Ryan Cao
20832682ef
Update launcher/ui/pages/global/JavaPage.cpp
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-05-29 20:35:57 +08:00
Sefa Eyeoglu
8e6c592ad9
fix: add version to Legacy FTB packs 2022-05-29 14:28:54 +02:00
Sefa Eyeoglu
0b3115997a
fix: fix importing Flame/MMC packs 2022-05-29 14:16:13 +02:00
Sefa Eyeoglu
b07c5982e1
fix: set version for Windows binaries 2022-05-29 13:09:13 +02:00
Ryan Cao
d4c1d62781
Update launcher/ui/pages/global/JavaPage.cpp
Co-authored-by: Kenneth Chew <79120643+kthchew@users.noreply.github.com>
2022-05-29 12:15:20 +08:00
Jamie Mansfield
80da1f1bb9
ATLauncher: Use ATLauncher rather than FTB in error messages 2022-05-29 00:04:28 +01:00
Jamie Mansfield
febdb85f96
ModpacksCH: Use ModpacksCH rather than FTB in error messages 2022-05-29 00:04:28 +01:00
Jamie Mansfield
96b76c8f5c
ModpacksCH: Make packs managed when installing 2022-05-29 00:04:27 +01:00
Jamie Mansfield
411bf3be03
ATLauncher: Make packs managed when installing 2022-05-29 00:04:27 +01:00
Jamie Mansfield
a98b6663e1
ATLauncher: Pass the full pack name through to the install task 2022-05-29 00:04:27 +01:00
Jamie Mansfield
e7f35e6ca3
API: Add settings to support managed packs
Managed packs means an installation of a modpack through a modpack
provider. Managed packs track their origins (pack platform, name, id),
so that in future features can exist around this - such as updating, and
reinstalling.
2022-05-29 00:04:26 +01:00
flow
f0ec165d42
feat: add warning of non-whitelisted URLs instead of a hard fail
Based on people's votes on Discord :^)
2022-05-28 18:04:16 -03:00
Lenny McLennington
abd240468e clean up validateDownloadUrl 2022-05-28 17:11:55 -03:00
flow
b5e00027d1
change: add 'gitlab.com' to whitelisted Modrinth modpack urls 2022-05-28 17:01:58 -03:00
flow
1698554024
debug: add non-translated debug logging for 'non-whitelisted url' fails 2022-05-28 17:01:57 -03:00
flow
f4604bbf79
change: update whitelisted hosts in Modrinth modpacks 2022-05-28 17:01:52 -03:00
timoreo22
699ad316f0
Rework curseforge download (#611)
* Use the bulk endpoint on mod resolution for faster download
* Search on modrinth for api blocked mods
* Display a dialog for manually downloading blocked mods
2022-05-28 21:53:12 +02:00
timoreo22
fcbe233fdb
Merge pull request #651 from Scrumplex/fix-mnemonic-apipage
Fix mnemonics in APIPage
2022-05-28 15:46:38 +02:00
timoreo22
4af8a9ed2d
Merge pull request #650 from flowln/modrinth_icons
Fix modpack icon importing with non-standard icon paths
2022-05-28 15:45:26 +02:00
timoreo22
83078cd49a
Merge pull request #657 from JJL772/fix/misc-fixes
Fix crash when aborting instance import
2022-05-28 15:38:36 +02:00
timoreo22
85901082a2
Merge pull request #639 from Scrumplex/fix-prio-modpack-formats
Prefer stricter modpack formats during import
2022-05-28 15:36:18 +02:00
Ryan Cao
2be8100e7c
Merge branch 'develop' into global-jvm-args 2022-05-28 21:15:00 +08:00
Jeremy Lorelli
48e20cb5f7 Fix crash when aborting instance import
Also turned a loop var into a reference to avoid copies on each iteration
2022-05-27 16:41:57 -07:00
Sefa Eyeoglu
6fb5bb6a5e
fix: fix mnemonics in APIPage 2022-05-27 14:50:06 +02:00
flow
5d3bef32ca
fix: use absolute path when installing icons 2022-05-27 09:15:32 -03:00
flow
3ff26d5cfe
Merge pull request #642 from ryanccn/metaserver-show-default
Show default metaserver in settings
2022-05-26 20:09:07 -03:00
Sefa Eyeoglu
0263677e1f
fix: prefer stricter modpack formats during import
Flame modpacks use "manifest.json" as their only characteristic for
identification. Some modpacks might have other files called
"manifest.json", which is why we should prefer modpack formats that have
a stricter structure.
2022-05-26 22:41:20 +02:00
Sefa Eyeoglu
938cae1130
revert: remove CurseForge workaround for packs too
Partial revert. Handles missing download URLs.
2022-05-25 23:14:13 +02:00
Ryan Cao
e50ec31351
fix 2022-05-25 14:44:47 +08:00
Ryan Cao
8a1ba03bcb
show default metaserver 2022-05-25 11:46:15 +08:00
flow
f8e7fb3d48
fix: better handle corner case 2022-05-24 20:27:25 -03:00
flow
e644380160
feat: add links to curseforge modpacks 2022-05-24 12:27:32 -03:00
flow
c5eb6fe6fb
feat: add links for curseforge mods
NOT DOWNLOAD LINKS! (someone would ask it i'm sure :p)
2022-05-24 12:14:08 -03:00
flow
ae2ef324f2
feat: add remaining links to modrinth mods 2022-05-24 11:58:11 -03:00
flow
d0337da8ea
feat: add remaining links to modrinth modpacks 2022-05-24 11:52:27 -03:00
flow
5e17d53c7f
fix: missing tr() and update donate message 2022-05-24 11:11:40 -03:00
flow
22e0527502
feat: add donate info to modrinth modpacks 2022-05-24 09:46:58 -03:00
flow
ca3c6c5e8a
feat: add donate links for modrinth mods 2022-05-24 09:38:48 -03:00
Ryan Cao
9673dac22b
add more #ifdefs 2022-05-24 16:18:02 +08:00
Ryan Cao
0426149580
standard macOS app behavior 2022-05-24 13:35:01 +08:00
Jamie Mansfield
4ee5264e24
ATLauncher: Delete files from configs if they conflict with a mod 2022-05-23 21:44:01 +01:00
Jamie Mansfield
101ca60b2b
ATLauncher: Handle extra arguments depends 2022-05-23 20:57:15 +01:00
Jamie Mansfield
f28a0aa666
ATLauncher: Handle main class depends 2022-05-23 20:57:14 +01:00
flow
5a1de15332
fix: use a more robust method of finding metadata indexes
Often times, mods can have their name in different forms, changing one
letter to caps or the other way (e.g. JourneyMaps -> Journeymaps).
This makes it possible to find those as well, which is not perfect by
any means, but should suffice for the majority of cases.
2022-05-23 14:58:15 -03:00
flow
42f8ec5b14
fix: do modrinth changes on flame too
Also fix a dumb moment
2022-05-23 14:58:14 -03:00
flow
2fc1b99911
chore: add license headers
Prevents a massive inload of Scrumplex ditto's :)

I didn't add it to every file modified in this PR because the other
changes are pretty minor, and would explode the diff of the PR. I hope
that's not a problem O_O
2022-05-23 14:58:14 -03:00
flow
3a923060ce
fix: use correct hash_type when creating metadata
also fix: wrong parameter name in LocalModUpdateTask's constructor
also fix: correct hash_format in CF
2022-05-23 14:58:14 -03:00
flow
0985adfd74
change: support newest changes with packwiz regarding CF 2022-05-23 14:58:08 -03:00
flow
59d628208b
feat: allow trying to use multiple hash types 2022-05-23 14:43:31 -03:00
flow
5c5699bba5
refactor: move individual pack version parsing to its own function 2022-05-23 14:43:31 -03:00
flow
67e0214fa5
fix: don't try to delete mods multiple times
Shows a more helpful message if there's a parsing error when reading the
index file.

Also fixes a clazy warning with using the `.data()` method in a
temporary QByteArray object.
2022-05-23 14:43:10 -03:00
flow
e17b6804a7
fix: implement PR suggestions
Some stylistic changes, and get hashes from the mod providers when
building the metadata.
2022-05-23 14:43:09 -03:00
flow
96e36f0604
refactor: make mod metadata presence (or lack of) easier to find out 2022-05-23 14:43:09 -03:00
flow
a99858c64d
refactor: move code out of ModIndex.h
Now it's in ModIndex.cpp
2022-05-23 14:43:07 -03:00
flow
ba50765c30
tidy: apply clang-tidy to some files
Mostly the ones created in this PR + Mod.h / Mod.cpp / ModDetails.h
2022-05-23 14:42:28 -03:00
flow
d7f6b36990
test+fix: add basic tests and fix issues with it 2022-05-23 14:42:28 -03:00
flow
4439666e67
feat: allow disabling mod metadata usage 2022-05-23 14:42:28 -03:00
flow
23febc6d94
feat: cache metadata in ModDetails
Allows for more easy access to the metadata by outside entities
2022-05-23 14:42:28 -03:00
flow
fab4a7a602
refactor: abstract metadata handling and clarify names 2022-05-23 14:42:28 -03:00
flow
092d2f8917
feat: add support for converting builtin -> packwiz mod formats
Also adds more documentation.
2022-05-23 14:42:28 -03:00
flow
e9fb566c07
refactor: remove unused mod info and organize some stuff 2022-05-23 14:42:27 -03:00
flow
5a34e8fd7c
refactor: move mod tasks to their own subfolder
Makes the launcher/minecraft/mod/ folder a little more organized.
2022-05-23 14:42:27 -03:00
flow
fcfb2cfc3d
feat: use mod metadata for getting mod information
For now this doesn't mean much, but it will help when we need data
exclusive from the metadata, such as addon id and mod provider.

Also removes the metadata when the mod is deleted, and make the Mod.h
file a little more pleasing to look at :)
2022-05-23 14:42:27 -03:00
flow
e93b9560b5
feat: add method to delete mod metadata
Also moves indexDir setting from LocalModUpdateTask -> ModFolderModel
2022-05-23 14:42:27 -03:00
flow
8e4438b375
feat: add parser for current impl of packwiz mod.toml
This reads a local mod.toml file and extract information from it. Using
C libs in C++ is kind of a pain tho :(
2022-05-23 14:42:27 -03:00
flow
eaa5ce4467
feat(ui): adapt SequentialTask to nested SequentialTasks 2022-05-23 14:42:27 -03:00
flow
c86c719e1a
feat: add mod index updating to ModDownloadTask
This makes ModDownloadTask into a SequentialTask with 2 subtasks:
Downloading the mod files and updating the index with the new
information.

The index updating is done first so that, in the future, we
can prompt the user before download if, for instance, we discover
there's another version already installed.
2022-05-23 14:42:27 -03:00
flow
b30b88716e
feat: add very early mod.toml packwiz support
Also use it as a on-disk format for storing mod metadata. This will be
used later on to make better mod managment.
2022-05-23 14:42:22 -03:00
Ryan Cao
6d0ea13f97
make JVM args PlainTextEdit 2022-05-23 16:52:12 +08:00
Sefa Eyeoglu
dca4ea5cea
Merge pull request #621 from Scrumplex/remove-curseforge-workarounds 2022-05-23 10:47:30 +02:00
flow
ac4497a1f2
Merge pull request #605 from jamierocks/h-atl-improv
ATLauncher: Various work to improve the platform support
2022-05-22 20:09:13 -03:00
Sefa Eyeoglu
cb69869836
revert: remove CurseForge workaround
We have been asked by CurseForge to remove this workaround as it
violates their terms of service. This is just a partial revert, as the
UI changes were otherwise unrelated.

This reverts commit 92e8aaf36f, reversing
changes made to 88a93945d4.
2022-05-22 22:07:03 +02:00
Sefa Eyeoglu
f2e2053134
feat: add trailing slash to meta URL if it is missing 2022-05-22 21:36:31 +02:00
Sefa Eyeoglu
b181f4bc30
fix: improve spacing in APIPage 2022-05-22 21:36:30 +02:00
dada513
f00dbdc215
Make Metaserver changable in settings
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
Co-authored-by: flow <flowlnlnln@gmail.com>
2022-05-22 21:35:20 +02:00
Sefa Eyeoglu
7d91db607f
Merge pull request #554 from PolyMC/more_paste_services 2022-05-22 20:49:11 +02:00
Sefa Eyeoglu
b191291737
Merge pull request #577 from PolyMC/fix/toolbar_🦀_fix 2022-05-22 18:11:00 +02:00
Sefa Eyeoglu
29ef1e2c4b
Merge pull request #597 from Scrumplex/refactor-modloader-modapi 2022-05-22 13:17:53 +02:00
Ezekiel Smith
bc450e4cee
Merge pull request #612 from DioEgizio/update-cf-logo-real
change cf icon to a more fancy one
2022-05-21 09:53:31 -07:00
LennyMcLennington
de02deac98
Make if statement condition more readable
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-05-21 17:30:54 +01:00
Lenny McLennington
e2ad3b0183
Add migration wizard, fix migration from custom paste instance
- Very basic wizard just to allow the user to choose whether to keep
  their old paste settings or use the new default settings.

- People who used custom 0x0 instances would just be kept on those
  settings and won't see the wizard.
2022-05-21 17:30:19 +01:00
Lenny McLennington
caf6d02728
Change paste settings and add copyright headers
- There's now a notice reminding people to change the base URL if they
  had a custom base URL and change the paste type (that was something I
  personally had problems with when I was testing, so a reminder was
  helpful for me).

- Broke down some of the long lines on APIPage.cpp to be more readable.

- Added copyright headers where they were missing.

- Changed the paste service display names to the names they are more
  commonly known by.

- Changed the default hastebin base URL to https://hst.sh due to the
  acquisition of https://hastebin.com by Toptal.
2022-05-21 17:30:09 +01:00
Lenny McLennington
35f71f5793
Support paste.gg, hastebin, and mclo.gs 2022-05-21 17:28:22 +01:00
DioEgizio
b2a89ee4b9 change cf icon to a more fancy one
taken from QuiltMC/art in the emoji folder, so it's licensed under CC0
2022-05-21 17:49:52 +02:00
Jamie Mansfield
b84d52be3d
ATLauncher: Display warnings when selecting optional mods 2022-05-21 15:20:38 +01:00
Jamie Mansfield
305973c0e7
ATLauncher: Display install messages if applicable 2022-05-21 15:19:55 +01:00
Jamie Mansfield
7c251efc47
ATLauncher: Display mod colours in optional mod dialog 2022-05-21 15:18:50 +01:00
flow
166f872712
fix: various issues with ProgressDialog and SequentialTasks
- Fix aborting sequential tasks
- Fix displaying wrong number of tasks concluded
- Fix text cutting when the URL is too big
2022-05-21 08:36:36 -03:00
flow
8f2c485c92
feat(ui): make selected mods in downloader bold with underline
Makes it easier to find which mods are selected in case you want to
change those.
2022-05-21 08:04:26 -03:00
flow
613f2fc447
feat: allow deselecting mods from the mod confirmation dialog
This adds a checkbox to each mod on the dialog that shows up when
confirming the mods to download, so you can deselect some of those if
you want to.
2022-05-21 08:02:27 -03:00
dada513
9a0d6124f3
Merge pull request #609 from timoreo22/feature/fix-blocked-modpacks 2022-05-21 12:22:45 +02:00
Sefa Eyeoglu
b4707f46ad
Merge pull request #500 from flowln/net_refactor
Refactor a little the code in `launcher/net/` files
2022-05-21 12:06:34 +02:00
Sefa Eyeoglu
482e049ac7
Merge pull request #606 from jamierocks/h-launch-version 2022-05-21 11:43:19 +02:00
timoreo
c04adf7452
Do the url trick on initial modpack download too 2022-05-21 08:31:07 +02:00
timoreo22
92e8aaf36f
Merge pull request #608 from timoreo22/feature/curseforge-fix
Very Temporary Fix for curseforge
2022-05-21 06:34:43 +02:00
Sefa Eyeoglu
3b4b34b369
fix(ui): make CF and MR modpack dialogs more consistent 2022-05-20 22:48:42 +02:00
timoreo
6542f5f15a
Apply suggestions 2022-05-20 22:06:36 +02:00
timoreo
30b56dbcbd
Port temp fix to mods too 2022-05-20 22:00:38 +02:00
timoreo
6afe59e76b
Very Temporary Fix for curseforge 2022-05-20 21:19:19 +02:00
dada513
2847cefff7
Add cursefrog key override 2022-05-20 19:56:27 +02:00
Jamie Mansfield
96f16069a9
Launch: Apply the Minecraft version correctly
It was previously using a deprecated field.
2022-05-20 18:47:11 +01:00
Jamie Mansfield
188c5aaa35
Launch: Match Vanilla launcher version string behaviour
This removes a means of profiling users.
2022-05-20 18:43:47 +01:00
Jamie Mansfield
f5f59203a2
ATLauncher: Reduce boilerplate code for fetching versions 2022-05-20 18:05:58 +01:00
Jamie Mansfield
c329730de8
ATLauncher: Install LiteLoader as a component where possible 2022-05-20 18:03:32 +01:00
Jamie Mansfield
97a83c9b7a
ATLauncher: Avoid downloading Forge twice for older packs
This resolves a quirk where Forge would still be downloaded for use as
a jarmod, even when we detected Forge as a component.
2022-05-20 17:58:00 +01:00
timoreo22
1e6df7eec0
Merge pull request #592 from flowln/technic
Use empty string when version is null in the Technic pack manifest
2022-05-20 10:56:42 +02:00
Kenneth Chew
f3c72f4f08
Actually install the full Sparkle.framework
CMake's `fixup_bundle` did not copy everything in the framework, which caused the app to crash when updating. Oops.
2022-05-19 20:22:45 -04:00
Kenneth Chew
05cd30ac06
Refactor code, create abstract class ExternalUpdater
(Hopefully) this makes implementing updaters using external libraries easier on other platforms. To implement an updater on a new platform, create a new class that implements the pure virtual methods from `ExternalUpdater` and add code in the `UpdateChecker` initializer to initialize the new class.
2022-05-19 15:16:37 -04:00
Kenneth Chew
34adcec616
Add functionality to (Sparkle) updater settings on macOS
Also remove a debug line I accidentally left in
2022-05-19 15:16:37 -04:00
Kenneth Chew
b5bdfa6c2e
Implement automatic and manual updates on macOS 2022-05-19 15:16:37 -04:00
Kenneth Chew
ea4ef1655b
Create SparkleUpdater class for access from Qt/C++
To actually get automatic updates going, all that needs to happen is that `SparkleUpdater` needs to be initialized.

The rest of the functions can be connected to elements in the UI.
2022-05-19 15:16:37 -04:00
Kenneth Chew
92b913ca37
Add Sparkle Updater framework to macOS build 2022-05-19 15:16:37 -04:00
Sefa Eyeoglu
36045a8b0a
chore: improve readability
Co-authored-by: flow <thiagodonato300@gmail.com>
2022-05-19 12:37:20 +02:00
Sefa Eyeoglu
943090db98
refactor: allow tracking multiple mod loaders 2022-05-19 08:49:27 +02:00
Sefa Eyeoglu
77caaca50d
fix: only consider enabled mod loaders 2022-05-19 08:09:37 +02:00
Sefa Eyeoglu
f66e0fa0e8
fix: support split natives
Mojang introduced a new structure for natives, notably for LWJGL.
Now instead of using the `natives` structure of the version format, Mojang
chose to create a seperate library entry for each platform, which uses
the `rules` structure to specify the platform. These new split natives
carry the same groupId and artifactId, as the main library, but have an
additional classifier, like `natives-linux`.

When comparing GradleSpecifiers we don't look at the classifier, so when
the launcher sees an artifact called `org.lwjgl:lwjgl:3.3.1` and right
after that an artifact called `org.lwjgl:lwjgl:3.3.1:natives-linux`, it
will treat it as "already added" and forget it.

This change will include the classifier in that comparison.
2022-05-18 22:51:15 +02:00
flow
441075f610
fix: version field in technic pack manifest being null
Sometimes, the version field, that is supposed to be a string, was a
null instead. Inspecting other entries, seems like the default for not
having a version should be "", so I made it like that in case the
version was null.

I hope this fixes the issue :^)
2022-05-18 17:17:16 -03:00
timoreo22
b2878dca1d
Merge pull request #590 from DioEgizio/fix-qmj-over-fmj
fix(quilt) always prefer qmj over fmj
2022-05-18 19:18:18 +02:00
DioEgizio
127dfadc6c
fix(quilt) always prefer qmj over fmj
this fixes Quilt-only mods like ok zoomer showing wrong metadata
2022-05-18 14:33:58 +02:00
flow
ff9f3cb31f
fix conflicts with develop 2022-05-17 18:25:08 -03:00
Sefa Eyeoglu
8e9f1bcf18
fix: remove unnecessary Qt version checks 2022-05-17 22:25:50 +02:00
Sefa Eyeoglu
cc27bb3231
fix(updater): remove Windows version check
Qt 5.12 doesn't support anything older than Windows 7 anyway, so we
can't really check if we are on an older platform.
2022-05-17 22:25:50 +02:00
Sefa Eyeoglu
c1700054f4
fix: replace deprecated stuff as of Qt 5.12 2022-05-17 22:25:50 +02:00
Sefa Eyeoglu
cc13310083
Merge pull request #565 from Scrumplex/modrinth-packs
Initial Modrinth modpack support
2022-05-17 16:09:22 +02:00
Sefa Eyeoglu
1012912272
Merge pull request #567 from Scrumplex/quilt-metadata
Support `quilt.mod.json` metadata
2022-05-17 16:08:59 +02:00
Sefa Eyeoglu
edbd90a4e6
fix: update links for Quilt metadata format 2022-05-17 15:17:20 +02:00
Sefa Eyeoglu
ddc3b5eb0b
Update launcher/ui/pages/modplatform/modrinth/ModrinthPage.ui
Co-authored-by: DioEgizio <83089242+DioEgizio@users.noreply.github.com>
2022-05-17 15:14:53 +02:00
flow
17bbfe8d89
fix: virtual signal in Task.h 2022-05-17 06:47:00 -03:00
flow
96deb5b09d
chore: remove copyright from files i didnt mess with
This is what happens when you auto-pilot stuff xdd
2022-05-17 06:36:30 -03:00
txtsd
9b387d73e5
Merge pull request #529 from flowln/vertical_toolbar
Set right orientation for instance toolbar when moving it around
2022-05-17 12:14:34 +05:30
txtsd
c02a6780b0
Merge pull request #540 from kthchew/fix/executable-screenshot
Show "executable" screenshots in the screenshot manager
2022-05-17 10:59:55 +05:30
Lenny McLennington
6dfec4db40
Fix toolbar disappearing in a certain circumstance. 2022-05-17 00:21:57 +01:00
flow
2e9d7f5c3d
fix: mod skipping between pages and remove dead code 2022-05-16 19:17:37 -03:00
flow
696a711e39
fix: missed change to metacache entry lookup 2022-05-16 19:10:31 -03:00
flow
887246a66b
fix: typo and useless code 2022-05-16 17:09:14 -03:00
Sefa Eyeoglu
cd9e0e0cc0
fix: use own metacache base for modrinth icons 2022-05-16 20:17:19 +02:00
Sefa Eyeoglu
f66598db8a
Merge pull request #564 from flowln/cf_icon 2022-05-16 20:06:59 +02:00
flow
a6d2c5e181
fix: better hack for icons that cant be natively scaled to 48x48 2022-05-16 14:35:01 -03:00
flow
82760f4b91
fix: import modrinth packs with weird overrides structure
Probably because of Packwiz limitations, or an space optimizer that did
this :)
2022-05-16 12:11:50 -03:00
flow
62e099ace5
feat: better handling of optional mods
This disables the optional mods by default and tell the user about it.
Pretty hackish, but a better solution would involve the modrinth
metadata to have the mod names...

Also sorry for the diffs, my clangd went rogue x.x
2022-05-15 22:16:52 -03:00
flow
e92b7bd25e
change: switch to modrinth production servers 2022-05-15 21:50:42 -03:00
flow
e7bb3b2776
fix: macos compilation
i forgor macos is cringe with static arrays 💀

edit: WHY DONT MAC LET ME USE STD::ARRAY ;----;
2022-05-15 21:18:29 -03:00
flow
ec3c882a44
change: add alpha note to modrinth page 2022-05-15 20:52:57 -03:00
flow
66ce5a4a2d
fix: pack sorting and other search parameters 2022-05-15 20:45:27 -03:00
Sefa Eyeoglu
a110d445ac
feat: support quilt.mod.json metadata 2022-05-15 23:00:09 +02:00
flow
a67f3131e7
Merge pull request #560 from kthchew/feature/close-pmc-override
Add instance overrides for miscellaneous settings
2022-05-15 17:40:53 -03:00
Sefa Eyeoglu
e5d0097116
Merge pull request #531 from Ozynt/patch-1
Remove reference to legacy Minecraft accounts
2022-05-15 22:18:34 +02:00
flow
6d78ea5a45
Merge pull request #539 from kthchew/fix/translation-switch
Fix untranslated strings after changing language
2022-05-15 17:11:21 -03:00
dada513
550d6a6a9b
Merge pull request #547 from kthchew/feature/hidden-temp 2022-05-15 21:54:46 +02:00
dada513
9be8160bf2
Merge pull request #546 from kthchew/feature/scrollable-accounts 2022-05-15 21:43:34 +02:00
dada513
3070565fa3
Merge pull request #545 from DioEgizio/patch-4 2022-05-15 21:42:51 +02:00
flow
7194bb1b81
fix: validate whitelisted download urls 2022-05-15 16:06:49 -03:00
Sefa Eyeoglu
78cf0c73c8
fix: always show project url, if available 2022-05-15 20:38:27 +02:00
flow
4adc61bda9
change: update modrinth icon
Updates to the version at https://github.com/modrinth/docs/blob/master/static/img/logo.svg
2022-05-15 11:26:15 -03:00
flow
93e0041d0e
change: use modrinth icon as default on modrinth packs 2022-05-15 11:09:45 -03:00
Sefa Eyeoglu
682a7fb6ba
feat: add version of Modrinth modpack to instance name 2022-05-15 13:36:55 +02:00
flow
5f2398fe59
chore: license headers 2 2022-05-15 08:26:34 -03:00
Sefa Eyeoglu
3abf466632
chore: add/update license headers 2022-05-15 13:20:05 +02:00
flow
4bb429a0fb
change: use build variables for the modrinth API URLs
Make it more consistent with the others
2022-05-15 07:43:02 -03:00
flow
4a0e4fdb85 fix: add author page url 2022-05-15 07:15:56 -03:00
Sefa Eyeoglu
a43f882d48
feat: add support for Quilt Loader in Modrinth packs 2022-05-15 12:06:01 +02:00
Sefa Eyeoglu
9731e06728
fix: fix build on Qt 5.12 2022-05-15 11:49:27 +02:00
flow
4745ed2818
fix: choose valid download url even if it's not the primary one
It seems to be possible to have modpack versions that have to primary
file. In those cases, we pick a valid one "at random".
2022-05-14 22:50:04 -03:00
flow
49de5d9b07
change: list what file types can be entered in the importer 2022-05-14 22:04:40 -03:00
flow
365cc198ba
refactor: some random improvements 2022-05-14 21:50:54 -03:00
flow
9899a0e098
fix: Have the URL be the project URL itself
(I think, doesn't seem to work for the waffle though, probably because
of the staging API :/)
2022-05-14 21:47:35 -03:00
flow
5ea8cec16f
fix: make all modrinth modpacks have the same icon size 2022-05-14 21:29:48 -03:00
flow
9dd70ca9ae
fix: download icon as well when importing modrinth modpacks 2022-05-14 20:26:20 -03:00
flow
4fda35b466
feat: add modrinth pack downloading
Things that don't work / work poorly (there's more for sure but those
are the evident ones):
    - Icons are broken in the import dialog
    - No way to search for private packs
    - Icons are not downloaded when downloading a mod
    - No support for multiple download URLs
    - Probably a lot more...
2022-05-14 20:19:26 -03:00
Sefa Eyeoglu
31988f0529
fix: adapt upstream Modrinth code to our codebase 2022-05-14 20:27:45 +02:00
kb1000
db03846358
Add support for importing Modrinth packs from files 2022-05-14 20:01:09 +02:00
Sefa Eyeoglu
c6b3eccbdf
refactor: rename Modrinth classes to ModrinthMod 2022-05-14 20:00:54 +02:00
flow
84b962f256
fix: Handle icons with a dot in their names
E.g. some FTB modpacks.
Also fixes an issue with the name viewing on the Icon Chooser dialog
when the name was too big.
2022-05-13 17:21:35 -03:00
Sefa Eyeoglu
8dd68580a6
Merge pull request #528 from flowln/guo_ext 2022-05-13 18:17:40 +02:00
flow
dd2b324d8f
chore: add license header to remaining files
Also remove some unused imports
2022-05-12 18:11:55 -03:00
flow
0bce08d30f
chore: add polymc license headers to launcher/net files 2022-05-12 18:11:55 -03:00
flow
57d65177c8
fix: abort and fail logic in tasks
Also sets up correctly the status connections
2022-05-12 18:11:55 -03:00
flow
040ee919e5
refactor: more net cleanup
This runs clang-tidy on some other files in launcher/net/.

This also makes use of some JSON wrappers in HttpMetaCache, instead of
using the Qt stuff directly.

Lastly, this removes useless null checks (crashes don't occur because of
this, but because of concurrent usage / free of the QByteArray pointer),
and fix a fixme in Download.h
2022-05-12 18:11:55 -03:00
flow
efa3fbff39
refactor: remove some superfluous signals
Since now we're inheriting from Task, some signals can be reused.
2022-05-12 18:11:55 -03:00
flow
8c8eabf7ac
refactor: organize a little more the code in launcher/net/
This also reduces some code duplication by using some Task logic in
NetAction.
2022-05-12 18:11:49 -03:00
Kenneth Chew
3aea639fe4
Add UI for miscellaneous instance setting overrides 2022-05-12 17:11:06 -04:00
Kenneth Chew
046f1e6e58
Add instance overrides for miscellaneous settings 2022-05-12 17:08:06 -04:00
Kenneth Chew
527fa7ba9c
Hide temporary directory in instances folder 2022-05-09 18:34:47 -04:00
Kenneth Chew
288e7bc9c5
Make profile menu scrollable 2022-05-09 15:37:56 -04:00
timoreo22
649b8ac7c6
Merge pull request #537 from PolyMC/stable
Merge stable into develop
2022-05-09 18:06:56 +02:00
DioEgizio
96b2758169
fix websiteurl in curseforge modpacks 2022-05-09 17:42:17 +02:00
Kenneth Chew
40e0252d7d
Show "executable" screenshots in the screenshot manager
Since the readable/writable filter was removed to do this, extra code was added to enable/disable certain buttons based on whether the screenshot is readable or writable.
2022-05-09 00:54:47 -04:00
Kenneth Chew
5171d99fe5
Retranslate playtime text immediately when language is changed 2022-05-08 23:42:37 -04:00
Kenneth Chew
ea9d61c21c
Retranslate account actions after switching language 2022-05-08 23:19:23 -04:00
Sefa Eyeoglu
1e34de98ab
Merge pull request #534 from DioEgizio/stable 2022-05-08 21:43:06 +02:00
timoreo22
cab40026f2 Merge pull request #475 from Scrumplex/fix-hide-all-tokens
Hide all tokens for non-Debug builds for log and logfiles
2022-05-08 16:56:26 +02:00
Sefa Eyeoglu
ac66bddeda Merge pull request #482 from TheCodex6824/mojang-auth-fix 2022-05-08 16:52:31 +02:00
Sefa Eyeoglu
c4549a5375
Update launcher/modplatform/flame/FlameModIndex.cpp
Co-authored-by: flow <thiagodonato300@gmail.com>
2022-05-08 16:25:51 +02:00
Sefa Eyeoglu
e9b3140d12
Update launcher/modplatform/flame/FlameModIndex.cpp 2022-05-08 16:25:45 +02:00
Ozynt
bdd2d57808
This makes more sense 2022-05-08 11:19:53 +02:00
Ryan Cao
22f5128e39
adopt changes from #497 remapped 2022-05-08 15:22:50 +08:00
flow
29a53d7e95
fix: always have the instance toolbar be vertical
This overrides the orientation set automatically by Qt when we start
moving the toolbar around.
2022-05-07 20:44:44 -03:00
flow
2fbb7be23b
fix: filter based on MIME type instead of plaintext suffix
Suffixes are unreliable in different locales, while MIME types are more
standarized.
2022-05-07 20:16:55 -03:00
dada513
0556ae4749
Merge pull request #503 from txtsd/mnemonics_fix
Fix mnemonics that didn't parse
2022-05-02 11:19:30 +02:00
timoreo22
546d394868
Merge pull request #475 from Scrumplex/fix-hide-all-tokens
Hide all tokens for non-Debug builds for log and logfiles
2022-05-02 10:45:58 +02:00
dada513
8110040f86
Merge pull request #511 from dada513/hide_java_wizard
add hide java wizard toggle
2022-05-01 08:48:37 +02:00
dada513
5662d41062
Update launcher/ui/pages/global/JavaPage.ui
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-04-30 16:20:05 +02:00
dada513
1e03ef484d
Update launcher/ui/pages/global/JavaPage.ui
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-04-30 16:14:48 +02:00
Sefa Eyeoglu
1d95f10090
Merge pull request #489 from kthchew/fix/old-mac-cleanup 2022-04-30 15:54:10 +02:00
dada513
dac801c8ac
add hide java wizard toggle 2022-04-30 15:19:57 +02:00
txtsd
b931dc0f93
fix(mnemonics): Add missing buddies to labels
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-04-29 01:30:47 +05:30
Ryan Cao
0507b56bed
feat: add PolyMC icon as instance icon 2022-04-27 20:30:50 +08:00
Kenneth Chew
ac405aa564
Remove old macOS data migration code 2022-04-25 19:57:47 -04:00
Sefa Eyeoglu
aad7c63282
Merge pull request #482 from TheCodex6824/mojang-auth-fix 2022-04-25 21:55:00 +02:00
TheCodex6824
1ff459d995
Use suggested error handling 2022-04-25 14:08:27 -04:00
Sefa Eyeoglu
52454ca77b
Merge pull request #480 from dschemp/develop 2022-04-25 14:26:10 +02:00
TheCodex6824
a0bafa4952
Re-add base64 decode option for Qt versions that support it 2022-04-23 11:11:55 -04:00
TheCodex6824
e56f0db11b
Remove base64 decode option that was added in Qt 5.15 2022-04-23 10:32:52 -04:00
TheCodex6824
8bcbe07c87
Fix Mojang auth failing due to Mojang rejecting requests to the profile endpoint 2022-04-22 23:39:38 -04:00
Jamie Mansfield
ba9059c7c8
ATLauncher: Replace usage of QPushButton::pressed with ::clicked 2022-04-22 20:37:55 +01:00
Jamie Mansfield
45783c1661
ATLauncher: Support using share codes 2022-04-22 20:37:55 +01:00
Daniel Schemp
71777e7a6f added and fixed some Mnemonics in MainWindow 2022-04-22 00:31:03 +02:00
Daniel Schemp
c86ec0bd36 added: Mnemonics for Settings/APIs 2022-04-22 00:23:36 +02:00
Daniel Schemp
08b1b2669a added: Mnemonics for Settings/Accounts 2022-04-22 00:22:50 +02:00
Daniel Schemp
94a655b055 added: Mnemonics for Settings/External Tools 2022-04-22 00:20:54 +02:00
Daniel Schemp
717067e9eb added: Mnemonics for Settings/Proxy 2022-04-22 00:19:54 +02:00
Daniel Schemp
5a5797d914 added: Mnemonics for Settings/Custom Commands 2022-04-22 00:18:39 +02:00
Daniel Schemp
75826aca13 added: Mnemonics for Settings/Java 2022-04-22 00:16:11 +02:00
Daniel Schemp
f52b7c030f added: Mnemonics for Settings/Minecraft+ 2022-04-22 00:14:24 +02:00
Daniel Schemp
c1386bcb04 added: Mnemonics for Settings/Launcher 2022-04-22 00:12:20 +02:00
Sefa Eyeoglu
b3e1691c01
fix: hide LauncherLoginStep tokens for non-Debug builds 2022-04-20 18:33:33 +02:00
Sefa Eyeoglu
db6dae7541
fix: disable major version match for snapshots 2022-04-20 09:56:53 +02:00
dada513
4e97f2a6fe
Merge pull request #470 from kthchew/fix/ml-selector-crash
Fix crash if no Minecraft version is selected in the new instance screen
2022-04-20 09:08:48 +02:00
dada513
3c3ce71214
Merge pull request #467 from PolyMC/revert-429-develop
Revert "better FreeBSD support"
2022-04-20 08:17:19 +02:00
Kenneth Chew
0682fe544a
Fix crash if no Minecraft version is selected in the new instance screen 2022-04-19 22:20:00 -04:00
Ezekiel Smith
27e803e4a4
Merge pull request #463 from txtsd/enter_shenanigans
Only trigger macOS instance rename on KeyDown
2022-04-20 08:34:30 +10:00
Ezekiel Smith
405c44c9e1
Merge pull request #462 from Scrumplex/fix-world-size-sort
fix: use size in bytes to sort by world size
2022-04-20 08:32:38 +10:00
Sefa Eyeoglu
4c5f701b05
Revert "better FreeBSD support" 2022-04-19 21:49:54 +02:00
Sefa Eyeoglu
3ff3c335bc
Merge pull request #452 from Scrumplex/fix-download-mods-crash 2022-04-19 21:47:05 +02:00
dada513
b9d5e1bbf1
Merge pull request #451 from Scrumplex/fix-modloader-selection 2022-04-19 21:01:43 +02:00
Sefa Eyeoglu
027c666265
Merge pull request #450 from Scrumplex/fix-quilt-mod-dl 2022-04-19 20:36:37 +02:00
txtsd
ec2ac2e80c
fix: Only trigger rename on KeyPress
This is macOS specific
2022-04-19 18:43:51 +05:30
Sefa Eyeoglu
27c72935f8
fix: use size in bytes to sort by world size 2022-04-19 15:07:14 +02:00
Sefa Eyeoglu
fcdc7a1a35
fix: fix Modrinth query when Quilt is in use 2022-04-19 10:22:50 +02:00
Sefa Eyeoglu
f13c776099
Merge pull request #449 from DioEgizio/CI/specify-build-platform
specify -DLauncher_BUILD_PLATFORM on CI builds (EDIT: also remove "on x")
2022-04-19 09:59:11 +02:00
DioEgizio
7b9d462fbc remove "on x" 2022-04-18 18:31:50 +02:00
Sefa Eyeoglu
c174a1eb01
fix: don't set mod loader as important 2022-04-18 15:05:41 +02:00
Sefa Eyeoglu
ac77997a7a
fix: handle network errors when downloading modlist 2022-04-18 14:36:36 +02:00
Sefa Eyeoglu
fa352ff4d3
fix: actually check if a mod loader is selected
Thus also removes a suggestCurrent call from loaderFilterChanged, as it will already be triggered by setSelectedLoaderVersion
2022-04-18 14:15:02 +02:00
Sefa Eyeoglu
fd7745cbeb
Merge pull request #442 from kthchew/fix/typos 2022-04-18 13:38:54 +02:00
flow
cbbcc2d68b
fix(translation): don't translate placeholders
Those are modified programatically, and never show up to the user!
2022-04-17 19:24:49 -03:00
Kenneth Chew
fcbf37f60f
Fix typos and inconsistent capitalization in sort options 2022-04-17 17:58:51 -04:00
Sefa Eyeoglu
0ccbc801cf
Merge pull request #411 from kthchew/feature/menubar 2022-04-17 23:19:51 +02:00
Kenneth Chew
4c52cc414f
Improve menu bar setting string 2022-04-17 16:39:08 -04:00
Kenneth Chew
6b45386252
Disable instead of hide menu bar option on Linux
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-04-17 20:32:51 +00:00
Kenneth Chew
3acc761419
Fix bugs with instance menu bar options when opening without instances
- The launch option is no longer empty.
- The program now checks on startup whether an instance is selected to decide whether to disable instance options.

Also, get rid of a dynamic cast.
2022-04-17 12:44:24 -04:00
Ezekiel Smith
703bf9bb7a
Merge pull request #431 from Scrumplex/feat-quilt-modrinth
Query for Fabric mods if Quilt is in use
2022-04-17 13:46:22 +10:00
Sefa Eyeoglu
cab9afa45f
fix: query for Fabric mods if Quilt is in use
Right now we want to include Fabric mods in our searches where possible.
Modrinth allows definining multiple loaders, while Flame only allows a
single value.

As a compromise we ask for Fabric mods only on Flame and for both Fabric
and Quilt mods on Modrinth.
2022-04-16 23:40:10 +02:00
Sefa Eyeoglu
ba5946dc60
Merge pull request #336 from Scrumplex/refactor-portable 2022-04-16 21:25:05 +02:00
Kenneth Chew
9bad83a551
Use TranslatedAction instead of QAction for menu bar actions 2022-04-16 13:35:13 -04:00
Kenneth Chew
a549828655
Remove the Edit menu bar menu
It wouldn't bring much utility.

- The keyboard shortcuts for copy/paste/etc. already work and are well-known. The menu bar likely doesn't need to advertise them.
- There's not very many places you would be able to use these options in the main window (because there's not many places to type stuff in the main window). It would only be applicable on systems with a native menu bar that shows in all other windows as well (but again, the keyboard shortcuts still work).

Also, rename `actionWiki` -> `actionOpenWiki` to match the corresponding `on_actionOpenWiki_triggered`
2022-04-16 13:17:34 -04:00
Sefa Eyeoglu
e11d1b5202
Merge pull request #429 from Irgendwer01/develop
better FreeBSD support
2022-04-16 18:21:54 +02:00
Sefa Eyeoglu
b10d4d3b8f
fix: drop BUNDLE_DEST_DIR 2022-04-16 18:13:12 +02:00
Sefa Eyeoglu
6ed130fc16
fix: don't allow portable builds on macOS 2022-04-16 18:13:12 +02:00
Sefa Eyeoglu
90d4acd1a1
refactor: combine portable and system builds
Portable builds now have the same layout as system builds. If you want
to build a portable bundle, you now need to additionally install the
`portable` component.

For example:

    $ cmake -Bbuild -DCMAKE_INSTALL_PREFIX=install ...
    $ cmake --build build
    $ cmake --install build
    $ cmake --install build --component portable
2022-04-16 18:13:09 +02:00
Sefa Eyeoglu
a42d2afcee
Merge pull request #392 from flowln/mod_filter 2022-04-16 18:03:03 +02:00
Kenneth Chew
6a97ac603a
Use preexisting actions in the menu bar
The code is now much cleaner.

Because the actions already present are enabled elsewhere even when the menu bar is hidden, keyboard shortcuts added to them automatically work regardless of whether the menu bar is visible. This means that the hacky workaround related to this can be removed.
2022-04-16 03:32:08 -04:00
Kenneth Chew
e59d3a339f
Close the current window instead of the main window from the menu bar
Systems with native menu bars show the same menu bar for all child windows. As a result, you cannot assume that the menu bar's parent (the `MainWindow`) will be the window in focus.
2022-04-16 02:07:29 -04:00
Ezekiel Smith
db7cb12551
Merge pull request #430 from DioEgizio/make-helppages-on-their-own-dir
CHANGE: switch the help pages to their own dir
2022-04-16 10:18:04 +10:00
Kenneth Chew
1049507b3f
Add logged in accounts to the profiles menu bar menu
Additionally, add keyboard shortcuts for switching between different accounts.
2022-04-15 19:55:49 -04:00
Kenneth Chew
1303771b58
Add option to always show menu bar instead of toolbar
For those who like keyboard navigation at the expense of aesthetics.
2022-04-15 18:26:41 -04:00
Kenneth Chew
f6605bc3f8
Implement help (open wiki) menu bar action 2022-04-15 16:44:27 -04:00
Kenneth Chew
80ec178d5f
Fix keyboard shortcut for delete instance on some devices
My laptop has a key labeled "delete," but for some reason it doesn't work with `QKeySequence::Delete`. Instead it's interpreted as a backspace.
2022-04-15 16:38:26 -04:00
Kenneth Chew
b0a8bd7dfe
Improve menu bar keyboard usability
More reasonable (unique) menu access keys were chosen.

In addition, move the settings action from the Help menu to the Edit menu.
2022-04-15 16:29:29 -04:00
Kenneth Chew
5d8d7740ba
Only enable instance options while an instance is selected 2022-04-15 15:55:03 -04:00
Kenneth Chew
3e64935844
Add Quilt install option while creating an instance 2022-04-15 15:37:08 -04:00
Kenneth Chew
7577115c3c
Fix Fabric versions appearing for unsupported MC versions
Also remove an old TODO comment, mentioning an issue that was already fixed.
2022-04-15 15:37:08 -04:00
Kenneth Chew
2cb242e9b3
Show no loader selected message when add instance window first opens
This resolves an issue where the message only shows when selecting a mod loader and then selecting "None" again.
2022-04-15 15:37:07 -04:00
Kenneth Chew
7aeccbb6b0
Fix build on Qt 5.6 2022-04-15 15:37:07 -04:00
Kenneth Chew
8406c7f431
Add option to install mod loader during instance creation 2022-04-15 15:37:07 -04:00
flow
8e9eca6a97 ui: resize mod download dialog using its parents geometry 2022-04-15 08:49:43 -03:00
flow
5f15f51610 ui: underline search button text when changing filters
This hopefully makes it easier to the user to know that their changes
will only apply after hitting the search button.

I tried setting the background color, but it seems more unreliable on
cross-platform than underlining. Also, it could be worse for daltonic people,
so I don't know what to do :(
2022-04-15 08:49:43 -03:00
flow
277de41200 rework: make the filter as a tabbed widget in the dialog itself
Still needs a clear indication that the filter only applies after you
click the search button...
2022-04-15 08:49:43 -03:00
flow
63bce04648 fix: Polish usage in some cases
Also fiz some typos
2022-04-15 08:49:43 -03:00
flow
76dfb7825a fix: 'All' filter working and get around CF API capabilities 2022-04-15 08:49:43 -03:00
flow
5cb0e75093 fix(ui): Refresh mod list when changing filtering options 2022-04-15 08:49:41 -03:00
flow
c730fd6e5f feat: Use version filter when searching mods 2022-04-15 08:45:30 -03:00
flow
c2b97c3e3f feat: Integrate newly created filter dialog in ModPage 2022-04-15 08:42:30 -03:00
flow
e0ab8207ed feat: Add dialog to filter mod options in mod download 2022-04-15 08:41:12 -03:00
Irgendwer01
ecad388846
Merge branch 'PolyMC:develop' into develop 2022-04-15 13:04:25 +02:00
Irgendwer01
9a120f43c8
Update MinecraftInstance.cpp 2022-04-15 13:03:48 +02:00
Sefa Eyeoglu
4ff1306e0c
Merge pull request #185 from Scrumplex/quilt
Quilt support
2022-04-15 11:38:50 +02:00
DioEgizio
1dd663af6e CHANGE: switch the help pages to their own dir
also renames modrinth-platform/curseforge-platform to just Mod-platform since they have the pages are basically the same
2022-04-15 11:15:17 +02:00
Irgendwer01
06d9821b2c
Update MinecraftInstance.cpp 2022-04-15 01:51:28 +02:00
Irgendwer01
abb20c65e3
better FreeBSD support 2022-04-15 01:40:25 +02:00
Sefa Eyeoglu
9fb5674233
refactor: cleanup ModLoaderType 2022-04-14 21:55:03 +02:00
Sefa Eyeoglu
18ac109e5a
fix: support Quilt from Minecraft 1.14 onwards 2022-04-14 17:20:07 +02:00
Sefa Eyeoglu
14a0e85862
fix: remove unused code 2022-04-14 16:50:04 +02:00
Regular Baf
ea3ceb382a
Update launcher/resources/multimc/scalable/discord.svg
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-04-09 23:42:08 +00:00
Regular Baf
37a30fbc3f
Update discord.svg 2022-04-09 13:22:39 +00:00
Regular Baf
99193a2d7b
Update discord.svg 2022-04-09 13:16:55 +00:00
Regular Baf
abfb99ba3f
Nevermind. It does. 2022-04-09 13:16:03 +00:00
Regular Baf
fcb311eecd
size doesnt matter? 2022-04-09 13:11:33 +00:00
Regular Baf
54e4f88ada
Attempt implementing the new discord logo 2022-04-09 13:00:27 +00:00
Sefa Eyeoglu
89125fde22
refactor: switch Quilt mappings to hashed MojMap 2022-04-09 14:56:07 +02:00
Kenneth Chew
9f3eed6ca2
Fix typos causing build failures on non-macOS systems
It also did the exact opposite thing I was trying to do, so that's fixed too...
2022-04-08 17:00:42 -04:00
Kenneth Chew
ab82358dcb
Show and hide the menu bar with the 'alt' key
Only applicable for systems without a native menu bar (i.e. almost anything that is not macOS or Ubuntu Unity). On these systems, the menu bar appears on top of the window, which does not look good next to the tool bar already up there.

When the menu bar is hidden, the keyboard shortcuts set by the menu bar are disabled. They should always work, so this also adds a workaround for that.
2022-04-08 16:21:52 -04:00
Kenneth Chew
75fddd0052
Create menubar prototype
Some stuff still needs to be fixed:

- The close window option always closes the main window, even if it is not the currently active window (only applicable on systems with native menu bar)
- None of the (text) editing actions are enabled
- Actions related to instances should only be active when an instance is selected
- The open wiki option ("PolyMC Help") needs to be implemented
- Delete instance keyboard shortcut does not seem to work on my system. Test further
- It would be nice if the profiles menu had all of the logged in accounts, and if they could be selected from that menu (preferably with keyboard shortcuts, probably Ctrl + 1, Ctrl + 2, ...)
2022-04-08 15:39:30 -04:00
dada513
8a2c5f5b0d
Merge pull request #407 from DioEgizio/upstream-cherrypick 2022-04-08 16:18:28 +02:00
DioEgizio
66caac0bbc
Update launcher/JavaCommon.cpp
Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net>
2022-04-08 11:16:00 +02:00
DioEgizio
3024dbcf2c
Apply suggestion
Co-authored-by: Kenneth Chew <79120643+kthchew@users.noreply.github.com>
2022-04-08 08:50:32 +02:00
flow
eeae3eca67
test: add new test to Task test
Also adds one more check to setStatus test
2022-04-07 19:42:26 -03:00
flow
d0cda6d605
test: add basic Task unit test
Only only two tests for now. We can iterate on this later :^)

This is to try to avoid breaking things again!
2022-04-07 19:08:01 -03:00
flow
167e32a69f
fix: allow aborting CF modpack importing 2022-04-07 18:56:34 -03:00
flow
be2512bb4b
fix: issue with status of non-sequencial tasks 2022-04-07 18:41:32 -03:00
Sefa Eyeoglu
35cfb41a9c
fix: check for Quilt as Fabric-compatible loader 2022-04-07 18:46:09 +02:00
Sefa Eyeoglu
74cdf5350d
fix: restrict quilt-mappings versions to MC version 2022-04-07 18:46:00 +02:00
Sefa Eyeoglu
9349232bd4
refactor: dynamically get best version for intermediary mappings 2022-04-07 18:46:00 +02:00
Vladislav Laetansky
1811302deb NOISSUE save custom offline player name 2022-04-07 18:29:15 +02:00
Petr Mrázek
e6564aa69f NOISSUE fix error string for Xbox authorization failures 2022-04-07 18:29:10 +02:00
Petr Mrázek
566a83b245 NOISSUE prevent -version being passed to the JRE
We want specific JREs, always, not something that is magically resolved.
This counteracts some really bad advice recently being spread on reddit.
2022-04-07 18:28:27 +02:00
Sefa Eyeoglu
9eb9ddc668
feat: initial Quilt support 2022-04-07 18:11:40 +02:00
Ezekiel Smith
cc5261051f
Merge pull request #364 from Scrumplex/fix-i18n2
Fix translatable strings 2
2022-04-07 23:20:54 +10:00
Sefa Eyeoglu
fa870bc026
Merge pull request #380 from flowln/task-progress 2022-04-06 10:52:38 +02:00
Sefa Eyeoglu
99d569ed0e
Merge pull request #384 from jamierocks/technic-improvements 2022-04-06 10:52:27 +02:00
Sefa Eyeoglu
a1a7b9c151
Merge pull request #397 from DioEgizio/manymc-detect-aarch64 2022-04-06 10:52:15 +02:00
Una
dc6340bf38
Allow components to specify Java agents and JVM arguments (#175) 2022-04-06 08:22:24 +02:00
dada513
8732bea99b
Merge pull request #395 from HarryPeach/develop 2022-04-05 18:01:00 +02:00
Sefa Eyeoglu
5fb096d7b9
Merge pull request #345 from Scrumplex/handle-incompatible-java 2022-04-04 21:01:49 +02:00
Victor
cf8680f1ab fix: properly detect arm64 2022-04-04 16:41:23 +02:00
Harry Peach
bd8b61651a
Check for empty slug before setting pack url 2022-04-03 23:12:46 +01:00
Ezekiel Smith
d33d5b847d
Merge pull request #387 from Scrumplex/fix-world-size
fix: calculate world sizes individually
2022-04-03 20:45:23 +10:00
Jamie Mansfield
b6e722a048
BuildConfig: Make Technic API base URL and build constants 2022-04-02 13:53:44 +01:00
Jamie Mansfield
7f2615b2a5
Technic: Verify checksums for pack build mods 2022-04-02 13:53:44 +01:00
Jamie Mansfield
a232c2d509
Technic: Display available versions for Solder packs 2022-04-02 13:53:44 +01:00
Jamie Mansfield
c8205fda9f
Technic: Replace inline parsing code with API models 2022-04-02 13:53:44 +01:00
Jamie Mansfield
8df88e7fbb
Technic: Add API models for Solder packs 2022-04-02 13:53:44 +01:00
Jamie Mansfield
c8092269ba
Technic: Match CurseForge pack description format 2022-04-02 13:53:44 +01:00
Jamie Mansfield
9d88f07955
Technic: Include the modpack version in instance title 2022-04-02 13:53:43 +01:00
Jamie Mansfield
f267375ac2
Technic: Prevent potential HTML injection 2022-04-02 13:53:43 +01:00
Jamie Mansfield
d44fa416ca
Technic: Allow pack API urls to be used in search
This mimics the behaviour that the Technic launcher has, and their
website displays API URLs for.

The big benefit of this, is to be able to install private packs now :)
2022-04-02 13:53:43 +01:00
Sefa Eyeoglu
41d7b27d43
fix: calculate world sizes individually 2022-04-02 13:29:37 +02:00
Sefa Eyeoglu
333f7cc320
Merge pull request #373 from Scrumplex/feat-world-size 2022-04-02 00:59:15 +02:00
Sefa Eyeoglu
9180c751d8
fix(launch/VerifyJava): reword log output 2022-04-02 00:54:48 +02:00
Sefa Eyeoglu
e8697068fb
fix: codestyle 2022-04-01 15:00:05 +02:00
Ezekiel Smith
269c1bbf58
Merge pull request #370 from embeddedt/develop
Make launcher icon grayscale for pe_light theme
2022-04-01 22:58:54 +10:00
flow
9b8493c304
feat: Use a single progress dialog when doing multiple tasks
This puts all mod downloading tasks inside a SequentialTask, which is,
for more than one task, a multi step task. This is handled by the
ProgressDialog by showing both the global progress of tasks executed,
and the individual progress of each of them.
2022-04-01 09:32:00 -03:00
Sefa Eyeoglu
c389a711ed
fix: remove redundant include 2022-04-01 13:14:04 +02:00
Ezekiel Smith
382548e0a7
Merge pull request #355 from dada513/flatpak_properly
Fix flatpak properly
2022-04-01 21:03:14 +10:00
dada513
48a6380e31
Fix modrinth usable URL in mod downloader 2022-03-31 20:39:10 +02:00
Sefa Eyeoglu
64ca96f470
feat: track and display world size 2022-03-31 18:45:17 +02:00
dada513
59b3e30821
Scrumplex moment 2022-03-31 16:11:04 +02:00
embeddedt
92e5e0e95b
Make launcher icon grayscale for pe_light theme 2022-03-30 10:51:37 -04:00
Sefa Eyeoglu
9202996c62
fix(i18n): remove brand names from translations 2022-03-29 15:25:21 +02:00
Sefa Eyeoglu
e22d54abd3
Merge pull request #344 from oynqr/build/allow-disabling-tests 2022-03-29 14:42:49 +02:00
dada513
b53ba12fa2
Merge pull request #360 from FayneAldan/patch-2 2022-03-29 14:34:14 +02:00
Sefa Eyeoglu
306df9e17f
Merge pull request #352 from Scrumplex/fix-name
Update Credits and Branding
2022-03-29 11:24:48 +02:00
Sefa Eyeoglu
5f2e768376
Merge pull request #356 from flowln/version_optimize
Improve mod versions request to Modrinth
2022-03-29 11:24:12 +02:00
Fayne Aldan
4d8bf0b621
Convert \s in Windows POLYMC_JAVA_PATHS
Allows you to use either `\` or `/` on Windows
2022-03-28 15:55:54 -06:00
dada513
341eb16a4c
Merge branch 'develop' of https://github.com/PolyMC/PolyMC into flatpak_properly 2022-03-28 20:55:06 +02:00
dada513
3a7eeff135
Fix 2022-03-28 20:55:03 +02:00
Fayne Aldan
659f93b1de
Fix POLYMC_JAVA_PATHS env not working on Windows 2022-03-27 17:21:34 -06:00
Sefa Eyeoglu
ea60e48d9d
chore: add license header
chore: add license header
2022-03-27 20:59:56 +02:00
Sefa Eyeoglu
6054abaffb
fix(credits): wrap UTF-8 text with QString 2022-03-27 20:59:56 +02:00
Sefa Eyeoglu
3a1feed723
fix: update credits 2022-03-27 20:59:56 +02:00
Sefa Eyeoglu
85f3fc9944
fix: remove "PolyMC" from strings 2022-03-27 20:59:51 +02:00
Sefa Eyeoglu
87cf38a377
Merge pull request #341 from dada513/develop 2022-03-27 20:56:04 +02:00
dada513
424f4a72ff
Inform user about possible issues when using a Portal as instance folder 2022-03-27 16:08:11 +02:00
dada513
ec6409914d
newline more like waste 2022-03-27 14:51:48 +02:00
dada513
6a25cacc3e
Merge branch 'develop' of https://github.com/PolyMC/PolyMC into develop 2022-03-27 14:51:02 +02:00
dada513
b1af689546
Add quit launcher after game stops option (Steam Deck)
lecense
2022-03-27 14:50:47 +02:00
dada513
0a5dfeb3d7
fix newline (scrumplex nitpick not allowed) 2022-03-27 14:44:40 +02:00
dada513
6a180f495f
more flatpak fixes 2022-03-27 14:42:02 +02:00
dada513
3672dbc5af
Fix flatpak properly 2022-03-27 12:43:49 +02:00
flow
d00c320c00
optimize: Improve mod versions request to Modrinth
This uses more arguments in the GET request for mod versions on the
Modrinth API, filtering what versions can be returned, decreasing load
on Modrinth servers and improving a little the time it takes for the versions to be
available to the user.

This also removes the now unneeded check on correct modloaders in
ModrinthPackIndex, since it is now filtered by the Modrinth server.

Lastly, this adds a couple of helper functions in ModModel.
2022-03-24 19:31:11 -03:00
flow
e13ca94061
chore: resolve conflicts and merge upstream 2022-03-24 18:24:51 -03:00
Sefa Eyeoglu
e02369ba6b
chore: add license header 2022-03-24 16:10:43 +01:00
Sefa Eyeoglu
82c35f2746
feat: block launch if Java is incompatible
Keep track of compatible Java versions from meta. Launch-step
VerifyJavaInstall will check if current instance's Java version is
compatible.
Also add override option both globally and per-instance in-case the user
doesn't care about the requirement.
2022-03-24 16:10:39 +01:00
Philipp David
a89cbf116d
Allow disabling building of tests 2022-03-23 19:48:03 +01:00
flow
f3a244e90a
fix: fix skipping one on file counting in mod version parse 2022-03-22 19:45:31 -03:00
Sefa Eyeoglu
64399dd8d6
Merge pull request #322 from oynqr/build/static-rainbow
Build with static rainbow
2022-03-21 16:58:37 +01:00
Sefa Eyeoglu
062fc79286
Merge pull request #298 from Scrumplex/fix-i18n
Fix translatable strings
2022-03-21 14:21:06 +01:00
Ezekiel Smith
2da565f5d4
Merge pull request #323 from Scrumplex/retranslate-pages
Retranslate all settings pages
2022-03-22 00:06:16 +11:00
Philipp David
e8373bbf65
Build with static rainbow 2022-03-21 12:47:42 +01:00
Philipp David
26acc836d9
Revert "fix: use our own prefix for rainbow lib"
This reverts commit 61db1c46be.
2022-03-21 09:40:20 +01:00
Ezekiel Smith
9c22af9685
Merge pull request #315 from txtsd/display_scaling
Allow fractional DPI scaling
2022-03-21 11:21:21 +11:00
Sefa Eyeoglu
75d0078a38
fix: retranslate CustomCommands 2022-03-20 21:51:36 +01:00
Sefa Eyeoglu
536b1a23fc
fix: retranslate mod download pages 2022-03-20 21:51:23 +01:00
Sefa Eyeoglu
cafff5e504
chore: add license header 2022-03-20 21:40:49 +01:00
Jamie Mansfield
dd5c4b6864
App: Retranslate all pages when the language is changed 2022-03-20 20:48:12 +01:00
Jamie Mansfield
a2c85a8531
App: Retranslate page header titles
This fixes a bug that is only practically effects the title of the
language page not updating the header when changing the language.
2022-03-20 20:02:21 +01:00
txtsd
de4d757650
Merge pull request #311 from DioEgizio/patch-2
fix webp
2022-03-20 22:20:02 +05:30
Sefa Eyeoglu
702a1da0ac
fix: disable "Install Forge" button when needed 2022-03-20 15:35:35 +01:00
Sefa Eyeoglu
768007d980
fix: disable "Download mods" button when needed
Fixes #271
2022-03-20 15:34:13 +01:00
txtsd
2e40ab6244
(fix): Allow fractional DPI scaling 2022-03-20 20:02:24 +05:30
Ezekiel Smith
8bc6cdf55c
Merge pull request #306 from Scrumplex/limit-instance-lengths
Limit instance names to 128 chars
2022-03-21 01:04:40 +11:00
DioEgizio
6c0b101fed
Merge branch 'PolyMC:develop' into patch-2 2022-03-20 15:02:04 +01:00
Sefa Eyeoglu
c8fec556c0
Merge pull request #305 from flowln/gui_changes 2022-03-20 13:39:12 +01:00
DioEgizio
b7f2959353
fix 2022-03-20 13:15:56 +01:00
Sefa Eyeoglu
4899d3c458
Merge pull request #200 from Scrumplex/scrumplex-license-header 2022-03-20 12:04:39 +01:00
Sefa Eyeoglu
c311dba465
fix: limit instance names to 128 chars 2022-03-19 23:23:08 +01:00
flow
75ec4256e2
feat(ui): allow users to move toolbars to different places 2022-03-19 17:59:00 -03:00
DioEgizio
bb5a91c179
Update CMakeLists.txt 2022-03-19 19:01:51 +01:00
Sefa Eyeoglu
8225f1ac92
Merge pull request #292 from lack/offline_username_limits
Limit offline username to 16 characters with override
2022-03-19 16:02:28 +01:00
Jim Ramsay
90780818ca Limit offline username to 16 characters with override
Offline usernames longer than 16 characters won't be able to connect to
LAN games or offline-mode servers, so just don't let it happen.

Add a checkbox to allow people to unrestrict usernames if they want.

Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2022-03-19 10:12:07 -04:00
Sefa Eyeoglu
a160bd0062
chore: add license header to files I modified 2022-03-19 12:46:56 +01:00
Sefa Eyeoglu
7e0312493b
fix(i18n): improve social platform actions 2022-03-19 12:36:04 +01:00
Sefa Eyeoglu
ccfd06ad21
fix(i18n): remove brand names from translations 2022-03-19 12:35:15 +01:00
Sefa Eyeoglu
48c2146a42
fix(i18n): fix translatable strings 2022-03-19 12:29:46 +01:00
Ezekiel Smith
abb9fa8cbd
Merge pull request #296 from flowln/right_file
Use primary file for mod downloading on Modrinth
2022-03-19 11:41:36 +11:00
flow
ec66c8fd3d
fix(ui): remove paste.polymc.org 2022-03-18 14:21:42 -03:00
flow
fa5fa53592
fix: Use primary file for mod download on Modrinth 2022-03-18 10:52:47 -03:00
flow
da43ed8ce1 fix silly mistakes and merge upstream 2022-03-18 07:54:47 -03:00
Sefa Eyeoglu
aedb513c9e
Merge pull request #265 from Scrumplex/fix-javacheck-appimage
Define JARs path relative to application root
2022-03-14 23:31:38 +01:00
flow
8409aa2571
tidy: Fix clang-tidy issues on files changed in this PR
The checks used are roughly the same as the ones proposed in the
clang-tidy PR (except perhaps that I used modernize-* instead of listing
them individually,though I don't think this caused any readability
detriments).

In ModrinthModel.cpp and FlameModModel.cpp I ignored the
modernize-avoid-c-arrays one, mostly because making the sorts array an
std::array would most likely increase the code complexity because of the
virtual function. Aside from that, the static_cast warning from
Application.h was not dealt with, since it's not in this PR's scope.
2022-03-14 17:43:36 -03:00
Ezekiel Smith
5b8003cbe5
Merge pull request #188 from PolyMC/removal/notifications
remove notifications
2022-03-15 00:51:28 +11:00
flow
f1e44291cc
add translation string 2022-03-13 13:11:35 -03:00
flow
b3b613d8b4
feat(ui): make a better "Mod download confirmation dialog" 2022-03-13 11:50:18 -03:00
Sefa Eyeoglu
bb2b344d33
fix: define jars path relative to application root
Fixes #117
2022-03-13 12:48:24 +01:00
flow
a3d7ad731d
fix missing translation strings
my mistake, sorry! ToT
2022-03-11 18:43:17 -03:00
Ezekiel Smith
07e4c4d189
Merge pull request #242 from deadmeu/develop
Fix missing space in "No Accounts" message
2022-03-11 14:53:05 +11:00
dada513
d814e21f0d
add matrix button 2022-03-08 18:41:23 +01:00
deadmeu
49d122a2c4 Fix missing space in "No Accounts" message 2022-03-08 23:24:11 +10:00
flow
b3c2a56ece
fix: delete semicolons at the end of .cpp file's functions
my lsp is weird sometimes
2022-03-07 19:55:20 -03:00
flow
9c57b54a81
refactor: move things around so that related things are close together
This also adds some comments around ModModel.cpp and ModPage.cpp to add
some ease of reading the code.

Also move some things from headers to cpp files.
2022-03-07 19:32:28 -03:00
flow
b131d3b2ec
refactor: move more common code to base class
Also removes unused imports and organize the ModModel header
2022-03-07 18:28:24 -03:00
flow
16bfafa29e
refactor: de-duplicate common code in network mod APIs 2022-03-07 17:45:28 -03:00
flow
f714adf6d2
refactor: move NetJob away from ModModel to ModAPI
This is done so that 1. ModAPI behaves more like an actual API instead
of just a helper, and 2. Allows for more easily creating other mod
providers that may or may not use network tasks (foreshadowing lol)
2022-03-07 16:22:57 -03:00
Ezekiel Smith
dc9e250868
Merge pull request #232 from Scrumplex/fix-help-links
Switch to polymc.org wiki
2022-03-08 01:22:34 +11:00
Ezekiel Smith
b6cf0359fa
Merge pull request #230 from Scrumplex/fix-iconthemes
Reorganize icon themes
2022-03-08 01:20:35 +11:00
flow
39bd04f06f
refactor: use Enum instead of raw int for ModLoaderType 2022-03-06 16:45:39 -03:00
flow
d755174bee
clarify some method names and comments 2022-03-06 16:04:24 -03:00
flow
1229e90817
merge upstream 2022-03-06 15:28:18 -03:00
flow
5a638fa977
refactor: move "get versions" task from page to model
This seems more reasonable
2022-03-06 15:23:00 -03:00
flow
5e9d49a910
refactor: use only a single unique_ptr for the api 2022-03-06 13:54:55 -03:00
Sefa Eyeoglu
6545d250e8
refactor: move help URL into buildconfig 2022-03-06 11:31:50 +01:00
Sefa Eyeoglu
b162351ff4
fix: switch to polymc.org wiki 2022-03-05 21:49:13 +01:00
Sefa Eyeoglu
3697d70b48
fix: reorganize icon themes
Rename MultiMC to Legacy
Simple (Colored) is now the first icon theme
Custom is now the last icon theme, which also fixes a loading issue when
Legacy was selected
Fix loading of Legacy theme
2022-03-05 20:29:54 +01:00
flow
e0c025b162
fix extra spacing in resource packs and shader packs, and move button up
hopefully now its finally ok
2022-03-03 09:51:46 -03:00
flow
9e443faba3
hack: hide 'Download Mods' button when not in the mods tab 2022-03-03 04:02:22 -03:00
flow
f95cebaf06
change 'Install Mods' -> 'Download Mods' and change position 2022-03-03 01:10:10 -03:00
flow
9a8599e4ba
fix windows compilation 2022-03-03 00:06:37 -03:00
flow
2d68308d49
refactor: move url creation for mods to modplatform/
Moves all things related to creating the URLs of the mod platforms
that go to network tasks to a single place, so that:

1. Maintaining and fixing eventual issues is more straightforward.
2. Makes it possible to factor out more common code between the
   different modplatform pages
2022-03-02 23:13:04 -03:00
flow
0dd1c26cf3
refactor: extract common code in mod pages and model
This creates a hierarchy in which ModPage and ModModel are the parents
of every mod provider, providing the basic functionality common to all
of them.

It also imposes a unique .ui file (they were already equal before, just
duplicated basically) on all mod providers.
2022-03-02 21:52:44 -03:00
flow
881b2f2b38
refactor: Use a single indexed pack for mods
Since there's little difference between them, let's remove duplication
and merge them.
2022-03-02 18:49:19 -03:00
timoreo22
8bdd2befe9
Merge pull request #205 from timoreo22/fix-version-select
Fixed wrong version info
2022-03-01 16:56:10 +01:00
Ezekiel Smith
e1f28be151
Merge pull request #163 from txtsd/windows_data_dir
Replace build layouts with Launcher_PORTABLE cmake flag
2022-03-02 00:03:31 +11:00
flow
4e8f075ff3
fix: Do not loop when its not a fabric mod on Flame version validation
Since there's no validation for forge mods since the start, we were just
looping with no porpuse in this situation.
2022-02-27 22:02:43 -03:00
flow
075d900d45
fix: Always tell Flame API which modloader we are using
Fixes #206 partially. Although we don't list mods that have no
compatibility with the mod loader we are using, mods that have support
for both loaders still show up, and the versions for both the loaders
are still shown.

Also simplifies a little the logic in
FlameModIndex::loadIndexedPackVersions
2022-02-27 16:07:45 -03:00
txtsd
5d1ca33b84
Apply suggestions from code review
Co-authored-by: LennyMcLennington <lenny@sneed.church>
2022-02-27 08:35:47 -08:00
timoreo
ccc493cb2b
Cleanly free NetJob in flame modpack 2022-02-27 13:14:12 +01:00
timoreo
2745325ae0
Fixed wrong version info 2022-02-27 11:55:24 +01:00
Sefa Eyeoglu
88fc1e32ee
Merge pull request #201 from Scrumplex/fix-instancetype-reregistration 2022-02-26 14:37:27 +01:00
Sefa Eyeoglu
c9bf7f9896
fix: load instances no matter their instance type 2022-02-26 00:31:37 +01:00
flow
c4f4e9e620 merge upstream and resolve conflicts 2022-02-25 13:43:27 -03:00
Ezekiel Smith
f2b850ad20
Merge pull request #183 from timoreo22/fix-versions-segfault
Fixed segfault in mod download
2022-02-26 01:55:11 +11:00
Ezekiel Smith
ccc27d1b7c
Merge pull request #192 from Scrumplex/refactor-remove-legacy-instances
Drop legacy instances
2022-02-26 01:54:15 +11:00
flow
40a9828fba
fix: improve readability and set ok button as disabled by default 2022-02-23 19:17:33 -03:00
flow
04840d0638
fix(ui): add translation func to text in the confirm dialog 2022-02-23 14:44:55 -03:00
flow
38f12c50f7
Merge branch 'PolyMC:develop' into develop 2022-02-23 14:34:51 -03:00
Sefa Eyeoglu
ca8b62291f
fix: use legacy data path if it exists 2022-02-23 16:22:53 +05:30
txtsd
69d01204e0
Implement PR suggestions 2022-02-23 16:22:53 +05:30
txtsd
1e3b896fda
Replace layouts with LAUNCH_PORTABLE 2022-02-23 16:22:23 +05:30
Sefa Eyeoglu
e2c2a38005
Merge pull request #186 from theglitch76-forks/develop
Enable WSL support
2022-02-22 08:23:57 +01:00
flow
f8b0d6453a
fix: sort mod list in confirmation dialog 2022-02-21 23:25:33 -03:00
flow
0102e91940
feat: add confirm dialog for installing mods
When selecting multiple mods at once, it can become hard to keep track
of which ones you selected.

To address this, a dialog is now displayed
when you finish selecting the mods to download, showing you which ones
you selected and their filenames. From there, you can either accept it
and download the mods, or you can cancel it and go back to the mod
selection dialog.
2022-02-21 23:09:14 -03:00
flow
1004211a66
fix(ui): change text in selection button when there's no valid version 2022-02-21 22:52:50 -03:00
flow
f5cf4eb45f
feat(ui): allow downloading multiple mods from CurseForge at once 2022-02-21 21:53:21 -03:00
flow
512395e3f1
feat(ui): allow downloading multiple mods in Modrinth at once 2022-02-21 21:34:53 -03:00
flow
9c6727e27f
feat: change task container in ModDownloadDialog to a QHash
Previously, we used a unique_ptr to a ModDownloadTask to keep track of
the selected mod to download when we accepted the dialog.

In order to allow multiple mods to be selected at once for download,
this has been changed to a QHash where the key is the mods name (since
it doesn't seem right to allow for multiple versions of the same mod to
be downloaded at once), and the value is a pointer to the corresponding
ModDownloadTask.
2022-02-21 21:34:06 -03:00
Sefa Eyeoglu
624ab25cd4
refactor: set default InstanceType to OneSix 2022-02-21 22:59:07 +01:00
Sefa Eyeoglu
a70d1f1a91
refactor: drop LegacyInstance 2022-02-21 22:30:44 +01:00
Sefa Eyeoglu
3059f13011
refactor: drop migration for pre-component instances 2022-02-21 22:11:10 +01:00
swirl
6d1f9d4d02
fix 2022-02-21 12:44:34 -05:00
swirl
da70122d9c
remove notifications 2022-02-20 19:23:08 -05:00
Glitch
8556ff5eac Revert ba6a97557a
Let evil win.
2022-02-20 15:00:23 -06:00
timoreo
adacab3349
Fixed segfault when closing window while version info download is still going 2022-02-19 15:17:45 +01:00
Sefa Eyeoglu
80a29af497
fix: typo for account disabled error messages 2022-02-18 19:18:29 +01:00
Sefa Eyeoglu
c5d9944993
feat(accounts): interrupt MSAStep when client ID doesn't match 2022-02-18 12:32:24 +01:00
Sefa Eyeoglu
14717396eb
feat(accounts): save client id in MSAStep 2022-02-18 12:32:24 +01:00
Sefa Eyeoglu
9c71f364d2
feat(accounts): add disabled account state 2022-02-18 12:32:24 +01:00
Sefa Eyeoglu
be910374dc
feat(accounts): support msa-client-id value 2022-02-18 12:32:24 +01:00
LennyMcLennington
12c8a04458
Merge pull request #173 from Scrumplex/fix-application-cpp
fix: improve code readability in Application.cpp
2022-02-17 23:43:59 +00:00
swirl
7b4b997a34
Merge remote-tracking branch 'upstream/develop' into develop 2022-02-17 15:47:43 -05:00
Sefa Eyeoglu
6b4469c6cc
fix: combine errors if --launch is missing 2022-02-17 15:29:09 +01:00
Sefa Eyeoglu
037b0d7190
fix: improve code readability in Application.cpp 2022-02-16 17:33:28 +01:00
Lenny McLennington
929a035f96
Revert "make wsl work"
This reverts commit 5779f20fa1.
2022-02-13 18:47:54 +00:00
swirl
5779f20fa1
make wsl work 2022-02-13 13:35:15 -05:00
Sefa Eyeoglu
a309f4e721
fix: MSA = Microsoft Authentication 2022-02-12 21:27:35 +01:00
Sefa Eyeoglu
159d868b77
fix(ui): explain why 'Add Microsoft' might be disabled 2022-02-12 21:27:35 +01:00
Sefa Eyeoglu
0854e83ce4
feat: implement MSA client id override
Closes #11
2022-02-12 21:27:32 +01:00
Sefa Eyeoglu
bb02226870
feat(ui): add custom MSA client id setting 2022-02-12 21:05:42 +01:00
Sefa Eyeoglu
70a055bc27
Merge pull request #143 from Scrumplex/refactor-link-nbtpp-static 2022-02-12 17:47:38 +01:00
Sefa Eyeoglu
61db1c46be
fix: use our own prefix for rainbow lib 2022-02-12 17:02:54 +01:00
LennyMcLennington
7d912726d0
Merge pull request #134 from glowiak/patch-2
OpenBSD support and slackware build instructions
2022-02-12 03:30:24 +00:00
swirl
3cf81faabc
change "loader mods" to "mods"
Closes: #128
2022-02-11 22:09:47 -05:00
LennyMcLennington
bcfa3246cb
Merge pull request #146 from dada513/macos_application_support
[MACOS] Move app data to Application Support
2022-02-11 13:52:56 +00:00
Sefa Eyeoglu
f67871e79e
refactor(build): link nbt++ statically 2022-02-11 14:24:01 +01:00
LennyMcLennington
2341212337
Merge pull request #150 from dada513/fix_kwin_icon
Fix freedesktop icons. Again
2022-02-11 12:05:01 +00:00
LennyMcLennington
53ea261350
Merge pull request #151 from dada513/rss_not_begone
Re-add RSS feed with the new PolyMC website
2022-02-11 12:03:29 +00:00
LennyMcLennington
a17e5d0a4d
Merge pull request #129 from timoreo22/fix-mod-name
Fixed the download menu putting the wrong name
2022-02-10 23:41:27 +00:00
Sefa Eyeoglu
8d2e7db178
fix: update link to translations platform 2022-02-10 14:55:52 +01:00
dada513
13d41bde7f
remove unused parsing of dates (bloat) 2022-02-10 13:57:18 +01:00
dada513
d42d6fe25a
fix rss format 2022-02-10 13:57:06 +01:00
dada513
beaac54dc9
Merge remote-tracking branch 'polymc/develop' into rss_not_begone 2022-02-10 13:14:30 +01:00
dada513
70f8cb81b8
Initial RSS re-add and removed hardcoded strings 2022-02-10 13:14:25 +01:00
dada513
f8ca6b4867
Revert "refactor: remove news feed"
This reverts commit 361ce7818e.
2022-02-10 12:55:07 +01:00
Lenny McLennington
35d2ae3ef7
Remove drama from readme and remove mmc discord link 2022-02-10 11:21:25 +00:00
dada513
619fcbfabf
rename LAUNCHER_DESKTOPNAME to LAUNCHER_DESKTOPFILENAME 2022-02-10 08:56:34 +01:00
dada513
292869141f
Merge remote-tracking branch 'polymc/develop' into fix_kwin_icon 2022-02-10 08:05:17 +01:00
dada513
ca9929214d
Merge remote-tracking branch 'polymc/develop' into macos_application_support 2022-02-10 08:04:59 +01:00
dada513
d72c511131
Revert "Fix freedesktop icons" and fix icon on kwin 2022-02-10 07:46:41 +01:00
Victor
d2f86cbf32
Move app data to Application Support 2022-02-09 12:23:18 +01:00
Lenny McLennington
5284d604ef
translations 2022-02-09 00:02:51 +00:00
glowiak
dba9199e58
Support OpenBSD in UpdateController.cpp 2022-02-06 09:35:48 +01:00
glowiak
e806903d7e
Support OpenBSD without patches 2022-02-06 09:32:55 +01:00
timoreo
86935068f5
Fix wrong mod file name 2022-02-04 16:24:19 +01:00
swirl
076efc4cb2
Merge branch 'update-quazip' of git://github.com/Scrumplex/PolyMC into develop 2022-02-03 14:14:12 -05:00
swirl
2177aa2a6b
Merge branch 'offline-mode-accounts' of git://github.com/NyaomiDEV/PolyMC into feature/offline_mode 2022-02-03 13:54:27 -05:00
swirl
e2952061af
Merge branch 'feature/download_mods' of git://github.com/timoreo22/PolyMC into feature/download_mods 2022-02-03 13:45:20 -05:00
swirl
f5358aa1ca
Merge branch 'develop' into feature/close_after_launch 2022-02-03 13:43:44 -05:00
swirl
3d3f9a8609
make closeAfterLaunch good 2022-02-03 12:50:24 -05:00
Petr Mrázek
3ca661127f NOISSUE Add missing tooltip for Export Instance action 2022-02-03 18:09:51 +01:00
swirl
407f9d9ef0
Merge remote-tracking branch 'upstream/develop' into develop 2022-02-02 11:17:04 -05:00
swirl
bff683e6d4
Merge pull request #108 from redstrate/improve_about_page
Improve the About page
2022-02-02 09:17:30 -05:00
timoreo22
11841c47e6
Double braindead combo 2022-02-01 22:23:34 +01:00