| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef UI_SNAPSHOT_SCREENSHOT_GRABBER_OBSERVER_H_ |
| #define UI_SNAPSHOT_SCREENSHOT_GRABBER_OBSERVER_H_ |
| |
| #include "base/files/file_path.h" |
| #include "ui/snapshot/snapshot_export.h" |
| |
| namespace ui { |
| |
| class SNAPSHOT_EXPORT ScreenshotGrabberObserver { |
| public: |
| enum Result { |
| SCREENSHOT_SUCCESS = 0, |
| SCREENSHOT_GRABWINDOW_PARTIAL_FAILED, |
| SCREENSHOT_GRABWINDOW_FULL_FAILED, |
| SCREENSHOT_CREATE_DIR_FAILED, |
| SCREENSHOT_GET_DIR_FAILED, |
| SCREENSHOT_CHECK_DIR_FAILED, |
| SCREENSHOT_CREATE_FILE_FAILED, |
| SCREENSHOT_WRITE_FILE_FAILED, |
| SCREENSHOTS_DISABLED, |
| SCREENSHOT_RESULT_COUNT |
| }; |
| |
| // Dispatched after attempting to take a screenshot with the |result| and |
| // |screenshot_path| of the taken screenshot (if successful). |
| virtual void OnScreenshotCompleted(Result screenshot_result, |
| const base::FilePath& screenshot_path) = 0; |
| |
| protected: |
| virtual ~ScreenshotGrabberObserver() {} |
| }; |
| |
| } // namespace ui |
| |
| #endif // UI_SNAPSHOT_SCREENSHOT_GRABBER_OBSERVER_H_ |