Skip to content

Improve Detail View Categories, Add Update Switch, Fix Navigation Exception #477

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 6 commits into from
Jun 4, 2025

Conversation

NBA2K1
Copy link
Contributor

@NBA2K1 NBA2K1 commented Jun 2, 2025

This PR introduces three distinct improvements and bug fixes to enhance the user experience and app stability:

1. Change Button Behavior of "Edit Categories" Inside a Library Item's Detail View

(manga_detail_view.dart)

  • Renamed the "Edit Categories" button to "Set Categories".
  • The button now opens the category select menu instead of the category edit screen.
  • This change makes it easier for users to quickly update an item's category (e.g., from "Watching" to "Finished") directly from the detail view.
  • Previously, users had to exit the detail view and take multiple steps in the library view to change the category.
     

2. Add Switch to Automatically Check for Updates in Settings > About

(settings.dart; about_screen.dart; check_for_update.dart)

  • Introduced a toggle in the app settings allowing users to enable or disable automatic update checks.
  • Default behavior changed from always checking to letting the user choose.
  • Added corresponding translations for this new setting.
     

3. Fix Exception: _AssertionError in NavigationRail

(main_screen.dart)

  • Resolved a crash caused by an out-of-bounds selectedIndex when customizing the navigation and hiding certain items.
  • Ensured the NavigationRail component now verifies that selectedIndex is within a valid range
  • Fixes the following error:
Exception has occurred.
_AssertionError ('package:flutter/src/material/navigation_rail.dart': Failed assertion: line 112 pos 15: 'selectedIndex == null || (0 <= selectedIndex && selectedIndex < destinations.length)': is not true.)

4. Fixes #478

  • Fully use join function instead of hacks like fixSeparator, which lead to issues as seen here.

NBA2K1 added 6 commits June 2, 2025 01:53
- Use the passed parameter instead of widget.manga
- refactored the method a little to make it more readable.
The Button "Edit Categories" (now called "set Categories"), now opens the category select menu instead of the category edit menu.

This makes more sense in the library item detail view. For example you have the categories "Watching" and "Finished". You just finished an anime and you want to change its category directly in the detail view. Now you can.

Before you had to exit the detail view, go in to the library view, long press the item, tap the category button and then edit it there.
Instead of checking for updates by default, the user now has the choice to disable automatic app update checks.
When customizing navigation, toggling one item off.

```

Exception has occurred.
_AssertionError ('package:flutter/src/material/navigation_rail.dart': Failed assertion: line 112 pos 15: 'selectedIndex == null || (0 <= selectedIndex && selectedIndex < destinations.length)': is not true.)

```
@kodjodevf kodjodevf merged commit 0960a5b into kodjodevf:main Jun 4, 2025
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.

Wrong download folder
2 participants