Browse Source

fix: Notification 'Show' button visible when no actions exist (#39014)

Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <[email protected]>
trop[bot] 1 year ago
parent
commit
37df7c5170
1 changed files with 5 additions and 1 deletions
  1. 5 1
      shell/browser/notifications/mac/cocoa_notification.mm

+ 5 - 1
shell/browser/notifications/mac/cocoa_notification.mm

@@ -64,6 +64,11 @@ void CocoaNotification::Show(const NotificationOptions& options) {
                                               options.reply_placeholder)];
   }
 
+  // We need to explicitly set this to false if there are no
+  // actions, otherwise a Show button will appear by default.
+  if (options.actions.size() == 0)
+    [notification_ setHasActionButton:false];
+
   int i = 0;
   action_index_ = UINT_MAX;
   NSMutableArray* additionalActions =
@@ -75,7 +80,6 @@ void CocoaNotification::Show(const NotificationOptions& options) {
       // become additional actions.
       if (!options.has_reply && action_index_ == UINT_MAX) {
         // First button observed is the displayed action
-        [notification_ setHasActionButton:true];
         [notification_
             setActionButtonTitle:base::SysUTF16ToNSString(action.text)];
         action_index_ = i;