Skip to content

Commit

Permalink
add saving page state
Browse files Browse the repository at this point in the history
  • Loading branch information
benhus8 committed Jan 6, 2025
1 parent cd7b747 commit cf4e87b
Showing 1 changed file with 19 additions and 0 deletions.
19 changes: 19 additions & 0 deletions mobile_app/lib/widgets/main_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,21 @@ class _MainPageState extends State<MainPage> {

final ScrollController _scrollController = ScrollController();

Map<String, int> _pageByMode = {
"all": 0,
"starred": 0,
"test": 0,
"learning": 0,
};

void _saveCurrentPage(String mode) {
_pageByMode[mode] = _currentPage;
}

void _setPageForMode(String mode) {
_currentPage = _pageByMode[mode] ?? 0;
}

@override
void initState() {
super.initState();
Expand All @@ -50,18 +65,22 @@ class _MainPageState extends State<MainPage> {
}

void _toggleStarred() {
_saveCurrentPage(_showStarred ? "starred" : "all");
setState(() {
_showStarred = !_showStarred;
_filterQuestions();
_setPageForMode(_showStarred ? "starred" : "all");
});

_saveStarredQuestions();
}

void _changeMode(String mode) {
_saveCurrentPage(_isTestMode ? "test" : "learning");
setState(() {
_isTestMode = mode == "Test";
_filterQuestions();
_setPageForMode(_isTestMode ? "test" : "learning");
});
}

Expand Down

0 comments on commit cf4e87b

Please sign in to comment.