diff --git a/lib/models/globalModel.dart b/lib/models/globalModel.dart index b0a7a5d..89756b9 100644 --- a/lib/models/globalModel.dart +++ b/lib/models/globalModel.dart @@ -73,6 +73,8 @@ class GlobalModel extends ChangeNotifier { String rawHash = md5.convert(utf8.encode(rawData)).toString(); if (remoteHash != rawHash) { print("Local data is out of date, updating local"); + print("Old Hash: $rawHash"); + print("New Hash: $remoteHash"); // Donwload new data and save it. rawData = await getLatestData(); Map returnData = jsonDecode(rawData); diff --git a/lib/views/about.dart b/lib/views/about.dart index 4249f08..bc3b183 100644 --- a/lib/views/about.dart +++ b/lib/views/about.dart @@ -6,13 +6,28 @@ class AboutPage extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - appBar: AppBar(title: const Text("About Page")), + appBar: AppBar(title: const Text("About")), body: const Column( children: [ - Image(image: AssetImage("assets/plate.png")), - Text( - "IIIT Bangalore Unofficial Mess Menu", - style: TextStyle(fontSize: 50), + Padding( + padding: EdgeInsets.only(left: 100, right: 100, top: 50), + child: Image(image: AssetImage("assets/plate.png")), + ), + Center( + child: Text( + "IIIT Bangalore's Unofficial Menu App", + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 50, + ), + ), + ), + Center( + child: Text("Proud Ass Web 1.0 App built with Flutter"), + ), + Center( + child: Text( + "Menu updates every other Tuesday or when FoodComm does it."), ) ], ), diff --git a/lib/views/homePage.dart b/lib/views/homePage.dart index 342d9df..183d900 100644 --- a/lib/views/homePage.dart +++ b/lib/views/homePage.dart @@ -6,6 +6,7 @@ import "package:iiitb_menu/models/globalModel.dart"; import "package:iiitb_menu/models/initialPageIndexFunction.dart"; import "package:iiitb_menu/views/menuListView.dart"; import "package:provider/provider.dart"; +import "package:share_plus/share_plus.dart"; class HomePage extends StatelessWidget { const HomePage({Key? key}) : super(key: key); @@ -29,23 +30,35 @@ class HomePage extends StatelessWidget { child: ListView( children: [ ListTile( - leading: Icon(Icons.menu), + leading: Icon(Icons.arrow_back), title: Text("Menu"), onTap: () { Navigator.pop(context); }), + // ListTile( + // leading: Icon(Icons.star), + // title: Text("Specials"), + // ), + const Divider(), + // ListTile( + // leading: Icon(Icons.settings), + // title: Text("Settings"), + // ), ListTile( - leading: Icon(Icons.star), - title: Text("Specials"), - ), - Divider(), - ListTile( - leading: Icon(Icons.settings), - title: Text("Settings"), - ), + leading: const Icon(Icons.share_rounded), + title: const Text("Share"), + onTap: () { + var ret = Share.share( + "Hey, use this to track IIITB's Mess Menu. https://kphanipavan.github.io/IIITB_Menu/", + // subject: "IIITB Menu App", + ); + ret.then((value) { + print(value.status); + }); + }), ListTile( leading: Icon(Icons.info), - title: Text("About App"), + title: Text("About"), onTap: () { Navigator.pushNamed(context, "/info"); }), @@ -53,7 +66,7 @@ class HomePage extends StatelessWidget { ), ), appBar: AppBar( - title: Text("Daily ${data.menuTime} Menu"), + title: Text(data.menuTime), bottom: TabBar( controller: cont, // splashFactory: InkSplash.splashFactory, @@ -74,7 +87,9 @@ class HomePage extends StatelessWidget { onTap: () { data.updateCall(); }, - child: const Icon(Icons.refresh), + child: Icon(data.menuAvailable == DataStatus.Loading + ? Icons.downloading_rounded + : Icons.update_rounded), ), InkWell( splashFactory: NoSplash.splashFactory, diff --git a/linux/flutter/generated_plugin_registrant.cc b/linux/flutter/generated_plugin_registrant.cc index e71a16d..f6f23bf 100644 --- a/linux/flutter/generated_plugin_registrant.cc +++ b/linux/flutter/generated_plugin_registrant.cc @@ -6,6 +6,10 @@ #include "generated_plugin_registrant.h" +#include void fl_register_plugins(FlPluginRegistry* registry) { + g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar = + fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin"); + url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar); } diff --git a/linux/flutter/generated_plugins.cmake b/linux/flutter/generated_plugins.cmake index 2e1de87..f16b4c3 100644 --- a/linux/flutter/generated_plugins.cmake +++ b/linux/flutter/generated_plugins.cmake @@ -3,6 +3,7 @@ # list(APPEND FLUTTER_PLUGIN_LIST + url_launcher_linux ) list(APPEND FLUTTER_FFI_PLUGIN_LIST diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index b8e2b22..c3f782e 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -6,9 +6,11 @@ import FlutterMacOS import Foundation import path_provider_foundation +import share_plus import shared_preferences_foundation func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) + SharePlusMacosPlugin.register(with: registry.registrar(forPlugin: "SharePlusMacosPlugin")) SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin")) } diff --git a/pubspec.yaml b/pubspec.yaml index a3a7687..807e9b2 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -42,6 +42,7 @@ dependencies: path_provider: # localstorage: ^4.0.1+4 shared_preferences: ^2.2.0 + share_plus: ^10.1.1 # sembast: dev_dependencies: diff --git a/web/index.html b/web/index.html index 6ee2f01..0fd9fc6 100644 --- a/web/index.html +++ b/web/index.html @@ -1,8 +1,7 @@ - + - - - - + - - - + + + - - - - - + + + + + - - - - - - - iiitb_menu - + + + + + + + iiitb_menu + - - - - + + + + - - - - - \ No newline at end of file + + + + diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc index 8b6d468..c3384ec 100644 --- a/windows/flutter/generated_plugin_registrant.cc +++ b/windows/flutter/generated_plugin_registrant.cc @@ -6,6 +6,12 @@ #include "generated_plugin_registrant.h" +#include +#include void RegisterPlugins(flutter::PluginRegistry* registry) { + SharePlusWindowsPluginCApiRegisterWithRegistrar( + registry->GetRegistrarForPlugin("SharePlusWindowsPluginCApi")); + UrlLauncherWindowsRegisterWithRegistrar( + registry->GetRegistrarForPlugin("UrlLauncherWindows")); } diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake index b93c4c3..01d3836 100644 --- a/windows/flutter/generated_plugins.cmake +++ b/windows/flutter/generated_plugins.cmake @@ -3,6 +3,8 @@ # list(APPEND FLUTTER_PLUGIN_LIST + share_plus + url_launcher_windows ) list(APPEND FLUTTER_FFI_PLUGIN_LIST