public void actionResumeSlideshow() {
   isSlideshowRunning = true;
   slideshowTimerTask = new SlideshowTimerTask();
   slideshowTimerTask.execute();
   menu.setGroupVisible(R.id.menuGroupPaused, false);
   menu.setGroupVisible(R.id.menuGroupPlaying, true);
   Toast.makeText(this, R.string.msg_resume_slideshow, Toast.LENGTH_SHORT).show();
 }
 public void actionNextTimerTask() {
   if (isSlideshowRunning) {
     userCreatedTouchEvent = false;
     gallery.setUserCreatedTouchEvent(false);
     slideshowTimerTask = new SlideshowTimerTask();
     slideshowTimerTask.execute();
   }
 }
 /* (non-Javadoc)
  * @see android.app.Activity#onPause()
  */
 @Override
 protected void onPause() {
   Log.d(LOG_PREFIX, "onPause called");
   if (slideshowTimerTask != null) {
     slideshowTimerTask.cancel(false);
   }
   super.onPause();
 }
  /* (non-Javadoc)
   * @see android.app.Activity#onStop()
   */
  @Override
  protected void onStop() {
    Log.d(LOG_PREFIX, "onStop called");
    if (slideshowTimerTask != null) {
      // interupt thread if necessary... we need to kill it
      slideshowTimerTask.cancel(true);
    }
    if (fileDownloader != null && fileDownloader.hasRemainingDownloads()) {
      Log.d(LOG_PREFIX, "Stopping downloading of photos");
      fileDownloader.stop();
    }

    super.onStop();
  }
  /* (non-Javadoc)
   * @see android.app.Activity#onResume()
   */
  @Override
  protected void onResume() {
    Log.d(LOG_PREFIX, "onResume called");
    if (cachedPhotosDeleted) {
      Intent homeIntent = new Intent(this, SlideshowActivity.class);
      homeIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
      startActivity(homeIntent);
      super.onResume();
      return;
    }
    if (isSlideshowRunning) {
      slideshowTimerTask = new SlideshowTimerTask();
      slideshowTimerTask.execute();
    }

    super.onResume();
  }