am c40a7fe0: Merge "Fix three-line notifications." into jb-dev
* commit 'c40a7fe00257d5742bd10bc611cd11d1600f469f': Fix three-line notifications.
This commit is contained in:
@@ -20,6 +20,7 @@ import com.android.internal.R;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.res.Resources;
|
||||
import android.graphics.Bitmap;
|
||||
import android.media.AudioManager;
|
||||
import android.net.Uri;
|
||||
@@ -31,6 +32,8 @@ import android.os.SystemClock;
|
||||
import android.text.TextUtils;
|
||||
import android.util.IntProperty;
|
||||
import android.util.Log;
|
||||
import android.util.Slog;
|
||||
import android.util.TypedValue;
|
||||
import android.view.View;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.RemoteViews;
|
||||
@@ -1378,8 +1381,8 @@ public class Notification implements Parcelable
|
||||
|
||||
private RemoteViews applyStandardTemplate(int resId) {
|
||||
RemoteViews contentView = new RemoteViews(mContext.getPackageName(), resId);
|
||||
boolean hasLine3 = false;
|
||||
boolean hasLine2 = false;
|
||||
boolean showLine3 = false;
|
||||
boolean showLine2 = false;
|
||||
int smallIconImageViewId = R.id.icon;
|
||||
if (mLargeIcon != null) {
|
||||
contentView.setImageViewBitmap(R.id.icon, mLargeIcon);
|
||||
@@ -1401,15 +1404,13 @@ public class Notification implements Parcelable
|
||||
contentView.setTextViewText(R.id.title, mContentTitle);
|
||||
}
|
||||
if (mContentText != null) {
|
||||
contentView.setTextViewText(
|
||||
(mSubText != null) ? R.id.text2 : R.id.text,
|
||||
mContentText);
|
||||
hasLine3 = true;
|
||||
contentView.setTextViewText(R.id.text, mContentText);
|
||||
showLine3 = true;
|
||||
}
|
||||
if (mContentInfo != null) {
|
||||
contentView.setTextViewText(R.id.info, mContentInfo);
|
||||
contentView.setViewVisibility(R.id.info, View.VISIBLE);
|
||||
hasLine3 = true;
|
||||
showLine3 = true;
|
||||
} else if (mNumber > 0) {
|
||||
final int tooBig = mContext.getResources().getInteger(
|
||||
R.integer.status_bar_notification_info_maxnum);
|
||||
@@ -1421,25 +1422,42 @@ public class Notification implements Parcelable
|
||||
contentView.setTextViewText(R.id.info, f.format(mNumber));
|
||||
}
|
||||
contentView.setViewVisibility(R.id.info, View.VISIBLE);
|
||||
hasLine3 = true;
|
||||
showLine3 = true;
|
||||
} else {
|
||||
contentView.setViewVisibility(R.id.info, View.GONE);
|
||||
}
|
||||
|
||||
// Need to show three lines?
|
||||
if (mSubText != null) {
|
||||
contentView.setTextViewText(R.id.text, mSubText);
|
||||
contentView.setViewVisibility(R.id.text2,
|
||||
mContentText != null ? View.VISIBLE : View.GONE);
|
||||
if (mContentText != null) {
|
||||
contentView.setTextViewText(R.id.text2, mContentText);
|
||||
// need to shrink all the type to make sure everything fits
|
||||
contentView.setViewVisibility(R.id.text2, View.VISIBLE);
|
||||
showLine2 = true;
|
||||
} else {
|
||||
contentView.setViewVisibility(R.id.text2, View.GONE);
|
||||
}
|
||||
} else {
|
||||
contentView.setViewVisibility(R.id.text2, View.GONE);
|
||||
if (mProgressMax != 0 || mProgressIndeterminate) {
|
||||
contentView.setProgressBar(
|
||||
R.id.progress, mProgressMax, mProgress, mProgressIndeterminate);
|
||||
contentView.setViewVisibility(R.id.progress, View.VISIBLE);
|
||||
showLine2 = true;
|
||||
} else {
|
||||
contentView.setViewVisibility(R.id.progress, View.GONE);
|
||||
}
|
||||
}
|
||||
if (showLine2) {
|
||||
final Resources res = mContext.getResources();
|
||||
final float subTextSize = res.getDimensionPixelSize(
|
||||
R.dimen.notification_subtext_size);
|
||||
contentView.setTextViewTextSize(R.id.text, TypedValue.COMPLEX_UNIT_PX, subTextSize);
|
||||
// vertical centering
|
||||
contentView.setViewPadding(R.id.line1, 0, 0, 0, 0);
|
||||
}
|
||||
|
||||
if (mWhen != 0) {
|
||||
if (mUseChronometer) {
|
||||
contentView.setViewVisibility(R.id.chronometer, View.VISIBLE);
|
||||
@@ -1451,7 +1469,7 @@ public class Notification implements Parcelable
|
||||
contentView.setLong(R.id.time, "setTime", mWhen);
|
||||
}
|
||||
}
|
||||
contentView.setViewVisibility(R.id.line3, hasLine3 ? View.VISIBLE : View.GONE);
|
||||
contentView.setViewVisibility(R.id.line3, showLine3 ? View.VISIBLE : View.GONE);
|
||||
return contentView;
|
||||
}
|
||||
|
||||
@@ -1629,18 +1647,8 @@ public class Notification implements Parcelable
|
||||
mBuilder.setContentTitle(mBigContentTitle);
|
||||
}
|
||||
|
||||
if (mBuilder.mSubText == null) {
|
||||
mBuilder.setContentText(null);
|
||||
}
|
||||
|
||||
RemoteViews contentView = mBuilder.applyStandardTemplateWithActions(layoutId);
|
||||
|
||||
if (mBuilder.mSubText == null) {
|
||||
contentView.setViewVisibility(R.id.line3, View.GONE);
|
||||
} else {
|
||||
contentView.setViewVisibility(R.id.line3, View.VISIBLE);
|
||||
}
|
||||
|
||||
if (mBigContentTitle != null && mBigContentTitle.equals("")) {
|
||||
contentView.setViewVisibility(R.id.line1, View.GONE);
|
||||
} else {
|
||||
@@ -1650,8 +1658,10 @@ public class Notification implements Parcelable
|
||||
if (mSummaryText != null && !mSummaryText.equals("")) {
|
||||
contentView.setViewVisibility(R.id.overflow_title, View.VISIBLE);
|
||||
contentView.setTextViewText(R.id.overflow_title, mSummaryText);
|
||||
contentView.setViewVisibility(R.id.line3, View.GONE);
|
||||
} else {
|
||||
contentView.setViewVisibility(R.id.overflow_title, View.GONE);
|
||||
contentView.setViewVisibility(R.id.line3, View.VISIBLE);
|
||||
}
|
||||
|
||||
return contentView;
|
||||
|
||||
@@ -38,14 +38,15 @@
|
||||
android:orientation="vertical"
|
||||
android:paddingLeft="12dp"
|
||||
android:paddingRight="12dp"
|
||||
android:paddingTop="4dp"
|
||||
android:paddingBottom="4dp"
|
||||
android:gravity="center_vertical"
|
||||
android:paddingTop="2dp"
|
||||
android:paddingBottom="2dp"
|
||||
android:gravity="top"
|
||||
>
|
||||
<LinearLayout
|
||||
android:id="@+id/line1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="6dp"
|
||||
android:orientation="horizontal"
|
||||
>
|
||||
<TextView android:id="@+id/title"
|
||||
@@ -85,8 +86,15 @@
|
||||
android:ellipsize="marquee"
|
||||
android:visibility="gone"
|
||||
/>
|
||||
<ProgressBar
|
||||
android:id="@android:id/progress"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="12dp"
|
||||
android:visibility="gone"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
/>
|
||||
<TextView android:id="@+id/overflow_title"
|
||||
android:textAppearance="@style/TextAppearance.StatusBar.EventContent.Title"
|
||||
android:textAppearance="@style/TextAppearance.StatusBar.EventContent"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:singleLine="true"
|
||||
@@ -123,21 +131,14 @@
|
||||
/>
|
||||
<ImageView android:id="@+id/right_icon"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_gravity="center"
|
||||
android:layout_weight="0"
|
||||
android:scaleType="center"
|
||||
android:scaleType="centerInside"
|
||||
android:paddingLeft="8dp"
|
||||
android:visibility="gone"
|
||||
android:drawableAlpha="180"
|
||||
/>
|
||||
</LinearLayout>
|
||||
<ProgressBar
|
||||
android:id="@android:id/progress"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
/>
|
||||
</LinearLayout>
|
||||
</FrameLayout>
|
||||
|
||||
@@ -38,9 +38,9 @@
|
||||
android:orientation="vertical"
|
||||
android:paddingLeft="12dp"
|
||||
android:paddingRight="12dp"
|
||||
android:paddingTop="4dp"
|
||||
android:paddingBottom="4dp"
|
||||
android:gravity="center_vertical"
|
||||
android:paddingTop="2dp"
|
||||
android:paddingBottom="2dp"
|
||||
android:gravity="top"
|
||||
>
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
@@ -52,6 +52,7 @@
|
||||
android:id="@+id/line1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="6dp"
|
||||
android:orientation="horizontal"
|
||||
>
|
||||
<TextView android:id="@+id/title"
|
||||
@@ -126,10 +127,10 @@
|
||||
/>
|
||||
<ImageView android:id="@+id/right_icon"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_gravity="center"
|
||||
android:layout_weight="0"
|
||||
android:scaleType="center"
|
||||
android:scaleType="centerInside"
|
||||
android:paddingLeft="8dp"
|
||||
android:visibility="gone"
|
||||
android:drawableAlpha="180"
|
||||
@@ -138,7 +139,7 @@
|
||||
<ProgressBar
|
||||
android:id="@android:id/progress"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_height="12dp"
|
||||
android:visibility="gone"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
/>
|
||||
|
||||
@@ -31,6 +31,13 @@
|
||||
android:layout_gravity="bottom"
|
||||
android:scaleType="centerCrop"
|
||||
/>
|
||||
<ImageView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="6dp"
|
||||
android:layout_marginTop="64dp"
|
||||
android:scaleType="fitXY"
|
||||
android:src="@drawable/title_bar_shadow"
|
||||
/>
|
||||
<include layout="@layout/notification_template_base"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
||||
@@ -36,9 +36,9 @@
|
||||
android:orientation="vertical"
|
||||
android:paddingLeft="12dp"
|
||||
android:paddingRight="12dp"
|
||||
android:paddingTop="4dp"
|
||||
android:paddingBottom="4dp"
|
||||
android:gravity="center_vertical"
|
||||
android:paddingTop="2dp"
|
||||
android:paddingBottom="2dp"
|
||||
android:gravity="top"
|
||||
>
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
@@ -50,6 +50,7 @@
|
||||
android:id="@+id/line1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="6dp"
|
||||
android:orientation="horizontal"
|
||||
android:layout_gravity="top"
|
||||
android:layout_weight="0"
|
||||
@@ -92,11 +93,18 @@
|
||||
android:layout_weight="0"
|
||||
android:visibility="gone"
|
||||
/>
|
||||
<ProgressBar
|
||||
android:id="@android:id/progress"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="12dp"
|
||||
android:visibility="gone"
|
||||
android:layout_weight="0"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
/>
|
||||
<TextView android:id="@+id/big_text"
|
||||
android:textAppearance="@style/TextAppearance.StatusBar.EventContent"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginTop="2dp"
|
||||
android:layout_marginBottom="2dp"
|
||||
android:singleLine="false"
|
||||
android:visibility="gone"
|
||||
@@ -113,7 +121,7 @@
|
||||
android:layout_weight="1"
|
||||
/>
|
||||
<TextView android:id="@+id/overflow_title"
|
||||
android:textAppearance="@style/TextAppearance.StatusBar.EventContent.Title"
|
||||
android:textAppearance="@style/TextAppearance.StatusBar.EventContent"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:singleLine="true"
|
||||
@@ -127,7 +135,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="0"
|
||||
>
|
||||
<TextView android:id="@+id/text"
|
||||
android:textAppearance="@style/TextAppearance.StatusBar.EventContent"
|
||||
@@ -151,22 +159,14 @@
|
||||
/>
|
||||
<ImageView android:id="@+id/right_icon"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_gravity="center"
|
||||
android:layout_weight="0"
|
||||
android:scaleType="center"
|
||||
android:scaleType="centerInside"
|
||||
android:paddingLeft="8dp"
|
||||
android:visibility="gone"
|
||||
android:drawableAlpha="180"
|
||||
/>
|
||||
</LinearLayout>
|
||||
<ProgressBar
|
||||
android:id="@android:id/progress"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
android:layout_weight="0"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
/>
|
||||
</LinearLayout>
|
||||
</FrameLayout>
|
||||
|
||||
@@ -38,14 +38,15 @@
|
||||
android:orientation="vertical"
|
||||
android:paddingLeft="12dp"
|
||||
android:paddingRight="12dp"
|
||||
android:paddingTop="4dp"
|
||||
android:paddingBottom="4dp"
|
||||
android:gravity="center_vertical"
|
||||
android:paddingTop="2dp"
|
||||
android:paddingBottom="2dp"
|
||||
android:gravity="top"
|
||||
>
|
||||
<LinearLayout
|
||||
android:id="@+id/line1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="6dp"
|
||||
android:orientation="horizontal"
|
||||
android:layout_weight="0"
|
||||
>
|
||||
@@ -87,6 +88,14 @@
|
||||
android:visibility="gone"
|
||||
android:layout_weight="0"
|
||||
/>
|
||||
<ProgressBar
|
||||
android:id="@android:id/progress"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="12dp"
|
||||
android:visibility="gone"
|
||||
android:layout_weight="0"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
/>
|
||||
<TextView android:id="@+id/inbox_text0"
|
||||
android:textAppearance="@style/TextAppearance.StatusBar.EventContent"
|
||||
android:layout_width="match_parent"
|
||||
@@ -168,7 +177,7 @@
|
||||
android:layout_weight="0"
|
||||
/>
|
||||
<TextView android:id="@+id/overflow_title"
|
||||
android:textAppearance="@style/TextAppearance.StatusBar.EventContent.Title"
|
||||
android:textAppearance="@style/TextAppearance.StatusBar.EventContent"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:singleLine="true"
|
||||
@@ -206,22 +215,14 @@
|
||||
/>
|
||||
<ImageView android:id="@+id/right_icon"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_gravity="center"
|
||||
android:layout_weight="0"
|
||||
android:scaleType="center"
|
||||
android:scaleType="centerInside"
|
||||
android:paddingLeft="8dp"
|
||||
android:visibility="gone"
|
||||
android:drawableAlpha="180"
|
||||
/>
|
||||
</LinearLayout>
|
||||
<ProgressBar
|
||||
android:id="@android:id/progress"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
android:layout_weight="0"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
/>
|
||||
</LinearLayout>
|
||||
</FrameLayout>
|
||||
|
||||
@@ -227,4 +227,11 @@
|
||||
action bar tabs from becoming too wide on a wide screen when only
|
||||
a few are present. -->
|
||||
<dimen name="action_bar_stacked_tab_max_width">180dp</dimen>
|
||||
|
||||
<!-- Size of notification text (see TextAppearance.StatusBar.EventContent) -->
|
||||
<dimen name="notification_text_size">14dp</dimen>
|
||||
<!-- Size of notification text titles (see TextAppearance.StatusBar.EventContent.Title) -->
|
||||
<dimen name="notification_title_text_size">18dp</dimen>
|
||||
<!-- Size of smaller notification text (see TextAppearance.StatusBar.EventContent.Line2, Info, Time) -->
|
||||
<dimen name="notification_subtext_size">12dp</dimen>
|
||||
</resources>
|
||||
|
||||
@@ -297,6 +297,9 @@
|
||||
<java-symbol type="dimen" name="volume_panel_top" />
|
||||
<java-symbol type="dimen" name="action_bar_stacked_max_height" />
|
||||
<java-symbol type="dimen" name="action_bar_stacked_tab_max_width" />
|
||||
<java-symbol type="dimen" name="notification_text_size" />
|
||||
<java-symbol type="dimen" name="notification_title_text_size" />
|
||||
<java-symbol type="dimen" name="notification_subtext_size" />
|
||||
|
||||
<java-symbol type="string" name="addToDictionary" />
|
||||
<java-symbol type="string" name="action_bar_home_description" />
|
||||
|
||||
@@ -240,23 +240,23 @@ please see styles_device_defaults.xml.
|
||||
<!-- Notification content styles -->
|
||||
<style name="TextAppearance.StatusBar.EventContent">
|
||||
<item name="android:textColor">#808080</item>
|
||||
<item name="android:textSize">14dp</item>
|
||||
<item name="android:textSize">@dimen/notification_text_size</item>
|
||||
</style>
|
||||
<style name="TextAppearance.StatusBar.EventContent.Title">
|
||||
<item name="android:textColor">#ffffff</item>
|
||||
<item name="android:fontFamily">sans-serif-light</item>
|
||||
<item name="android:textSize">18dp</item>
|
||||
<item name="android:textSize">@dimen/notification_title_text_size</item>
|
||||
<item name="android:textStyle">bold</item>
|
||||
</style>
|
||||
<style name="TextAppearance.StatusBar.EventContent.Line2">
|
||||
<!-- inherit all -->
|
||||
<item name="android:textSize">@dimen/notification_subtext_size</item>
|
||||
</style>
|
||||
<style name="TextAppearance.StatusBar.EventContent.Info">
|
||||
<item name="android:textSize">12sp</item>
|
||||
<item name="android:textSize">@dimen/notification_subtext_size</item>
|
||||
<item name="android:textColor">#666666</item>
|
||||
</style>
|
||||
<style name="TextAppearance.StatusBar.EventContent.Time">
|
||||
<item name="android:textSize">12sp</item>
|
||||
<item name="android:textSize">@dimen/notification_subtext_size</item>
|
||||
<item name="android:textColor">#666666</item>
|
||||
</style>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user