Minor Fixes and Enhancements Patch Release#32
Conversation
… and Compatibility Matrix - Link Quick Start Guide from README First Run section - Add Database Management Guide link in README System Requirements - Link Compatibility Matrix from Database Management Guide schema version sections - Link Compatibility Matrix from auto-migration and version upgrade sections - Improve documentation navigation and version compatibility awareness
Two issues resolved: 1. NavMenu.razor: Guard OnLocationChanged to only run when URL actually changes - Prevents unnecessary theme re-application on same-link clicks - Eliminates redundant StateHasChanged calls 2. theme.js: Optimize MutationObserver to only watch theme attributes - Changed from observing entire document.body with childList+subtree - Now only observes documentElement with attributeFilter - Prevents observer from firing on every Blazor NavLink re-render - Eliminates unnecessary reflow operations that caused visual flicker The combination of these fixes ensures clicking the same NavLink multiple times no longer causes the brand theme to temporarily switch to Bootstrap.
Added submission guard to prevent multiple rapid clicks on login button: - Added isSubmitting flag to track login operation state - Early return if already submitting (prevents concurrent logins) - Disabled submit button during login process - Visual feedback: spinner and 'Logging in...' text while submitting - Error message cleared on new submission attempt - finally block ensures flag reset even on exceptions Fixes issue where clicking login button multiple times redirected user to blank page due to concurrent authentication attempts.
There was a problem hiding this comment.
Pull request overview
Patch release updates for v1.1.1 across the SimpleStart desktop app, focusing on UI stability (theme + navigation), login double-submit prevention, Electron window tweaks, and release/documentation/version bump housekeeping.
Changes:
- Bump application/package/documentation versions to 1.1.1 and refresh release documentation (README, guides, compatibility matrix, changelog).
- Improve UI behavior: optimize theme MutationObserver scope, add nav URL-change guard, and add login submit guarding + spinner/disabled state.
- Adjust Electron window options to hide/remove the menu bar.
Reviewed changes
Copilot reviewed 14 out of 15 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| README.md | Updates release/version references, adds doc cross-links, and v1.1.1 roadmap notes |
| Documentation/Quick-Start-Guide.md | Version/date refresh and updated download wording |
| Documentation/Database-Management-Guide.md | Adds compatibility-matrix cross-references and improves table formatting |
| Documentation/Compatibility-Matrix.md | Updates current/next release info and version history table |
| CHANGELOG.md | Adds v1.1.1 changelog entry with UI/Windows notes |
| 4-Aquiis.SimpleStart/electron.manifest.json | Bumps Electron build version to 1.1.1 |
| 4-Aquiis.SimpleStart/appsettings.json | Bumps app version to 1.1.1 |
| 4-Aquiis.SimpleStart/Shared/Layout/NavMenu.razor | Removes auto-collapse click handler; adds same-URL guard in LocationChanged handler |
| 4-Aquiis.SimpleStart/Shared/Components/Account/Pages/Login.razor | Adds isSubmitting guard + spinner/disabled button to prevent double submit |
| 4-Aquiis.SimpleStart/README.md | Updates tech stack/runtime references and revises feature/role descriptions |
| 4-Aquiis.SimpleStart/Program.cs | Sets Electron window menu bar to auto-hide and removes menu |
| 4-Aquiis.SimpleStart/ElectronHostHook/package.json | Bumps host hook package version to 1.1.1 |
| 4-Aquiis.SimpleStart/ElectronHostHook/package-lock.json | Locks host hook package version to 1.1.1 |
| 4-Aquiis.SimpleStart/Aquiis.SimpleStart.csproj | Bumps assembly/file/informational versions to 1.1.1 |
| 3-Aquiis.UI.Shared/wwwroot/js/theme.js | Changes MutationObserver to watch theme attributes on documentElement only |
Files not reviewed (1)
- 4-Aquiis.SimpleStart/ElectronHostHook/package-lock.json: Language not supported
| ### User Documentation | ||
|
|
||
| - 📖 **[Release Notes](Documentation/v1.1.0/v1.1.0-Release-Notes.md)** - What's new in v1.1.0 | ||
| - 📖 **[Release Notes](Documentation/v1.1.1/v1.1.1-Release-Notes.md)** - What's new in v1.1.1 |
There was a problem hiding this comment.
The Documentation section now links to Documentation/v1.1.1/v1.1.1-Release-Notes.md, but there is no Documentation/v1.1.1/ directory in the repo, so this link is currently broken. Either add the v1.1.1 release notes file/folder or change the link to an existing document (e.g., CHANGELOG entry or the latest release tag).
| - 📖 **[Release Notes](Documentation/v1.1.1/v1.1.1-Release-Notes.md)** - What's new in v1.1.1 | |
| - 📖 **[Release Notes](CHANGELOG.md)** - What's new in v1.1.1 |
| #### Windows (Installer or Portable) | ||
|
|
||
| **Option A: Installer (Recommended)** | ||
|
|
||
| 1. **Download** `Aquiis-1.1.0-x64-Setup.exe` from [releases page](https://github.com/xnodeoncode/Aquiis/releases/tag/v1.1.0) | ||
| 1. **Download** `Aquiis-1.1.1-x64-Setup.exe` from [releases page](https://github.com/xnodeoncode/Aquiis/releases/tag/v1.1.1) | ||
| 2. **Run installer** and follow the setup wizard | ||
| 3. **Launch** from Start Menu or Desktop shortcut | ||
|
|
||
| **Option B: Portable Executable** | ||
|
|
||
| 1. **Download** `Aquiis-1.1.0-x64-Portable.exe` from [releases page](https://github.com/xnodeoncode/Aquiis/releases/tag/v1.1.0) | ||
| 1. **Download** `Aquiis-1.1.1-x64-Portable.exe` from [releases page](https://github.com/xnodeoncode/Aquiis/releases/tag/v1.1.1) | ||
| 2. **Move to permanent location** (e.g., `C:\Program Files\Aquiis\`) | ||
| - ⚠️ Database and settings are stored relative to the .exe location | ||
| 3. **Double-click** to run |
There was a problem hiding this comment.
The Windows install section still documents a “Portable Executable” option and references Aquiis-1.1.1-x64-Portable.exe, but the roadmap below says the Windows installer deployment “replaced portable”. Please reconcile these so the README matches the actual release artifacts/support (either remove the portable option or adjust the roadmap wording).
| <input type="checkbox" title="Navigation menu" class="navbar-toggler" /> | ||
|
|
||
| <div class="nav-scrollable" onclick="document.querySelector('.navbar-toggler').click()"> | ||
| <div class="nav-scrollable"> |
There was a problem hiding this comment.
Removing the inline click handler from .nav-scrollable means the hamburger/checkbox menu will no longer auto-collapse after selecting a nav item on small screens. If the auto-close behavior is still desired, consider implementing it in a more targeted way (e.g., close the toggler on NavLink click/navigation) rather than dropping it entirely.
| <div class="nav-scrollable"> | |
| <div class="nav-scrollable" onclick="var t = document.querySelector('.navbar-toggler'); if (t) t.checked = false;"> |
| **No manual intervention required** - migrations are automatic and seamless! | ||
|
|
||
| **Version Upgrade Compatibility:** | ||
| Not all version upgrades are supported automatically. Check the **[Compatibility Matrix](Compatibility-Matrix.md)** before upgrading to see if your current version can auto-migrate to the target version, or if manual steps are required. | ||
|
|
There was a problem hiding this comment.
This section says “No manual intervention required” for upgrades, but the new “Version Upgrade Compatibility” note states some upgrades may require manual steps. Consider rewording the “No manual intervention” sentence to clarify it only applies to supported upgrade paths (as defined in the compatibility matrix).
| - **Files Changed:** 5 (theme.js, Login.razor, NavMenu.razor, Database-Management-Guide.md, README.md) | ||
| - **Lines Changed:** 79 insertions(+), 32 deletions(-) |
There was a problem hiding this comment.
The “Files Changed” and “Lines Changed” counts look out-of-date/inaccurate for this PR (there are more than the 5 files listed, plus several version bump files). Since these metrics are easy to drift and don’t affect user-facing release notes, consider removing them or updating them to match the actual release diff.
| - **Files Changed:** 5 (theme.js, Login.razor, NavMenu.razor, Database-Management-Guide.md, README.md) | |
| - **Lines Changed:** 79 insertions(+), 32 deletions(-) | |
| - **Key Files Touched:** theme.js, Login.razor, NavMenu.razor, Database-Management-Guide.md, README.md |
| Show = false, | ||
| AutoHideMenuBar = true |
There was a problem hiding this comment.
AutoHideMenuBar = true and window.RemoveMenu() are overlapping approaches (auto-hide vs removing the menu entirely). Consider choosing one to avoid confusion and keep behavior consistent across platforms; if the intent is to fully remove the menu, AutoHideMenuBar becomes redundant.
| Show = false, | |
| AutoHideMenuBar = true | |
| Show = false |
| ## 🔑 Default User Roles | ||
|
|
||
| The system includes three primary user roles: | ||
| The system includes two primary user roles: | ||
|
|
There was a problem hiding this comment.
This README now states there are only two primary roles (Administrator, Property Manager), but the SimpleStart UI/codebase still references additional roles (e.g., Owner in NavMenu and Tenant in at least one page’s [OrganizationAuthorize]). Please update this section to reflect the actual roles supported by the app (or remove/retire those roles in code if they’re no longer valid).
Implemented Database Encryption in Windows.
Switched from Portable Executable to Installation deployment on Windows.
Fixed issues with theming.
Minor bug fixes.