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

Side by Side Diff: Source/core/clipboard/DataObjectItem.h

Issue 176853004: Oilpan: move core/fileapi to oilpan's heap. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Rebased + add missing USED_FROM_MULTIPLE_THREADS(Event) Created 6 years, 10 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) 2011 Google Inc. All rights reserved. 2 * Copyright (C) 2011 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 class Blob; 44 class Blob;
45 45
46 class DataObjectItem : public RefCountedWillBeGarbageCollectedFinalized<DataObje ctItem> { 46 class DataObjectItem : public RefCountedWillBeGarbageCollectedFinalized<DataObje ctItem> {
47 public: 47 public:
48 enum Kind { 48 enum Kind {
49 StringKind, 49 StringKind,
50 FileKind 50 FileKind
51 }; 51 };
52 52
53 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromString(const String& type, const String& data); 53 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromString(const String& type, const String& data);
54 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromFile(PassRefPtr<File >); 54 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromFile(PassRefPtrWillB eRawPtr<File>);
55 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromURL(const String& ur l, const String& title); 55 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromURL(const String& ur l, const String& title);
56 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromHTML(const String& h tml, const KURL& baseURL); 56 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromHTML(const String& h tml, const KURL& baseURL);
57 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromSharedBuffer(const S tring& filename, PassRefPtr<SharedBuffer>); 57 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromSharedBuffer(const S tring& filename, PassRefPtr<SharedBuffer>);
58 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromPasteboard(const Str ing& type, uint64_t sequenceNumber); 58 static PassRefPtrWillBeRawPtr<DataObjectItem> createFromPasteboard(const Str ing& type, uint64_t sequenceNumber);
59 59
60 Kind kind() const { return m_kind; } 60 Kind kind() const { return m_kind; }
61 String type() const { return m_type; } 61 String type() const { return m_type; }
62 String getAsString() const; 62 String getAsString() const;
63 PassRefPtr<Blob> getAsFile() const; 63 PassRefPtrWillBeRawPtr<Blob> getAsFile() const;
64 64
65 // Used to support legacy DataTransfer APIs and renderer->browser serializat ion. 65 // Used to support legacy DataTransfer APIs and renderer->browser serializat ion.
66 PassRefPtr<SharedBuffer> sharedBuffer() const { return m_sharedBuffer; } 66 PassRefPtr<SharedBuffer> sharedBuffer() const { return m_sharedBuffer; }
67 String title() const { return m_title; } 67 String title() const { return m_title; }
68 KURL baseURL() const { return m_baseURL; } 68 KURL baseURL() const { return m_baseURL; }
69 bool isFilename() const; 69 bool isFilename() const;
70 70
71 void trace(Visitor*) { } 71 void trace(Visitor*);
72 72
73 private: 73 private:
74 enum DataSource { 74 enum DataSource {
75 PasteboardSource, 75 PasteboardSource,
76 InternalSource, 76 InternalSource,
77 }; 77 };
78 78
79 DataObjectItem(Kind, const String& type); 79 DataObjectItem(Kind, const String& type);
80 DataObjectItem(Kind, const String& type, uint64_t sequenceNumber); 80 DataObjectItem(Kind, const String& type, uint64_t sequenceNumber);
81 81
82 DataSource m_source; 82 DataSource m_source;
83 Kind m_kind; 83 Kind m_kind;
84 String m_type; 84 String m_type;
85 85
86 String m_data; 86 String m_data;
87 RefPtr<File> m_file; 87 RefPtrWillBeMember<File> m_file;
88 RefPtr<SharedBuffer> m_sharedBuffer; 88 RefPtr<SharedBuffer> m_sharedBuffer;
89 // Optional metadata. Currently used for URL, HTML, and dragging files in. 89 // Optional metadata. Currently used for URL, HTML, and dragging files in.
90 String m_title; 90 String m_title;
91 KURL m_baseURL; 91 KURL m_baseURL;
92 92
93 uint64_t m_sequenceNumber; // Only valid when m_source == PasteboardSource 93 uint64_t m_sequenceNumber; // Only valid when m_source == PasteboardSource
94 }; 94 };
95 95
96 } // namespace WebCore 96 } // namespace WebCore
97 97
98 #endif // DataObjectItem_h 98 #endif // DataObjectItem_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698