/**
   * called during app start-up to restore previous state
   *
   * @param inState
   */
  public void restoreState(SharedPreferences inState) {
    Log.i(TAG, "restore state");
    currentBiblePage.restoreState(inState);
    currentCommentaryPage.restoreState(inState);
    currentDictionaryPage.restoreState(inState);
    currentGeneralBookPage.restoreState(inState);

    String restoredPageCategoryName = inState.getString("currentPageCategory", null);
    if (StringUtils.isNotEmpty(restoredPageCategoryName)) {
      BookCategory restoredBookCategory = BookCategory.fromString(restoredPageCategoryName);
      currentDisplayedPage = getBookPage(restoredBookCategory);
    }

    // force an update here from default chapter/verse
    PassageChangeMediator.getInstance().onCurrentPageChanged();
    PassageChangeMediator.getInstance().onCurrentPageDetailChanged();
  }