]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/ui/new_transaction/NewTransactionFragment.java
more pronounced day/month delimiters in the transaction list
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / ui / new_transaction / NewTransactionFragment.java
index 60fd3cbabd91afc6213c7ee8ddfcde39dea89bcc..ec9fb39c7331fcb3fe6ed845258c9a0539cfb693 100644 (file)
@@ -20,7 +20,6 @@ package net.ktnx.mobileledger.ui.new_transaction;
 import android.content.Context;
 import android.content.res.Resources;
 import android.os.Bundle;
-import android.renderscript.RSInvalidStateException;
 import android.view.LayoutInflater;
 import android.view.Menu;
 import android.view.MenuInflater;
@@ -128,7 +127,7 @@ public class NewTransactionFragment extends Fragment {
         super.onViewCreated(view, savedInstanceState);
         FragmentActivity activity = getActivity();
         if (activity == null)
-            throw new RSInvalidStateException(
+            throw new IllegalStateException(
                     "getActivity() returned null within onActivityCreated()");
 
         viewModel = new ViewModelProvider(activity).get(NewTransactionModel.class);
@@ -192,7 +191,9 @@ public class NewTransactionFragment extends Fragment {
         if (savedInstanceState != null) {
             keep |= savedInstanceState.getBoolean("keep", true);
             focused = savedInstanceState.getInt("focused-item", 0);
-            element = FocusedElement.valueOf(savedInstanceState.getString("focused-element"));
+            final String focusedElementString = savedInstanceState.getString("focused-element");
+            if (focusedElementString != null)
+                element = FocusedElement.valueOf(focusedElementString);
         }
 
         if (!keep) {
@@ -231,10 +232,13 @@ public class NewTransactionFragment extends Fragment {
         outState.putBoolean("keep", true);
         final NewTransactionModel.FocusInfo focusInfo = viewModel.getFocusInfo()
                                                                  .getValue();
-        final int focusedItem = focusInfo.position;
-        if (focusedItem >= 0)
-            outState.putInt("focused-item", focusedItem);
-        outState.putString("focused-element", focusInfo.element.toString());
+        if (focusInfo != null) {
+            final int focusedItem = focusInfo.position;
+            if (focusedItem >= 0)
+                outState.putInt("focused-item", focusedItem);
+            if (focusInfo.element != null)
+                outState.putString("focused-element", focusInfo.element.toString());
+        }
     }
 
     @Override