@@ -17,14 +17,19 @@ final MaterialColor themeMaterialColor =
17
17
18
18
/// A Flutter application demonstrating the functionality of this plugin
19
19
class PermissionHandlerWidget extends StatefulWidget {
20
+ /// Creates a [PermissionHandlerWidget] .
21
+ const PermissionHandlerWidget ({
22
+ super .key,
23
+ });
24
+
20
25
/// Create a page containing the functionality of this plugin
21
26
static ExamplePage createPage () {
22
27
return ExamplePage (
23
- Icons .location_on, (context) => PermissionHandlerWidget ());
28
+ Icons .location_on, (context) => const PermissionHandlerWidget ());
24
29
}
25
30
26
31
@override
27
- _PermissionHandlerWidgetState createState () =>
32
+ State < PermissionHandlerWidget > createState () =>
28
33
_PermissionHandlerWidgetState ();
29
34
}
30
35
@@ -52,18 +57,20 @@ class _PermissionHandlerWidgetState extends State<PermissionHandlerWidget> {
52
57
/// Permission widget containing information about the passed [Permission]
53
58
class PermissionWidget extends StatefulWidget {
54
59
/// Constructs a [PermissionWidget] for the supplied [Permission]
55
- const PermissionWidget (this ._permission);
60
+ const PermissionWidget (
61
+ this ._permission, {
62
+ super .key,
63
+ });
56
64
57
65
final Permission _permission;
58
66
59
67
@override
60
- _PermissionState createState () => _PermissionState (_permission );
68
+ State < PermissionWidget > createState () => _PermissionState ();
61
69
}
62
70
63
71
class _PermissionState extends State <PermissionWidget > {
64
- _PermissionState (this ._permission );
72
+ _PermissionState ();
65
73
66
- final Permission _permission;
67
74
final PermissionHandlerPlatform _permissionHandler =
68
75
PermissionHandlerPlatform .instance;
69
76
PermissionStatus _permissionStatus = PermissionStatus .denied;
@@ -76,9 +83,9 @@ class _PermissionState extends State<PermissionWidget> {
76
83
}
77
84
78
85
void _listenForPermissionStatus () async {
79
- await _permissionHandler.checkPermissionStatus (_permission).then (
86
+ await _permissionHandler.checkPermissionStatus (widget. _permission).then (
80
87
(status) => setState (() => _permissionStatus = status),
81
- onError: (error, st) => print ('$error ' ));
88
+ onError: (error, st) => debugPrint ('$error ' ));
82
89
}
83
90
84
91
Color getPermissionColor () {
@@ -98,26 +105,26 @@ class _PermissionState extends State<PermissionWidget> {
98
105
Widget build (BuildContext context) {
99
106
return ListTile (
100
107
title: Text (
101
- _permission.toString (),
108
+ widget. _permission.toString (),
102
109
style: Theme .of (context).textTheme.bodyLarge,
103
110
),
104
111
subtitle: Text (
105
112
_permissionStatus.toString (),
106
113
style: TextStyle (color: getPermissionColor ()),
107
114
),
108
- trailing: (_permission is PermissionWithService )
115
+ trailing: (widget. _permission is PermissionWithService )
109
116
? IconButton (
110
117
icon: const Icon (
111
118
Icons .info,
112
119
color: Colors .white,
113
120
),
114
121
onPressed: () {
115
122
checkServiceStatus (
116
- context, _permission as PermissionWithService );
123
+ context, widget. _permission as PermissionWithService );
117
124
})
118
125
: null ,
119
126
onTap: () {
120
- requestPermission (_permission);
127
+ requestPermission (widget. _permission);
121
128
},
122
129
);
123
130
}
@@ -133,10 +140,8 @@ class _PermissionState extends State<PermissionWidget> {
133
140
Future <void > requestPermission (Permission permission) async {
134
141
await _permissionHandler.requestPermissions ([permission]).then (
135
142
(status) => setState (() {
136
- print (status);
137
143
_permissionStatus = status[permission] ?? PermissionStatus .denied;
138
- print (_permissionStatus);
139
144
}),
140
- onError: (error, st) => print ('$error ' ));
145
+ onError: (error, st) => debugPrint ('$error ' ));
141
146
}
142
147
}
0 commit comments