clipboard_history_text_item_view.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  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. #ifndef ASH_CLIPBOARD_VIEWS_CLIPBOARD_HISTORY_TEXT_ITEM_VIEW_H_
  5. #define ASH_CLIPBOARD_VIEWS_CLIPBOARD_HISTORY_TEXT_ITEM_VIEW_H_
  6. #include "ash/clipboard/views/clipboard_history_item_view.h"
  7. namespace views {
  8. class MenuItemView;
  9. } // namespace views
  10. namespace ash {
  11. // The menu item showing the plain text.
  12. class ClipboardHistoryTextItemView : public ClipboardHistoryItemView {
  13. public:
  14. ClipboardHistoryTextItemView(
  15. const ClipboardHistoryItem* clipboard_history_item,
  16. views::MenuItemView* container);
  17. ClipboardHistoryTextItemView(const ClipboardHistoryTextItemView& rhs) =
  18. delete;
  19. ClipboardHistoryItemView& operator=(const ClipboardHistoryTextItemView& rhs) =
  20. delete;
  21. ~ClipboardHistoryTextItemView() override;
  22. protected:
  23. const std::u16string& text() const { return text_; }
  24. // ClipboardHistoryItemView:
  25. std::unique_ptr<ContentsView> CreateContentsView() override;
  26. private:
  27. class TextContentsView;
  28. // ClipboardHistoryItemView:
  29. std::u16string GetAccessibleName() const override;
  30. const char* GetClassName() const override;
  31. // Text to show.
  32. const std::u16string text_;
  33. };
  34. } // namespace ash
  35. #endif // ASH_CLIPBOARD_VIEWS_CLIPBOARD_HISTORY_TEXT_ITEM_VIEW_H_