Implement refresh on drag down
This commit is contained in:
@@ -93,6 +93,12 @@ class _MyHomePageState extends State<MyHomePage> with FullScreenListener {
|
|||||||
return sheets;
|
return sheets;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future<void> _refreshSheets() async {
|
||||||
|
setState(() {
|
||||||
|
sheets = acquireSheets();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
Future<void> _logOut() async {
|
Future<void> _logOut() async {
|
||||||
// Delete saved jwt
|
// Delete saved jwt
|
||||||
await _storageHelper.writeSecure(SecureStorageKey.jwt, null);
|
await _storageHelper.writeSecure(SecureStorageKey.jwt, null);
|
||||||
@@ -189,14 +195,17 @@ class _MyHomePageState extends State<MyHomePage> with FullScreenListener {
|
|||||||
// Icon for drawer appears automatically
|
// Icon for drawer appears automatically
|
||||||
appBar: AppBar(title: const Text("Sheetless")),
|
appBar: AppBar(title: const Text("Sheetless")),
|
||||||
endDrawer: _buildDrawer(),
|
endDrawer: _buildDrawer(),
|
||||||
body: FutureBuilder(
|
body: RefreshIndicator(
|
||||||
|
onRefresh: _refreshSheets,
|
||||||
|
child: FutureBuilder(
|
||||||
future: sheets,
|
future: sheets,
|
||||||
builder: (BuildContext context, AsyncSnapshot<List<Sheet>> snapshot) {
|
builder: (BuildContext context, AsyncSnapshot<List<Sheet>> snapshot) {
|
||||||
if (snapshot.hasData) {
|
if (snapshot.hasData) {
|
||||||
return SheetsWidget(
|
return SheetsWidget(
|
||||||
sheets: snapshot.data!,
|
sheets: snapshot.data!,
|
||||||
onSheetOpenRequest: (sheet) {
|
onSheetOpenRequest: (sheet) {
|
||||||
_storageHelper.writeSheetAccessTime(sheet.uuid, DateTime.now());
|
_storageHelper.writeSheetAccessTime(
|
||||||
|
sheet.uuid, DateTime.now());
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(
|
MaterialPageRoute(
|
||||||
@@ -225,6 +234,7 @@ class _MyHomePageState extends State<MyHomePage> with FullScreenListener {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user