Age | Commit message (Collapse) | Author |
|
|
|
|
|
Far from done, but this pretty much splits everything inside
`src/app/main.js` into separate files.
|
|
|
|
Ew! Bad! No! Bad! Bad!
|
|
This time it's inside the GUI and not just random output.
|
|
This means if you dont have any internet, but there's a cached requests,
it'll use that, even if it was cached a very long time ago. This just
attempts to eliminate errors.
This can still be turned off for things where you dont want this to
happen, notably the masterserver status.
|
|
|
|
|
|
|
|
When closing a category and then re-opening the setting popup, the
categories shouldn't remain closed!
|
|
If you're not clicking inside the `#browser` popup, then the preview and
filter popups would stay open, until you do so, or something else causes
them to close.
This fixes that.
|
|
Its now been split into 2, requests.js and releases.js, the latter
simply gets relevant info from GitHub release pages. The prior however
gives simple functions for doing `GET` requests, and caching the result,
and then transparently it'll use that cache when you request it next
time. On top of this, some requests made by the renderer will now also
use this, and this in turn ends up making loading the mod browser much
faster. As instead of having to request the list of packages from
Thunderstore, we can simply load the result of an old request.
The current lifetime of the cache is 5 minutes, however this can also
easily be adjusted.
This also moves the cached requests away from
<cache_folder>/viper-requests.json, and over to
<cache_folder>/Viper/cached-requests.json
|
|
If the settings popup was opened or closed through other means than
clicking the settings button itself, "Save" button or "Discord"
button, then the cog wouldn't update/rotate accordingly.
|
|
|
|
This makes opening and closing popups a little bit easier, on top of it,
it also fixes a bug where you could open the settings popup on top of
the browser popup or other popups, and it'd hide the background blur,
but still show both popups.
|
|
|
|
I will likely add more buttons in the future, but for now this is most
of the ones a user could need to repair problems.
|
|
Most of these are from back when Viper was originally started, I also
removed a few keys as they were no longer in use, but were forgotten
about, most of these are from pre-v1.0.0 aka, the old smaller UI
|
|
The `lang()` function doesn't change whatsoever, as the lang files are
flattened and are therefore identical to the before this commit.
I also cleaned up the files, and all the lang files should now all look
far more similar in order.
|
|
The mod browser before this pre-maturely thought it had loaded all the
available packages, when in fact, it'd barely started. Now this is
fixed, and you can scroll for quite some time before actually reaching
the real end of the package list.
|
|
This doesn't break the old way of detecting things, for various reasons,
but notably it'd cause more harm than good. As we still need to be able
to detect packages that haven't been converted into the new location.
|
|
|
|
|
|
|
|
|
|
Install toasts, installing overall, dependencies and so forth, all seem to be fully functional, however more bug testing is probably required to concluce whether that is actually the case or not...
This also doesn't break `src/modules/mods.js`, i.e dragging mods in to
manually install them still functions the same as always.
|
|
This means instead of showing the invididual mods inside a package, we
simply show 1 mod/package, we then use the name, description, version
and so forth from the `manifest.json` inside the package folder. Further
we now also support a local `icon.png` file, instead of relying on
remotely stored icons and trying to match names against each other.
|
|
I may or may not have missed some properties or something somewhere,
perhaps we'll see if something ends up broken in the future...
|
|
They're pretty simple to use, and automatically make themselves fit on
screen, on top of automatically disappearing and appearing of course.
I've used them a few places now, and not sure where else they can be
used, there are of course localization strings that need, well,
localization, and I'll create a PR for this on a later date.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
I also made mods with updates be placed in the top of the modlist.
|
|
When a red switch is placed besides a red button that says "Remove", it
makes it seem far more destructive to click that switch, even if it's
not, and a blue color doesn't fit in very well either (perhaps we need
more colors). And so because of all that the modlist switches are now
orange, and we can easily add more colors.
The switch colors overall are also far more vibrant now, as it looks far
better that way.
|
|
The new modlist now uses the same toggles found in the settings popup,
only here they're used to disable/enable mods. On top of this I also
fixed the "Toggle All" button not working. Forgot to change some stuff,
breaking it... oops...
|
|
We now just use a click event listener, and check through what's at the
click location, and toggle classes as needed.
|
|
Previously some outdated packages would just say "Re-Install" and not
"Update", now that's fixed, along with making the logic easier for use
in the mod list.
|
|
The current design for the installed mods is not exactly the best. And
it has been due for a redesign for quite a while, I'm finally starting
work on this.
|
|
|