<?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>258068</bug_id>
          
          <creation_ts>2023-06-14 02:15:37 -0700</creation_ts>
          <short_desc>transient activation duration of Clipboard.readText is not 5 secs</short_desc>
          <delta_ts>2023-06-21 02:16:14 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 16</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=239832</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wen Huang">jokeygeek</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>dino</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1961520</commentid>
    <comment_count>0</comment_count>
      <attachid>466690</attachid>
    <who name="Wen Huang">jokeygeek</who>
    <bug_when>2023-06-14 02:15:37 -0700</bug_when>
    <thetext>Created attachment 466690
iOS Safari log of the use case in description

Use Case: During our testing of the Clipboard.readText WebAPI on iOS Safari with TouchEnd events, we observed that the Promise would be rejected by iOS Safari if the duration between the TouchStart and TouchEnd events exceeded approximately 750ms.

According to a relevant discussion on the W3C Github thread, the WebKit team has indicated that they will consider increasing the transient activation duration to 5 seconds.
- https://github.com/w3c/clipboard-apis/issues/75#issuecomment-1125155111

There is a related WebKit bug that has been closed, which addresses increasing the transient activation duration to 5 seconds.
- https://bugs.webkit.org/show_bug.cgi?id=239832 - increase transient activation duration to 5s

Based on our testing of the UserActivation WebAPI on iOS 16.4, which is the version that officially supports this API, we observed that the UserActivation.isActive sometimes would be false in the above use case, and event it sometimes would be true, the Promise from Clipboard.readText was still being rejected.

Considering the validity of the 5-second fix, shouldn&apos;t the Clipboard.readText WebAPI set isActive to true when the last user activation has not expired within 5 seconds? 

Refer to the relevant section of the HTML specification for more details on transient activation: 
- https://html.spec.whatwg.org/multipage/interaction.html#transient-activation
- &quot;The transient activation state is considered expired if it becomes false because the transient activation duration time has elapsed since the last user activation. Note that it can become false even before the expiry time through an activation consumption.&quot;

I have attached the log from the ground test for checking the Clipboard API on iOS 16.4.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1962755</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2023-06-21 02:16:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/111089598&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>466690</attachid>
            <date>2023-06-14 02:15:37 -0700</date>
            <delta_ts>2023-06-14 02:15:37 -0700</delta_ts>
            <desc>iOS Safari log of the use case in description</desc>
            <filename>Console.log</filename>
            <type>application/octet-stream</type>
            <size>4604</size>
            <attacher name="Wen Huang">jokeygeek</attacher>
            
              <data encoding="base64">W0xvZ10gdG91Y2hTdGFydDogdGltZXN0YW1wPSDigJMgMzY4OTMgKG1haW4uanMsIGxpbmUgMzIp
CltMb2ddIHRvdWNoRW5kOiB0aW1lU3RhbXA9IOKAkyAzNzQxMSAobWFpbi5qcywgbGluZSA0NykK
W0xvZ10gRHVyYXRpb24gb2YgdG91Y2hTdGFydCB0byB0b3VjaEVuZDogNTE4IG1zIChtYWluLmpz
LCBsaW5lIDQ5KQpbTG9nXSBVc2VyQWN0aXZhdGlvbjogIOKAkyBVc2VyQWN0aXZhdGlvbiB7aGFz
QmVlbkFjdGl2ZTogdHJ1ZSwgaXNBY3RpdmU6IHRydWV9IChtYWluLmpzLCBsaW5lIDUxKQpVc2Vy
QWN0aXZhdGlvbiB7aGFzQmVlbkFjdGl2ZTogdHJ1ZSwgaXNBY3RpdmU6IHRydWV9VXNlckFjdGl2
YXRpb24KW0xvZ10gY2xpcGJvYXJkLnJlYWRUZXh0IHN1Y2Nlc3MsIHRleHQ9IOKAkyAiUGFzdGVU
ZXh0VGVzdCIgKG1haW4uanMsIGxpbmUgNTcpCltMb2ddIHRvdWNoU3RhcnQ6IHRpbWVzdGFtcD0g
4oCTIDQxMjUzIChtYWluLmpzLCBsaW5lIDMyKQpbTG9nXSB0b3VjaEVuZDogdGltZVN0YW1wPSDi
gJMgNDIwOTMgKG1haW4uanMsIGxpbmUgNDcpCltMb2ddIER1cmF0aW9uIG9mIHRvdWNoU3RhcnQg
dG8gdG91Y2hFbmQ6IDg0MCBtcyAobWFpbi5qcywgbGluZSA0OSkKW0xvZ10gVXNlckFjdGl2YXRp
b246ICDigJMgVXNlckFjdGl2YXRpb24ge2hhc0JlZW5BY3RpdmU6IHRydWUsIGlzQWN0aXZlOiB0
cnVlfSAobWFpbi5qcywgbGluZSA1MSkKVXNlckFjdGl2YXRpb24ge2hhc0JlZW5BY3RpdmU6IHRy
dWUsIGlzQWN0aXZlOiB0cnVlfVVzZXJBY3RpdmF0aW9uCltMb2ddIGNsaXBib2FyZC5yZWFkVGV4
dCByZWplY3Rpb24gZXJyb3I9IOKAkyBOb3RBbGxvd2VkRXJyb3I6IFRoZSByZXF1ZXN0IGlzIG5v
dCBhbGxvd2VkIGJ5IHRoZSB1c2VyIGFnZW50IG9yIHRoZSBwbGF0Zm9ybSBpbiB0aGUgY3VycmVu
dCBjb250ZXh0LCBwb3NzaWJseSBiZWNhdXNlIHRoZSB1c2VyIGRlbmllZCBwZXJtaXNzaW9uLiDi
gJQgYXBwLmNvbXBvbmVudC50czo1MyAobWFpbi5qcywgbGluZSA1NCkKTm90QWxsb3dlZEVycm9y
OiBUaGUgcmVxdWVzdCBpcyBub3QgYWxsb3dlZCBieSB0aGUgdXNlciBhZ2VudCBvciB0aGUgcGxh
dGZvcm0gaW4gdGhlIGN1cnJlbnQgY29udGV4dCwgcG9zc2libHkgYmVjYXVzZSB0aGUgdXNlciBk
ZW5pZWQgcGVybWlzc2lvbi4g4oCUIGFwcC5jb21wb25lbnQudHM6NTMKW0xvZ10gY2xpcGJvYXJk
LnJlYWRUZXh0IHN1Y2Nlc3MsIHRleHQ9IOKAkyBudWxsIChtYWluLmpzLCBsaW5lIDU3KQpbTG9n
XSB0b3VjaFN0YXJ0OiB0aW1lc3RhbXA9IOKAkyA0NzA3OCAobWFpbi5qcywgbGluZSAzMikKW0xv
Z10gdG91Y2hFbmQ6IHRpbWVTdGFtcD0g4oCTIDQ3NzYxIChtYWluLmpzLCBsaW5lIDQ3KQpbTG9n
XSBEdXJhdGlvbiBvZiB0b3VjaFN0YXJ0IHRvIHRvdWNoRW5kOiA2ODMgbXMgKG1haW4uanMsIGxp
bmUgNDkpCltMb2ddIFVzZXJBY3RpdmF0aW9uOiAg4oCTIFVzZXJBY3RpdmF0aW9uIHtoYXNCZWVu
QWN0aXZlOiB0cnVlLCBpc0FjdGl2ZTogdHJ1ZX0gKG1haW4uanMsIGxpbmUgNTEpClVzZXJBY3Rp
dmF0aW9uIHtoYXNCZWVuQWN0aXZlOiB0cnVlLCBpc0FjdGl2ZTogdHJ1ZX1Vc2VyQWN0aXZhdGlv
bgpbTG9nXSBjbGlwYm9hcmQucmVhZFRleHQgc3VjY2VzcywgdGV4dD0g4oCTICJQYXN0ZVRleHRU
ZXN0IiAobWFpbi5qcywgbGluZSA1NykKW0xvZ10gdG91Y2hTdGFydDogdGltZXN0YW1wPSDigJMg
NTE1MDQgKG1haW4uanMsIGxpbmUgMzIpCltMb2ddIHRvdWNoRW5kOiB0aW1lU3RhbXA9IOKAkyA1
MjUzNiAobWFpbi5qcywgbGluZSA0NykKW0xvZ10gRHVyYXRpb24gb2YgdG91Y2hTdGFydCB0byB0
b3VjaEVuZDogMTAzMiBtcyAobWFpbi5qcywgbGluZSA0OSkKW0xvZ10gVXNlckFjdGl2YXRpb246
ICDigJMgVXNlckFjdGl2YXRpb24ge2hhc0JlZW5BY3RpdmU6IHRydWUsIGlzQWN0aXZlOiB0cnVl
fSAobWFpbi5qcywgbGluZSA1MSkKVXNlckFjdGl2YXRpb24ge2hhc0JlZW5BY3RpdmU6IHRydWUs
IGlzQWN0aXZlOiB0cnVlfVVzZXJBY3RpdmF0aW9uCltMb2ddIGNsaXBib2FyZC5yZWFkVGV4dCBy
ZWplY3Rpb24gZXJyb3I9IOKAkyBOb3RBbGxvd2VkRXJyb3I6IFRoZSByZXF1ZXN0IGlzIG5vdCBh
bGxvd2VkIGJ5IHRoZSB1c2VyIGFnZW50IG9yIHRoZSBwbGF0Zm9ybSBpbiB0aGUgY3VycmVudCBj
b250ZXh0LCBwb3NzaWJseSBiZWNhdXNlIHRoZSB1c2VyIGRlbmllZCBwZXJtaXNzaW9uLiDigJQg
YXBwLmNvbXBvbmVudC50czo1MyAobWFpbi5qcywgbGluZSA1NCkKTm90QWxsb3dlZEVycm9yOiBU
aGUgcmVxdWVzdCBpcyBub3QgYWxsb3dlZCBieSB0aGUgdXNlciBhZ2VudCBvciB0aGUgcGxhdGZv
cm0gaW4gdGhlIGN1cnJlbnQgY29udGV4dCwgcG9zc2libHkgYmVjYXVzZSB0aGUgdXNlciBkZW5p
ZWQgcGVybWlzc2lvbi4g4oCUIGFwcC5jb21wb25lbnQudHM6NTMKW0xvZ10gY2xpcGJvYXJkLnJl
YWRUZXh0IHN1Y2Nlc3MsIHRleHQ9IOKAkyBudWxsIChtYWluLmpzLCBsaW5lIDU3KQpbTG9nXSB0
b3VjaFN0YXJ0OiB0aW1lc3RhbXA9IOKAkyA1NDY3MCAobWFpbi5qcywgbGluZSAzMikKW0xvZ10g
dG91Y2hFbmQ6IHRpbWVTdGFtcD0g4oCTIDU1NzMwLjAwMDAwMDAwMDAxIChtYWluLmpzLCBsaW5l
IDQ3KQpbTG9nXSBEdXJhdGlvbiBvZiB0b3VjaFN0YXJ0IHRvIHRvdWNoRW5kOiAxMDYwLjAwMDAw
MDAwMDAwNzMgbXMgKG1haW4uanMsIGxpbmUgNDkpCltMb2ddIFVzZXJBY3RpdmF0aW9uOiAg4oCT
IFVzZXJBY3RpdmF0aW9uIHtoYXNCZWVuQWN0aXZlOiB0cnVlLCBpc0FjdGl2ZTogZmFsc2V9ICht
YWluLmpzLCBsaW5lIDUxKQpVc2VyQWN0aXZhdGlvbiB7aGFzQmVlbkFjdGl2ZTogdHJ1ZSwgaXNB
Y3RpdmU6IGZhbHNlfVVzZXJBY3RpdmF0aW9uCltMb2ddIGNsaXBib2FyZC5yZWFkVGV4dCByZWpl
Y3Rpb24gZXJyb3I9IOKAkyBOb3RBbGxvd2VkRXJyb3I6IFRoZSByZXF1ZXN0IGlzIG5vdCBhbGxv
d2VkIGJ5IHRoZSB1c2VyIGFnZW50IG9yIHRoZSBwbGF0Zm9ybSBpbiB0aGUgY3VycmVudCBjb250
ZXh0LCBwb3NzaWJseSBiZWNhdXNlIHRoZSB1c2VyIGRlbmllZCBwZXJtaXNzaW9uLiDigJQgYXBw
LmNvbXBvbmVudC50czo1MyAobWFpbi5qcywgbGluZSA1NCkKTm90QWxsb3dlZEVycm9yOiBUaGUg
cmVxdWVzdCBpcyBub3QgYWxsb3dlZCBieSB0aGUgdXNlciBhZ2VudCBvciB0aGUgcGxhdGZvcm0g
aW4gdGhlIGN1cnJlbnQgY29udGV4dCwgcG9zc2libHkgYmVjYXVzZSB0aGUgdXNlciBkZW5pZWQg
cGVybWlzc2lvbi4g4oCUIGFwcC5jb21wb25lbnQudHM6NTMKW0xvZ10gY2xpcGJvYXJkLnJlYWRU
ZXh0IHN1Y2Nlc3MsIHRleHQ9IOKAkyBudWxsIChtYWluLmpzLCBsaW5lIDU3KQpbTG9nXSB0b3Vj
aFN0YXJ0OiB0aW1lc3RhbXA9IOKAkyA1OTcyOCAobWFpbi5qcywgbGluZSAzMikKW0xvZ10gdG91
Y2hFbmQ6IHRpbWVTdGFtcD0g4oCTIDYwMzgyIChtYWluLmpzLCBsaW5lIDQ3KQpbTG9nXSBEdXJh
dGlvbiBvZiB0b3VjaFN0YXJ0IHRvIHRvdWNoRW5kOiA2NTQgbXMgKG1haW4uanMsIGxpbmUgNDkp
CltMb2ddIFVzZXJBY3RpdmF0aW9uOiAg4oCTIFVzZXJBY3RpdmF0aW9uIHtoYXNCZWVuQWN0aXZl
OiB0cnVlLCBpc0FjdGl2ZTogdHJ1ZX0gKG1haW4uanMsIGxpbmUgNTEpClVzZXJBY3RpdmF0aW9u
IHtoYXNCZWVuQWN0aXZlOiB0cnVlLCBpc0FjdGl2ZTogdHJ1ZX1Vc2VyQWN0aXZhdGlvbgpbTG9n
XSBjbGlwYm9hcmQucmVhZFRleHQgc3VjY2VzcywgdGV4dD0g4oCTICJQYXN0ZVRleHRUZXN0IiAo
bWFpbi5qcywgbGluZSA1NykKW0xvZ10gdG91Y2hTdGFydDogdGltZXN0YW1wPSDigJMgNjU2NTIg
KG1haW4uanMsIGxpbmUgMzIpCltMb2ddIHRvdWNoRW5kOiB0aW1lU3RhbXA9IOKAkyA2NjQ1OCAo
bWFpbi5qcywgbGluZSA0NykKW0xvZ10gRHVyYXRpb24gb2YgdG91Y2hTdGFydCB0byB0b3VjaEVu
ZDogODA2IG1zIChtYWluLmpzLCBsaW5lIDQ5KQpbTG9nXSBVc2VyQWN0aXZhdGlvbjogIOKAkyBV
c2VyQWN0aXZhdGlvbiB7aGFzQmVlbkFjdGl2ZTogdHJ1ZSwgaXNBY3RpdmU6IGZhbHNlfSAobWFp
bi5qcywgbGluZSA1MSkKVXNlckFjdGl2YXRpb24ge2hhc0JlZW5BY3RpdmU6IHRydWUsIGlzQWN0
aXZlOiBmYWxzZX1Vc2VyQWN0aXZhdGlvbgpbTG9nXSBjbGlwYm9hcmQucmVhZFRleHQgcmVqZWN0
aW9uIGVycm9yPSDigJMgTm90QWxsb3dlZEVycm9yOiBUaGUgcmVxdWVzdCBpcyBub3QgYWxsb3dl
ZCBieSB0aGUgdXNlciBhZ2VudCBvciB0aGUgcGxhdGZvcm0gaW4gdGhlIGN1cnJlbnQgY29udGV4
dCwgcG9zc2libHkgYmVjYXVzZSB0aGUgdXNlciBkZW5pZWQgcGVybWlzc2lvbi4g4oCUIGFwcC5j
b21wb25lbnQudHM6NTMgKG1haW4uanMsIGxpbmUgNTQpCk5vdEFsbG93ZWRFcnJvcjogVGhlIHJl
cXVlc3QgaXMgbm90IGFsbG93ZWQgYnkgdGhlIHVzZXIgYWdlbnQgb3IgdGhlIHBsYXRmb3JtIGlu
IHRoZSBjdXJyZW50IGNvbnRleHQsIHBvc3NpYmx5IGJlY2F1c2UgdGhlIHVzZXIgZGVuaWVkIHBl
cm1pc3Npb24uIOKAlCBhcHAuY29tcG9uZW50LnRzOjUzCltMb2ddIGNsaXBib2FyZC5yZWFkVGV4
dCBzdWNjZXNzLCB0ZXh0PSDigJMgbnVsbCAobWFpbi5qcywgbGluZSA1Nyk=
</data>

          </attachment>
      

    </bug>

</bugzilla>