From 88267218032210c794dc734e29e349c9fcba0067 Mon Sep 17 00:00:00 2001 From: Arc Wang Date: Wed, 20 Feb 2019 17:17:59 +0800 Subject: [PATCH] Add progress bar for Wi-Fi DPP handshaking Bug: 124127483 Test: manual test Change-Id: I1c3da5bab98da57ca8cf10509f339e99b01ebdbf --- res/layout-land/wifi_dpp_qrcode_scanner_fragment.xml | 10 ++++++++++ res/layout/wifi_dpp_add_device_fragment.xml | 11 +++++++++++ res/layout/wifi_dpp_qrcode_scanner_fragment.xml | 10 ++++++++++ .../android/settings/wifi/dpp/WifiDppAddDeviceFragment.java | 8 ++++++++ .../settings/wifi/dpp/WifiDppQrCodeScannerFragment.java | 10 ++++++++++ 5 files changed, 49 insertions(+) diff --git a/res/layout-land/wifi_dpp_qrcode_scanner_fragment.xml b/res/layout-land/wifi_dpp_qrcode_scanner_fragment.xml index 0069e93385..3a0e659c06 100644 --- a/res/layout-land/wifi_dpp_qrcode_scanner_fragment.xml +++ b/res/layout-land/wifi_dpp_qrcode_scanner_fragment.xml @@ -33,6 +33,16 @@ + + diff --git a/res/layout/wifi_dpp_add_device_fragment.xml b/res/layout/wifi_dpp_add_device_fragment.xml index 479e626ab1..3ffdeef104 100644 --- a/res/layout/wifi_dpp_add_device_fragment.xml +++ b/res/layout/wifi_dpp_add_device_fragment.xml @@ -34,6 +34,17 @@ + + + + diff --git a/src/com/android/settings/wifi/dpp/WifiDppAddDeviceFragment.java b/src/com/android/settings/wifi/dpp/WifiDppAddDeviceFragment.java index 536924d341..97b2ebefc8 100644 --- a/src/com/android/settings/wifi/dpp/WifiDppAddDeviceFragment.java +++ b/src/com/android/settings/wifi/dpp/WifiDppAddDeviceFragment.java @@ -31,6 +31,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.widget.ImageView; +import android.widget.ProgressBar; import androidx.lifecycle.ViewModelProviders; @@ -45,6 +46,7 @@ import java.util.concurrent.Executor; public class WifiDppAddDeviceFragment extends WifiDppQrCodeBaseFragment { private static final String TAG = "WifiDppAddDeviceFragment"; + private ProgressBar mProgressBar; private ImageView mWifiApPictureView; private Button mChooseDifferentNetwork; private Button mButtonLeft; @@ -82,6 +84,7 @@ public class WifiDppAddDeviceFragment extends WifiDppQrCodeBaseFragment { private void showSuccessUi(boolean isConfigurationChange) { setHeaderIconImageResource(R.drawable.ic_devices_check_circle_green); mTitle.setText(R.string.wifi_dpp_wifi_shared_with_device); + mProgressBar.setVisibility(isGoingInitiator() ? View.VISIBLE : View.INVISIBLE); mSummary.setVisibility(View.INVISIBLE); mWifiApPictureView.setImageResource(R.drawable.wifi_dpp_success); mChooseDifferentNetwork.setVisibility(View.INVISIBLE); @@ -169,6 +172,7 @@ public class WifiDppAddDeviceFragment extends WifiDppQrCodeBaseFragment { mLatestStatusCode = code; } + mProgressBar.setVisibility(isGoingInitiator() ? View.VISIBLE : View.INVISIBLE); mButtonRight.setVisibility(isGoingInitiator() ? View.INVISIBLE : View.VISIBLE); } @@ -240,6 +244,8 @@ public class WifiDppAddDeviceFragment extends WifiDppQrCodeBaseFragment { setHeaderIconImageResource(R.drawable.ic_devices_other_opaque_black); + mProgressBar = view.findViewById(R.id.indeterminate_bar); + final WifiQrCode wifiQrCode = ((WifiDppConfiguratorActivity) getActivity()) .getWifiDppQrCode(); final String information = wifiQrCode.getInformation(); @@ -264,6 +270,7 @@ public class WifiDppAddDeviceFragment extends WifiDppQrCodeBaseFragment { mButtonRight = view.findViewById(R.id.button_right); mButtonRight.setText(R.string.wifi_dpp_share_wifi); mButtonRight.setOnClickListener(v -> { + mProgressBar.setVisibility(View.VISIBLE); mButtonRight.setVisibility(View.INVISIBLE); startWifiDppConfiguratorInitiator(); }); @@ -272,6 +279,7 @@ public class WifiDppAddDeviceFragment extends WifiDppQrCodeBaseFragment { if (mLatestStatusCode == WifiDppUtils.EASY_CONNECT_EVENT_SUCCESS) { showSuccessUi(/* isConfigurationChange */ true); } else if (mLatestStatusCode == WifiDppUtils.EASY_CONNECT_EVENT_FAILURE_NONE) { + mProgressBar.setVisibility(isGoingInitiator() ? View.VISIBLE : View.INVISIBLE); mButtonRight.setVisibility(isGoingInitiator() ? View.INVISIBLE : View.VISIBLE); } else { showErrorUi(mLatestStatusCode, /* isConfigurationChange */ true); diff --git a/src/com/android/settings/wifi/dpp/WifiDppQrCodeScannerFragment.java b/src/com/android/settings/wifi/dpp/WifiDppQrCodeScannerFragment.java index c88313b84e..e664a0508e 100644 --- a/src/com/android/settings/wifi/dpp/WifiDppQrCodeScannerFragment.java +++ b/src/com/android/settings/wifi/dpp/WifiDppQrCodeScannerFragment.java @@ -42,6 +42,7 @@ import android.view.TextureView; import android.view.TextureView.SurfaceTextureListener; import android.view.View; import android.view.ViewGroup; +import android.widget.ProgressBar; import android.widget.TextView; import androidx.lifecycle.ViewModelProviders; @@ -77,6 +78,7 @@ public class WifiDppQrCodeScannerFragment extends WifiDppQrCodeBaseFragment impl private static final String KEY_IS_CONFIGURATOR_MODE = "key_is_configurator_mode"; private static final String KEY_LATEST_ERROR_CODE = "key_latest_error_code"; + private ProgressBar mProgressBar; private QrCamera mCamera; private TextureView mTextureView; private QrDecorateView mDecorateView; @@ -205,6 +207,10 @@ public class WifiDppQrCodeScannerFragment extends WifiDppQrCodeBaseFragment impl mDecorateView = (QrDecorateView) view.findViewById(R.id.decorate_view); setHeaderIconImageResource(R.drawable.ic_scan_24dp); + + mProgressBar = view.findViewById(R.id.indeterminate_bar); + mProgressBar.setVisibility(isGoingInitiator() ? View.VISIBLE : View.INVISIBLE); + if (mIsConfiguratorMode) { mTitle.setText(R.string.wifi_dpp_add_device_to_network); @@ -402,6 +408,7 @@ public class WifiDppQrCodeScannerFragment extends WifiDppQrCodeBaseFragment impl mScanWifiDppSuccessListener.onScanWifiDppSuccess((WifiQrCode)msg.obj); if (!mIsConfiguratorMode) { + mProgressBar.setVisibility(View.VISIBLE); startWifiDppEnrolleeInitiator((WifiQrCode)msg.obj); } break; @@ -446,6 +453,7 @@ public class WifiDppQrCodeScannerFragment extends WifiDppQrCodeBaseFragment impl Log.e(TAG, "Invalid networkId " + newNetworkId); mLatestStatusCode = EasyConnectStatusCallback.EASY_CONNECT_EVENT_FAILURE_GENERIC; + mProgressBar.setVisibility(View.INVISIBLE); showErrorMessage(getString(R.string.wifi_dpp_check_connection_try_again)); restartCamera(); } @@ -512,6 +520,7 @@ public class WifiDppQrCodeScannerFragment extends WifiDppQrCodeBaseFragment impl } mLatestStatusCode = code; + mProgressBar.setVisibility(View.INVISIBLE); restartCamera(); } @@ -540,6 +549,7 @@ public class WifiDppQrCodeScannerFragment extends WifiDppQrCodeBaseFragment impl public void onFailure(int reason) { Log.d(TAG, "Wi-Fi connect onFailure reason - " + reason); + mProgressBar.setVisibility(View.INVISIBLE); showErrorMessage(getString(R.string.wifi_dpp_check_connection_try_again)); restartCamera(); } -- 2.11.0