@@ -17,10 +17,15 @@ final MaterialColor themeMaterialColor =
1717
1818/// A Flutter application demonstrating the functionality of this plugin
1919class PermissionHandlerWidget extends StatefulWidget {
20+ /// Creates a [PermissionHandlerWidget] .
21+ const PermissionHandlerWidget ({
22+ super .key,
23+ });
24+
2025 /// Create a page containing the functionality of this plugin
2126 static ExamplePage createPage () {
2227 return ExamplePage (
23- Icons .location_on, (context) => PermissionHandlerWidget ());
28+ Icons .location_on, (context) => const PermissionHandlerWidget ());
2429 }
2530
2631 @override
@@ -54,18 +59,20 @@ class _PermissionHandlerWidgetState extends State<PermissionHandlerWidget> {
5459/// Permission widget containing information about the passed [Permission]
5560class PermissionWidget extends StatefulWidget {
5661 /// Constructs a [PermissionWidget] for the supplied [Permission]
57- const PermissionWidget (this ._permission);
62+ const PermissionWidget (
63+ this ._permission, {
64+ super .key,
65+ });
5866
5967 final Permission _permission;
6068
6169 @override
62- _PermissionState createState () => _PermissionState (_permission );
70+ _PermissionState createState () => _PermissionState ();
6371}
6472
6573class _PermissionState extends State <PermissionWidget > {
66- _PermissionState (this ._permission );
74+ _PermissionState ();
6775
68- final Permission _permission;
6976 final PermissionHandlerPlatform _permissionHandler =
7077 PermissionHandlerPlatform .instance;
7178 PermissionStatus _permissionStatus = PermissionStatus .denied;
@@ -78,7 +85,8 @@ class _PermissionState extends State<PermissionWidget> {
7885 }
7986
8087 void _listenForPermissionStatus () async {
81- final status = await _permissionHandler.checkPermissionStatus (_permission);
88+ final status =
89+ await _permissionHandler.checkPermissionStatus (widget._permission);
8290 setState (() => _permissionStatus = status);
8391 }
8492
@@ -99,26 +107,26 @@ class _PermissionState extends State<PermissionWidget> {
99107 Widget build (BuildContext context) {
100108 return ListTile (
101109 title: Text (
102- _permission.toString (),
110+ widget. _permission.toString (),
103111 style: Theme .of (context).textTheme.bodyLarge,
104112 ),
105113 subtitle: Text (
106114 _permissionStatus.toString (),
107115 style: TextStyle (color: getPermissionColor ()),
108116 ),
109- trailing: (_permission is PermissionWithService )
117+ trailing: (widget. _permission is PermissionWithService )
110118 ? IconButton (
111119 icon: const Icon (
112120 Icons .info,
113121 color: Colors .white,
114122 ),
115123 onPressed: () {
116124 checkServiceStatus (
117- context, _permission as PermissionWithService );
125+ context, widget. _permission as PermissionWithService );
118126 })
119127 : null ,
120128 onTap: () {
121- requestPermission (_permission);
129+ requestPermission (widget. _permission);
122130 },
123131 );
124132 }
@@ -135,9 +143,7 @@ class _PermissionState extends State<PermissionWidget> {
135143 final status = await _permissionHandler.requestPermissions ([permission]);
136144
137145 setState (() {
138- print (status);
139146 _permissionStatus = status[permission] ?? PermissionStatus .denied;
140- print (_permissionStatus);
141147 });
142148 }
143149}
0 commit comments