| // Copyright 2017 The Chromium Authors. All rights reserved. | 
 | // Use of this source code is governed by a BSD-style license that can be | 
 | // found in the LICENSE file. | 
 |  | 
 | // ignore_for_file: public_member_api_docs | 
 |  | 
 | import 'package:flutter/material.dart'; | 
 | import 'package:quick_actions/quick_actions.dart'; | 
 |  | 
 | void main() { | 
 |   runApp(MyApp()); | 
 | } | 
 |  | 
 | class MyApp extends StatelessWidget { | 
 |   @override | 
 |   Widget build(BuildContext context) { | 
 |     return MaterialApp( | 
 |       title: 'Flutter Quick Actions Demo', | 
 |       theme: ThemeData( | 
 |         primarySwatch: Colors.blue, | 
 |       ), | 
 |       home: MyHomePage(), | 
 |     ); | 
 |   } | 
 | } | 
 |  | 
 | class MyHomePage extends StatefulWidget { | 
 |   MyHomePage({Key key}) : super(key: key); | 
 |  | 
 |   @override | 
 |   _MyHomePageState createState() => _MyHomePageState(); | 
 | } | 
 |  | 
 | class _MyHomePageState extends State<MyHomePage> { | 
 |   String shortcut = "no action set"; | 
 |  | 
 |   @override | 
 |   void initState() { | 
 |     super.initState(); | 
 |  | 
 |     final QuickActions quickActions = QuickActions(); | 
 |     quickActions.initialize((String shortcutType) { | 
 |       setState(() { | 
 |         if (shortcutType != null) shortcut = shortcutType; | 
 |       }); | 
 |     }); | 
 |  | 
 |     quickActions.setShortcutItems(<ShortcutItem>[ | 
 |       // NOTE: This first action icon will only work on iOS. | 
 |       // In a real world project keep the same file name for both platforms. | 
 |       const ShortcutItem( | 
 |         type: 'action_one', | 
 |         localizedTitle: 'Action one', | 
 |         icon: 'AppIcon', | 
 |       ), | 
 |       // NOTE: This second action icon will only work on Android. | 
 |       // In a real world project keep the same file name for both platforms. | 
 |       const ShortcutItem( | 
 |           type: 'action_two', | 
 |           localizedTitle: 'Action two', | 
 |           icon: 'ic_launcher'), | 
 |     ]); | 
 |   } | 
 |  | 
 |   @override | 
 |   Widget build(BuildContext context) { | 
 |     return Scaffold( | 
 |       appBar: AppBar( | 
 |         title: Text('$shortcut'), | 
 |       ), | 
 |       body: const Center( | 
 |         child: Text('On home screen, long press the app icon to ' | 
 |             'get Action one or Action two options. Tapping on that action should  ' | 
 |             'set the toolbar title.'), | 
 |       ), | 
 |     ); | 
 |   } | 
 | } |