Skip to content

Fixed potential errors on the mod browser that copilot caught when reviewing code on PR #80 - #82

Merged
inmny merged 3 commits into
WorldBoxOpenMods:masterfrom
KhromeHearts:feature/mod-hub
Oct 19, 2026
Merged

inmny merged 3 commits into
WorldBoxOpenMods:masterfrom
KhromeHearts:feature/mod-hub

Conversation

@KhromeHearts

Copy link
Copy Markdown
Contributor
  • Follow up fixes based on Copilot’s review of my last PR
  • Mods that aren’t NeoModLoader mods are now rejected instead of being marked as installed
  • Fixed list/browser refresh issues after downloads or reloads
  • Fixed Workshop descriptions disappearing unexpectedly after being viewed once
  • Fixed thumbnail images getting removed while still visible
  • Small Mod Browser and UI fixes (tab/window behavior and dependency updates after deleting a mod)
  • Tiny tweaks to the ReadME

Copilot AI balanced review requested due to automatic review settings October 18, 2026 20:32

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Stale declaration references can break mod-info actions, inactive rows retain thumbnails, and updated mods can lose their Workshop URL.

3 open issues
What changed in this PR

Follow-up fixes improve the Mod Browser’s download handling, refresh behavior, and thumbnail retention within NeoModLoader.

Changes:

  • Reject unsupported mods and update installation and dependency state.
  • Improve browser refreshes, thumbnail ownership, and Workshop query cleanup.
  • Correct list-window initialization and adjust README presentation.
File Description
utils/​WorkshopThumbnails.cs Protect owned thumbnails from eviction.
ui/​prefabs/​ModBrowserRow.cs Register thumbnail ownership per row.
ui/​ModBrowserWindow.cs Guard trending loads and refresh download status.
services/​ModWorkshopServiceWindows.cs Dispose description query results.
services/​ModWorkshopServiceUnix.cs Dispose description query results.
services/​ModManagerService.cs Rebuild dependencies after deletion.
services/​ModDownloadService.cs Validate mod types and replace unloaded declarations.
resources/​commit Update the recorded commit.
README.md Emphasize update guidance and adjust formatting.
api/​AbstractListWindow.cs Initialize the window identifier.

Review effort: Balanced

Comment on lines +185 to +186
WorldBoxMod.AllRecognizedMods.Remove(recognized);
WorldBoxMod.AllRecognizedMods[mod] = ModInfoUtils.isModDisabled(mod.UID) ? ModState.DISABLED : state;
? current
: ModState.FAILED;
WorldBoxMod.AllRecognizedMods.Remove(recognized);
WorldBoxMod.AllRecognizedMods[mod] = ModInfoUtils.isModDisabled(mod.UID) ? ModState.DISABLED : state;
age.text = DescribeAge(DateTime.UtcNow - pListing.Updated);
thumbnail.sprite = InternalResourcesGetter.GetIcon();
WorkshopThumbnails.Request(pListing.PreviewUrl, sprite =>
WorkshopThumbnails.Request(pListing.PreviewUrl, this, sprite =>
@inmny
inmny merged commit 0d87dc7 into WorldBoxOpenMods:master Oct 19, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants