<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>98940</bug_id>
          
          <creation_ts>2012-10-10 11:59:06 -0700</creation_ts>
          <short_desc>[GTK][WPE] Add support for DataTransferItem API</short_desc>
          <delta_ts>2019-10-17 01:17:18 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=202796</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk, LayoutTestFailure</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Zan Dobersek">zan</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>cdumez</cc>
    
    <cc>clopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>739190</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2012-10-10 11:59:06 -0700</bug_when>
    <thetext>This feature is guarded by the ENABLE_DATA_TRANSFER_ITEMS compilation guard.
I believe the Qt port already implements this, and that their implementation can be shared with the GTK port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580547</commentid>
    <comment_count>1</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-10-16 09:41:15 -0700</bug_when>
    <thetext>The spec: https://html.spec.whatwg.org/multipage/dnd.html#the-datatransferitems-interface

The Qt implementation was done in r85648

Currently the feature is not longer enabled by a compilation guard.

But it has a run-time guard. This run-time is enabled by default on WTR but its disabled for GTK or WPE ports currently otherwise. For Mac is enabled by default.

The name of the run-time guard is DataTransferItemsEnabled</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580549</commentid>
    <comment_count>2</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-10-16 09:43:26 -0700</bug_when>
    <thetext>The spec: https://html.spec.whatwg.org/multipage/dnd.html#the-datatransferitems-interface

The Qt implementation was done in r85648

The feature is not longer enabled by a compilation guard.

But it has a run-time guard. This run-time is enabled by default on WTR but its disabled for GTK or WPE ports otherwise (like when using the browser). For Mac is enabled by default.

The name of the run-time guard is DataTransferItemsEnabled

A layout test to test the feature: editing/pasteboard/data-transfer-items.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580596</commentid>
    <comment_count>3</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-10-16 11:30:08 -0700</bug_when>
    <thetext>Even when the layout test editing/pasteboard/data-transfer-items.html is not fully passing, the feature seems to mostly work if enabled.

Here is a manual test for it: https://mdn.github.io/dom-examples/drag-and-drop/copy-move-DataTransferItemList.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580600</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-10-16 11:36:01 -0700</bug_when>
    <thetext>Here is another test https://mdn.github.io/dom-examples/drag-and-drop/copy-move-DataTransfer.html that passes (this was passing even before enabling the above run-time setting, because that run-time setting now only controls the access to the interface  DataTransferItem, but &quot;DataTransfer&quot; is unconditionally enabled)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580909</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-10-17 01:17:18 -0700</bug_when>
    <thetext>On r251228 I enabled the runtime setting by default.

After that the manual tests above from mdn.github pass on GTK.

This bug remains open however, as likely there is something extra to fix or implement regarding this standard because the layout test editing/pasteboard/data-transfer-items.html keeps failing.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>