Age | Commit message (Collapse) | Author |
|
When #87 was merged an unnoticed problem slipped in where if Viper was
running in a version that did not support auto-updates we would never
auto-update Northstar. Now that's fixed, and the nsupdate option is
completely implemented.
I also took the liberty of removing the auto-update option in the
settings page if Viper can't auto-update anyway, as it's useless if
that's not possible.
|
|
It actually saves settings, loads them properly and everything...
|
|
Albeit only frontend functionality, it doesn't actually save your
settings, it simply loads them, and Settings.get(), allows you to
convert them to a format that can be used to save settings.
|
|
I added descriptions and options for excluding files.
|
|
This only has the actual UI for the settings page in place, no actual
functionality has been implemented yet. I made several changes not
directly related to the settings page, such as changes the CSS color
variables to use RGB, as to easily add an alpha channel to colors. I
also changed the way the Browser is toggled in some respects and many
other changes that makes it easy to re-use the browser code to create
the settings UI
|
|
Since apparently dragleave and dragenter don't quite work as intended we
have to resort to this obscure method which should work just fine on the
user's end.
|
|
If you closed the file selection window after clicking the "Install Mod"
button it would improperly try to install "nothing", and therefore never
re-enable the buttons, this is now fixed.
|
|
It'll notify of incorrectly formatted mods, it'll also notify on errors
and on success.
|
|
There used to be an error where if you spawned two toasts simultaneously
they'll get the same ID, this fixes that by upping the ID by one if the
ID is already taken.
|
|
No functional toasts yet, just the code for them, I'll add the actual
toasts later...
|
|
It now only does it if there's currently no results in the browser, aka
an empty search or it has yet to be loaded once before. Loading it every
time would cause lag.
|
|
Before this commit, the Thunderstore request would be sent on
application startup, now instead, it only does it when someone actually
clicks the "Find Mods" button, which should intern decrease load on
Thunderstore's end. Not that it mattered in the grand scheme of things,
it was just sort of unneeded.
|
|
|
|
Also fixes section buttons not being able to be clicked.
|
|
We now directly check the manifest file info as well therefore in all
cases even if the folder name for the mod is completely obscure, we
should now finally still get an installed status, both on removal and
install.
|
|
|
|
If a developer for some reason decides to put their mod inside mods/
instead of putting it inside a folder in mods/, it used to fail the
install, now that's fixed.
However since there's no folder to directly copy the name from we take
it from the manifest.json provided by Thunderstore.
It of course also has the proper status in the browser UI
(update/reinstall etc)
|
|
I think? I don't know how it was originally, currently now you can drag
on the top most of the window and in the left most, unfortunately not
inside the various pages.
It would probably be possible to do that, but I've not made it do as
such, and if it needs to be changed it won't be me doing it.
|
|
This should fix the window drag not working, however I cannot test that.
As my WM doesn't support it, a Windows contributor will have to test it.
I also added an info button that opens the mod's page in your web
browser, this button is of course localized, along with that I localized
the placeholder in the search input.
There's also a few general aesthetic changes, like adding a tiny border
around #modsdiv and #browser.
|
|
|
|
I have no clue if 50 packages is too small or too, big, we'll adjust
this the more mods that arrive. I also made the browser auto scroll to
the top when closed, it looks far better.
|
|
If the folder name was different from the mod name it wouldn't properly
update the "Install" text to "Re-Install" albeit it'd work when you
reload the front.
|
|
|
|
I also fixed the archive not being extracted properly for some reason,
the setTimeout() seems to solve it, no clue if it needs to be adjusted
in the future or replaced with something that works 100% of the time,
I'm not even quite sure why it happens in the first place.
|
|
The normalizer function didn't quite account for everything, which, it
still doesn't, however given that I hope most developer don't use
obnoxious characters in their mod names this should be fine.
|
|
-1px should be enough, however to make sure I made it -5px instead.
|
|
|
|
This should be future proof, however I'm not sure how well it'll handle
thousands of mods to search through. It should do it somewhat well, but
idk. We'll see, I'll perhaps implement a simpler search function in the
future instead of using Fuse if it becomes a problem.
|
|
I forgot about these before...
|
|
These should've been here from the start, and I don't know why I didn't
add them in the start, I'm very dumb.
|
|
When a new mod has been installed through the browser UI it's button is
changed from "Install" to "Re-Install" instantly. We also now disable
modding related buttons when updating NS, or when installing mods. This
should prevent issues.
|
|
This should work for all mods, assuming that all mods come packages the
same, aka, in a Zip, with mods/<mod> in it. Which from what I know they
do.
|
|
This both changes the ones in src/assets and src/app/icons
|
|
This also fixes mods not showing up after first install of NS
|
|
When changing the game path by clicking the button you shouldn't be told
it can't find the game and you've to select one manually, as you know
that already. More importantly, if it could be found automatically it'll
just not do anything.
With this change I also changed the "gui.setpath" string to be more
logical, and to make it clear what it does.
|
|
* Edge case
* Alert user only when automatic detection failed
* extra info on not found message
* support for [Free/Open]BSD
Co-authored-by: 0neGal <mail@0negal.com>
|
|
|
|
|
|
To show the loading simply do Browser.loading(), when a BrowserEl() is
made it auto removes it. The loading and BrowserEl's will fade into
view instead of popping in instantly.
And then now there's a tiny close button, as it may not be obvious you
can click the dark overlay or click Escape.
|
|
|
|
You can either click "Escape" or simply click on the darkened background
and it'll then close it. Ideally the fallback icon should never be
shown, and it is more for testing.
I also added a search bar that does nothing currently.
|
|
Only frontend stuff, nothing that queries Thunderstore.
|
|
Adding documentation/comments
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|