albertvaka added a comment.

  In https://phabricator.kde.org/D4215#79400, @mck182 wrote:
  
  > Fair enough.
  >
  > Let's make a step back then. Since you've mentioned "Plasma is the only 
notification system that does close-on-activate instead of executing some 
action", can you actually list what happens elsewhere? How is default action 
implemented in Gnome? What happens when there are regular and a default action? 
Can you give at least 3 actual examples? Ubuntu's Unity? I think it'd be great 
if everyone could get better idea and understanding of how others handle this 
and perhaps then come up with something fitting for Plasma. I'll test how does 
macOS behave.
  
  
  **GNOME Shell** (3.18) does the same as the proposed patch: once clicked the 
notification runs the default action (if any) and disappears.
  
  F2163267: gnome.png <https://phabricator.kde.org/F2163267>
  
  **Unity** (7.4.0, from Ubuntu 16.04 LTS) is a bit crazy: if the notification 
doesn't have any action and is transient, then it is displayed as a floating 
balloon. However, if there are any actions or the notification is persistent 
(timeout==0), then it displays as a dialog instead! Also, I've found that Unity 
notifications system doesn't declare the "actions" capability on DBus, so 
KNotifications will never set any action under Unity :/
  
  F2163269: unity.png <https://phabricator.kde.org/F2163269>
  
  F2163271: unity2.png <https://phabricator.kde.org/F2163271>
  
  **Windows** has two different APIs (the old one from Windows XP and the new 
one since Windows 8), but essentially it does the same thing as Gnome or Plasma 
with this patch: if the user clicks the notification it is dismissed and it 
might run a default action. The new API lets you add additional action buttons 
(and any arbitrary controls) in addition to the default action.
  
  **Android**: If an app doesn't provide a default action (PendingIntent), then 
it does nothing on click. It must be dismissed by swiping it away.
  
  **iOS**: When the users taps on a notification, the app opens and receives a 
callback. If you don't implement anything there, they your app will just open.

REPOSITORY
  R120 Plasma Workspace

REVISION DETAIL
  https://phabricator.kde.org/D4215

EMAIL PREFERENCES
  https://phabricator.kde.org/settings/panel/emailpreferences/

To: albertvaka, #plasma, colomar
Cc: broulik, apol, mck182, plasma-devel, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas

Reply via email to