<?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>181884</bug_id>
          
          <creation_ts>2018-01-19 14:51:36 -0800</creation_ts>
          <short_desc>Present WKFileUploadPanel on correct ViewController</short_desc>
          <delta_ts>2018-01-19 16:00:13 -0800</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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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="Megan Gardner">megan_gardner</reporter>
          <assigned_to name="Megan Gardner">megan_gardner</assigned_to>
          <cc>aestes</cc>
    
    <cc>joepeck</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1391201</commentid>
    <comment_count>0</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2018-01-19 14:51:36 -0800</bug_when>
    <thetext>Present WKFileUploadPanel on correct ViewController</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391205</commentid>
    <comment_count>1</comment_count>
      <attachid>331793</attachid>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2018-01-19 14:54:50 -0800</bug_when>
    <thetext>Created attachment 331793
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391212</commentid>
    <comment_count>2</comment_count>
      <attachid>331793</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-01-19 15:03:39 -0800</bug_when>
    <thetext>Comment on attachment 331793
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=331793&amp;action=review

Looks good to me.

There are other places that use -[UIViewController _viewControllerForFullScreenPresentationFromView:]. For example:
UIProcess/ios/forms/WKAirPlayRoutePicker.mm

Should they change as well?

&gt; Source/WebKit/UIProcess/ios/forms/WKFileUploadPanel.mm:462
&gt; +    NSLog(@&quot;Failed to find a view controller to show form validation popover&quot;);

Accidental log.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391213</commentid>
    <comment_count>3</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2018-01-19 15:08:08 -0800</bug_when>
    <thetext>(In reply to Joseph Pecoraro from comment #2)
&gt; Comment on attachment 331793 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=331793&amp;action=review
&gt; 
&gt; Looks good to me.
&gt; 
&gt; There are other places that use -[UIViewController
&gt; _viewControllerForFullScreenPresentationFromView:]. For example:
&gt; UIProcess/ios/forms/WKAirPlayRoutePicker.mm
&gt; 
&gt; Should they change as well?

Seems likely.
 
&gt; &gt; Source/WebKit/UIProcess/ios/forms/WKFileUploadPanel.mm:462
&gt; &gt; +    NSLog(@&quot;Failed to find a view controller to show form validation popover&quot;);
&gt; 
&gt; Accidental log.

Humorously that’s in the other version of this function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391215</commentid>
    <comment_count>4</comment_count>
      <attachid>331793</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2018-01-19 15:11:45 -0800</bug_when>
    <thetext>Comment on attachment 331793
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=331793&amp;action=review

&gt; Source/WebKit/UIProcess/ios/forms/WKFileUploadPanel.mm:456
&gt; +static UIViewController *fallbackViewController(UIView *view)

I wonder if we should put this in the UIDelegate implementation if the client returns null, so we don’t have to put it everywhere.

&gt; Source/WebKit/UIProcess/ios/forms/WKFileUploadPanel.mm:471
&gt; +        _presentationViewController = [self.delegate viewControllerForPresentingFileUploadPanel:self];

What if this returns nil? Can it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391227</commentid>
    <comment_count>5</comment_count>
      <attachid>331793</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2018-01-19 15:27:15 -0800</bug_when>
    <thetext>Comment on attachment 331793
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=331793&amp;action=review

&gt;&gt; Source/WebKit/UIProcess/ios/forms/WKFileUploadPanel.mm:456
&gt;&gt; +static UIViewController *fallbackViewController(UIView *view)
&gt; 
&gt; I wonder if we should put this in the UIDelegate implementation if the client returns null, so we don’t have to put it everywhere.

In a followup!

&gt;&gt;&gt; Source/WebKit/UIProcess/ios/forms/WKFileUploadPanel.mm:462
&gt;&gt;&gt; +    NSLog(@&quot;Failed to find a view controller to show form validation popover&quot;);
&gt;&gt; 
&gt;&gt; Accidental log.
&gt; 
&gt; Humorously that’s in the other version of this function.

Maybe RELEASE_LOG instead

&gt;&gt; Source/WebKit/UIProcess/ios/forms/WKFileUploadPanel.mm:471
&gt;&gt; +        _presentationViewController = [self.delegate viewControllerForPresentingFileUploadPanel:self];
&gt; 
&gt; What if this returns nil? Can it?

(I think you want if !presentationViewController instead of an else)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391233</commentid>
    <comment_count>6</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2018-01-19 15:38:50 -0800</bug_when>
    <thetext>https://trac.webkit.org/changeset/227247/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391234</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-01-19 15:39:14 -0800</bug_when>
    <thetext>&lt;rdar://problem/36673774&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391251</commentid>
    <comment_count>8</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2018-01-19 15:58:28 -0800</bug_when>
    <thetext>InRadar &lt;rdar://problem/35114892&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1391253</commentid>
    <comment_count>9</comment_count>
    <who name="Megan Gardner">megan_gardner</who>
    <bug_when>2018-01-19 16:00:13 -0800</bug_when>
    <thetext>&lt;rdar://problem/35114892&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>331793</attachid>
            <date>2018-01-19 14:54:50 -0800</date>
            <delta_ts>2018-01-19 15:27:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181884-20180119145450.patch</filename>
            <type>text/plain</type>
            <size>4426</size>
            <attacher name="Megan Gardner">megan_gardner</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMjcyNDApCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDE4LTAxLTE5ICBNZWdhbiBHYXJk
bmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CisKKyAgICAgICAgUHJlc2VudCBXS0ZpbGVV
cGxvYWRQYW5lbCBvbiBjb3JyZWN0IFZpZXdDb250cm9sbGVyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODE4ODQKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzM1MTE0ODkyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFdlIHNob3VsZCBub3QgYmUgZ2V0dGluZyB0aGUgbWFpbiB2aWV3IGNvbnRyb2xsZXIg
ZGlyZWN0bHksIGFzIGRvbmUgaW4gCisgICAgICAgIFZhbGlkYXRpb25CdWJibGVJT1MuIFRoaXMg
d2lsbCBrZWVwIHVzIGZyb20gcHJlc2VudGluZyBvbiB2aWV3IGNvbnRyb2xsZXJzIGFyZSAKKyAg
ICAgICAgaW4gdGhlIG1pZHN0IG9mIGJlaW5nIGRpc21pc3NlZCwgZXRjLCBjYXVzaW5nIHVzIHRv
IGdldCBpbnRvIHN0YXRlcyB3aGVyZSB3ZSBsb3NlCisgICAgICAgIHRoZSBhYmlsaXR5IHRvIHBy
ZXNlbnQgdGhlIFdLRmlsZVVwbG9hZFBhbmVsLgorCisgICAgICAgICogVUlQcm9jZXNzL2lvcy9X
S0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW06CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgdmll
d0NvbnRyb2xsZXJGb3JQcmVzZW50aW5nRmlsZVVwbG9hZFBhbmVsOl0pOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9pb3MvZm9ybXMvV0tGaWxlVXBsb2FkUGFuZWwuaDoKKyAgICAgICAgKiBVSVByb2Nl
c3MvaW9zL2Zvcm1zL1dLRmlsZVVwbG9hZFBhbmVsLm1tOgorICAgICAgICAoZmFsbGJhY2tWaWV3
Q29udHJvbGxlcik6CisgICAgICAgICgtW1dLRmlsZVVwbG9hZFBhbmVsIF9wcmVzZW50RnVsbHNj
cmVlblZpZXdDb250cm9sbGVyOmFuaW1hdGVkOl0pOgorCiAyMDE4LTAxLTE4ICBKYXNvbiBNYXJj
ZWxsICA8am1hcmNlbGxAYXBwbGUuY29tPgogCiAgICAgICAgIENoZXJyeS1waWNrIHIyMjcxNDYu
IHJkYXI6Ly9wcm9ibGVtLzM2NjI0MzE5CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0JKHJldmlzaW9uIDIy
NzA3NykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJh
Y3Rpb24ubW0JKHdvcmtpbmcgY29weSkKQEAgLTQwNjUsNiArNDA2NSw4IEBAIC0gKHZvaWQpX3No
b3dSdW5PcGVuUGFuZWw6KEFQSTo6T3BlblBhbmUKICAgICBbX2ZpbGVVcGxvYWRQYW5lbCBwcmVz
ZW50V2l0aFBhcmFtZXRlcnM6cGFyYW1ldGVycyByZXN1bHRMaXN0ZW5lcjpsaXN0ZW5lcl07CiB9
CiAKKyNwcmFnbWEgbWFyayAtIFdLRmlsZVVwbG9hZFBhbmVsRGVsZWdhdGUKKwogLSAodm9pZClm
aWxlVXBsb2FkUGFuZWxEaWREaXNtaXNzOihXS0ZpbGVVcGxvYWRQYW5lbCAqKWZpbGVVcGxvYWRQ
YW5lbAogewogICAgIEFTU0VSVChfZmlsZVVwbG9hZFBhbmVsLmdldCgpID09IGZpbGVVcGxvYWRQ
YW5lbCk7CkBAIC00MDczLDYgKzQwNzUsMTEgQEAgLSAodm9pZClmaWxlVXBsb2FkUGFuZWxEaWRE
aXNtaXNzOihXS0ZpbAogICAgIF9maWxlVXBsb2FkUGFuZWwgPSBuaWw7CiB9CiAKKy0gKFVJVmll
d0NvbnRyb2xsZXIgKil2aWV3Q29udHJvbGxlckZvclByZXNlbnRpbmdGaWxlVXBsb2FkUGFuZWw6
KFdLRmlsZVVwbG9hZFBhbmVsICopZmlsZVVwbG9hZFBhbmVsCit7CisgICAgcmV0dXJuIF9wYWdl
LT51aUNsaWVudCgpLnByZXNlbnRpbmdWaWV3Q29udHJvbGxlcigpOworfQorCiAjcHJhZ21hIG1h
cmsgLSBVSVRleHRJbnB1dE11bHRpRG9jdW1lbnQKIAogLSAodm9pZClfcmVzdG9yZUZvY3VzV2l0
aFRva2VuOihpZCA8TlNDb3B5aW5nLCBOU1NlY3VyZUNvZGluZz4pdG9rZW4KSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0ZpbGVVcGxvYWRQYW5lbC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0ZpbGVVcGxvYWRQYW5l
bC5oCShyZXZpc2lvbiAyMjcwNzcpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvZm9y
bXMvV0tGaWxlVXBsb2FkUGFuZWwuaAkod29ya2luZyBjb3B5KQpAQCAtNDgsNiArNDgsNyBAQCBj
bGFzcyBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lclByb3h5OwogQHByb3RvY29sIFdLRmlsZVVw
bG9hZFBhbmVsRGVsZWdhdGUgPE5TT2JqZWN0PgogQG9wdGlvbmFsCiAtICh2b2lkKWZpbGVVcGxv
YWRQYW5lbERpZERpc21pc3M6KFdLRmlsZVVwbG9hZFBhbmVsICopZmlsZVVwbG9hZFBhbmVsOwor
LSAoVUlWaWV3Q29udHJvbGxlciAqKXZpZXdDb250cm9sbGVyRm9yUHJlc2VudGluZ0ZpbGVVcGxv
YWRQYW5lbDooV0tGaWxlVXBsb2FkUGFuZWwgKilmaWxlVXBsb2FkUGFuZWw7CiBAZW5kCiAKICNl
bmRpZiAvLyBQTEFURk9STShJT1MpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
Zm9ybXMvV0tGaWxlVXBsb2FkUGFuZWwubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvaW9zL2Zvcm1zL1dLRmlsZVVwbG9hZFBhbmVsLm1tCShyZXZpc2lvbiAyMjcwNzcp
CisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvZm9ybXMvV0tGaWxlVXBsb2FkUGFuZWwu
bW0JKHdvcmtpbmcgY29weSkKQEAgLTQ1MiwxMSArNDUyLDI1IEBAIC0gKHZvaWQpX3ByZXNlbnRQ
b3BvdmVyV2l0aENvbnRlbnRWaWV3Q28KICAgICBbX3ByZXNlbnRhdGlvblBvcG92ZXIgcHJlc2Vu
dFBvcG92ZXJGcm9tUmVjdDpDR1JlY3RJbnRlZ3JhbChDR1JlY3RNYWtlKF9pbnRlcmFjdGlvblBv
aW50LngsIF9pbnRlcmFjdGlvblBvaW50LnksIDEsIDEpKSBpblZpZXc6X3ZpZXcgcGVybWl0dGVk
QXJyb3dEaXJlY3Rpb25zOlVJUG9wb3ZlckFycm93RGlyZWN0aW9uQW55IGFuaW1hdGVkOmFuaW1h
dGVkXTsKIH0KIAorCitzdGF0aWMgVUlWaWV3Q29udHJvbGxlciAqZmFsbGJhY2tWaWV3Q29udHJv
bGxlcihVSVZpZXcgKnZpZXcpCit7CisgICAgZm9yIChVSVZpZXcgKmN1cnJlbnRWaWV3ID0gdmll
dzsgY3VycmVudFZpZXc7IGN1cnJlbnRWaWV3ID0gY3VycmVudFZpZXcuc3VwZXJ2aWV3KSB7Cisg
ICAgICAgIGlmIChVSVZpZXdDb250cm9sbGVyICp2aWV3Q29udHJvbGxlciA9IFtVSVZpZXdDb250
cm9sbGVyIHZpZXdDb250cm9sbGVyRm9yVmlldzpjdXJyZW50Vmlld10pCisgICAgICAgICAgICBy
ZXR1cm4gdmlld0NvbnRyb2xsZXI7CisgICAgfQorICAgIE5TTG9nKEAiRmFpbGVkIHRvIGZpbmQg
YSB2aWV3IGNvbnRyb2xsZXIgdG8gc2hvdyBmb3JtIHZhbGlkYXRpb24gcG9wb3ZlciIpOworICAg
IHJldHVybiBuaWw7Cit9CisKIC0gKHZvaWQpX3ByZXNlbnRGdWxsc2NyZWVuVmlld0NvbnRyb2xs
ZXI6KFVJVmlld0NvbnRyb2xsZXIgKil2aWV3Q29udHJvbGxlciBhbmltYXRlZDooQk9PTClhbmlt
YXRlZAogewogICAgIFtzZWxmIF9kaXNtaXNzRGlzcGxheUFuaW1hdGVkOmFuaW1hdGVkXTsKLQot
ICAgIF9wcmVzZW50YXRpb25WaWV3Q29udHJvbGxlciA9IFtVSVZpZXdDb250cm9sbGVyIF92aWV3
Q29udHJvbGxlckZvckZ1bGxTY3JlZW5QcmVzZW50YXRpb25Gcm9tVmlldzpfdmlld107CisgICAg
CisgICAgaWYgKFtzZWxmLmRlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3IoZmls
ZVVwbG9hZFBhbmVsRGlkRGlzbWlzczopXSkKKyAgICAgICAgX3ByZXNlbnRhdGlvblZpZXdDb250
cm9sbGVyID0gW3NlbGYuZGVsZWdhdGUgdmlld0NvbnRyb2xsZXJGb3JQcmVzZW50aW5nRmlsZVVw
bG9hZFBhbmVsOnNlbGZdOworICAgIGVsc2UKKyAgICAgICAgX3ByZXNlbnRhdGlvblZpZXdDb250
cm9sbGVyID0gZmFsbGJhY2tWaWV3Q29udHJvbGxlcihfdmlldyk7CiAgICAgW19wcmVzZW50YXRp
b25WaWV3Q29udHJvbGxlciBwcmVzZW50Vmlld0NvbnRyb2xsZXI6dmlld0NvbnRyb2xsZXIgYW5p
bWF0ZWQ6YW5pbWF0ZWQgY29tcGxldGlvbjpuaWxdOwogfQogCg==
</data>
<flag name="review"
          id="350774"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>