Loading res/layout/reset_importance_button.xmldeleted 100644 → 0 +0 −33 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <!-- ~ Copyright (C) 2020 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="wrap_content" android:orientation="vertical"> <Button android:id="@+id/reset_importance_button" style="@style/ActionPrimaryButton" android:layout_marginStart="@dimen/screen_margin_sides" android:text="@string/asst_importance_reset_title" android:layout_gravity="start" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout> No newline at end of file res/xml/development_settings.xml +1 −3 Original line number Diff line number Diff line Loading @@ -609,11 +609,9 @@ android:title="@string/show_notification_channel_warnings" android:summary="@string/show_notification_channel_warnings_summary" /> <com.android.settingslib.widget.LayoutPreference <Preference android:key="asst_importance_reset" android:title="@string/asst_importance_reset_title" android:selectable="false" android:layout="@layout/reset_importance_button" settings:controller="com.android.settings.notification.ImportanceResetPreferenceController" /> <Preference Loading src/com/android/settings/notification/ImportanceResetPreferenceController.java +8 −17 Original line number Diff line number Diff line Loading @@ -17,24 +17,20 @@ package com.android.settings.notification; import android.content.Context; import android.view.View; import android.widget.Button; import android.text.TextUtils; import android.widget.Toast; import androidx.preference.Preference; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import com.android.settingslib.widget.LayoutPreference; public class ImportanceResetPreferenceController extends BasePreferenceController implements View.OnClickListener { public class ImportanceResetPreferenceController extends BasePreferenceController { public static final String KEY = "asst_importance_reset"; private static final String TAG = "ResetImportanceButton"; private NotificationBackend mBackend; private Button mButton; public ImportanceResetPreferenceController(Context context, String key) { super(context, key); Loading @@ -47,19 +43,14 @@ public class ImportanceResetPreferenceController extends BasePreferenceControlle } @Override public void updateState(Preference preference) { super.updateState(preference); mButton = ((LayoutPreference) preference) .findViewById(R.id.reset_importance_button); mButton.setOnClickListener(this); public boolean handlePreferenceTreeClick(Preference preference) { if (!TextUtils.equals(preference.getKey(), getPreferenceKey())) { return false; } @Override public void onClick(View v) { mBackend.resetNotificationImportance(); Toast.makeText(mContext, R.string.reset_importance_completed, Toast.LENGTH_SHORT) .show(); return true; } @Override Loading tests/robotests/src/com/android/settings/notification/ImportanceResetPreferenceControllerTest.java +6 −9 Original line number Diff line number Diff line Loading @@ -26,10 +26,10 @@ import static org.mockito.Mockito.when; import android.content.Context; import android.view.View; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settings.R; import com.android.settingslib.widget.LayoutPreference; import org.junit.Before; import org.junit.Test; Loading @@ -43,12 +43,11 @@ import org.robolectric.util.ReflectionHelpers; @RunWith(RobolectricTestRunner.class) public class ImportanceResetPreferenceControllerTest { private static final String KEY = "asst_importance_reset"; private ImportanceResetPreferenceController mController; @Mock private PreferenceScreen mScreen; private LayoutPreference mPreference; private Preference mPreference; private Context mContext; @Mock private NotificationBackend mBackend; Loading @@ -58,9 +57,10 @@ public class ImportanceResetPreferenceControllerTest { MockitoAnnotations.initMocks(this); mContext = RuntimeEnvironment.application; mPreference = new LayoutPreference(mContext, R.layout.reset_importance_button); mPreference = new Preference(mContext); mPreference.setKey(ImportanceResetPreferenceController.KEY); when(mScreen.findPreference(anyString())).thenReturn(mPreference); mController = new ImportanceResetPreferenceController(mContext, KEY); mController = new ImportanceResetPreferenceController(mContext, "some_key"); mController.displayPreference(mScreen); ReflectionHelpers.setField(mController, "mBackend", mBackend); Loading @@ -68,10 +68,7 @@ public class ImportanceResetPreferenceControllerTest { @Test public void onClick_callReset() { final View view = mPreference.findViewById(R.id.reset_importance_button); mController.updateState(mPreference); assertThat(view.getVisibility()).isEqualTo(View.VISIBLE); view.performClick(); mController.handlePreferenceTreeClick(mPreference); verify(mBackend, times(1)).resetNotificationImportance(); } Loading Loading
res/layout/reset_importance_button.xmldeleted 100644 → 0 +0 −33 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <!-- ~ Copyright (C) 2020 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="wrap_content" android:orientation="vertical"> <Button android:id="@+id/reset_importance_button" style="@style/ActionPrimaryButton" android:layout_marginStart="@dimen/screen_margin_sides" android:text="@string/asst_importance_reset_title" android:layout_gravity="start" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout> No newline at end of file
res/xml/development_settings.xml +1 −3 Original line number Diff line number Diff line Loading @@ -609,11 +609,9 @@ android:title="@string/show_notification_channel_warnings" android:summary="@string/show_notification_channel_warnings_summary" /> <com.android.settingslib.widget.LayoutPreference <Preference android:key="asst_importance_reset" android:title="@string/asst_importance_reset_title" android:selectable="false" android:layout="@layout/reset_importance_button" settings:controller="com.android.settings.notification.ImportanceResetPreferenceController" /> <Preference Loading
src/com/android/settings/notification/ImportanceResetPreferenceController.java +8 −17 Original line number Diff line number Diff line Loading @@ -17,24 +17,20 @@ package com.android.settings.notification; import android.content.Context; import android.view.View; import android.widget.Button; import android.text.TextUtils; import android.widget.Toast; import androidx.preference.Preference; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import com.android.settingslib.widget.LayoutPreference; public class ImportanceResetPreferenceController extends BasePreferenceController implements View.OnClickListener { public class ImportanceResetPreferenceController extends BasePreferenceController { public static final String KEY = "asst_importance_reset"; private static final String TAG = "ResetImportanceButton"; private NotificationBackend mBackend; private Button mButton; public ImportanceResetPreferenceController(Context context, String key) { super(context, key); Loading @@ -47,19 +43,14 @@ public class ImportanceResetPreferenceController extends BasePreferenceControlle } @Override public void updateState(Preference preference) { super.updateState(preference); mButton = ((LayoutPreference) preference) .findViewById(R.id.reset_importance_button); mButton.setOnClickListener(this); public boolean handlePreferenceTreeClick(Preference preference) { if (!TextUtils.equals(preference.getKey(), getPreferenceKey())) { return false; } @Override public void onClick(View v) { mBackend.resetNotificationImportance(); Toast.makeText(mContext, R.string.reset_importance_completed, Toast.LENGTH_SHORT) .show(); return true; } @Override Loading
tests/robotests/src/com/android/settings/notification/ImportanceResetPreferenceControllerTest.java +6 −9 Original line number Diff line number Diff line Loading @@ -26,10 +26,10 @@ import static org.mockito.Mockito.when; import android.content.Context; import android.view.View; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settings.R; import com.android.settingslib.widget.LayoutPreference; import org.junit.Before; import org.junit.Test; Loading @@ -43,12 +43,11 @@ import org.robolectric.util.ReflectionHelpers; @RunWith(RobolectricTestRunner.class) public class ImportanceResetPreferenceControllerTest { private static final String KEY = "asst_importance_reset"; private ImportanceResetPreferenceController mController; @Mock private PreferenceScreen mScreen; private LayoutPreference mPreference; private Preference mPreference; private Context mContext; @Mock private NotificationBackend mBackend; Loading @@ -58,9 +57,10 @@ public class ImportanceResetPreferenceControllerTest { MockitoAnnotations.initMocks(this); mContext = RuntimeEnvironment.application; mPreference = new LayoutPreference(mContext, R.layout.reset_importance_button); mPreference = new Preference(mContext); mPreference.setKey(ImportanceResetPreferenceController.KEY); when(mScreen.findPreference(anyString())).thenReturn(mPreference); mController = new ImportanceResetPreferenceController(mContext, KEY); mController = new ImportanceResetPreferenceController(mContext, "some_key"); mController.displayPreference(mScreen); ReflectionHelpers.setField(mController, "mBackend", mBackend); Loading @@ -68,10 +68,7 @@ public class ImportanceResetPreferenceControllerTest { @Test public void onClick_callReset() { final View view = mPreference.findViewById(R.id.reset_importance_button); mController.updateState(mPreference); assertThat(view.getVisibility()).isEqualTo(View.VISIBLE); view.performClick(); mController.handlePreferenceTreeClick(mPreference); verify(mBackend, times(1)).resetNotificationImportance(); } Loading