Mobile UI pass: responsive tables, deck-view drill-down, dialog fixes
- Library/Card Search/Deck tables stack into dense card-style rows below 720px instead of scrolling horizontally (floated thumbnail, wrapping chips for MV/Owned/color pips). - Deck view: fix desktop min-widths and a non-wrapping button row that forced horizontal scroll on phones; split the deck list and the deck-building pane into separate drill-down screens with a back button so a long deck list doesn't bury the builder. - Suggested Cards modal: fix action buttons crushing the card name down to one word per line by giving them their own full-width row. - Add a close (X) button to the shared dialog title bar — mobile has no Escape key and wide dialogs leave little backdrop to tap. - Info tab, bottom-nav loading/safe-area fixes, and Gradle NDK_HOME inheritance fix carried over from the Android bring-up work.
This commit is contained in:
@@ -58,8 +58,20 @@ impl AppState {
|
||||
index: None,
|
||||
ingest_cancel: None,
|
||||
};
|
||||
// Best-effort open; failures just leave the catalog unloaded.
|
||||
let _ = s.reopen();
|
||||
crate::mlog!(
|
||||
"AppState::new: library={} reference={} (exists={})",
|
||||
s.library_path.display(),
|
||||
s.reference_path.display(),
|
||||
s.reference_path.exists()
|
||||
);
|
||||
// Best-effort open; failures just leave the catalog unloaded (the UI
|
||||
// falls back to "no card data yet" and offers Download/Import again).
|
||||
// That fallback previously made a real open failure indistinguishable
|
||||
// from a first run — log it so it shows up in `adb logcat -s
|
||||
// RustStdoutStderr` instead of silently reappearing every launch.
|
||||
if let Err(e) = s.reopen() {
|
||||
crate::mlog!("AppState::new: reopen failed: {e}");
|
||||
}
|
||||
s
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user