Commit Graph

326 Commits

Author SHA1 Message Date
dada513
2847cefff7
Add cursefrog key override 2022-05-20 19:56:27 +02: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
Sefa Eyeoglu
943090db98
refactor: allow tracking multiple mod loaders 2022-05-19 08:49:27 +02:00
Sefa Eyeoglu
8e9f1bcf18
fix: remove unnecessary Qt version checks 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
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
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
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
flow
a6d2c5e181
fix: better hack for icons that cant be natively scaled to 48x48 2022-05-16 14:35:01 -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
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
78cf0c73c8
fix: always show project url, if available 2022-05-15 20:38:27 +02: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
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
Sefa Eyeoglu
8dd68580a6
Merge pull request #528 from flowln/guo_ext 2022-05-13 18:17:40 +02:00
Kenneth Chew
3aea639fe4
Add UI for miscellaneous instance setting overrides 2022-05-12 17:11:06 -04:00
timoreo22
649b8ac7c6
Merge pull request #537 from PolyMC/stable
Merge stable into develop
2022-05-09 18:06:56 +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
Ryan Cao
22f5128e39
adopt changes from #497 remapped 2022-05-08 15:22:50 +08: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
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
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
Kenneth Chew
ac405aa564
Remove old macOS data migration code 2022-04-25 19:57:47 -04:00
Sefa Eyeoglu
52454ca77b
Merge pull request #480 from dschemp/develop 2022-04-25 14:26:10 +02: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
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
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
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
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
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
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
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
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
Sefa Eyeoglu
a42d2afcee
Merge pull request #392 from flowln/mod_filter 2022-04-16 18:03:03 +02: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
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
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
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
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
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
Sefa Eyeoglu
89125fde22
refactor: switch Quilt mappings to hashed MojMap 2022-04-09 14:56:07 +02: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
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
5fb096d7b9
Merge pull request #345 from Scrumplex/handle-incompatible-java 2022-04-04 21:01:49 +02:00
Jamie Mansfield
b6e722a048
BuildConfig: Make Technic API base URL and build constants 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
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
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
Ezekiel Smith
382548e0a7
Merge pull request #355 from dada513/flatpak_properly
Fix flatpak properly
2022-04-01 21:03:14 +10:00
Sefa Eyeoglu
9202996c62
fix(i18n): remove brand names from translations 2022-03-29 15:25:21 +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
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
Sefa Eyeoglu
ea60e48d9d
chore: add license header
chore: add license header
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
b1af689546
Add quit launcher after game stops option (Steam Deck)
lecense
2022-03-27 14:50:47 +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
Sefa Eyeoglu
062fc79286
Merge pull request #298 from Scrumplex/fix-i18n
Fix translatable strings
2022-03-21 14:21:06 +01: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
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
Sefa Eyeoglu
a160bd0062
chore: add license header to files I modified 2022-03-19 12:46:56 +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
flow
ec66c8fd3d
fix(ui): remove paste.polymc.org 2022-03-18 14:21:42 -03:00
flow
da43ed8ce1 fix silly mistakes and merge upstream 2022-03-18 07:54:47 -03: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
a3d7ad731d
fix missing translation strings
my mistake, sorry! ToT
2022-03-11 18:43:17 -03: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
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
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