Conversation
…raphy migration, password reveal, seed UX - Fix: failure toasts (claim/release/wallet create/import/settings/funders/edit-profile) no longer render as green success toasts — ToastRequested now carries ToastSeverity end-to-end; all failure call sites pass ToastSeverity.Error - Keyboard: global :focus-visible ring (V2 theme replaced Fluent templates so none existed); Escape closes shell modals / steps back (reuses TryHandlePlatformBack) at shell root, plus Settings network/wipe modals; accessible names on icon-only shell buttons - Tokens: danger/warning/Bitcoin accent literal hexes migrated to semantic brushes (DangerBrush, DangerBrightBrush, DangerSoftBrush, WarningBrush, WarningBrightBrush, WarningSoftBrush, BitcoinAccentBrush) - Typography: 938 TextBlock FontSize attributes migrated to Typography classes (Size-XXS..XXL + interim exact-pixel Size-10..80 gap steps); XMl validated pre-write - Tooltips: truncated bound TextBlocks now show the full value on hover (31 sites) - Passwords: eye reveal toggles on PrivateKeysPasswordModal + claim/release password fields; plaintext-download warning + live seed word-count hint in CreateWalletModal - Dead code: remove InvestPageViewModel.SubmitOpacity (real CanSubmit/IsEnabled is used)
…Template is invalid)
… guard
- Project grid now row-chunks (ProjectRowViewModel) and renders via
VirtualizingStackPanel + UniformRowPanel: only visible rows materialize and
recycle instead of inflating every ProjectCard in a non-virtualizing
ResponsiveGrid. View reports width-driven column count to the VM which
re-chunks rows synchronously (keeps headless tests deterministic).
- ProjectListVirtualizationTests: chunk order/count invariants + rendered
proof that long lists only realize viewport rows (+overscan).
- HexLiteralGuardTests: first source-scan test — fails if the seven migrated
danger/warning/Bitcoin hexes reappear as literals in UI/{Sections,Shell,Shared}.
- ResponsiveGrid unchanged for the bounded grids (MyProjects, Portfolio).
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Improves desktop/mobile UX and keeps project browsing usable during service outages. Indexer reads retry verified fallback servers, relay discovery retries after connection failures, and project loading distinguishes empty results from errors while retaining cached projects.
Validation:
Validation limitations:
src/avalonia/AngorApp.Testssuite cannot restore: its .NET 9 projects reference .NET 10 SDK/document projects (NU1201). The same framework mismatch exists on main; retired app code is unchanged.Full local logs, including initial failures and diagnostic stacks, are retained in
/tmp/angor-pr-validation/. No test assertions were relaxed.