am c58d1695: Merge changes from topic \'tron\' into mnc-dev

* commit 'c58d1695307923c8074f5803a0e01cda1869d231':
  remove double count of panel open
  report notification load on panel reveal
This commit is contained in:
Chris Wren
2015-07-01 16:21:47 +00:00
committed by Android Git Automerger
9 changed files with 20 additions and 11 deletions

View File

@@ -44,7 +44,7 @@ interface IStatusBarService
// You need the STATUS_BAR_SERVICE permission
void registerStatusBar(IStatusBar callbacks, out StatusBarIconList iconList,
out int[] switches, out List<IBinder> binders);
void onPanelRevealed(boolean clearNotificationEffects);
void onPanelRevealed(boolean clearNotificationEffects, int numItems);
void onPanelHidden();
// Mark current notifications as "seen" and stop ringing, vibrating, blinking.
void clearNotificationEffects();

View File

@@ -1623,7 +1623,13 @@ public abstract class BaseStatusBar extends SystemUI implements
boolean clearNotificationEffects = !isPanelFullyCollapsed() &&
(mShowLockscreenNotifications ||
(mState == StatusBarState.SHADE || mState == StatusBarState.SHADE_LOCKED));
mBarService.onPanelRevealed(clearNotificationEffects);
int notificationLoad = mNotificationData.getActiveNotifications().size();
if (mHeadsUpManager.hasPinnedHeadsUp() && isPanelFullyCollapsed()) {
notificationLoad = 1;
} else {
MetricsLogger.histogram(mContext, "note_load", notificationLoad);
}
mBarService.onPanelRevealed(clearNotificationEffects, notificationLoad);
} else {
mBarService.onPanelHidden();
}

View File

@@ -721,7 +721,6 @@ public class NotificationPanelView extends PanelView implements
if (mListenForHeadsUp && !mHeadsUpTouchHelper.isTrackingHeadsUp()
&& mHeadsUpTouchHelper.onInterceptTouchEvent(event)) {
mIsExpansionFromHeadsUp = true;
MetricsLogger.count(mContext, COUNTER_PANEL_OPEN, 1);
MetricsLogger.count(mContext, COUNTER_PANEL_OPEN_PEEK, 1);
}
if ((!mIsExpanding || mHintAnimationRunning)

View File

@@ -1180,6 +1180,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,
notification.getKey());
notification.getNotification().fullScreenIntent.send();
shadeEntry.notifyFullScreenIntentLaunched();
MetricsLogger.count(mContext, "note_fullscreen", 1);
} catch (PendingIntent.CanceledException e) {
}
}

View File

@@ -29,6 +29,7 @@ import android.view.View;
import android.view.ViewTreeObserver;
import android.view.accessibility.AccessibilityEvent;
import com.android.internal.logging.MetricsLogger;
import com.android.systemui.R;
import com.android.systemui.statusbar.ExpandableNotificationRow;
import com.android.systemui.statusbar.NotificationData;
@@ -82,6 +83,7 @@ public class HeadsUpManager implements ViewTreeObserver.OnComputeInternalInsetsL
private final View mStatusBarWindowView;
private final int mStatusBarHeight;
private final int mNotificationsTopPadding;
private final Context mContext;
private PhoneStatusBar mBar;
private int mSnoozeLengthMs;
private ContentObserver mSettingsObserver;
@@ -101,7 +103,8 @@ public class HeadsUpManager implements ViewTreeObserver.OnComputeInternalInsetsL
private boolean mIsObserving;
public HeadsUpManager(final Context context, View statusBarWindowView) {
Resources resources = context.getResources();
mContext = context;
Resources resources = mContext.getResources();
mTouchAcceptanceDelay = resources.getInteger(R.integer.touch_acceptance_delay);
mSnoozedPackages = new ArrayMap<>();
mDefaultSnoozeLengthMs = resources.getInteger(R.integer.heads_up_default_snooze_length_ms);
@@ -165,6 +168,7 @@ public class HeadsUpManager implements ViewTreeObserver.OnComputeInternalInsetsL
*/
public void showNotification(NotificationData.Entry headsUp) {
if (DEBUG) Log.v(TAG, "showNotification");
MetricsLogger.count(mContext, "note_peek", 1);
addHeadsUpEntry(headsUp);
updateNotification(headsUp, true);
headsUp.setInterruption();
@@ -522,7 +526,6 @@ public class HeadsUpManager implements ViewTreeObserver.OnComputeInternalInsetsL
});
}
/**
* This represents a notification and how long it is in a heads up mode. It also manages its
* lifecycle automatically when created.

View File

@@ -60,7 +60,7 @@ option java_package com.android.server
2752 notification_cancel_all (uid|1|5),(pid|1|5),(pkg|3),(userid|1|5),(required_flags|1),(forbidden_flags|1),(reason|1|5),(listener|3)
# when the notification panel is shown
# Note: New tag range starts here since 2753+ have been used below.
27500 notification_panel_revealed
27500 notification_panel_revealed (items|1)
# when the notification panel is hidden
27501 notification_panel_hidden
# when notifications are newly displayed on screen, or disappear from screen

View File

@@ -28,7 +28,7 @@ public interface NotificationDelegate {
void onNotificationError(int callingUid, int callingPid,
String pkg, String tag, int id,
int uid, int initialPid, String message, int userId);
void onPanelRevealed(boolean clearEffects);
void onPanelRevealed(boolean clearEffects, int numItems);
void onPanelHidden();
void clearEffects();
void onNotificationVisibilityChanged(

View File

@@ -567,8 +567,8 @@ public class NotificationManagerService extends SystemService {
}
@Override
public void onPanelRevealed(boolean clearEffects) {
EventLogTags.writeNotificationPanelRevealed();
public void onPanelRevealed(boolean clearEffects, int items) {
EventLogTags.writeNotificationPanelRevealed(items);
if (clearEffects) {
clearEffects();
}

View File

@@ -571,11 +571,11 @@ public class StatusBarManagerService extends IStatusBarService.Stub {
* LED, vibration, and ringing
*/
@Override
public void onPanelRevealed(boolean clearNotificationEffects) {
public void onPanelRevealed(boolean clearNotificationEffects, int numItems) {
enforceStatusBarService();
long identity = Binder.clearCallingIdentity();
try {
mNotificationDelegate.onPanelRevealed(clearNotificationEffects);
mNotificationDelegate.onPanelRevealed(clearNotificationEffects, numItems);
} finally {
Binder.restoreCallingIdentity(identity);
}