<?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>212344</bug_id>
          
          <creation_ts>2020-05-25 05:19:19 -0700</creation_ts>
          <short_desc>[GTK4] Fix context menu</short_desc>
          <delta_ts>2020-05-26 00:59:37 -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>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>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>210100</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aperez</cc>
    
    <cc>berto</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gustavo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1655831</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-05-25 05:19:19 -0700</bug_when>
    <thetext>It doesn&apos;t appear on right click. A warning is shown instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655832</commentid>
    <comment_count>1</comment_count>
      <attachid>400196</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-05-25 05:24:04 -0700</bug_when>
    <thetext>Created attachment 400196
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655833</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2020-05-25 05:24:45 -0700</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655842</commentid>
    <comment_count>3</comment_count>
      <attachid>400196</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2020-05-25 06:32:02 -0700</bug_when>
    <thetext>Comment on attachment 400196
Patch

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

&gt; Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:859
&gt; +        gtk_native_check_resize(GTK_NATIVE(priv-&gt;activeContextMenuProxy-&gt;gtkWidget()));

Cannot we do this inside “WebContextMenuProxyGtk”? We know that the
web view widget is valid when instantiating it, so I would expect that
calling “gtk_native_check_resize()” after setting the web view as parent
widget could work as well 🤔️</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655981</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-05-26 00:47:20 -0700</bug_when>
    <thetext>(In reply to Adrian Perez from comment #3)
&gt; Comment on attachment 400196 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=400196&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:859
&gt; &gt; +        gtk_native_check_resize(GTK_NATIVE(priv-&gt;activeContextMenuProxy-&gt;gtkWidget()));
&gt; 
&gt; Cannot we do this inside “WebContextMenuProxyGtk”? We know that the
&gt; web view widget is valid when instantiating it, so I would expect that
&gt; calling “gtk_native_check_resize()” after setting the web view as parent
&gt; widget could work as well 🤔️

It needs to be called by the parent in its size_request.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1655983</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-05-26 00:59:37 -0700</bug_when>
    <thetext>Committed r262137: &lt;https://trac.webkit.org/changeset/262137&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>400196</attachid>
            <date>2020-05-25 05:24:04 -0700</date>
            <delta_ts>2020-05-25 06:32:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wkgtk4-context-menu.diff</filename>
            <type>text/plain</type>
            <size>4144</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggMjJiY2M3YzhkYmU2Li5kZGQwNmViN2RhMjIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTkgQEAKKzIwMjAtMDUtMjUgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtHVEs0XSBGaXggY29udGV4dCBtZW51CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTIzNDQKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dl
YktpdFdlYlZpZXdCYXNlLmNwcDoKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdCYXNlU2l6ZUFsbG9j
YXRlKTogQ2FsbCBndGtfbmF0aXZlX2NoZWNrX3Jlc2l6ZSgpIG9uIHRoZSBwb3BvdmVyIHRvIG1h
a2UgaXQgYXBwZWFyLgorICAgICAgICAqIFVJUHJvY2Vzcy9ndGsvV2ViQ29udGV4dE1lbnVQcm94
eUd0ay5jcHA6CisgICAgICAgIChXZWJLaXQ6OmRlc3Ryb3lNZW51V2lkZ2V0KTogVGhlcmUncyBu
byBndGtfd2lkZ2V0X2Rlc3Ryb3koKSBpbiBHVEs0IHNvIHdlIGNhbiBqdXN0IHVucGFyZW50IGl0
LgorICAgICAgICAoV2ViS2l0OjpiaW5kTW9kZWxUb01lbnVXaWRnZXQpOiBEbyBub3Qgc2V0IHRo
ZSBhY3Rpb24gbmFtZXNwYWNlIGJlY2F1c2UgdGhhdCdzIG5vdCBwb3NzaWJsZSBpbiBHVEs0Lgor
ICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0TWVudVByb3h5R3RrOjphcHBlbmQpOiBVc2UgZ3Jv
dXAubmFtZSBhZ2FpbiBmb3IgdGhlIGFjdGlvbiBuYW1lIHBhc3NlZCB0bworICAgICAgICBnX21l
bnVfaXRlbV9zZXRfYWN0aW9uX2FuZF90YXJnZXRfdmFsdWUoKS4KKyAgICAgICAgKFdlYktpdDo6
V2ViQ29udGV4dE1lbnVQcm94eUd0azo6fldlYkNvbnRleHRNZW51UHJveHlHdGspOiBVc2UgZGVz
dHJveU1lbnVXaWRnZXQoKS4KKwogMjAyMC0wNS0yNCAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxj
Z2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS11bV1RSXSBFdmVudFNlbmRlcjogc3Rv
cCB1c2luZyBHZGtFdmVudCBBUEkgaW4gcHJlcGFyYXRpb24gZm9yIEdUSzQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKaW5k
ZXggYzJkMDhmMzFlOGM5Li5kOTcyMDllZTY4ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCkBAIC04NTQsNiArODU0
LDExIEBAIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlU2l6ZUFsbG9jYXRlKEd0a1dpZGdl
dCogd2lkZ2V0LCBHdGtBbGxvY2F0aW9uKiBhbGxvCiAgICAgICAgIGd0a193aWRnZXRfc2l6ZV9h
bGxvY2F0ZShwcml2LT5kaWFsb2csICZjaGlsZEFsbG9jYXRpb24pOwogICAgIH0KIAorI2lmIFVT
RShHVEs0KQorICAgIGlmIChwcml2LT5hY3RpdmVDb250ZXh0TWVudVByb3h5KQorICAgICAgICBn
dGtfbmF0aXZlX2NoZWNrX3Jlc2l6ZShHVEtfTkFUSVZFKHByaXYtPmFjdGl2ZUNvbnRleHRNZW51
UHJveHktPmd0a1dpZGdldCgpKSk7CisjZW5kaWYKKwogICAgIGlmIChhdXRvKiBkcmF3aW5nQXJl
YSA9IHN0YXRpY19jYXN0PERyYXdpbmdBcmVhUHJveHlDb29yZGluYXRlZEdyYXBoaWNzKj4ocHJp
di0+cGFnZVByb3h5LT5kcmF3aW5nQXJlYSgpKSkKICAgICAgICAgZHJhd2luZ0FyZWEtPnNldFNp
emUodmlld1JlY3Quc2l6ZSgpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2d0ay9XZWJDb250ZXh0TWVudVByb3h5R3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2d0ay9XZWJDb250ZXh0TWVudVByb3h5R3RrLmNwcAppbmRleCBiMDRiNDdiMTJiMTAuLjM0
Nzg4MDQ5MjQ5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvZ3RrL1dlYkNv
bnRleHRNZW51UHJveHlHdGsuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2d0ay9X
ZWJDb250ZXh0TWVudVByb3h5R3RrLmNwcApAQCAtNzksNiArNzksMTEgQEAgc3RhdGljIGlubGlu
ZSB2b2lkIGJpbmRNb2RlbFRvTWVudVdpZGdldChHdGtXaWRnZXQqIHdpZGdldCwgR01lbnVNb2Rl
bCogbW9kZWwpCiB7CiAgICAgZ3RrX3BvcG92ZXJfbWVudV9zZXRfbWVudV9tb2RlbChHVEtfUE9Q
T1ZFUl9NRU5VKHdpZGdldCksIG1vZGVsKTsKIH0KKworc3RhdGljIGlubGluZSB2b2lkIGRlc3Ry
b3lNZW51V2lkZ2V0KEd0a1dpZGdldCogd2lkZ2V0KQoreworICAgIGd0a193aWRnZXRfdW5wYXJl
bnQod2lkZ2V0KTsKK30KICNlbHNlCiBjb25zdCBjaGFyKiBXZWJDb250ZXh0TWVudVByb3h5R3Rr
Ojp3aWRnZXREaXNtaXNzZWRTaWduYWwgPSAiZGVhY3RpdmF0ZSI7CiAKQEAgLTEyMyw3ICsxMjgs
MTIgQEAgc3RhdGljIGlubGluZSBib29sIG1lbnVXaWRnZXRIYXNJdGVtcyhHdGtXaWRnZXQqIHdp
ZGdldCkKIAogc3RhdGljIGlubGluZSB2b2lkIGJpbmRNb2RlbFRvTWVudVdpZGdldChHdGtXaWRn
ZXQqIHdpZGdldCwgR01lbnVNb2RlbCogbW9kZWwpCiB7Ci0gICAgZ3RrX21lbnVfc2hlbGxfYmlu
ZF9tb2RlbChHVEtfTUVOVV9TSEVMTCh3aWRnZXQpLCBtb2RlbCwgZ0NvbnRleHRNZW51SXRlbUdy
b3VwLCBUUlVFKTsKKyAgICBndGtfbWVudV9zaGVsbF9iaW5kX21vZGVsKEdUS19NRU5VX1NIRUxM
KHdpZGdldCksIG1vZGVsLCBudWxscHRyLCBUUlVFKTsKK30KKworc3RhdGljIGlubGluZSB2b2lk
IGRlc3Ryb3lNZW51V2lkZ2V0KEd0a1dpZGdldCogd2lkZ2V0KQoreworICAgIGd0a193aWRnZXRf
ZGVzdHJveSh3aWRnZXQpOwogfQogI2VuZGlmIC8vIFVTRShHVEs0KQogCkBAIC0xNTMsNyArMTYz
LDggQEAgdm9pZCBXZWJDb250ZXh0TWVudVByb3h5R3RrOjphcHBlbmQoR01lbnUqIG1lbnUsIGNv
bnN0IFdlYkNvbnRleHRNZW51SXRlbUdsaWImIG0KICAgICBjYXNlIEFjdGlvblR5cGU6CiAgICAg
Y2FzZSBDaGVja2FibGVBY3Rpb25UeXBlOiB7CiAgICAgICAgIGdNZW51SXRlbSA9IGFkb3B0R1Jl
ZihnX21lbnVfaXRlbV9uZXcobWVudUl0ZW0udGl0bGUoKS51dGY4KCkuZGF0YSgpLCBudWxscHRy
KSk7Ci0gICAgICAgIGdfbWVudV9pdGVtX3NldF9hY3Rpb25fYW5kX3RhcmdldF92YWx1ZShnTWVu
dUl0ZW0uZ2V0KCksIGdfYWN0aW9uX2dldF9uYW1lKGFjdGlvbiksIG1lbnVJdGVtLmdBY3Rpb25U
YXJnZXQoKSk7CisgICAgICAgIEdVbmlxdWVQdHI8Y2hhcj4gYWN0aW9uTmFtZShnX3N0cmR1cF9w
cmludGYoIiVzLiVzIiwgZ0NvbnRleHRNZW51SXRlbUdyb3VwLCBnX2FjdGlvbl9nZXRfbmFtZShh
Y3Rpb24pKSk7CisgICAgICAgIGdfbWVudV9pdGVtX3NldF9hY3Rpb25fYW5kX3RhcmdldF92YWx1
ZShnTWVudUl0ZW0uZ2V0KCksIGFjdGlvbk5hbWUuZ2V0KCksIG1lbnVJdGVtLmdBY3Rpb25UYXJn
ZXQoKSk7CiAKICAgICAgICAgaWYgKG1lbnVJdGVtLmFjdGlvbigpIDwgQ29udGV4dE1lbnVJdGVt
QmFzZUFwcGxpY2F0aW9uVGFnKSB7CiAgICAgICAgICAgICBnX29iamVjdF9zZXRfZGF0YShHX09C
SkVDVChhY3Rpb24pLCBnQ29udGV4dE1lbnVBY3Rpb25JZCwgR0lOVF9UT19QT0lOVEVSKG1lbnVJ
dGVtLmFjdGlvbigpKSk7CkBAIC0yODIsOSArMjkzLDcgQEAgV2ViQ29udGV4dE1lbnVQcm94eUd0
azo6fldlYkNvbnRleHRNZW51UHJveHlHdGsoKQogICAgIG1fc2lnbmFsSGFuZGxlcnMuY2xlYXIo
KTsKIAogICAgIGd0a193aWRnZXRfaW5zZXJ0X2FjdGlvbl9ncm91cChHVEtfV0lER0VUKG1fbWVu
dSksIGdDb250ZXh0TWVudUl0ZW1Hcm91cCwgbnVsbHB0cik7Ci0jaWYgIVVTRShHVEs0KQotICAg
IGd0a193aWRnZXRfZGVzdHJveShtX21lbnUpOwotI2VuZGlmCisgICAgZGVzdHJveU1lbnVXaWRn
ZXQobV9tZW51KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Cg==
</data>
<flag name="review"
          id="415614"
          type_id="1"
          status="+"
          setter="aperez"
    />
          </attachment>
      

    </bug>

</bugzilla>