scoped_clipboard_history_pause_impl.cc 1.0 KB

123456789101112131415161718192021222324252627282930
  1. // Copyright 2020 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "ash/clipboard/scoped_clipboard_history_pause_impl.h"
  5. #include "ash/clipboard/clipboard_history.h"
  6. #include "ash/clipboard/clipboard_history_util.h"
  7. namespace ash {
  8. using PauseBehavior = ClipboardHistoryUtil::PauseBehavior;
  9. ScopedClipboardHistoryPauseImpl::ScopedClipboardHistoryPauseImpl(
  10. ClipboardHistory* clipboard_history)
  11. : ScopedClipboardHistoryPauseImpl(clipboard_history,
  12. PauseBehavior::kDefault) {}
  13. ScopedClipboardHistoryPauseImpl::ScopedClipboardHistoryPauseImpl(
  14. ClipboardHistory* clipboard_history,
  15. PauseBehavior pause_behavior)
  16. : pause_id_(clipboard_history->Pause(pause_behavior)),
  17. clipboard_history_(clipboard_history->GetWeakPtr()) {}
  18. ScopedClipboardHistoryPauseImpl::~ScopedClipboardHistoryPauseImpl() {
  19. if (clipboard_history_)
  20. clipboard_history_->Resume(pause_id_);
  21. }
  22. } // namespace ash