Merge "Remove menu from Network & Internet screen." into pi-dev am: 23035d558a
am: 3fdfb99375
Change-Id: I88a8e8d7ee77bafb5b8180d6d882d1ed9c09bd1f
This commit is contained in:
@@ -26,8 +26,6 @@ import android.content.Context;
|
||||
import android.provider.SearchIndexableResource;
|
||||
import android.support.annotation.VisibleForTesting;
|
||||
import android.util.Log;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
|
||||
import com.android.internal.logging.nano.MetricsProto;
|
||||
import com.android.settings.R;
|
||||
@@ -50,9 +48,6 @@ public class NetworkDashboardFragment extends DashboardFragment implements
|
||||
MobilePlanPreferenceHost {
|
||||
|
||||
private static final String TAG = "NetworkDashboardFrag";
|
||||
private static final int MENU_NETWORK_RESET = Menu.FIRST;
|
||||
|
||||
private NetworkResetActionMenuController mNetworkResetController;
|
||||
|
||||
@Override
|
||||
public int getMetricsCategory() {
|
||||
@@ -72,7 +67,6 @@ public class NetworkDashboardFragment extends DashboardFragment implements
|
||||
@Override
|
||||
public void onAttach(Context context) {
|
||||
super.onAttach(context);
|
||||
mNetworkResetController = new NetworkResetActionMenuController(context, MENU_NETWORK_RESET);
|
||||
|
||||
use(AirplaneModePreferenceController.class).setFragment(this);
|
||||
}
|
||||
@@ -82,12 +76,6 @@ public class NetworkDashboardFragment extends DashboardFragment implements
|
||||
return R.string.help_url_network_dashboard;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
||||
super.onCreateOptionsMenu(menu, inflater);
|
||||
mNetworkResetController.buildMenuItem(menu);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
|
||||
return buildPreferenceControllers(context, getLifecycle(), mMetricsFeatureProvider, this
|
||||
|
@@ -1,61 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2017 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.
|
||||
*/
|
||||
|
||||
package com.android.settings.network;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
|
||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.ResetNetwork;
|
||||
import com.android.settings.core.SubSettingLauncher;
|
||||
|
||||
public class NetworkResetActionMenuController {
|
||||
|
||||
private final Context mContext;
|
||||
private final NetworkResetRestrictionChecker mRestrictionChecker;
|
||||
private final int mMenuId;
|
||||
|
||||
public NetworkResetActionMenuController(Context context, int menuId) {
|
||||
mContext = context;
|
||||
mRestrictionChecker = new NetworkResetRestrictionChecker(context);
|
||||
mMenuId = menuId;
|
||||
}
|
||||
|
||||
public void buildMenuItem(Menu menu) {
|
||||
MenuItem item = null;
|
||||
if (isAvailable() && menu != null) {
|
||||
item = menu.add(0, mMenuId, 0, R.string.reset_network_title);
|
||||
}
|
||||
if (item != null) {
|
||||
item.setOnMenuItemClickListener(target -> {
|
||||
new SubSettingLauncher(mContext)
|
||||
.setDestination(ResetNetwork.class.getName())
|
||||
.setSourceMetricsCategory(MetricsEvent.SETTINGS_NETWORK_CATEGORY)
|
||||
.setTitle(R.string.reset_network_title)
|
||||
.launch();
|
||||
return true;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
boolean isAvailable() {
|
||||
return !mRestrictionChecker.hasRestriction();
|
||||
}
|
||||
}
|
@@ -72,17 +72,6 @@ public class NetworkDashboardFragmentTest {
|
||||
assertThat(indexRes.get(0).xmlResId).isEqualTo(mFragment.getPreferenceScreenResId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testPrepareActionBar_networkResetShouldBeCreated() {
|
||||
final NetworkResetActionMenuController resetController =
|
||||
mock(NetworkResetActionMenuController.class);
|
||||
ReflectionHelpers.setField(mFragment, "mNetworkResetController", resetController);
|
||||
|
||||
mFragment.onCreateOptionsMenu(null, null);
|
||||
|
||||
verify(resetController).buildMenuItem(nullable(Menu.class));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSummaryProvider_hasMobileAndHotspot_shouldReturnMobileSummary() {
|
||||
final MobileNetworkPreferenceController mobileNetworkPreferenceController =
|
||||
|
@@ -1,76 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2017 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.
|
||||
*/
|
||||
|
||||
package com.android.settings.network;
|
||||
|
||||
import static org.mockito.Matchers.any;
|
||||
import static org.mockito.Matchers.anyInt;
|
||||
import static org.mockito.Mockito.never;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
|
||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.MockitoAnnotations;
|
||||
import org.robolectric.RuntimeEnvironment;
|
||||
import org.robolectric.util.ReflectionHelpers;
|
||||
|
||||
@RunWith(SettingsRobolectricTestRunner.class)
|
||||
public class NetworkResetActionMenuControllerTest {
|
||||
|
||||
private static final int MENU_ID = Menu.FIRST;
|
||||
|
||||
private NetworkResetActionMenuController mController;
|
||||
@Mock
|
||||
private Menu mMenu;
|
||||
@Mock
|
||||
private MenuItem mMenuItem;
|
||||
@Mock
|
||||
private NetworkResetRestrictionChecker mRestrictionChecker;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
mController = new NetworkResetActionMenuController(RuntimeEnvironment.application, MENU_ID);
|
||||
ReflectionHelpers.setField(mController, "mRestrictionChecker", mRestrictionChecker);
|
||||
when(mMenu.add(anyInt(), anyInt(), anyInt(), anyInt())).thenReturn(mMenuItem);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void buildMenuItem_available_shouldAddToMenu() {
|
||||
when(mRestrictionChecker.hasRestriction()).thenReturn(false);
|
||||
mController.buildMenuItem(mMenu);
|
||||
|
||||
verify(mMenu).add(anyInt(), anyInt(), anyInt(), anyInt());
|
||||
verify(mMenuItem).setOnMenuItemClickListener(any(MenuItem.OnMenuItemClickListener.class));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void buildMenuItem_notAvailable_shouldNotAddToMenu() {
|
||||
when(mRestrictionChecker.hasRestriction()).thenReturn(true);
|
||||
|
||||
mController.buildMenuItem(mMenu);
|
||||
|
||||
verify(mMenu, never()).add(anyInt(), anyInt(), anyInt(), anyInt());
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user