diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java index 6e1ef9108256014d3831b34eec27e0f3ef9c125b..f9d0ce9757506bab7eb16d11939b95d1a9d7529c 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialog.java @@ -284,6 +284,7 @@ public class InternetDialog extends SystemUIDialog implements mHandler.removeCallbacks(mHideProgressBarRunnable); mHandler.removeCallbacks(mHideSearchingRunnable); mMobileNetworkLayout.setOnClickListener(null); + mMobileNetworkLayout.setOnLongClickListener(null); mConnectedWifListLayout.setOnClickListener(null); if (mSecondaryMobileNetworkLayout != null) { mSecondaryMobileNetworkLayout.setOnClickListener(null); @@ -348,6 +349,13 @@ public class InternetDialog extends SystemUIDialog implements } mInternetDialogController.connectCarrierNetwork(); }); + mMobileNetworkLayout.setOnLongClickListener(v -> { + if (!mInternetDialogController.isDeviceLocked()) { + mInternetDialogController.launchMobileNetworkSettings(v, mDefaultDataSubId); + return true; + } + return false; + }); mMobileDataToggle.setOnClickListener(v -> { boolean isChecked = mMobileDataToggle.isChecked(); if (!isChecked && shouldShowMobileDialog()) { diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java index 871d9c26cacca3f4bc261af0ede5fcd3e0eb3f73..c832915f6584048fc73b54923fb6746241b5572e 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java @@ -768,6 +768,10 @@ public class InternetDialogController implements AccessPointController.AccessPoi void launchMobileNetworkSettings(View view) { final int subId = getActiveAutoSwitchNonDdsSubId(); + launchMobileNetworkSettings(view, subId); + } + + void launchMobileNetworkSettings(View view, int subId) { if (subId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) { Log.w(TAG, "launchMobileNetworkSettings fail, invalid subId:" + subId); return;