1 // Copyright (c) 2011 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.
5 #include "ui/base/dragdrop/drag_source_win.h"
9 DragSourceWin::DragSourceWin() : cancel_drag_(false) {
12 HRESULT DragSourceWin::QueryContinueDrag(BOOL escape_pressed, DWORD key_state) {
14 return DRAGDROP_S_CANCEL;
18 return DRAGDROP_S_CANCEL;
21 if (!(key_state & MK_LBUTTON)) {
23 return DRAGDROP_S_DROP;
30 HRESULT DragSourceWin::GiveFeedback(DWORD effect) {
31 return DRAGDROP_S_USEDEFAULTCURSORS;
34 HRESULT DragSourceWin::QueryInterface(const IID& iid, void** object) {
36 if (IsEqualIID(iid, IID_IUnknown) || IsEqualIID(iid, IID_IDropSource)) {
45 ULONG DragSourceWin::AddRef() {
46 base::RefCountedThreadSafe<DragSourceWin>::AddRef();
50 ULONG DragSourceWin::Release() {
51 base::RefCountedThreadSafe<DragSourceWin>::Release();