Home | History | Annotate | Download | only in renderer
      1 // Copyright (c) 2012 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 
      5 #ifndef CONTENT_RENDERER_RENDERER_CLIPBOARD_CLIENT_H_
      6 #define CONTENT_RENDERER_RENDERER_CLIPBOARD_CLIENT_H_
      7 
      8 #include "base/compiler_specific.h"
      9 #include "content/renderer/clipboard_client.h"
     10 
     11 namespace content {
     12 
     13 // An implementation of ClipboardClient that gets and sends data over IPC.
     14 class RendererClipboardClient : public ClipboardClient {
     15  public:
     16   RendererClipboardClient();
     17   virtual ~RendererClipboardClient();
     18 
     19   virtual ui::Clipboard* GetClipboard() OVERRIDE;
     20   virtual uint64 GetSequenceNumber(ui::ClipboardType type) OVERRIDE;
     21   virtual bool IsFormatAvailable(ClipboardFormat format,
     22                                  ui::ClipboardType type) OVERRIDE;
     23   virtual void Clear(ui::ClipboardType type) OVERRIDE;
     24   virtual void ReadAvailableTypes(ui::ClipboardType type,
     25                                   std::vector<base::string16>* types,
     26                                   bool* contains_filenames) OVERRIDE;
     27   virtual void ReadText(ui::ClipboardType type,
     28                         base::string16* result) OVERRIDE;
     29   virtual void ReadHTML(ui::ClipboardType type,
     30                         base::string16* markup,
     31                         GURL* url,
     32                         uint32* fragment_start,
     33                         uint32* fragment_end) OVERRIDE;
     34   virtual void ReadRTF(ui::ClipboardType type, std::string* result) OVERRIDE;
     35   virtual void ReadImage(ui::ClipboardType type, std::string* data) OVERRIDE;
     36   virtual void ReadCustomData(ui::ClipboardType clipboard_type,
     37                               const base::string16& type,
     38                               base::string16* data) OVERRIDE;
     39   virtual WriteContext* CreateWriteContext() OVERRIDE;
     40 };
     41 
     42 }  // namespace content
     43 
     44 #endif  // CONTENT_RENDERER_RENDERER_CLIPBOARD_CLIENT_H_
     45