Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 983ce97a authored by Christoph Studer's avatar Christoph Studer Committed by Android (Google) Code Review
Browse files

Merge changes Iffd15e95,Id2db95ec

* changes:
  Log notification clicks
  Add userId to StatusBarNotification key
parents 2059bce9 03b87a2f
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -87,7 +87,7 @@ public class StatusBarNotification implements Parcelable {
    }

    private String key() {
        return pkg + '|' + id + '|' + tag + '|' + uid;
        return user.getIdentifier() + "|" + pkg + "|" + id + "|" + tag + "|" + uid;
    }

    public void writeToParcel(Parcel out, int flags) {
+1 −1
Original line number Diff line number Diff line
@@ -42,7 +42,7 @@ interface IStatusBarService
            out int[] switches, out List<IBinder> binders);
    void onPanelRevealed();
    void onPanelHidden();
    void onNotificationClick(String pkg, String tag, int id, int userId);
    void onNotificationClick(String key);
    void onNotificationError(String pkg, String tag, int id,
            int uid, int initialPid, String message, int userId);
    void onClearAllNotifications(int userId);
+11 −19
Original line number Diff line number Diff line
@@ -773,8 +773,8 @@ public abstract class BaseStatusBar extends SystemUI implements

        PendingIntent contentIntent = sbn.getNotification().contentIntent;
        if (contentIntent != null) {
            final View.OnClickListener listener = makeClicker(contentIntent,
                    sbn.getPackageName(), sbn.getTag(), sbn.getId(), isHeadsUp, sbn.getUserId());
            final View.OnClickListener listener = makeClicker(contentIntent, sbn.getKey(),
                    isHeadsUp);
            row.setOnClickListener(listener);
        } else {
            row.setOnClickListener(null);
@@ -884,27 +884,20 @@ public abstract class BaseStatusBar extends SystemUI implements
        return true;
    }

    public NotificationClicker makeClicker(PendingIntent intent, String pkg, String tag,
            int id, boolean forHun, int userId) {
        return new NotificationClicker(intent, pkg, tag, id, forHun, userId);
    public NotificationClicker makeClicker(PendingIntent intent, String notificationKey,
            boolean forHun) {
        return new NotificationClicker(intent, notificationKey, forHun);
    }

    protected class NotificationClicker implements View.OnClickListener {
        private PendingIntent mIntent;
        private String mPkg;
        private String mTag;
        private int mId;
        private final String mNotificationKey;
        private boolean mIsHeadsUp;
        private int mUserId;

        public NotificationClicker(PendingIntent intent, String pkg, String tag, int id,
                boolean forHun, int userId) {
        public NotificationClicker(PendingIntent intent, String notificationKey, boolean forHun) {
            mIntent = intent;
            mPkg = pkg;
            mTag = tag;
            mId = id;
            mNotificationKey = notificationKey;
            mIsHeadsUp = forHun;
            mUserId = userId;
        }

        public void onClick(View v) {
@@ -940,7 +933,7 @@ public abstract class BaseStatusBar extends SystemUI implements
                if (mIsHeadsUp) {
                    mHandler.sendEmptyMessage(MSG_HIDE_HEADS_UP);
                }
                mBarService.onNotificationClick(mPkg, mTag, mId, mUserId);
                mBarService.onNotificationClick(mNotificationKey);
            } catch (RemoteException ex) {
                // system process is dead if we're here.
            }
@@ -1344,9 +1337,8 @@ public abstract class BaseStatusBar extends SystemUI implements
        // update the contentIntent
        final PendingIntent contentIntent = notification.getNotification().contentIntent;
        if (contentIntent != null) {
            final View.OnClickListener listener = makeClicker(contentIntent,
                    notification.getPackageName(), notification.getTag(), notification.getId(),
                    isHeadsUp, notification.getUserId());
            final View.OnClickListener listener = makeClicker(contentIntent, notification.getKey(),
                    isHeadsUp);
            entry.row.setOnClickListener(listener);
        } else {
            entry.row.setOnClickListener(null);
+2 −0
Original line number Diff line number Diff line
@@ -65,6 +65,8 @@ option java_package com.android.server
27501 notification_panel_hidden
# when notifications are newly displayed on screen, or disappear from screen
27510 notification_visibility_changed (newlyVisibleKeys|3),(noLongerVisibleKeys|3)
# when a notification has been clicked
27520 notification_clicked (key|3)

# ---------------------------
# Watchdog.java
+1 −2
Original line number Diff line number Diff line
@@ -21,8 +21,7 @@ import android.os.IBinder;
public interface NotificationDelegate {
    void onSetDisabled(int status);
    void onClearAll(int callingUid, int callingPid, int userId);
    void onNotificationClick(int callingUid, int callingPid,
            String pkg, String tag, int id, int userId);
    void onNotificationClick(int callingUid, int callingPid, String key);
    void onNotificationClear(int callingUid, int callingPid,
            String pkg, String tag, int id, int userId);
    void onNotificationError(int callingUid, int callingPid,
Loading