Merge "Update defend tips card" into tm-qpr-dev am: 8bf872331b
am: 06e92f5e45
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19764101 Change-Id: I6bf829b5f72796eb136bc2e6745008e56032cfc5 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -27,8 +27,6 @@
|
||||
android:clipToPadding="false"
|
||||
android:baselineAligned="false">
|
||||
|
||||
<include layout="@layout/card_preference_icon_frame"/>
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -36,10 +34,22 @@
|
||||
android:paddingTop="16dp"
|
||||
android:paddingBottom="16dp">
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/card_preference_parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignTop="@android:id/title"
|
||||
android:layout_alignBottom="@android:id/summary"
|
||||
android:gravity="center_vertical">
|
||||
|
||||
<include layout="@layout/card_preference_icon_frame"/>
|
||||
</LinearLayout>
|
||||
|
||||
<TextView
|
||||
android:id="@android:id/title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_toEndOf="@+id/card_preference_parent"
|
||||
android:maxLines="2"
|
||||
android:textAppearance="?android:attr/textAppearanceListItem"
|
||||
android:ellipsize="marquee"/>
|
||||
@@ -61,7 +71,7 @@
|
||||
android:id="@+id/card_preference_buttons"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginTop="24dp"
|
||||
android:layout_below="@android:id/summary"
|
||||
android:visibility="gone">
|
||||
<Button
|
||||
@@ -69,7 +79,7 @@
|
||||
style="@style/CardPreferencePrimaryButton"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginHorizontal="4dp"
|
||||
android:layout_marginStart="20dp"
|
||||
android:layout_toStartOf="@android:id/button2"
|
||||
android:visibility="gone"/>
|
||||
<Button
|
||||
@@ -77,7 +87,7 @@
|
||||
style="@style/CardPreferenceBorderlessButton"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginHorizontal="4dp"
|
||||
android:layout_marginHorizontal="20dp"
|
||||
android:layout_alignParentEnd="true"
|
||||
android:visibility="gone"/>
|
||||
</RelativeLayout>
|
||||
|
@@ -20,7 +20,9 @@
|
||||
android:id="@+id/container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
android:layout_marginVertical="8dp"
|
||||
android:layout_marginStart="24dp"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:foreground="@drawable/contextual_card_background"
|
||||
android:clickable="true"
|
||||
style="@style/ContextualCardStyle">
|
||||
|
@@ -6246,9 +6246,11 @@
|
||||
<!-- Title for the battery limited temporarily tip [CHAR LIMIT=NONE] -->
|
||||
<string name="battery_tip_limited_temporarily_title">Charging is paused</string>
|
||||
<!-- Summary for the battery limited temporarily tip [CHAR LIMIT=NONE] -->
|
||||
<string name="battery_tip_limited_temporarily_summary">Protecting battery to extend battery lifespan\nTap to learn more</string>
|
||||
<string name="battery_tip_limited_temporarily_summary">Protecting battery to extend battery lifespan</string>
|
||||
<!-- Summary for the battery limited temporarily extra tip [CHAR LIMIT=NONE] -->
|
||||
<string name="battery_tip_limited_temporarily_extra_summary"><xliff:g id="percent" example="10%">%1$s</xliff:g></string>
|
||||
<!-- Content description for the battery limited temporarily tip secondary button [CHAR LIMIT=NONE] -->
|
||||
<string name="battery_tip_limited_temporarily_sec_button_content_description">Learn more about charging is paused</string>
|
||||
<!-- Text of battery limited temporarily tip resume charge button. [CHAR LIMIT=NONE] -->
|
||||
<string name="battery_tip_limited_temporarily_dialog_resume_charge">Resume charging</string>
|
||||
<!-- Message of battery limited temporarily tip. [CHAR LIMIT=NONE] -->
|
||||
|
@@ -974,6 +974,7 @@
|
||||
<item name="android:textSize">14sp</item>
|
||||
<item name="android:textAllCaps">false</item>
|
||||
<item name="android:singleLine">true</item>
|
||||
<item name="android:paddingHorizontal">24dp</item>
|
||||
</style>
|
||||
|
||||
<style name="CardPreferenceBorderlessButton"
|
||||
|
@@ -29,7 +29,6 @@ import androidx.annotation.NonNull;
|
||||
import com.android.internal.util.CollectionUtils;
|
||||
import com.android.settings.SettingsActivity;
|
||||
import com.android.settings.core.InstrumentedPreferenceFragment;
|
||||
import com.android.settings.fuelgauge.batterytip.actions.BatteryDefenderAction;
|
||||
import com.android.settings.fuelgauge.batterytip.actions.BatteryTipAction;
|
||||
import com.android.settings.fuelgauge.batterytip.actions.OpenBatterySaverAction;
|
||||
import com.android.settings.fuelgauge.batterytip.actions.OpenRestrictAppFragmentAction;
|
||||
@@ -107,8 +106,6 @@ public class BatteryTipUtils {
|
||||
}
|
||||
case BatteryTip.TipType.REMOVE_APP_RESTRICTION:
|
||||
return new UnrestrictAppAction(settingsActivity, (UnrestrictAppTip) batteryTip);
|
||||
case BatteryTip.TipType.BATTERY_DEFENDER:
|
||||
return new BatteryDefenderAction(settingsActivity);
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
|
@@ -29,6 +29,7 @@ import androidx.preference.Preference;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settings.widget.CardPreference;
|
||||
import com.android.settingslib.HelpUtils;
|
||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||
|
||||
import java.text.NumberFormat;
|
||||
@@ -48,6 +49,7 @@ public class BatteryDefenderTip extends BatteryTip {
|
||||
public BatteryDefenderTip(@StateType int state, boolean extraDefend) {
|
||||
super(TipType.BATTERY_DEFENDER, state, true /* showDialog */);
|
||||
mExtraDefend = extraDefend;
|
||||
mShowDialog = false;
|
||||
}
|
||||
|
||||
private BatteryDefenderTip(Parcel in) {
|
||||
@@ -99,6 +101,7 @@ public class BatteryDefenderTip extends BatteryTip {
|
||||
return;
|
||||
}
|
||||
|
||||
cardPreference.setSelectable(false);
|
||||
cardPreference.setPrimaryButtonText(
|
||||
context.getString(R.string.battery_tip_charge_to_full_button));
|
||||
cardPreference.setPrimaryButtonClickListener(
|
||||
@@ -109,8 +112,15 @@ public class BatteryDefenderTip extends BatteryTip {
|
||||
cardPreference.setPrimaryButtonVisible(isPluggedIn(context));
|
||||
|
||||
cardPreference.setSecondaryButtonText(context.getString(R.string.learn_more));
|
||||
cardPreference.setSecondaryButtonClickListener(unused -> cardPreference.performClick());
|
||||
cardPreference.setSecondaryButtonClickListener(
|
||||
button -> button.startActivityForResult(
|
||||
HelpUtils.getHelpIntent(
|
||||
context,
|
||||
context.getString(R.string.help_url_battery_defender),
|
||||
/* backupContext */ ""), /* requestCode */ 0));
|
||||
cardPreference.setSecondaryButtonVisible(true);
|
||||
cardPreference.setSecondaryButtonContentDescription(context.getString(
|
||||
R.string.battery_tip_limited_temporarily_sec_button_content_description));
|
||||
}
|
||||
|
||||
private CardPreference castToCardPreferenceSafely(Preference preference) {
|
||||
|
@@ -140,6 +140,15 @@ public class CardPreference extends Preference {
|
||||
updateButtonGroupsVisibility();
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the text of content description on secondary button.
|
||||
*
|
||||
* @param text text for the content description
|
||||
*/
|
||||
public void setSecondaryButtonContentDescription(String text) {
|
||||
mSecondaryButton.ifPresent(button -> button.setContentDescription(text));
|
||||
}
|
||||
|
||||
private void updateButtonGroupsVisibility() {
|
||||
int visibility =
|
||||
(mPrimaryButtonVisible || mSecondaryButtonVisible) ? View.VISIBLE : View.GONE;
|
||||
|
@@ -23,7 +23,6 @@ import static org.mockito.Mockito.when;
|
||||
|
||||
import com.android.settings.SettingsActivity;
|
||||
import com.android.settings.core.InstrumentedPreferenceFragment;
|
||||
import com.android.settings.fuelgauge.batterytip.actions.BatteryDefenderAction;
|
||||
import com.android.settings.fuelgauge.batterytip.actions.OpenBatterySaverAction;
|
||||
import com.android.settings.fuelgauge.batterytip.actions.OpenRestrictAppFragmentAction;
|
||||
import com.android.settings.fuelgauge.batterytip.actions.RestrictAppAction;
|
||||
@@ -105,10 +104,10 @@ public class BatteryTipUtilsTest {
|
||||
|
||||
@Test
|
||||
public void
|
||||
testGetActionForBatteryTip_typeBatteryDefenderStateNew_returnActionBatteryDefender() {
|
||||
testGetActionForBatteryTip_typeBatteryDefenderStateNew_returnNullAction() {
|
||||
when(mBatteryDefenderTip.getState()).thenReturn(BatteryTip.StateType.NEW);
|
||||
|
||||
assertThat(BatteryTipUtils.getActionForBatteryTip(mBatteryDefenderTip, mSettingsActivity,
|
||||
mFragment)).isInstanceOf(BatteryDefenderAction.class);
|
||||
mFragment)).isNull();
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user