| Index: chrome/browser/clipboard_dispatcher.h
|
| diff --git a/chrome/browser/clipboard_dispatcher.h b/chrome/browser/clipboard_dispatcher.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..e3467992870a4eec7d1fc91a30232a429ba01c03
|
| --- /dev/null
|
| +++ b/chrome/browser/clipboard_dispatcher.h
|
| @@ -0,0 +1,41 @@
|
| +// Copyright (c) 2010 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 CHROME_BROWSER_CLIPBOARD_DISPATCHER_H_
|
| +#define CHROME_BROWSER_CLIPBOARD_DISPATCHER_H_
|
| +
|
| +#include <vector>
|
| +
|
| +#include "app/clipboard/clipboard.h"
|
| +#include "base/basictypes.h"
|
| +#include "base/string16.h"
|
| +
|
| +// This class backs IPC requests from the renderer for clipboard data. In this
|
| +// context, clipboard does not only refer to the usual concept of a clipboard
|
| +// for copy/paste, which is why it's not in app/clipboard/clipboard.h. It can
|
| +// refer to one of three different types of clipboards:
|
| +// - The copy/paste clipboard, which contains data that has been copied/cut.
|
| +// - The dragging clipboard, which contains data that is currently being
|
| +// dragged.
|
| +// - On X, the selection clipboard, which contains data for the current
|
| +// selection.
|
| +class ClipboardDispatcher {
|
| + public:
|
| + static bool ReadAvailableTypes(Clipboard::Buffer buffer,
|
| + std::vector<string16>* types,
|
| + bool* contains_filenames);
|
| + static bool ReadData(Clipboard::Buffer buffer, const string16& type,
|
| + string16* data, string16* metadata);
|
| + static bool ReadFilenames(Clipboard::Buffer buffer,
|
| + std::vector<string16>* filenames);
|
| +
|
| + private:
|
| + // This class is not meant to be instantiated. All public members are static.
|
| + ClipboardDispatcher();
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(ClipboardDispatcher);
|
| +};
|
| +
|
| +#endif // CHROME_BROWSER_CLIPBOARD_DISPATCHER_H_
|
| +
|
|
|