Loading packages/SystemUI/res/layout/bubble_expanded_view.xml +8 −29 Original line number Diff line number Diff line Loading @@ -27,12 +27,6 @@ android:layout_height="@dimen/bubble_pointer_height" /> <FrameLayout android:id="@+id/permission_or_settings" android:layout_width="match_parent" android:layout_height="wrap_content" android:animateLayoutChanges="true"> <com.android.systemui.statusbar.AlphaOptimizedButton style="@android:style/Widget.Material.Button.Borderless" android:id="@+id/settings_button" Loading @@ -43,19 +37,4 @@ android:text="@string/manage_bubbles_text" android:textColor="?attr/wallpaperTextColor"/> <include layout="@layout/bubble_permission_view" android:id="@+id/permission_layout" android:layout_width="match_parent" android:layout_height="wrap_content" /> <View android:id="@+id/divider" android:layout_width="match_parent" android:layout_height="1dp" android:layout_gravity="bottom" android:background="?android:attr/dividerHorizontal"/> </FrameLayout> </com.android.systemui.bubbles.BubbleExpandedView> packages/SystemUI/res/layout/bubble_permission_view.xmldeleted 100644 → 0 +0 −85 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <!-- Copyright 2019, The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="@dimen/bubble_permission_height" android:animateLayoutChanges="true" android:orientation="vertical" android:paddingStart="@dimen/bubble_expanded_header_horizontal_padding" android:paddingEnd="@dimen/bubble_expanded_header_horizontal_padding"> <!-- App info --> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_marginTop="@dimen/bubble_expanded_header_horizontal_padding" > <ImageView android:id="@+id/pkgicon" android:layout_width="@dimen/bubble_permission_icon_size" android:layout_height="@dimen/bubble_permission_icon_size" android:layout_centerVertical="true" android:layout_marginEnd="3dp" /> <TextView android:id="@+id/pkgname" android:layout_width="wrap_content" android:layout_height="match_parent" android:textAppearance="@*android:style/TextAppearance.Material.Body2" android:layout_marginStart="3dp" android:layout_marginEnd="2dp" android:singleLine="true" android:gravity="center_vertical" android:layout_centerVertical="true" /> </LinearLayout> <!-- Actual permission --> <TextView android:id="@+id/prompt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:text="@string/bubbles_prompt" style="@*android:style/TextAppearance.DeviceDefault.Notification.Title"/> <!-- Buttons --> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="end" android:orientation="horizontal"> <TextView android:id="@+id/no_bubbles_button" android:text="@string/no_bubbles" android:layout_width="wrap_content" android:layout_height="match_parent" android:background="@drawable/ripple_drawable" style="@style/TextAppearance.NotificationInfo.Button"/> <TextView android:id="@+id/yes_bubbles_button" android:text="@string/yes_bubbles" android:layout_width="wrap_content" android:layout_height="match_parent" android:background="@drawable/ripple_drawable" style="@style/TextAppearance.NotificationInfo.Button"/> </LinearLayout> </LinearLayout> No newline at end of file packages/SystemUI/res/values/dimens.xml +0 −4 Original line number Diff line number Diff line Loading @@ -1123,12 +1123,8 @@ <dimen name="bubble_stack_starting_offset_y">100dp</dimen> <!-- Size of image buttons in the bubble header --> <dimen name="bubble_header_icon_size">48dp</dimen> <!-- Size of the app icon shown in the bubble permission view --> <dimen name="bubble_permission_icon_size">24dp</dimen> <!-- Space between the pointer triangle and the bubble expanded view --> <dimen name="bubble_pointer_margin">8dp</dimen> <!-- Height of the permission prompt shown with bubbles --> <dimen name="bubble_permission_height">120dp</dimen> <!-- Size of the RAT type for CellularTile --> <dimen name="celltile_rat_type_size">10sp</dimen> Loading packages/SystemUI/src/com/android/systemui/bubbles/BubbleExpandedView.java +4 −123 Original line number Diff line number Diff line Loading @@ -22,8 +22,6 @@ import static android.util.StatsLogInternal.BUBBLE_DEVELOPER_ERROR_REPORTED__ERR import static android.util.StatsLogInternal.BUBBLE_DEVELOPER_ERROR_REPORTED__ERROR__DOCUMENT_LAUNCH_NOT_ALWAYS; import static android.view.Display.INVALID_DISPLAY; import android.animation.LayoutTransition; import android.animation.ObjectAnimator; import android.annotation.Nullable; import android.app.ActivityOptions; import android.app.ActivityView; Loading @@ -41,9 +39,7 @@ import android.graphics.Color; import android.graphics.Insets; import android.graphics.Point; import android.graphics.drawable.Drawable; import android.graphics.drawable.GradientDrawable; import android.graphics.drawable.ShapeDrawable; import android.os.RemoteException; import android.os.ServiceManager; import android.os.UserHandle; import android.provider.Settings; Loading @@ -54,13 +50,9 @@ import android.util.StatsLog; import android.view.View; import android.view.ViewGroup; import android.view.WindowInsets; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import com.android.systemui.Dependency; import com.android.systemui.Interpolators; import com.android.systemui.R; import com.android.systemui.recents.TriangleShape; import com.android.systemui.statusbar.AlphaOptimizedButton; Loading @@ -80,10 +72,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList private AlphaOptimizedButton mSettingsIcon; // Permission view private View mPermissionView; private TextView mPermissionPrompt; // Views for expanded state private ExpandableNotificationRow mNotifRow; private ActivityView mActivityView; Loading @@ -97,7 +85,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList private int mMinHeight; private int mSettingsIconHeight; private int mBubbleHeight; private int mPermissionHeight; private int mPointerWidth; private int mPointerHeight; Loading Loading @@ -194,36 +181,11 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList triangleDrawable.setTint(bgColor); mPointerView.setBackground(triangleDrawable); FrameLayout permissionOrSettings = findViewById(R.id.permission_or_settings); LayoutTransition transition = new LayoutTransition(); transition.setDuration(200); ObjectAnimator appearAnimator = ObjectAnimator.ofFloat(null, View.ALPHA, 0f, 1f); transition.setAnimator(LayoutTransition.APPEARING, appearAnimator); transition.setInterpolator(LayoutTransition.APPEARING, Interpolators.ALPHA_IN); ObjectAnimator disappearAnimator = ObjectAnimator.ofFloat(null, View.ALPHA, 1f, 0f); transition.setAnimator(LayoutTransition.DISAPPEARING, disappearAnimator); transition.setInterpolator(LayoutTransition.DISAPPEARING, Interpolators.ALPHA_OUT); transition.setAnimateParentHierarchy(false); permissionOrSettings.setLayoutTransition(transition); permissionOrSettings.getLayoutTransition().enableTransitionType(LayoutTransition.CHANGING); mSettingsIconHeight = getContext().getResources().getDimensionPixelSize( R.dimen.bubble_expanded_header_height); mSettingsIcon = findViewById(R.id.settings_button); mSettingsIcon.setOnClickListener(this); mPermissionHeight = getContext().getResources().getDimensionPixelSize( R.dimen.bubble_permission_height); mPermissionView = findViewById(R.id.permission_layout); mPermissionPrompt = mPermissionView.findViewById(R.id.prompt); findViewById(R.id.no_bubbles_button).setOnClickListener(this); findViewById(R.id.yes_bubbles_button).setOnClickListener(this); mActivityView = new ActivityView(mContext, null /* attrs */, 0 /* defStyle */, true /* singleTaskInstance */); addView(mActivityView); Loading Loading @@ -272,23 +234,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList } } /** * Creates a background with corners rounded based on how the view is configured to display */ private Drawable createPermissionBackground(int bgColor) { TypedArray ta2 = getContext().obtainStyledAttributes( new int[] {android.R.attr.dialogCornerRadius}); final float cr = ta2.getDimension(0, 0f); ta2.recycle(); float[] radii = new float[] {cr, cr, cr, cr, 0, 0, 0, 0}; GradientDrawable chromeBackground = new GradientDrawable(); chromeBackground.setShape(GradientDrawable.RECTANGLE); chromeBackground.setCornerRadii(radii); chromeBackground.setColor(bgColor); return chromeBackground; } /** * Sets the listener to notify when a bubble has been blocked. */ Loading Loading @@ -323,7 +268,7 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList mAppIcon = mPm.getDefaultActivityIcon(); } updateTheme(); togglePermissionOrSettings(); showSettingsIcon(); updateExpandedView(); } Loading Loading @@ -370,10 +315,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList int foregroundColor = ta.getColor(1, Color.BLACK /* default */); ta.recycle(); // Update permission prompt color. mPermissionView.setBackground(createPermissionBackground(backgroundColor)); mPermissionPrompt.setTextColor(foregroundColor); // Update triangle color. ShapeDrawable triangleDrawable = new ShapeDrawable( TriangleShape.create(mPointerWidth, mPointerHeight, false /* pointUp */)); Loading @@ -381,22 +322,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList mPointerView.setBackground(triangleDrawable); } void togglePermissionOrSettings() { boolean hasUserApprovedBubblesForPackage = false; try { hasUserApprovedBubblesForPackage = mNotificationManagerService.hasUserApprovedBubblesForPackage( mEntry.notification.getPackageName(), mEntry.notification.getUid()); } catch (RemoteException e) { Log.w(TAG, e); } if (hasUserApprovedBubblesForPackage) { showSettingsIcon(); } else { showPermissionView(); } } private void updateExpandedView() { mBubbleIntent = getBubbleIntent(mEntry); if (mBubbleIntent != null) { Loading Loading @@ -427,11 +352,8 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList * @return total height that the expanded view occupies. */ int getExpandedSize() { int chromeHeight = mPermissionView.getVisibility() != View.VISIBLE ? mSettingsIconHeight : mPermissionHeight; return mBubbleHeight + mPointerView.getHeight() + mPointerMargin + chromeHeight; + mSettingsIconHeight; } void updateHeight() { Loading @@ -455,11 +377,8 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList } desiredHeight = desiredPx > 0 ? desiredPx : mMinHeight; } int chromeHeight = mPermissionView.getVisibility() != View.VISIBLE ? mSettingsIconHeight : mPermissionHeight; int max = mStackView.getMaxExpandedHeight() - chromeHeight - mPointerView.getHeight() - mPointerMargin; int max = mStackView.getMaxExpandedHeight() - mSettingsIconHeight - mPointerView.getHeight() - mPointerMargin; float height = Math.min(desiredHeight, max); height = Math.max(height, mMinHeight); LayoutParams lp = (LayoutParams) mActivityView.getLayoutParams(); Loading Loading @@ -492,30 +411,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList logBubbleClickEvent(mEntry, StatsLog.BUBBLE_UICHANGED__ACTION__HEADER_GO_TO_SETTINGS); }); } else if (id == R.id.no_bubbles_button) { setBubblesAllowed(false); } else if (id == R.id.yes_bubbles_button) { setBubblesAllowed(true); } } private void setBubblesAllowed(boolean allowed) { try { mNotificationManagerService.setBubblesAllowed( mEntry.notification.getPackageName(), mEntry.notification.getUid(), allowed); if (allowed) { showSettingsIcon(); } else if (mOnBubbleBlockedListener != null) { mOnBubbleBlockedListener.onBubbleBlocked(mEntry); } mStackView.onExpandedHeightChanged(); logBubbleClickEvent(mEntry, allowed ? StatsLog.BUBBLE_UICHANGED__ACTION__PERMISSION_OPT_IN : StatsLog.BUBBLE_UICHANGED__ACTION__PERMISSION_OPT_OUT); } catch (RemoteException e) { Log.w(TAG, e); } } Loading @@ -526,23 +421,9 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList void showSettingsIcon() { updateSettingsContentDescription(); mPermissionView.setVisibility(GONE); mSettingsIcon.setVisibility(VISIBLE); } void showPermissionView() { ((ImageView) mPermissionView.findViewById(R.id.pkgicon)).setImageDrawable(mAppIcon); ((TextView) mPermissionView.findViewById(R.id.pkgname)).setText(mAppName); mPermissionPrompt.setText( getResources().getString(R.string.bubbles_prompt, mAppName)); logBubbleClickEvent(mEntry, StatsLog.BUBBLE_UICHANGED__ACTION__PERMISSION_DIALOG_SHOWN); mSettingsIcon.setVisibility(GONE); mPermissionView.setVisibility(VISIBLE); } /** * Update appearance of the expanded view being displayed. */ Loading Loading
packages/SystemUI/res/layout/bubble_expanded_view.xml +8 −29 Original line number Diff line number Diff line Loading @@ -27,12 +27,6 @@ android:layout_height="@dimen/bubble_pointer_height" /> <FrameLayout android:id="@+id/permission_or_settings" android:layout_width="match_parent" android:layout_height="wrap_content" android:animateLayoutChanges="true"> <com.android.systemui.statusbar.AlphaOptimizedButton style="@android:style/Widget.Material.Button.Borderless" android:id="@+id/settings_button" Loading @@ -43,19 +37,4 @@ android:text="@string/manage_bubbles_text" android:textColor="?attr/wallpaperTextColor"/> <include layout="@layout/bubble_permission_view" android:id="@+id/permission_layout" android:layout_width="match_parent" android:layout_height="wrap_content" /> <View android:id="@+id/divider" android:layout_width="match_parent" android:layout_height="1dp" android:layout_gravity="bottom" android:background="?android:attr/dividerHorizontal"/> </FrameLayout> </com.android.systemui.bubbles.BubbleExpandedView>
packages/SystemUI/res/layout/bubble_permission_view.xmldeleted 100644 → 0 +0 −85 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <!-- Copyright 2019, The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="@dimen/bubble_permission_height" android:animateLayoutChanges="true" android:orientation="vertical" android:paddingStart="@dimen/bubble_expanded_header_horizontal_padding" android:paddingEnd="@dimen/bubble_expanded_header_horizontal_padding"> <!-- App info --> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_marginTop="@dimen/bubble_expanded_header_horizontal_padding" > <ImageView android:id="@+id/pkgicon" android:layout_width="@dimen/bubble_permission_icon_size" android:layout_height="@dimen/bubble_permission_icon_size" android:layout_centerVertical="true" android:layout_marginEnd="3dp" /> <TextView android:id="@+id/pkgname" android:layout_width="wrap_content" android:layout_height="match_parent" android:textAppearance="@*android:style/TextAppearance.Material.Body2" android:layout_marginStart="3dp" android:layout_marginEnd="2dp" android:singleLine="true" android:gravity="center_vertical" android:layout_centerVertical="true" /> </LinearLayout> <!-- Actual permission --> <TextView android:id="@+id/prompt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:text="@string/bubbles_prompt" style="@*android:style/TextAppearance.DeviceDefault.Notification.Title"/> <!-- Buttons --> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="end" android:orientation="horizontal"> <TextView android:id="@+id/no_bubbles_button" android:text="@string/no_bubbles" android:layout_width="wrap_content" android:layout_height="match_parent" android:background="@drawable/ripple_drawable" style="@style/TextAppearance.NotificationInfo.Button"/> <TextView android:id="@+id/yes_bubbles_button" android:text="@string/yes_bubbles" android:layout_width="wrap_content" android:layout_height="match_parent" android:background="@drawable/ripple_drawable" style="@style/TextAppearance.NotificationInfo.Button"/> </LinearLayout> </LinearLayout> No newline at end of file
packages/SystemUI/res/values/dimens.xml +0 −4 Original line number Diff line number Diff line Loading @@ -1123,12 +1123,8 @@ <dimen name="bubble_stack_starting_offset_y">100dp</dimen> <!-- Size of image buttons in the bubble header --> <dimen name="bubble_header_icon_size">48dp</dimen> <!-- Size of the app icon shown in the bubble permission view --> <dimen name="bubble_permission_icon_size">24dp</dimen> <!-- Space between the pointer triangle and the bubble expanded view --> <dimen name="bubble_pointer_margin">8dp</dimen> <!-- Height of the permission prompt shown with bubbles --> <dimen name="bubble_permission_height">120dp</dimen> <!-- Size of the RAT type for CellularTile --> <dimen name="celltile_rat_type_size">10sp</dimen> Loading
packages/SystemUI/src/com/android/systemui/bubbles/BubbleExpandedView.java +4 −123 Original line number Diff line number Diff line Loading @@ -22,8 +22,6 @@ import static android.util.StatsLogInternal.BUBBLE_DEVELOPER_ERROR_REPORTED__ERR import static android.util.StatsLogInternal.BUBBLE_DEVELOPER_ERROR_REPORTED__ERROR__DOCUMENT_LAUNCH_NOT_ALWAYS; import static android.view.Display.INVALID_DISPLAY; import android.animation.LayoutTransition; import android.animation.ObjectAnimator; import android.annotation.Nullable; import android.app.ActivityOptions; import android.app.ActivityView; Loading @@ -41,9 +39,7 @@ import android.graphics.Color; import android.graphics.Insets; import android.graphics.Point; import android.graphics.drawable.Drawable; import android.graphics.drawable.GradientDrawable; import android.graphics.drawable.ShapeDrawable; import android.os.RemoteException; import android.os.ServiceManager; import android.os.UserHandle; import android.provider.Settings; Loading @@ -54,13 +50,9 @@ import android.util.StatsLog; import android.view.View; import android.view.ViewGroup; import android.view.WindowInsets; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import com.android.systemui.Dependency; import com.android.systemui.Interpolators; import com.android.systemui.R; import com.android.systemui.recents.TriangleShape; import com.android.systemui.statusbar.AlphaOptimizedButton; Loading @@ -80,10 +72,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList private AlphaOptimizedButton mSettingsIcon; // Permission view private View mPermissionView; private TextView mPermissionPrompt; // Views for expanded state private ExpandableNotificationRow mNotifRow; private ActivityView mActivityView; Loading @@ -97,7 +85,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList private int mMinHeight; private int mSettingsIconHeight; private int mBubbleHeight; private int mPermissionHeight; private int mPointerWidth; private int mPointerHeight; Loading Loading @@ -194,36 +181,11 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList triangleDrawable.setTint(bgColor); mPointerView.setBackground(triangleDrawable); FrameLayout permissionOrSettings = findViewById(R.id.permission_or_settings); LayoutTransition transition = new LayoutTransition(); transition.setDuration(200); ObjectAnimator appearAnimator = ObjectAnimator.ofFloat(null, View.ALPHA, 0f, 1f); transition.setAnimator(LayoutTransition.APPEARING, appearAnimator); transition.setInterpolator(LayoutTransition.APPEARING, Interpolators.ALPHA_IN); ObjectAnimator disappearAnimator = ObjectAnimator.ofFloat(null, View.ALPHA, 1f, 0f); transition.setAnimator(LayoutTransition.DISAPPEARING, disappearAnimator); transition.setInterpolator(LayoutTransition.DISAPPEARING, Interpolators.ALPHA_OUT); transition.setAnimateParentHierarchy(false); permissionOrSettings.setLayoutTransition(transition); permissionOrSettings.getLayoutTransition().enableTransitionType(LayoutTransition.CHANGING); mSettingsIconHeight = getContext().getResources().getDimensionPixelSize( R.dimen.bubble_expanded_header_height); mSettingsIcon = findViewById(R.id.settings_button); mSettingsIcon.setOnClickListener(this); mPermissionHeight = getContext().getResources().getDimensionPixelSize( R.dimen.bubble_permission_height); mPermissionView = findViewById(R.id.permission_layout); mPermissionPrompt = mPermissionView.findViewById(R.id.prompt); findViewById(R.id.no_bubbles_button).setOnClickListener(this); findViewById(R.id.yes_bubbles_button).setOnClickListener(this); mActivityView = new ActivityView(mContext, null /* attrs */, 0 /* defStyle */, true /* singleTaskInstance */); addView(mActivityView); Loading Loading @@ -272,23 +234,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList } } /** * Creates a background with corners rounded based on how the view is configured to display */ private Drawable createPermissionBackground(int bgColor) { TypedArray ta2 = getContext().obtainStyledAttributes( new int[] {android.R.attr.dialogCornerRadius}); final float cr = ta2.getDimension(0, 0f); ta2.recycle(); float[] radii = new float[] {cr, cr, cr, cr, 0, 0, 0, 0}; GradientDrawable chromeBackground = new GradientDrawable(); chromeBackground.setShape(GradientDrawable.RECTANGLE); chromeBackground.setCornerRadii(radii); chromeBackground.setColor(bgColor); return chromeBackground; } /** * Sets the listener to notify when a bubble has been blocked. */ Loading Loading @@ -323,7 +268,7 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList mAppIcon = mPm.getDefaultActivityIcon(); } updateTheme(); togglePermissionOrSettings(); showSettingsIcon(); updateExpandedView(); } Loading Loading @@ -370,10 +315,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList int foregroundColor = ta.getColor(1, Color.BLACK /* default */); ta.recycle(); // Update permission prompt color. mPermissionView.setBackground(createPermissionBackground(backgroundColor)); mPermissionPrompt.setTextColor(foregroundColor); // Update triangle color. ShapeDrawable triangleDrawable = new ShapeDrawable( TriangleShape.create(mPointerWidth, mPointerHeight, false /* pointUp */)); Loading @@ -381,22 +322,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList mPointerView.setBackground(triangleDrawable); } void togglePermissionOrSettings() { boolean hasUserApprovedBubblesForPackage = false; try { hasUserApprovedBubblesForPackage = mNotificationManagerService.hasUserApprovedBubblesForPackage( mEntry.notification.getPackageName(), mEntry.notification.getUid()); } catch (RemoteException e) { Log.w(TAG, e); } if (hasUserApprovedBubblesForPackage) { showSettingsIcon(); } else { showPermissionView(); } } private void updateExpandedView() { mBubbleIntent = getBubbleIntent(mEntry); if (mBubbleIntent != null) { Loading Loading @@ -427,11 +352,8 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList * @return total height that the expanded view occupies. */ int getExpandedSize() { int chromeHeight = mPermissionView.getVisibility() != View.VISIBLE ? mSettingsIconHeight : mPermissionHeight; return mBubbleHeight + mPointerView.getHeight() + mPointerMargin + chromeHeight; + mSettingsIconHeight; } void updateHeight() { Loading @@ -455,11 +377,8 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList } desiredHeight = desiredPx > 0 ? desiredPx : mMinHeight; } int chromeHeight = mPermissionView.getVisibility() != View.VISIBLE ? mSettingsIconHeight : mPermissionHeight; int max = mStackView.getMaxExpandedHeight() - chromeHeight - mPointerView.getHeight() - mPointerMargin; int max = mStackView.getMaxExpandedHeight() - mSettingsIconHeight - mPointerView.getHeight() - mPointerMargin; float height = Math.min(desiredHeight, max); height = Math.max(height, mMinHeight); LayoutParams lp = (LayoutParams) mActivityView.getLayoutParams(); Loading Loading @@ -492,30 +411,6 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList logBubbleClickEvent(mEntry, StatsLog.BUBBLE_UICHANGED__ACTION__HEADER_GO_TO_SETTINGS); }); } else if (id == R.id.no_bubbles_button) { setBubblesAllowed(false); } else if (id == R.id.yes_bubbles_button) { setBubblesAllowed(true); } } private void setBubblesAllowed(boolean allowed) { try { mNotificationManagerService.setBubblesAllowed( mEntry.notification.getPackageName(), mEntry.notification.getUid(), allowed); if (allowed) { showSettingsIcon(); } else if (mOnBubbleBlockedListener != null) { mOnBubbleBlockedListener.onBubbleBlocked(mEntry); } mStackView.onExpandedHeightChanged(); logBubbleClickEvent(mEntry, allowed ? StatsLog.BUBBLE_UICHANGED__ACTION__PERMISSION_OPT_IN : StatsLog.BUBBLE_UICHANGED__ACTION__PERMISSION_OPT_OUT); } catch (RemoteException e) { Log.w(TAG, e); } } Loading @@ -526,23 +421,9 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList void showSettingsIcon() { updateSettingsContentDescription(); mPermissionView.setVisibility(GONE); mSettingsIcon.setVisibility(VISIBLE); } void showPermissionView() { ((ImageView) mPermissionView.findViewById(R.id.pkgicon)).setImageDrawable(mAppIcon); ((TextView) mPermissionView.findViewById(R.id.pkgname)).setText(mAppName); mPermissionPrompt.setText( getResources().getString(R.string.bubbles_prompt, mAppName)); logBubbleClickEvent(mEntry, StatsLog.BUBBLE_UICHANGED__ACTION__PERMISSION_DIALOG_SHOWN); mSettingsIcon.setVisibility(GONE); mPermissionView.setVisibility(VISIBLE); } /** * Update appearance of the expanded view being displayed. */ Loading