@Override
 public void setTheme(final int resid) {
   super.setTheme(mCurrentThemeResource = getThemeResourceId());
   ThemeUtils.applyWindowBackground(
       this,
       getWindow(),
       mCurrentThemeResource,
       mCurrentThemeBackgroundOption,
       mCurrentThemeBackgroundAlpha);
 }
 @Override
 protected void onApplyThemeResource(@NonNull Resources.Theme theme, int resId, boolean first) {
   mCurrentThemeColor = getThemeColor();
   mCurrentActionBarColor = getActionBarColor();
   mCurrentThemeFontFamily = getThemeFontFamily();
   mCurrentThemeBackgroundAlpha = getThemeBackgroundAlpha();
   mCurrentThemeBackgroundOption = getThemeBackgroundOption();
   mProfileImageStyle = Utils.getProfileImageStyle(this);
   super.onApplyThemeResource(theme, resId, first);
 }
 @Override
 public void onCreate(final Bundle icicle) {
   if (Build.VERSION.SDK_INT > Build.VERSION_CODES.KITKAT) {
     getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
   }
   super.onCreate(icicle);
   final int themeColor = getThemeColor();
   final int themeResId = getCurrentThemeResourceId();
   final String backgroundOption = getCurrentThemeBackgroundOption();
   mMainContent.setDrawColor(true);
   mMainContent.setDrawShadow(false);
   mMainContent.setColor(themeColor);
   ViewSupport.setBackground(
       mDoneCancelBar,
       ThemeUtils.getActionBarBackground(this, themeResId, themeColor, backgroundOption, true));
   ViewCompat.setElevation(mDoneCancelBar, ThemeUtils.getSupportActionBarElevation(this));
   final View windowOverlay = findViewById(R.id.window_overlay);
   ViewSupport.setBackground(
       windowOverlay, ThemeUtils.getNormalWindowContentOverlay(this, themeResId));
 }
 @Override
 public void setContentView(final int layoutResID) {
   super.setContentView(R.layout.activity_image_cropper);
 }
 @Override
 public void onContentChanged() {
   super.onContentChanged();
   mMainContent = (TintedStatusFrameLayout) findViewById(R.id.main_content);
   mDoneCancelBar = findViewById(R.id.done_cancel_bar);
 }