Changeset 80536 in webkit


Ignore:
Timestamp:
Mar 7, 2011 9:48:33 PM (13 years ago)
Author:
dcheng@chromium.org
Message:

2011-03-07 Daniel Cheng <dcheng@chromium.org>

Reviewed by David Levin.

Add support for DataTransferItems
https://bugs.webkit.org/show_bug.cgi?id=55115

Layout test to verify that the basic properties of dataTransfer.items function as expected.

  • editing/pasteboard/data-transfer-items-expected.txt: Added.
  • editing/pasteboard/data-transfer-items.html: Added.
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:

2011-03-07 Daniel Cheng <dcheng@chromium.org>

Reviewed by David Levin.

Add support for DataTransferItems
https://bugs.webkit.org/show_bug.cgi?id=55115

This patch adds stubs for DataTransferItems/DataTransferItem as well as implementing the
basic functionality on the Chromium port. With the exception of DataTransferItem::getAsFile,
all functionality on the DataTransferItems collection has been implemented.
This change does not actually hook up DataTransferItems to reflect the actual contents of a
drop/paste operation or to allow mutation of data in a copy/drag start yet. That will be
enabled via several followup patches.

Test: editing/pasteboard/data-transfer-items.html

  • Android.mk:
  • CMakeLists.txt:
  • CodeGenerators.pri:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/generic/RuntimeEnabledFeatures.cpp:
  • bindings/generic/RuntimeEnabledFeatures.h: (WebCore::RuntimeEnabledFeatures::setDataTransferItemsEnabled): (WebCore::RuntimeEnabledFeatures::dataTransferItemsEnabled):
  • bindings/scripts/CodeGeneratorV8.pm: Do not emit an #include line for DOMString, since it's built-in.
  • dom/Clipboard.h: (WebCore::Clipboard::policy):
  • dom/Clipboard.idl:
  • dom/DataTransferItem.cpp: Added.
  • dom/DataTransferItem.h: Added. (WebCore::DataTransferItem::~DataTransferItem):
  • dom/DataTransferItem.idl: Added.
  • dom/DataTransferItems.h: Added. (WebCore::DataTransferItems::~DataTransferItems):
  • dom/DataTransferItems.idl: Added.
  • dom/StringCallback.cpp: Added. (WebCore::StringCallback::scheduleCallback):
  • dom/StringCallback.h: Added. (WebCore::StringCallback::~StringCallback):
  • dom/StringCallback.idl: Added.
  • platform/chromium/ClipboardChromium.cpp: (WebCore::ClipboardChromium::items):
  • platform/chromium/ClipboardChromium.h:
  • platform/chromium/DataTransferItemChromium.cpp: Added. (WebCore::DataTransferItemChromium::create): (WebCore::DataTransferItemChromium::DataTransferItemChromium): (WebCore::DataTransferItemChromium::kind): (WebCore::DataTransferItemChromium::type): (WebCore::DataTransferItemChromium::getAsString):
  • platform/chromium/DataTransferItemChromium.h: Added.
  • platform/chromium/DataTransferItemsChromium.cpp: Added. (WebCore::DataTransferItemsChromium::create): (WebCore::DataTransferItemsChromium::DataTransferItemsChromium): (WebCore::DataTransferItemsChromium::length): (WebCore::DataTransferItemsChromium::item): (WebCore::DataTransferItemsChromium::deleteItem): (WebCore::DataTransferItemsChromium::clear): (WebCore::DataTransferItemsChromium::add):
  • platform/chromium/DataTransferItemsChromium.h: Added.

2011-03-07 Daniel Cheng <dcheng@chromium.org>

Reviewed by David Levin.

Add support for DataTransferItems
https://bugs.webkit.org/show_bug.cgi?id=55115

Add new runtime enabled flag for data transfer items feature.

  • public/WebRuntimeFeatures.h:
  • src/WebRuntimeFeatures.cpp: (WebKit::WebRuntimeFeatures::enableDataTransferItems): (WebKit::WebRuntimeFeatures::isDataTransferItemsEnabled):

2011-03-07 Daniel Cheng <dcheng@chromium.org>

Reviewed by David Levin.

Add support for DataTransferItems
https://bugs.webkit.org/show_bug.cgi?id=55115

Enable data transfer items in DRT.

  • DumpRenderTree/chromium/TestShell.cpp: (TestShell::TestShell):
Location:
trunk
Files:
14 added
28 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r80534 r80536  
     12011-03-07  Daniel Cheng  <dcheng@chromium.org>
     2
     3        Reviewed by David Levin.
     4
     5        Add support for DataTransferItems
     6        https://bugs.webkit.org/show_bug.cgi?id=55115
     7
     8        Layout test to verify that the basic properties of dataTransfer.items function as expected.
     9
     10        * editing/pasteboard/data-transfer-items-expected.txt: Added.
     11        * editing/pasteboard/data-transfer-items.html: Added.
     12        * platform/gtk/Skipped:
     13        * platform/mac/Skipped:
     14        * platform/qt/Skipped:
     15        * platform/win/Skipped:
     16
    1172011-03-07  Victoria Kirst  <vrk@google.com>
    218
  • trunk/LayoutTests/platform/gtk/Skipped

    r80492 r80536  
    13131313# https://bugs.webkit.org/show_bug.cgi?id=55862
    13141314fast/forms/onchange-setvalueforuser.html
     1315
     1316# DataTransferItems is not yet implemented.
     1317editing/pasteboard/data-transfer-items.html
  • trunk/LayoutTests/platform/mac/Skipped

    r80509 r80536  
    303303# https://bugs.webkit.org/show_bug.cgi?id=55509
    304304compositing/webgl/webgl-nonpremultiplied-blend.html
     305
     306# DataTransferItems is not yet implemented.
     307editing/pasteboard/data-transfer-items.html
  • trunk/LayoutTests/platform/qt/Skipped

    r80531 r80536  
    108108# This port doesn't support v8 i18n extension.
    109109fast/js/i18n-bindings-locale.html
     110
     111# DataTransferItems is not yet implemented.
     112editing/pasteboard/data-transfer-items.html
    110113
    111114# =========================================================================== #
  • trunk/LayoutTests/platform/win/Skipped

    r80531 r80536  
    11691169# Windows port doesn't support HTML in pastes.
    11701170editing/pasteboard/onpaste-text-html-types.html
     1171
     1172# DataTransferItems is not yet implemented.
     1173editing/pasteboard/data-transfer-items.html
  • trunk/Source/WebCore/Android.mk

    r80463 r80536  
    115115        dom/DOMImplementation.cpp \
    116116        dom/DOMStringList.cpp \
     117        dom/DataTransferItem.cpp \
    117118        dom/DecodedDataDocumentParser.cpp \
    118119        dom/DeviceMotionController.cpp \
     
    177178        dom/StaticHashSetNodeList.cpp \
    178179        dom/StaticNodeList.cpp \
     180        dom/StringCallback.cpp \
    179181        dom/StyleElement.cpp \
    180182        dom/StyledElement.cpp \
  • trunk/Source/WebCore/CMakeLists.txt

    r80463 r80536  
    15711571        platform/sql/SQLiteStatement.cpp
    15721572        platform/sql/SQLiteTransaction.cpp
     1573    )
     1574ENDIF ()
     1575
     1576IF (ENABLE_DATA_TRANSFER_ITEMS)
     1577    LIST(APPEND WebCore_IDL_FILES
     1578        dom/DataTransferItem.idl
     1579        dom/DataTransferItems.idl
     1580        dom/StringCallback.idl
     1581    )
     1582    LIST(APPEND WebCore_SOURCES
     1583        dom/DataTransferItem.cpp
     1584        dom/StringCallback.cpp
    15731585    )
    15741586ENDIF ()
  • trunk/Source/WebCore/ChangeLog

    r80528 r80536  
     12011-03-07  Daniel Cheng  <dcheng@chromium.org>
     2
     3        Reviewed by David Levin.
     4
     5        Add support for DataTransferItems
     6        https://bugs.webkit.org/show_bug.cgi?id=55115
     7
     8        This patch adds stubs for DataTransferItems/DataTransferItem as well as implementing the
     9        basic functionality on the Chromium port. With the exception of DataTransferItem::getAsFile,
     10        all functionality on the DataTransferItems collection has been implemented.
     11        This change does not actually hook up DataTransferItems to reflect the actual contents of a
     12        drop/paste operation or to allow mutation of data in a copy/drag start yet. That will be
     13        enabled via several followup patches.
     14
     15        Test: editing/pasteboard/data-transfer-items.html
     16
     17        * Android.mk:
     18        * CMakeLists.txt:
     19        * CodeGenerators.pri:
     20        * DerivedSources.cpp:
     21        * DerivedSources.make:
     22        * GNUmakefile.am:
     23        * WebCore.gypi:
     24        * WebCore.pro:
     25        * WebCore.vcproj/WebCore.vcproj:
     26        * WebCore.xcodeproj/project.pbxproj:
     27        * bindings/generic/RuntimeEnabledFeatures.cpp:
     28        * bindings/generic/RuntimeEnabledFeatures.h:
     29        (WebCore::RuntimeEnabledFeatures::setDataTransferItemsEnabled):
     30        (WebCore::RuntimeEnabledFeatures::dataTransferItemsEnabled):
     31        * bindings/scripts/CodeGeneratorV8.pm: Do not emit an #include line for DOMString, since it's built-in.
     32        * dom/Clipboard.h:
     33        (WebCore::Clipboard::policy):
     34        * dom/Clipboard.idl:
     35        * dom/DataTransferItem.cpp: Added.
     36        * dom/DataTransferItem.h: Added.
     37        (WebCore::DataTransferItem::~DataTransferItem):
     38        * dom/DataTransferItem.idl: Added.
     39        * dom/DataTransferItems.h: Added.
     40        (WebCore::DataTransferItems::~DataTransferItems):
     41        * dom/DataTransferItems.idl: Added.
     42        * dom/StringCallback.cpp: Added.
     43        (WebCore::StringCallback::scheduleCallback):
     44        * dom/StringCallback.h: Added.
     45        (WebCore::StringCallback::~StringCallback):
     46        * dom/StringCallback.idl: Added.
     47        * platform/chromium/ClipboardChromium.cpp:
     48        (WebCore::ClipboardChromium::items):
     49        * platform/chromium/ClipboardChromium.h:
     50        * platform/chromium/DataTransferItemChromium.cpp: Added.
     51        (WebCore::DataTransferItemChromium::create):
     52        (WebCore::DataTransferItemChromium::DataTransferItemChromium):
     53        (WebCore::DataTransferItemChromium::kind):
     54        (WebCore::DataTransferItemChromium::type):
     55        (WebCore::DataTransferItemChromium::getAsString):
     56        * platform/chromium/DataTransferItemChromium.h: Added.
     57        * platform/chromium/DataTransferItemsChromium.cpp: Added.
     58        (WebCore::DataTransferItemsChromium::create):
     59        (WebCore::DataTransferItemsChromium::DataTransferItemsChromium):
     60        (WebCore::DataTransferItemsChromium::length):
     61        (WebCore::DataTransferItemsChromium::item):
     62        (WebCore::DataTransferItemsChromium::deleteItem):
     63        (WebCore::DataTransferItemsChromium::clear):
     64        (WebCore::DataTransferItemsChromium::add):
     65        * platform/chromium/DataTransferItemsChromium.h: Added.
     66
    1672011-03-07  Ryosuke Niwa  <rniwa@webkit.org>
    268
  • trunk/Source/WebCore/CodeGenerators.pri

    r79011 r80536  
    110110    dom/CompositionEvent.idl \
    111111    dom/CustomEvent.idl \
     112    dom/DataTransferItem.idl \
     113    dom/DataTransferItems.idl \
    112114    dom/DeviceMotionEvent.idl \
    113115    dom/DeviceOrientationEvent.idl \
     
    147149    dom/RangeException.idl \
    148150    dom/Range.idl \
     151    dom/StringCallback.idl \
    149152    dom/Text.idl \
    150153    dom/TextEvent.idl \
  • trunk/Source/WebCore/DerivedSources.cpp

    r78525 r80536  
    7373#include "JSDataGridColumn.cpp"
    7474#include "JSDataGridColumnList.cpp"
     75#include "JSDataTransferItem.cpp"
     76#include "JSDataTransferItems.cpp"
    7577#include "JSDataView.cpp"
    7678#include "JSDedicatedWorkerContext.cpp"
     
    282284#include "JSStorage.cpp"
    283285#include "JSStorageEvent.cpp"
     286#include "JSStringCallback.cpp"
    284287#include "JSStyleMedia.cpp"
    285288#include "JSStyleSheet.cpp"
  • trunk/Source/WebCore/DerivedSources.make

    r80418 r80536  
    151151    DOMURL \
    152152    DOMWindow \
     153    DataTransferItem \
     154    DataTransferItems \
    153155    Database \
    154156    DatabaseCallback \
     
    348350    Storage \
    349351    StorageEvent \
     352    StringCallback \
    350353    SVGAElement \
    351354    SVGAltGlyphElement \
  • trunk/Source/WebCore/GNUmakefile.am

    r80476 r80536  
    40174017# ----
    40184018# HTML5 data transfer items support
    4019 #-----
     4019# ----
    40204020if ENABLE_DATA_TRANSFER_ITEMS
    40214021FEATURE_DEFINES += ENABLE_DATA_TRANSFER_ITEMS=1
    40224022webcore_cppflags += -DENABLE_DATA_TRANSFER_ITEMS=1
     4023webcore_built_sources += \
     4024        DerivedSources/WebCore/JSDataTransferItem.cpp \
     4025        DerivedSources/WebCore/JSDataTransferItem.h \
     4026        DerivedSources/WebCore/JSDataTransferItems.cpp \
     4027        DerivedSources/WebCore/JSDataTransferItems.h \
     4028        DerivedSources/WebCore/JSStringCallback.cpp \
     4029        DerivedSources/WebCore/JSStringCallback.h
     4030webcore_sources += \
     4031        Source/WebCore/dom/DataTransferItem.cpp \
     4032        Source/WebCore/dom/DataTransferItem.h \
     4033        Source/WebCore/dom/DataTransferItems.h \
     4034        Source/WebCore/dom/StringCallback.cpp \
     4035        Source/WebCore/dom/StringCallback.h
    40234036endif # END ENABLE_DATA_TRANSFER_ITEMS
    40244037
  • trunk/Source/WebCore/WebCore.gypi

    r80502 r80536  
    5151            'dom/DOMStringList.idl',
    5252            'dom/DOMStringMap.idl',
     53            'dom/DataTransferItem.idl',
     54            'dom/DataTransferItems.idl',
    5355            'dom/DeviceMotionEvent.idl',
    5456            'dom/DeviceOrientationEvent.idl',
     
    8587            'dom/RangeException.idl',
    8688            'dom/RequestAnimationFrameCallback.idl',
     89            'dom/StringCallback.idl',
    8790            'dom/Text.idl',
    8891            'dom/TextEvent.idl',
     
    13421345            'dom/DOMStringMap.h',
    13431346            'dom/DOMTimeStamp.h',
     1347            'dom/DataTransferItem.cpp',
     1348            'dom/DataTransferItem.h',
     1349            'dom/DataTransferItems.h',
    13441350            'dom/DatasetDOMStringMap.cpp',
    13451351            'dom/DatasetDOMStringMap.h',
     
    14941500            'dom/StaticStringList.cpp',
    14951501            'dom/StaticStringList.h',
     1502            'dom/StringCallback.cpp',
     1503            'dom/StringCallback.h',
    14961504            'dom/StyleElement.cpp',
    14971505            'dom/StyleElement.h',
     
    28092817            'platform/chromium/ContextMenuItemChromium.cpp',
    28102818            'platform/chromium/CursorChromium.cpp',
     2819            'platform/chromium/DataTransferItemChromium.cpp',
     2820            'platform/chromium/DataTransferItemChromium.h',
     2821            'platform/chromium/DataTransferItemsChromium.cpp',
     2822            'platform/chromium/DataTransferItemsChromium.h',
    28112823            'platform/chromium/DragDataChromium.cpp',
    28122824            'platform/chromium/DragDataRef.h',
  • trunk/Source/WebCore/WebCore.pro

    r80463 r80536  
    26932693}
    26942694
     2695contains(DEFINES, ENABLE_DATA_TRANSFER_ITEMS=1) {
     2696    HEADERS += \
     2697        dom/DataTransferItem.h \
     2698        dom/DataTransferItems.h \
     2699        dom/StringCallback.h
     2700    SOURCES += \
     2701        dom/DataTransferItem.cpp \
     2702        dom/StringCallback.cpp
     2703}
     2704
    26952705contains(DEFINES, ENABLE_DOM_STORAGE=1) {
    26962706    HEADERS += \
  • trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj

    r80463 r80536  
    28192819                        </File>
    28202820                        <File
     2821                                RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSDataTransferItem.cpp"
     2822                                >
     2823                                <FileConfiguration
     2824                                        Name="Debug|Win32"
     2825                                        ExcludedFromBuild="true"
     2826                                        >
     2827                                        <Tool
     2828                                                Name="VCCLCompilerTool"
     2829                                        />
     2830                                </FileConfiguration>
     2831                                <FileConfiguration
     2832                                        Name="Release|Win32"
     2833                                        ExcludedFromBuild="true"
     2834                                        >
     2835                                        <Tool
     2836                                                Name="VCCLCompilerTool"
     2837                                        />
     2838                                </FileConfiguration>
     2839                                <FileConfiguration
     2840                                        Name="Debug_Cairo_CFLite|Win32"
     2841                                        ExcludedFromBuild="true"
     2842                                        >
     2843                                        <Tool
     2844                                                Name="VCCLCompilerTool"
     2845                                        />
     2846                                </FileConfiguration>
     2847                                <FileConfiguration
     2848                                        Name="Release_Cairo_CFLite|Win32"
     2849                                        ExcludedFromBuild="true"
     2850                                        >
     2851                                        <Tool
     2852                                                Name="VCCLCompilerTool"
     2853                                        />
     2854                                </FileConfiguration>
     2855                                <FileConfiguration
     2856                                        Name="Debug_All|Win32"
     2857                                        ExcludedFromBuild="true"
     2858                                        >
     2859                                        <Tool
     2860                                                Name="VCCLCompilerTool"
     2861                                        />
     2862                                </FileConfiguration>
     2863                                <FileConfiguration
     2864                                        Name="Release_LTCG|Win32"
     2865                                        ExcludedFromBuild="true"
     2866                                        >
     2867                                        <Tool
     2868                                                Name="VCCLCompilerTool"
     2869                                        />
     2870                                </FileConfiguration>
     2871                        </File>
     2872                        <File
     2873                                RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSDataTransferItem.h"
     2874                                >
     2875                        </File>
     2876                        <File
     2877                                RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSDataTransferItems.cpp"
     2878                                >
     2879                                <FileConfiguration
     2880                                        Name="Debug|Win32"
     2881                                        ExcludedFromBuild="true"
     2882                                        >
     2883                                        <Tool
     2884                                                Name="VCCLCompilerTool"
     2885                                        />
     2886                                </FileConfiguration>
     2887                                <FileConfiguration
     2888                                        Name="Release|Win32"
     2889                                        ExcludedFromBuild="true"
     2890                                        >
     2891                                        <Tool
     2892                                                Name="VCCLCompilerTool"
     2893                                        />
     2894                                </FileConfiguration>
     2895                                <FileConfiguration
     2896                                        Name="Debug_Cairo_CFLite|Win32"
     2897                                        ExcludedFromBuild="true"
     2898                                        >
     2899                                        <Tool
     2900                                                Name="VCCLCompilerTool"
     2901                                        />
     2902                                </FileConfiguration>
     2903                                <FileConfiguration
     2904                                        Name="Release_Cairo_CFLite|Win32"
     2905                                        ExcludedFromBuild="true"
     2906                                        >
     2907                                        <Tool
     2908                                                Name="VCCLCompilerTool"
     2909                                        />
     2910                                </FileConfiguration>
     2911                                <FileConfiguration
     2912                                        Name="Debug_All|Win32"
     2913                                        ExcludedFromBuild="true"
     2914                                        >
     2915                                        <Tool
     2916                                                Name="VCCLCompilerTool"
     2917                                        />
     2918                                </FileConfiguration>
     2919                                <FileConfiguration
     2920                                        Name="Release_LTCG|Win32"
     2921                                        ExcludedFromBuild="true"
     2922                                        >
     2923                                        <Tool
     2924                                                Name="VCCLCompilerTool"
     2925                                        />
     2926                                </FileConfiguration>
     2927                        </File>
     2928                        <File
     2929                                RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSDataTransferItems.h"
     2930                                >
     2931                        </File>
     2932                        <File
    28212933                                RelativePath="$(ConfigurationBuildDir)\obj\WebCore\DerivedSources\JSDedicatedWorkerContext.cpp"
    28222934                                >
     
    2112421236                        <File
    2112521237                                RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSSVGZoomEvent.h"
     21238                                >
     21239                        </File>
     21240                        <File
     21241                                RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSStringCallback.cpp"
     21242                                >
     21243                                <FileConfiguration
     21244                                        Name="Debug|Win32"
     21245                                        ExcludedFromBuild="true"
     21246                                        >
     21247                                        <Tool
     21248                                                Name="VCCLCompilerTool"
     21249                                        />
     21250                                </FileConfiguration>
     21251                                <FileConfiguration
     21252                                        Name="Release|Win32"
     21253                                        ExcludedFromBuild="true"
     21254                                        >
     21255                                        <Tool
     21256                                                Name="VCCLCompilerTool"
     21257                                        />
     21258                                </FileConfiguration>
     21259                                <FileConfiguration
     21260                                        Name="Debug_Cairo_CFLite|Win32"
     21261                                        ExcludedFromBuild="true"
     21262                                        >
     21263                                        <Tool
     21264                                                Name="VCCLCompilerTool"
     21265                                        />
     21266                                </FileConfiguration>
     21267                                <FileConfiguration
     21268                                        Name="Release_Cairo_CFLite|Win32"
     21269                                        ExcludedFromBuild="true"
     21270                                        >
     21271                                        <Tool
     21272                                                Name="VCCLCompilerTool"
     21273                                        />
     21274                                </FileConfiguration>
     21275                                <FileConfiguration
     21276                                        Name="Debug_All|Win32"
     21277                                        ExcludedFromBuild="true"
     21278                                        >
     21279                                        <Tool
     21280                                                Name="VCCLCompilerTool"
     21281                                        />
     21282                                </FileConfiguration>
     21283                                <FileConfiguration
     21284                                        Name="Release_LTCG|Win32"
     21285                                        ExcludedFromBuild="true"
     21286                                        >
     21287                                        <Tool
     21288                                                Name="VCCLCompilerTool"
     21289                                        />
     21290                                </FileConfiguration>
     21291                        </File>
     21292                        <File
     21293                                RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSStringCallback.h"
    2112621294                                >
    2112721295                        </File>
     
    4250342671                        </File>
    4250442672                        <File
     42673                                RelativePath="..\dom\DataTransferItem.cpp"
     42674                                >
     42675                                <FileConfiguration
     42676                                        Name="Debug|Win32"
     42677                                        ExcludedFromBuild="true"
     42678                                        >
     42679                                        <Tool
     42680                                                Name="VCCLCompilerTool"
     42681                                        />
     42682                                </FileConfiguration>
     42683                                <FileConfiguration
     42684                                        Name="Release|Win32"
     42685                                        ExcludedFromBuild="true"
     42686                                        >
     42687                                        <Tool
     42688                                                Name="VCCLCompilerTool"
     42689                                        />
     42690                                </FileConfiguration>
     42691                                <FileConfiguration
     42692                                        Name="Debug_Cairo_CFLite|Win32"
     42693                                        ExcludedFromBuild="true"
     42694                                        >
     42695                                        <Tool
     42696                                                Name="VCCLCompilerTool"
     42697                                        />
     42698                                </FileConfiguration>
     42699                                <FileConfiguration
     42700                                        Name="Release_Cairo_CFLite|Win32"
     42701                                        ExcludedFromBuild="true"
     42702                                        >
     42703                                        <Tool
     42704                                                Name="VCCLCompilerTool"
     42705                                        />
     42706                                </FileConfiguration>
     42707                                <FileConfiguration
     42708                                        Name="Debug_All|Win32"
     42709                                        ExcludedFromBuild="true"
     42710                                        >
     42711                                        <Tool
     42712                                                Name="VCCLCompilerTool"
     42713                                        />
     42714                                </FileConfiguration>
     42715                                <FileConfiguration
     42716                                        Name="Release_LTCG|Win32"
     42717                                        ExcludedFromBuild="true"
     42718                                        >
     42719                                        <Tool
     42720                                                Name="VCCLCompilerTool"
     42721                                        />
     42722                                </FileConfiguration>
     42723                        </File>
     42724                        <File
     42725                                RelativePath="..\dom\DataTransferItem.h"
     42726                                >
     42727                        </File>
     42728                        <File
     42729                                RelativePath="..\dom\DataTransferItems.h"
     42730                                >
     42731                        </File>
     42732                        <File
    4250542733                                RelativePath="..\dom\DatasetDOMStringMap.cpp"
    4250642734                                >
     
    4619246420                        <File
    4619346421                                RelativePath="..\dom\StaticNodeList.h"
     46422                                >
     46423                        </File>
     46424                        <File
     46425                                RelativePath="..\dom\StringCallback.cpp"
     46426                                >
     46427                                <FileConfiguration
     46428                                        Name="Debug|Win32"
     46429                                        ExcludedFromBuild="true"
     46430                                        >
     46431                                        <Tool
     46432                                                Name="VCCLCompilerTool"
     46433                                        />
     46434                                </FileConfiguration>
     46435                                <FileConfiguration
     46436                                        Name="Release|Win32"
     46437                                        ExcludedFromBuild="true"
     46438                                        >
     46439                                        <Tool
     46440                                                Name="VCCLCompilerTool"
     46441                                        />
     46442                                </FileConfiguration>
     46443                                <FileConfiguration
     46444                                        Name="Debug_Cairo_CFLite|Win32"
     46445                                        ExcludedFromBuild="true"
     46446                                        >
     46447                                        <Tool
     46448                                                Name="VCCLCompilerTool"
     46449                                        />
     46450                                </FileConfiguration>
     46451                                <FileConfiguration
     46452                                        Name="Release_Cairo_CFLite|Win32"
     46453                                        ExcludedFromBuild="true"
     46454                                        >
     46455                                        <Tool
     46456                                                Name="VCCLCompilerTool"
     46457                                        />
     46458                                </FileConfiguration>
     46459                                <FileConfiguration
     46460                                        Name="Debug_All|Win32"
     46461                                        ExcludedFromBuild="true"
     46462                                        >
     46463                                        <Tool
     46464                                                Name="VCCLCompilerTool"
     46465                                        />
     46466                                </FileConfiguration>
     46467                                <FileConfiguration
     46468                                        Name="Release_LTCG|Win32"
     46469                                        ExcludedFromBuild="true"
     46470                                        >
     46471                                        <Tool
     46472                                                Name="VCCLCompilerTool"
     46473                                        />
     46474                                </FileConfiguration>
     46475                        </File>
     46476                        <File
     46477                                RelativePath="..\dom\StringCallback.h"
    4619446478                                >
    4619546479                        </File>
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r80510 r80536  
    16621662                7EE6847112D26E3800E79415 /* ResourceResponseCFNet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7EE6845E12D26E3800E79415 /* ResourceResponseCFNet.cpp */; };
    16631663                7EE6847512D26E7000E79415 /* ResourceLoaderCFNet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7EE6847412D26E7000E79415 /* ResourceLoaderCFNet.cpp */; };
     1664                8102C5881325BB1100DDE67A /* StringCallback.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8102C5871325BB1100DDE67A /* StringCallback.cpp */; };
     1665                815E6167132587AA00B622B0 /* DataTransferItem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 815E6166132587AA00B622B0 /* DataTransferItem.cpp */; };
    16641666                81A7325E1210189B00FC0D9E /* IDBCursor.h in Headers */ = {isa = PBXBuildFile; fileRef = 81A7325D1210189B00FC0D9E /* IDBCursor.h */; };
    16651667                81A73260121018A400FC0D9E /* IDBCursor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 81A7325F121018A400FC0D9E /* IDBCursor.cpp */; };
    16661668                81A73278121019E100FC0D9E /* IDBCursorBackendImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = 81A73277121019E100FC0D9E /* IDBCursorBackendImpl.h */; };
     1669                81AC5999131636E60009A7E0 /* DataTransferItem.h in Headers */ = {isa = PBXBuildFile; fileRef = 81AC5997131636E60009A7E0 /* DataTransferItem.h */; };
     1670                81AC599A131636E60009A7E0 /* DataTransferItems.h in Headers */ = {isa = PBXBuildFile; fileRef = 81AC5998131636E60009A7E0 /* DataTransferItems.h */; };
     1671                81AC6C36131C57D30009A7E0 /* StringCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = 81AC6C35131C57D30009A7E0 /* StringCallback.h */; };
    16671672                81BE209811F4AB8D00915DFA /* IDBCursorBackendImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 81BE209311F4AB8D00915DFA /* IDBCursorBackendImpl.cpp */; };
    16681673                81BE209911F4AB8D00915DFA /* IDBCursorBackendInterface.h in Headers */ = {isa = PBXBuildFile; fileRef = 81BE209411F4AB8D00915DFA /* IDBCursorBackendInterface.h */; };
     
    81568161                7EE6845E12D26E3800E79415 /* ResourceResponseCFNet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResourceResponseCFNet.cpp; sourceTree = "<group>"; };
    81578162                7EE6847412D26E7000E79415 /* ResourceLoaderCFNet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ResourceLoaderCFNet.cpp; path = cf/ResourceLoaderCFNet.cpp; sourceTree = "<group>"; };
     8163                8102C5871325BB1100DDE67A /* StringCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringCallback.cpp; sourceTree = "<group>"; };
     8164                815E6166132587AA00B622B0 /* DataTransferItem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DataTransferItem.cpp; sourceTree = "<group>"; };
    81588165                81A7325D1210189B00FC0D9E /* IDBCursor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IDBCursor.h; sourceTree = "<group>"; };
    81598166                81A7325F121018A400FC0D9E /* IDBCursor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IDBCursor.cpp; sourceTree = "<group>"; };
    81608167                81A73277121019E100FC0D9E /* IDBCursorBackendImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IDBCursorBackendImpl.h; sourceTree = "<group>"; };
     8168                81AC5997131636E60009A7E0 /* DataTransferItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DataTransferItem.h; sourceTree = "<group>"; };
     8169                81AC5998131636E60009A7E0 /* DataTransferItems.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DataTransferItems.h; sourceTree = "<group>"; };
     8170                81AC5AE81316392E0009A7E0 /* DataTransferItem.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DataTransferItem.idl; sourceTree = "<group>"; };
     8171                81AC5AE91316392E0009A7E0 /* DataTransferItems.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DataTransferItems.idl; sourceTree = "<group>"; };
     8172                81AC6C34131C57C20009A7E0 /* StringCallback.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = StringCallback.idl; sourceTree = "<group>"; };
     8173                81AC6C35131C57D30009A7E0 /* StringCallback.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StringCallback.h; sourceTree = "<group>"; };
    81618174                81BE209311F4AB8D00915DFA /* IDBCursorBackendImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IDBCursorBackendImpl.cpp; sourceTree = "<group>"; };
    81628175                81BE209411F4AB8D00915DFA /* IDBCursorBackendInterface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IDBCursorBackendInterface.h; sourceTree = "<group>"; };
     
    1902219035                                62CD32571157E57C0063B0A7 /* CustomEvent.h */,
    1902319036                                62CD32581157E57C0063B0A7 /* CustomEvent.idl */,
     19037                                815E6166132587AA00B622B0 /* DataTransferItem.cpp */,
     19038                                81AC5997131636E60009A7E0 /* DataTransferItem.h */,
     19039                                81AC5998131636E60009A7E0 /* DataTransferItems.h */,
     19040                                81AC5AE81316392E0009A7E0 /* DataTransferItem.idl */,
     19041                                81AC5AE91316392E0009A7E0 /* DataTransferItems.idl */,
    1902419042                                BC64641B11D7F416006455B0 /* DatasetDOMStringMap.cpp */,
    1902519043                                BC64641A11D7F416006455B0 /* DatasetDOMStringMap.h */,
     
    1921619234                                BC7FA62C0D1F0EFF00DB22A9 /* StaticNodeList.cpp */,
    1921719235                                BC7FA62B0D1F0EFF00DB22A9 /* StaticNodeList.h */,
     19236                                8102C5871325BB1100DDE67A /* StringCallback.cpp */,
     19237                                81AC6C35131C57D30009A7E0 /* StringCallback.h */,
     19238                                81AC6C34131C57C20009A7E0 /* StringCallback.idl */,
    1921819239                                A8C4A7EC09D563270003AC8D /* StyledElement.cpp */,
    1921919240                                A8C4A7EB09D563270003AC8D /* StyledElement.h */,
     
    1979419815                                62CD325A1157E57C0063B0A7 /* CustomEvent.h in Headers */,
    1979519816                                A8CB413E0E8633FD0032C4F0 /* DashArray.h in Headers */,
     19817                                81AC5999131636E60009A7E0 /* DataTransferItem.h in Headers */,
     19818                                81AC599A131636E60009A7E0 /* DataTransferItems.h in Headers */,
    1979619819                                A80E6D0B0A1989CA007FB8C5 /* DashboardRegion.h in Headers */,
    1979719820                                5196116B0CAC56570010A80C /* Database.h in Headers */,
     
    2207622099                                97C078501165D5BE003A32EF /* SuffixTree.h in Headers */,
    2207722100                                62C1217D11AB9E77003C462C /* SuspendableTimer.h in Headers */,
     22101                                81AC6C36131C57D30009A7E0 /* StringCallback.h in Headers */,
    2207822102                                B22279740D00BF220071B782 /* SVGAElement.h in Headers */,
    2207922103                                65653F2E0D9727D200CA9723 /* SVGAltGlyphElement.h in Headers */,
     
    2519725221                                598D77DD132541EE00761B22 /* JavaArrayJSC.cpp in Sources */,
    2519825222                                598D77E11325420400761B22 /* JavaFieldJSC.cpp in Sources */,
     25223                                815E6167132587AA00B622B0 /* DataTransferItem.cpp in Sources */,
     25224                                8102C5881325BB1100DDE67A /* StringCallback.cpp in Sources */,
    2519925225                        );
    2520025226                        runOnlyForDeploymentPostprocessing = 0;
  • trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.cpp

    r78095 r80536  
    4747bool RuntimeEnabledFeatures::isWebkitNotificationsEnabled = false;
    4848bool RuntimeEnabledFeatures::isApplicationCacheEnabled = true;
     49bool RuntimeEnabledFeatures::isDataTransferItemsEnabled = true;
    4950bool RuntimeEnabledFeatures::isGeolocationEnabled = true;
    5051bool RuntimeEnabledFeatures::isIndexedDBEnabled = false;
  • trunk/Source/WebCore/bindings/generic/RuntimeEnabledFeatures.h

    r78525 r80536  
    5252    static bool applicationCacheEnabled() { return isApplicationCacheEnabled; }
    5353
     54    static void setDataTransferItemsEnabled(bool isEnabled) { isDataTransferItemsEnabled = isEnabled; }
     55    static bool dataTransferItemsEnabled() { return isDataTransferItemsEnabled; }
     56
    5457    static void setGeolocationEnabled(bool isEnabled) { isGeolocationEnabled = isEnabled; }
    5558    static bool geolocationEnabled() { return isGeolocationEnabled; }
     
    171174    static bool isWebkitNotificationsEnabled;
    172175    static bool isApplicationCacheEnabled;
     176    static bool isDataTransferItemsEnabled;
    173177    static bool isGeolocationEnabled;
    174178    static bool isIndexedDBEnabled;
  • trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm

    r80072 r80536  
    129129    # When we're finished with the one-file-per-class
    130130    # reorganization, we won't need these special cases.
    131     if (!$codeGenerator->IsPrimitiveType($type) and !$codeGenerator->AvoidInclusionOfType($type) and $type ne "Date") {
     131    if (!$codeGenerator->IsPrimitiveType($type) and !$codeGenerator->IsStringType($type) and !$codeGenerator->AvoidInclusionOfType($type) and $type ne "Date") {
    132132        # default, include the same named file
    133133        $implIncludes{GetV8HeaderName(${type})} = 1;
  • trunk/Source/WebCore/dom/Clipboard.h

    r67973 r80536  
    3434namespace WebCore {
    3535
     36    class DataTransferItems;
    3637    class DragData;
    3738    class FileList;
     
    8586       
    8687        void setAccessPolicy(ClipboardAccessPolicy);
     88        ClipboardAccessPolicy policy() const { return m_policy; }
    8789
    8890        DragOperation sourceOperation() const;
     
    9294       
    9395        void setDragHasStarted() { m_dragStarted = true; }
     96
     97#if ENABLE(DATA_TRANSFER_ITEMS)
     98        virtual PassRefPtr<DataTransferItems> items() = 0;
     99#endif
    94100       
    95101    protected:
    96102        Clipboard(ClipboardAccessPolicy, ClipboardType);
    97103
    98         ClipboardAccessPolicy policy() const { return m_policy; }
    99104        bool dragStarted() const { return m_dragStarted; }
    100105       
  • trunk/Source/WebCore/dom/Clipboard.idl

    r59536 r80536  
    4343        [Custom] void setDragImage(in HTMLImageElement image, in long x, in long y)
    4444            raises(DOMException);
     45
     46        readonly attribute [Conditional=DATA_TRANSFER_ITEMS, EnabledAtRuntime=DataTransferItems] DataTransferItems items;
    4547    };
    4648
  • trunk/Source/WebCore/platform/chromium/ClipboardChromium.cpp

    r80493 r80536  
    3232#include "ClipboardMimeTypes.h"
    3333#include "ClipboardUtilitiesChromium.h"
     34#include "DataTransferItemsChromium.h"
    3435#include "Document.h"
    3536#include "DragData.h"
     
    343344}
    344345
     346PassRefPtr<DataTransferItems> ClipboardChromium::items()
     347{
     348    return DataTransferItemsChromium::create(this, m_frame->document()->scriptExecutionContext());
     349}
     350
    345351} // namespace WebCore
  • trunk/Source/WebCore/platform/chromium/ClipboardChromium.h

    r80185 r80536  
    8181        virtual bool hasData();
    8282
     83        virtual PassRefPtr<DataTransferItems> items();
     84
    8385    private:
    8486        ClipboardChromium(ClipboardType, PassRefPtr<ChromiumDataObject>, ClipboardAccessPolicy, Frame*);
  • trunk/Source/WebKit/chromium/ChangeLog

    r80530 r80536  
     12011-03-07  Daniel Cheng  <dcheng@chromium.org>
     2
     3        Reviewed by David Levin.
     4
     5        Add support for DataTransferItems
     6        https://bugs.webkit.org/show_bug.cgi?id=55115
     7
     8        Add new runtime enabled flag for data transfer items feature.
     9
     10        * public/WebRuntimeFeatures.h:
     11        * src/WebRuntimeFeatures.cpp:
     12        (WebKit::WebRuntimeFeatures::enableDataTransferItems):
     13        (WebKit::WebRuntimeFeatures::isDataTransferItemsEnabled):
     14
    1152011-03-07  Ryosuke Niwa  <rniwa@webkit.org>
    216
  • trunk/Source/WebKit/chromium/public/WebRuntimeFeatures.h

    r78095 r80536  
    6464    WEBKIT_API static void enableApplicationCache(bool);
    6565    WEBKIT_API static bool isApplicationCacheEnabled();
     66   
     67    WEBKIT_API static void enableDataTransferItems(bool);
     68    WEBKIT_API static bool isDataTransferItemsEnabled();
    6669
    6770    WEBKIT_API static void enableGeolocation(bool);
  • trunk/Source/WebKit/chromium/src/WebRuntimeFeatures.cpp

    r78095 r80536  
    153153}
    154154
     155void WebRuntimeFeatures::enableDataTransferItems(bool enable)
     156{
     157#if ENABLE(DATA_TRANSFER_ITEMS)
     158    RuntimeEnabledFeatures::setDataTransferItemsEnabled(enable);
     159#endif
     160}
     161
     162bool WebRuntimeFeatures::isDataTransferItemsEnabled()
     163{
     164#if ENABLE(DATA_TRANSFER_ITEMS)
     165    return RuntimeEnabledFeatures::dataTransferItemsEnabled();
     166#else
     167    return false;
     168#endif
     169}
     170
    155171void WebRuntimeFeatures::enableGeolocation(bool enable)
    156172{
  • trunk/Tools/ChangeLog

    r80535 r80536  
     12011-03-07  Daniel Cheng  <dcheng@chromium.org>
     2
     3        Reviewed by David Levin.
     4
     5        Add support for DataTransferItems
     6        https://bugs.webkit.org/show_bug.cgi?id=55115
     7
     8        Enable data transfer items in DRT.
     9
     10        * DumpRenderTree/chromium/TestShell.cpp:
     11        (TestShell::TestShell):
     12
    1132011-03-06  Ojan Vafai  <ojan@chromium.org>
    214
  • trunk/Tools/DumpRenderTree/chromium/TestShell.cpp

    r79975 r80536  
    9191    , m_dumpWhenFinished(true)
    9292{
     93    WebRuntimeFeatures::enableDataTransferItems(true);
    9394    WebRuntimeFeatures::enableGeolocation(true);
    9495    WebRuntimeFeatures::enableIndexedDatabase(true);
Note: See TracChangeset for help on using the changeset viewer.