diff --git a/lib/src/components/appbar/sigapappbar.dart b/lib/src/components/appbar/sigapappbar.dart index 9a4a504aa5da8378028f6eceb721886cd01f42c1..eb58edb515a16c95e8380698364360d4a8bb0313 100644 --- a/lib/src/components/appbar/sigapappbar.dart +++ b/lib/src/components/appbar/sigapappbar.dart @@ -1,14 +1,18 @@ +import 'dart:io'; import 'package:flutter/material.dart'; import 'package:mobile_apps/src/common/constants.dart'; import 'package:esys_flutter_share/esys_flutter_share.dart'; -import 'package:path/path.dart' as p; +import 'package:screenshot/screenshot.dart'; class SigapAppBar extends StatelessWidget implements PreferredSizeWidget { final String title; final int customLength; - SigapAppBar({this.title, this.customLength}); + final ScreenshotController screenshotController; + SigapAppBar({this.title, this.customLength, this.screenshotController}); + @override final Size preferredSize = Size.fromHeight(56); + @override Widget build(BuildContext context) { return AppBar( @@ -18,13 +22,13 @@ class SigapAppBar extends StatelessWidget implements PreferredSizeWidget { IconButton( icon: Icon(Icons.share), onPressed: () { - var frag = p.join('/', 'home'); - var url = - Uri(scheme: 'https', host: 'sigap.cs.ui.ac.id', fragment: frag); - Share.text( - 'Ayo bantu tenaga medis di Siaga Wabah', - 'Ayo bantu tenaga medis melawan COVID-19 di $url', - 'text/plain'); + screenshotController.capture(pixelRatio: 1.5).then((File image) { + Share.file( + 'Siaga Wabah', + title != null ? 'Siaga_Wabah_$title.png' : 'Siaga_Wabah.png', + image.readAsBytesSync(), + 'image/png'); + }); }, ), Container( diff --git a/lib/src/screens/home/home_screen.dart b/lib/src/screens/home/home_screen.dart index a1dbb69d9082db78fb7bfb5ff34d9e401eb107cf..35f8bcc2399634e9622ed59ee8df6b79f03b6a38 100644 --- a/lib/src/screens/home/home_screen.dart +++ b/lib/src/screens/home/home_screen.dart @@ -1,14 +1,13 @@ -import 'dart:io'; import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; import 'package:flutter/widgets.dart'; import 'package:mobile_apps/src/common/constants.dart'; +import 'package:mobile_apps/src/components/appbar/sigapappbar.dart'; import 'package:mobile_apps/src/screens/home/institusi/list_institusi.dart'; import 'package:mobile_apps/src/screens/home/inventories/inventories.dart'; import 'package:mobile_apps/src/screens/home/kontak/kontak.dart'; import 'package:mobile_apps/src/services/auth_service.dart'; import 'package:provider/provider.dart'; -import 'package:esys_flutter_share/esys_flutter_share.dart'; import 'package:screenshot/screenshot.dart'; class HomeScreen extends StatefulWidget { @@ -60,27 +59,6 @@ class _HomeScreenState extends State<HomeScreen> { ), ], ), - appBar: AppBar( - title: Text('Siaga Wabah', - style: TextStyle(fontWeight: FontWeight.bold)), - actions: <Widget>[ - IconButton( - icon: Icon(Icons.share), - onPressed: () { - screenshotController - .capture(pixelRatio: 1.5) - .then((File image) { - Share.file('Siaga Wabah', 'Siaga Wabah (Home).png', - image.readAsBytesSync(), 'image/png'); - }); - }), - Container( - margin: EdgeInsets.only( - right: MarginConstants.horizontalFromScreen * 2), - child: Icon(Icons.notifications), - ), - ], - centerTitle: true, - ))); + appBar: SigapAppBar(screenshotController: screenshotController))); } }