// Copyright 2012 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef UI_BASE_DRAGDROP_OS_EXCHANGE_DATA_H_ #define UI_BASE_DRAGDROP_OS_EXCHANGE_DATA_H_ #include <memory> #include <optional> #include <set> #include <string> #include <utility> #include <vector> #include "base/component_export.h" #include "base/files/file_path.h" #include "base/functional/callback_forward.h" #include "build/build_config.h" #include "ui/base/dragdrop/os_exchange_data_provider.h" class GURL; namespace base { class Pickle; } namespace url { class Origin; } namespace ui { class ClipboardFormatType; class DataTransferEndpoint; struct FileInfo; /////////////////////////////////////////////////////////////////////////////// // // OSExchangeData // An object that holds interchange data to be sent out to OS services like // clipboard, drag and drop, etc. This object exposes an API that clients can // use to specify raw data and its high level type. This object takes care of // translating that into something the OS can understand. // /////////////////////////////////////////////////////////////////////////////// // NOTE: Support for html and file contents is required by TabContentViewWin. // TabContentsViewGtk uses a different class to handle drag support that does // not use OSExchangeData. As such, file contents and html support is only // compiled on windows. class COMPONENT_EXPORT(UI_BASE) OSExchangeData { … }; } // namespace ui #endif // UI_BASE_DRAGDROP_OS_EXCHANGE_DATA_H_