Fix current tab is changed when rotating device

Even if SIM slot 2 is selected in SIM card lock settings,
the current tab is changed to SIM slot 1 when rotating the device.
To fix this issue, the current tab should be restored
after rotating the device.

Fixes: 63690125
Test: manual - go to Settings > Security > SIM card lock
               and rotate device

Change-Id: I874d4d06019e21dd7b65951a3aefb75ff5ea298b
diff --git a/src/com/android/settings/IccLockSettings.java b/src/com/android/settings/IccLockSettings.java
index 1ae9711..0517b13 100644
--- a/src/com/android/settings/IccLockSettings.java
+++ b/src/com/android/settings/IccLockSettings.java
@@ -80,6 +80,7 @@
     private static final String DIALOG_PIN = "dialogPin";
     private static final String DIALOG_ERROR = "dialogError";
     private static final String ENABLE_TO_STATE = "enableState";
+    private static final String CURRENT_TAB = "currentTab";
 
     // Save and restore inputted PIN code when configuration changed
     // (ex. portrait<-->landscape) during change PIN code
@@ -235,6 +236,10 @@
 
             mPhone = (sir == null) ? null
                 : PhoneFactory.getPhone(SubscriptionManager.getPhoneId(sir.getSubscriptionId()));
+
+            if (savedInstanceState != null && savedInstanceState.containsKey(CURRENT_TAB)) {
+                mTabHost.setCurrentTabByTag(savedInstanceState.getString(CURRENT_TAB));
+            }
             return view;
         } else {
             mPhone = PhoneFactory.getDefaultPhone();
@@ -326,6 +331,10 @@
         } else {
             super.onSaveInstanceState(out);
         }
+
+        if (mTabHost != null) {
+            out.putString(CURRENT_TAB, mTabHost.getCurrentTabTag());
+        }
     }
 
     private void showPinDialog() {