@Override protected Parcelable onSaveInstanceState() { final Parcelable superState = super.onSaveInstanceState(); if (getDialog() == null || !getDialog().isShowing()) { return superState; } // Save the dialog state final SavedState myState = new SavedState(superState); myState.currentColors = mCurrentColors; myState.originalColors = mOriginalColors; // Restore the old state when the activity or dialog is being paused DisplayColorCalibration.setColors(mOriginalColors); mOriginalColors = null; return myState; }