Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(56)

Side by Side Diff: Source/core/events/ClipboardEvent.cpp

Issue 1178683007: Introducing ClipboardEvent Constructor Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2001 Peter Kelly (pmk@post.com) 2 * Copyright (C) 2001 Peter Kelly (pmk@post.com)
3 * Copyright (C) 2001 Tobias Anton (anton@stud.fbi.fh-darmstadt.de) 3 * Copyright (C) 2001 Tobias Anton (anton@stud.fbi.fh-darmstadt.de)
4 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) 4 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com)
5 * Copyright (C) 2003, 2005, 2006, 2008 Apple Inc. All rights reserved. 5 * Copyright (C) 2003, 2005, 2006, 2008 Apple Inc. All rights reserved.
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
11 * 11 *
12 * This library is distributed in the hope that it will be useful, 12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Library General Public License for more details. 15 * Library General Public License for more details.
16 * 16 *
17 * You should have received a copy of the GNU Library General Public License 17 * You should have received a copy of the GNU Library General Public License
18 * along with this library; see the file COPYING.LIB. If not, write to 18 * along with this library; see the file COPYING.LIB. If not, write to
19 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 19 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20 * Boston, MA 02110-1301, USA. 20 * Boston, MA 02110-1301, USA.
21 */ 21 */
22 22
23 #include "config.h" 23 #include "config.h"
24 #include "core/events/ClipboardEvent.h" 24 #include "core/events/ClipboardEvent.h"
25 #include "core/clipboard/DataObject.h"
25 26
26 namespace blink { 27 namespace blink {
27 28
28 ClipboardEvent::ClipboardEvent() 29 ClipboardEvent::ClipboardEvent()
29 { 30 {
30 } 31 }
31 32
32 ClipboardEvent::ClipboardEvent(const AtomicString& eventType, bool canBubble, bo ol cancelable, DataTransfer* clipboardData) 33 ClipboardEvent::ClipboardEvent(const AtomicString& eventType, bool canBubble, bo ol cancelable, DataTransfer* clipboardData)
33 : Event(eventType, canBubble, cancelable), m_clipboardData(clipboardData) 34 : Event(eventType, canBubble, cancelable), m_clipboardData(clipboardData)
34 { 35 {
35 } 36 }
36 37
38 ClipboardEvent::ClipboardEvent(const AtomicString& type, const ClipboardEventIni t& initializer)
39 : Event(type, initializer)
40 {
41 DataTransferAccessPolicy policy = DataTransferNumb;
42
43 if (type == EventTypeNames::copy || type == EventTypeNames::cut || type == E ventTypeNames::paste)
44 policy = DataTransferWritable;
45
46 m_clipboardData = DataTransfer::create(DataTransfer::CopyAndPaste, policy, D ataObject::create());
47 if (initializer.hasDataType())
philipj_slow 2015/06/26 22:37:44 The hasDataType() isn't needed because this member
48 m_clipboardData->setData(initializer.dataType(), initializer.data());
49 }
50
37 ClipboardEvent::~ClipboardEvent() 51 ClipboardEvent::~ClipboardEvent()
38 { 52 {
39 } 53 }
40 54
41 const AtomicString& ClipboardEvent::interfaceName() const 55 const AtomicString& ClipboardEvent::interfaceName() const
42 { 56 {
43 return EventNames::ClipboardEvent; 57 return EventNames::ClipboardEvent;
44 } 58 }
45 59
46 bool ClipboardEvent::isClipboardEvent() const 60 bool ClipboardEvent::isClipboardEvent() const
47 { 61 {
48 return true; 62 return true;
49 } 63 }
50 64
51 DEFINE_TRACE(ClipboardEvent) 65 DEFINE_TRACE(ClipboardEvent)
52 { 66 {
53 visitor->trace(m_clipboardData); 67 visitor->trace(m_clipboardData);
54 Event::trace(visitor); 68 Event::trace(visitor);
55 } 69 }
56 70
57 } // namespace blink 71 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698