Commit Graph

454 Commits

Author SHA1 Message Date
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
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
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
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
Sefa Eyeoglu
c8fec556c0
Merge pull request #305 from flowln/gui_changes 2022-03-20 13:39:12 +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
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
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
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
flow
a3d7ad731d
fix missing translation strings
my mistake, sorry! ToT
2022-03-11 18:43:17 -03:00
dada513
d814e21f0d
add matrix button 2022-03-08 18:41:23 +01: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
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
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
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
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
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
a70d1f1a91
refactor: drop LegacyInstance 2022-02-21 22:30:44 +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
timoreo
adacab3349
Fixed segfault when closing window while version info download is still going 2022-02-19 15:17:45 +01:00
swirl
7b4b997a34
Merge remote-tracking branch 'upstream/develop' into develop 2022-02-17 15:47:43 -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
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
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
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
Sefa Eyeoglu
a8089b76c0
fix: bring back instance exports 2022-01-31 21:40:59 +01:00
Sefa Eyeoglu
81c72c2038
refactor: bring back methods that need to be reimplemented 2022-01-31 21:40:59 +01:00
Sefa Eyeoglu
efa414c442
refactor: initial migration to QuaZip 1.2
Let's move off our custom QuaZip. In the olden times we needed the
custom version of QuaZip, as it was basically unmaintained and on
SourceForge (eww). But nowadays it's maintained and on GitHub. See
new GitHub page: https://github.com/stachenov/quazip
2022-01-31 21:40:59 +01:00
timoreo
aa2c27bf69
Update to Modrinth API V2 2022-01-31 17:18:11 +01:00
Joshua Goins
0211ee3ef1 Add "PolyMC Contributors" to Credits section
This also adds a link to the PolyMC Contributors page on Github.
2022-01-31 09:09:58 -05:00
Petr Mrázek
2cf04d034a
Merge pull request #4300 from Ghosty141/feature/screenshot_copy
GH-4044 Implemented copy screenshots to the clipboard
2022-01-30 16:11:47 +01:00
bexnoss
e0a04c5031 Lock offline mode support behind insertion of at least one Minecraft account
Co-Authored-By: Naomi Calabretta <tony0000.ac@gmail.com>
2022-01-30 02:42:29 +01:00
bexnoss
9d23ac562f Add offline mode support 2022-01-30 02:35:56 +01:00
swirl
0065a29901
Close after Launch setting 2022-01-29 19:04:44 -05:00
timoreo
efc44c56a6
Fix button being present in other pages 2022-01-28 19:32:42 +01:00
timoreo22
8b790a6dd9
Merge branch 'PolyMC:develop' into feature/download_mods 2022-01-28 18:12:35 +01:00
Joshua Goins
c1aaf89baa Improve the About page
Improves #106. This more clearly marks the original MultiMC contributors,
and now correctly hides the "Build Platform" if this is set as empty. The
version label is now moved under the "PolyMC" title so it looks just a
little bit better (and matches other applications). The copyright on the
"About" page now correctly attributes the MultiMC contributors just like on
the "License" page.
2022-01-27 19:06:07 -05:00
Joshua Goins
5ac528f141 Fix icons changing when exiting the settings window 2022-01-27 18:37:57 -05:00
swirl
33aac2985a
Merge pull request #105 from Scrumplex/rss-begone
Remove news
2022-01-27 17:00:15 -05:00
Sefa Eyeoglu
361ce7818e
refactor: remove news feed
Closes #63
2022-01-27 22:59:20 +01:00
swirl
02889b7a11
Merge pull request #67 from PolyMC/feature/no_paste_ee
Full replacement of paste.ee
2022-01-26 17:40:49 -05:00
Lenny McLennington
0eff21a4f1
Validate Pastebin URL with regex 2022-01-26 00:34:02 +00:00
timoreo
1d0e6bf453
Changed modrinth author data to not be a list 2022-01-24 07:23:01 +01:00
timoreo
a2d88f6df4
Fixed spacing 2022-01-24 07:12:19 +01:00
swirl
019c77f9f7
Merge pull request #52 from oynqr/develop
Default to system locale language
2022-01-23 15:00:26 -05:00
Sefa Eyeoglu
dd76fb0ec7
feat(MSALogin): add open page & copy code button
Closes #55
2022-01-20 21:04:48 +01:00
timoreo
6d22794cf9
Reduce spaghettiness 2022-01-19 09:47:09 +01:00
Lenny McLennington
b50e584369
PasteUpload task changed to use 0x0.st's protocol
- Modified PasteUpload task to upload the log file to 0x0.st and other
  services with the same protocol.

- Modified Paste settings UI to allow the user to select a custom paste
  URL, simplified the settings page code.
2022-01-19 08:27:26 +00:00
timoreo
affc2521aa
Various fixes 2022-01-18 12:28:55 +01:00
Philipp David
2dd2555a63
Update selected language automatically 2022-01-17 09:52:04 +01:00
Lenny McLennington
55597b458c
Revert "Merge pull request #50 from bexnoss/offline-mode"
This reverts commit b4f750e7db, reversing
changes made to b19e315615.
2022-01-17 03:45:47 +00:00
swirl
81fe41a038
Default to colored icons, update copyright
Closes: #74
2022-01-16 12:03:30 -05:00
timoreo
975f77756d
Added curseforge selection 2022-01-16 11:20:21 +01:00
timoreo
621e0ba4a8
Added smart file selection
This might fail in a few special cases
2022-01-15 10:25:24 +01:00
timoreo
f6de472da2
Added a no version message 2022-01-15 09:06:48 +01:00
timoreo
4b37c46889
Filtering per mod loader & mc version 2022-01-15 08:51:47 +01:00
swirl
a606b47a22
pastebin URL app setting 2022-01-14 18:30:02 -05:00
swirl
a62155c1c9
preliminary stuff for paste.ee removal 2022-01-14 18:20:06 -05:00
timoreo
2896f70cd8
Removing copyrights 2022-01-14 22:07:54 +01:00
timoreo
1a8c972aef
Fixed icons
Also having a mod loader is now enforced
2022-01-14 20:22:15 +01:00
bexnoss
cdaa397dcf Reword offline mode disclaimer 2022-01-14 14:19:31 +01:00
timoreo
9e6fa8f29a
Added the downloading of the mods 2022-01-14 12:47:18 +01:00
timoreo
4d599eb118
Added modrinth icon 2022-01-14 10:51:44 +01:00
timoreo
4e9039be2d
Start of mod downloading 2022-01-14 09:56:27 +01:00
bexnoss
395e265564 Add offline mode disclaimer 2022-01-14 00:01:05 +01:00
bexnoss
6ecc8c5496 Remove unnecessary license header 2022-01-12 14:57:32 +01:00
bexnoss
a1ff3b1ee3 Add offline mode support 2022-01-12 14:26:02 +01:00
bexnoss
d4b522b6cb Add offline mode UI 2022-01-12 10:36:26 +01:00
swirl
1d8196e11a
More rebranding
Closes: #39

Mostly done with rebranding now. We just need to translate some services
to PolyMC.
2022-01-10 12:47:35 -05:00
swirl
e50d07f791
remove patreon stuff
Closes: #22

Update to 1.0.5

Remove "Forking/Redistribution" tab in About (why is it even there?)

Metainfo now corresponds to version

add discord

Completely removed Patreon.
2022-01-09 13:51:46 -05:00
dada513
fa98ed3ccd
Merge remote-tracking branch 'upstream/develop' into upstream_update 2021-12-31 18:05:40 +01:00
Petr Mrázek
9579231ccc NOISSUE fix build and change how NetJob is used
Feed it network upfront...
2021-12-31 05:27:59 +01:00
Janrupf
be029ab360 GH-4299 Fix screenshot upload 2021-12-29 19:45:24 +01:00
swirl
f25a9bc103
Completely remove Google Analytics library 2021-12-29 10:37:09 -05:00
CreeperzEdge
95c9a6d8f4 Use correct title on Java check during setup 2021-12-23 00:53:02 +11:00
Lenny McLennington
18a931eaa9
Merge remote-tracking branch 'upstream/develop' into develop 2021-12-20 03:01:41 +00:00
Lenny McLennington
e6246a9306
Move MSA Client ID to the same place as the others
MSA Client ID has been moved to CMakeLists.txt, and defaults to the
Client ID for the PolyMC application.

Removed secrets/notsecrets library, replace with (temporary?)
program_info subdirectory.
2021-12-20 02:57:13 +00:00
Petr Mrázek
6f6fa6955a
Merge pull request #4295 from kb-1000/instanceview-unused-code
NOISSUE Remove some unused code from InstanceView
2021-12-19 18:43:13 +01:00
Jamie Mansfield
06bedee835
NOISSUE Add license headers to source files created by me 2021-12-18 00:14:25 +00:00
Petr Mrázek
7d047f9223 NOISSE add a shortcut to the loaders mods to main window 2021-12-12 22:39:25 +01:00
Petr Mrázek
90a62c429a NOISSUE remove the hardcoded blocking of Forge installs
Doesn't make it work, but makes it theoretically possible.
2021-12-06 22:07:41 +01:00
Petr Mrázek
70d400f205 NOISSUE party hat for a party cat
On the 30th of November, it's been 10 years since the first
(documented) release of MultiMC. Party hats for everyone :)
2021-12-05 23:26:04 +01:00
Petr Mrázek
3c46d8a412 GH-4071 Heavily refactor and rearchitect account system
This makes the account system much more modular
and makes it treat errors as something recoverable,
unless they come directly from the MSA refresh token
becoming invalid.
2021-12-04 01:18:05 +01:00
Ghosty
a97d0a36f4 NOISSUE Copy Image is not shown if the selection is > 1 2021-12-03 16:29:28 +01:00
Ghosty
e9c52ec696 NOISSUE Added Copy File(s) feature for the screenshot page
- Ctrl+C now copies the file instead of the image data
- Renamed Copy to Copy Image
2021-12-03 16:08:11 +01:00
Ghosty
75f2dab3c8 NOISSUE Implemented copy screenshots to the clipboard
- Added context-menu entry
- Ctrl+C keybind works as well
- If multiple screenshots are selected, only the first one gets copied
2021-12-03 03:11:53 +01:00
kb1000
eb1091a5f4
NOISSUE Remove some unused code from InstanceView 2021-12-01 21:21:05 +01:00
Petr Mrázek
285188ea53 GH-4071 handle network errors when logging in with MSA as 'soft'
This makes the tokens not expire when such errors happen.

Only applies to MSA, not the XBox and Mojang steps afterwards.
Further testing and improvements are still needed.
2021-11-28 18:42:01 +01:00
Petr Mrázek
b258eac215 NOISSUE continue reshuffling the codebase 2021-11-22 03:55:16 +01:00