#include "ui/views/widget/desktop_aura/desktop_drag_drop_client_ozone.h"
#include <memory>
#include <string>
#include <utility>
#include <vector>
#include "base/files/file_path.h"
#include "base/functional/bind.h"
#include "base/functional/callback_helpers.h"
#include "base/memory/scoped_refptr.h"
#include "base/notreached.h"
#include "base/strings/utf_string_conversions.h"
#include "base/task/single_thread_task_runner.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "third_party/abseil-cpp/absl/types/variant.h"
#include "ui/aura/client/drag_drop_delegate.h"
#include "ui/aura/window.h"
#include "ui/aura/window_tree_host.h"
#include "ui/base/cursor/platform_cursor.h"
#include "ui/base/data_transfer_policy/data_transfer_endpoint.h"
#include "ui/base/data_transfer_policy/data_transfer_policy_controller.h"
#include "ui/base/dragdrop/drag_drop_types.h"
#include "ui/base/dragdrop/mojom/drag_drop_types.mojom.h"
#include "ui/base/dragdrop/os_exchange_data.h"
#include "ui/platform_window/platform_window.h"
#include "ui/platform_window/wm/wm_drag_handler.h"
#include "ui/platform_window/wm/wm_drop_handler.h"
#include "ui/views/test/views_test_base.h"
#include "ui/views/views_delegate.h"
#include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h"
#include "ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h"
namespace views {
namespace {
DragEventSource;
DragOperation;
constexpr gfx::Rect kDragWidgetBounds{ … };
constexpr gfx::PointF kStartDragLocation{ … };
class FakePlatformWindow : public ui::PlatformWindow, public ui::WmDragHandler { … };
class FakeDragDropDelegate : public aura::client::DragDropDelegate { … };
}
class DesktopDragDropClientOzoneTest : public ViewsTestBase { … };
TEST_F(DesktopDragDropClientOzoneTest, StartDrag) { … }
TEST_F(DesktopDragDropClientOzoneTest, StartDragCtrlPressed) { … }
TEST_F(DesktopDragDropClientOzoneTest, ReceiveDrag) { … }
TEST_F(DesktopDragDropClientOzoneTest, TargetDestroyedDuringDrag) { … }
TEST_F(DesktopDragDropClientOzoneTest, Bug1151836) { … }
namespace {
class MockDataTransferPolicyController
: public ui::DataTransferPolicyController { … };
}
TEST_F(DesktopDragDropClientOzoneTest, DataLeakPreventionAllowDrop) { … }
TEST_F(DesktopDragDropClientOzoneTest, DataLeakPreventionBlockDrop) { … }
}