diff --git a/assets/gh.png b/assets/gh.png new file mode 100644 index 0000000..b8205ae Binary files /dev/null and b/assets/gh.png differ diff --git a/lib/constants.dart b/lib/constants.dart index 1d9701a..a01f525 100644 --- a/lib/constants.dart +++ b/lib/constants.dart @@ -24,7 +24,7 @@ const String dataLink = enum DataStatus { Loaded, Loading, NotFound } Widget newNoMenuWidget = Center( - child: Column(children: [ + child: Column(mainAxisAlignment: MainAxisAlignment.center, children: [ const Text("Menu not available for this session", style: TextStyle(fontSize: 20, fontStyle: FontStyle.italic)), RichText( @@ -36,6 +36,8 @@ Widget newNoMenuWidget = Center( ], style: TextStyle(fontSize: 20, fontStyle: FontStyle.italic), ), - ) - ], mainAxisAlignment: MainAxisAlignment.center), + ), + ]), ); + +Uri ghURI = Uri.parse("https://github.com/kphanipavan/IIITB_Menu"); diff --git a/lib/views/about.dart b/lib/views/about.dart index bc3b183..46e93ef 100644 --- a/lib/views/about.dart +++ b/lib/views/about.dart @@ -1,4 +1,6 @@ import 'package:flutter/material.dart'; +import "package:iiitb_menu/constants.dart"; +import "package:url_launcher/url_launcher.dart"; class AboutPage extends StatelessWidget { const AboutPage({Key? key}) : super(key: key); @@ -7,13 +9,15 @@ class AboutPage extends StatelessWidget { Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: const Text("About")), - body: const Column( + body: Column( children: [ - Padding( - padding: EdgeInsets.only(left: 100, right: 100, top: 50), - child: Image(image: AssetImage("assets/plate.png")), + const Flexible( + child: Padding( + padding: EdgeInsets.only(left: 100, right: 100, top: 50), + child: Image(image: AssetImage("assets/plate.png")), + ), ), - Center( + const Center( child: Text( "IIIT Bangalore's Unofficial Menu App", textAlign: TextAlign.center, @@ -22,13 +26,21 @@ class AboutPage extends StatelessWidget { ), ), ), - Center( + const Center( child: Text("Proud Ass Web 1.0 App built with Flutter"), ), - Center( + const Center( child: Text( "Menu updates every other Tuesday or when FoodComm does it."), - ) + ), + InkWell( + child: + const Image(image: AssetImage("assets/gh.png"), height: 20), + onTap: () async { + if (await canLaunchUrl(ghURI)) { + launchUrl(ghURI); + } + }), ], ), ); diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index c3f782e..5f07798 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -8,9 +8,11 @@ import Foundation import path_provider_foundation import share_plus import shared_preferences_foundation +import url_launcher_macos 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")) + UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) } diff --git a/pubspec.yaml b/pubspec.yaml index 807e9b2..d4ed0d3 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -43,6 +43,7 @@ dependencies: # localstorage: ^4.0.1+4 shared_preferences: ^2.2.0 share_plus: ^10.1.1 + url_launcher: ^6.3.1 # sembast: dev_dependencies: @@ -69,6 +70,7 @@ flutter: # To add assets to your application, add an assets section, like this: assets: - assets/plate.png + - assets/gh.png # - images/a_dot_ham.jpeg # An image asset can refer to one or more resolution-specific "variants", see