Skip to content

Commit d594604

Browse files
jfversluismoljac
andauthored
Add PostNotifications to Permissions (#19472)
* add PostNotifications to Permissions * brackets fix * PublicAPI update[s] * Update PublicAPI.Shipped.txt * Add Essentials Sample --------- Co-authored-by: moljac <[email protected]>
1 parent bbcef38 commit d594604

File tree

15 files changed

+66
-0
lines changed

15 files changed

+66
-0
lines changed

src/Essentials/samples/Samples/ViewModel/PermissionsViewModel.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ public class PermissionsViewModel : BaseViewModel
2626
new PermissionItem("Phone", new Permissions.Phone()),
2727
new PermissionItem("Photos", new Permissions.Photos()),
2828
new PermissionItem("Photos AddOnly", new Permissions.PhotosAddOnly()),
29+
new PermissionItem("Post Notification", new Permissions.PostNotifications()),
2930
new PermissionItem("Reminders", new Permissions.Reminders()),
3031
new PermissionItem("Sensors", new Permissions.Sensors()),
3132
new PermissionItem("SMS", new Permissions.Sms()),

src/Essentials/src/Permissions/Permissions.android.cs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -455,6 +455,28 @@ public partial class PhotosAddOnly : BasePlatformPermission
455455
{
456456
}
457457

458+
public partial class PostNotifications : BasePlatformPermission
459+
{
460+
public override (string androidPermission, bool isRuntime)[] RequiredPermissions
461+
{
462+
get
463+
{
464+
var permissions = new List<(string, bool)>();
465+
466+
#if __ANDROID_33__
467+
if (OperatingSystem.IsAndroidVersionAtLeast(33) && Application.Context.ApplicationInfo.TargetSdkVersion >= BuildVersionCodes.Tiramisu)
468+
{
469+
// new runtime permissions on Android 12
470+
if (IsDeclaredInManifest(Manifest.Permission.PostNotifications))
471+
permissions.Add((Manifest.Permission.PostNotifications, true));
472+
}
473+
#endif
474+
475+
return permissions.ToArray();
476+
}
477+
}
478+
}
479+
458480
public partial class Reminders : BasePlatformPermission
459481
{
460482
}

src/Essentials/src/Permissions/Permissions.ios.tvos.watchos.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -288,6 +288,10 @@ public partial class PhotosAddOnly : BasePlatformPermission
288288
{
289289
}
290290

291+
public partial class PostNotifications : BasePlatformPermission
292+
{
293+
}
294+
291295
public partial class Reminders : BasePlatformPermission
292296
{
293297
}

src/Essentials/src/Permissions/Permissions.macos.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,10 @@ public partial class PhotosAddOnly : BasePlatformPermission
207207
{
208208
}
209209

210+
public partial class PostNotifications : BasePlatformPermission
211+
{
212+
}
213+
210214
public partial class Reminders : BasePlatformPermission
211215
{
212216
}

src/Essentials/src/Permissions/Permissions.netstandard.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,10 @@ public partial class PhotosAddOnly : BasePlatformPermission
109109
{
110110
}
111111

112+
public partial class PostNotifications : BasePlatformPermission
113+
{
114+
}
115+
112116
public partial class Reminders : BasePlatformPermission
113117
{
114118
}

src/Essentials/src/Permissions/Permissions.shared.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -252,6 +252,14 @@ public partial class PhotosAddOnly : BasePlatformPermission
252252
{
253253
}
254254

255+
/// <summary>
256+
/// Represents permission to post notifications
257+
/// </summary>
258+
public partial class PostNotifications
259+
{
260+
}
261+
262+
255263
/// <summary>
256264
/// Represents permission to access the device reminders data.
257265
/// </summary>

src/Essentials/src/Permissions/Permissions.tizen.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,10 @@ public partial class Photos : BasePlatformPermission
211211
{
212212
}
213213

214+
public partial class PostNotifications : BasePlatformPermission
215+
{
216+
}
217+
214218
public partial class Reminders : BasePlatformPermission
215219
{
216220
}

src/Essentials/src/Permissions/Permissions.uwp.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,10 @@ public partial class Photos : BasePlatformPermission
191191
{
192192
}
193193

194+
public partial class PostNotifications : BasePlatformPermission
195+
{
196+
}
197+
194198
public partial class Reminders : BasePlatformPermission
195199
{
196200
}

src/Essentials/src/PublicAPI/net-android/PublicAPI.Shipped.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@
9393
~override Microsoft.Maui.ApplicationModel.Permissions.NearbyWifiDevices.RequiredPermissions.get -> (string androidPermission, bool isRuntime)[]
9494
~override Microsoft.Maui.ApplicationModel.Permissions.NetworkState.RequiredPermissions.get -> (string androidPermission, bool isRuntime)[]
9595
~override Microsoft.Maui.ApplicationModel.Permissions.Phone.RequiredPermissions.get -> (string androidPermission, bool isRuntime)[]
96+
~override Microsoft.Maui.ApplicationModel.Permissions.PostNotifications.RequiredPermissions.get -> (string androidPermission, bool isRuntime)[]
9697
~override Microsoft.Maui.ApplicationModel.Permissions.Sensors.RequiredPermissions.get -> (string androidPermission, bool isRuntime)[]
9798
~override Microsoft.Maui.ApplicationModel.Permissions.Sms.RequiredPermissions.get -> (string androidPermission, bool isRuntime)[]
9899
~override Microsoft.Maui.ApplicationModel.Permissions.Speech.RequiredPermissions.get -> (string androidPermission, bool isRuntime)[]
@@ -434,6 +435,8 @@ Microsoft.Maui.ApplicationModel.Permissions.Phone.Phone() -> void
434435
Microsoft.Maui.ApplicationModel.Permissions.Photos
435436
Microsoft.Maui.ApplicationModel.Permissions.Photos.Photos() -> void
436437
Microsoft.Maui.ApplicationModel.Permissions.PhotosAddOnly
438+
Microsoft.Maui.ApplicationModel.Permissions.PostNotifications.PostNotifications() -> void
439+
Microsoft.Maui.ApplicationModel.Permissions.PostNotifications
437440
Microsoft.Maui.ApplicationModel.Permissions.PhotosAddOnly.PhotosAddOnly() -> void
438441
Microsoft.Maui.ApplicationModel.Permissions.Reminders
439442
Microsoft.Maui.ApplicationModel.Permissions.Reminders.Reminders() -> void

src/Essentials/src/PublicAPI/net-ios/PublicAPI.Shipped.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -433,6 +433,8 @@ Microsoft.Maui.ApplicationModel.Permissions.Photos
433433
Microsoft.Maui.ApplicationModel.Permissions.Photos.Photos() -> void
434434
Microsoft.Maui.ApplicationModel.Permissions.PhotosAddOnly
435435
Microsoft.Maui.ApplicationModel.Permissions.PhotosAddOnly.PhotosAddOnly() -> void
436+
Microsoft.Maui.ApplicationModel.Permissions.PostNotifications
437+
Microsoft.Maui.ApplicationModel.Permissions.PostNotifications.PostNotifications() -> void
436438
Microsoft.Maui.ApplicationModel.Permissions.Reminders
437439
Microsoft.Maui.ApplicationModel.Permissions.Reminders.Reminders() -> void
438440
Microsoft.Maui.ApplicationModel.Permissions.Sensors

0 commit comments

Comments
 (0)