<?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>132380</bug_id>
          
          <creation_ts>2014-04-30 05:02:22 -0700</creation_ts>
          <short_desc>[CSS Grid Layout] Guard RenderObject::isRenderGrid() method</short_desc>
          <delta_ts>2014-05-22 04:54:57 -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>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>60731</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Manuel Rego Casasnovas">rego</reporter>
          <assigned_to name="Manuel Rego Casasnovas">rego</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1005354</commentid>
    <comment_count>0</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2014-04-30 05:02:22 -0700</bug_when>
    <thetext>[CSS Grid Layout] Guard RenderObject::isRenderGrid() method</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1005355</commentid>
    <comment_count>1</comment_count>
      <attachid>230474</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2014-04-30 05:03:13 -0700</bug_when>
    <thetext>Created attachment 230474
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1005385</commentid>
    <comment_count>2</comment_count>
      <attachid>230474</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-30 09:15:41 -0700</bug_when>
    <thetext>Comment on attachment 230474
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        Guard RenderObject::isRenderGrid() method under ENABLE_CSS_GRID_LAYOUT compilation flag.

Is this the best way to do it?

I could imagine that instead of turning it off entirely we could just make it be an inline that returns false so no code would be generated at the call site. Adding the #if in RenderBox.cpp seems to make the code less elegant rather than more.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006597</commentid>
    <comment_count>3</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2014-05-05 04:40:56 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 230474 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=230474&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:8
&gt; &gt; +        Guard RenderObject::isRenderGrid() method under ENABLE_CSS_GRID_LAYOUT compilation flag.
&gt; 
&gt; Is this the best way to do it?
&gt; 
&gt; I could imagine that instead of turning it off entirely we could just make it be an inline that returns false so no code would be generated at the call site. Adding the #if in RenderBox.cpp seems to make the code less elegant rather than more.

I was just adding it following the advice in webkit-dev of being &quot;very aggressive on the #ifdefs&quot;. However, I agree that it makes the code ugly so we might forget about this change.
BTW, we have similar code for FULLSCREEN_API for example in http://trac.webkit.org/browser/trunk/Source/WebCore/rendering/RenderObject.h#L481

About making it inline, it would be a bit weird as it&apos;ll be the only isRenderXXX() that will be inline.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006760</commentid>
    <comment_count>4</comment_count>
      <attachid>230474</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-05-05 15:42:31 -0700</bug_when>
    <thetext>Comment on attachment 230474
Patch

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

&gt; Source/WebCore/rendering/RenderBox.cpp:2307
&gt; +        &amp;&amp; !isFloating() &amp;&amp; !isInline() &amp;&amp; !cb-&gt;isFlexibleBoxIncludingDeprecated()
&gt; +#if ENABLE(CSS_GRID_LAYOUT)
&gt; +        &amp;&amp; !cb-&gt;isRenderGrid()
&gt; +#endif

I am fine with this, it is supposed to be temporary.

When does it make sense to layout differently for isFlexibleBoxIncludingDeprecated() and isRenderGrid()? From a quick view it seems they share many similar &quot;stretching&quot; properties. Wouldn&apos;t it make sense to replace isFlexibleBoxIncludingDeprecated() by something that accounts for grid layout?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1010942</commentid>
    <comment_count>5</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2014-05-22 04:23:11 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 230474 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=230474&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderBox.cpp:2307
&gt; &gt; +        &amp;&amp; !isFloating() &amp;&amp; !isInline() &amp;&amp; !cb-&gt;isFlexibleBoxIncludingDeprecated()
&gt; &gt; +#if ENABLE(CSS_GRID_LAYOUT)
&gt; &gt; +        &amp;&amp; !cb-&gt;isRenderGrid()
&gt; &gt; +#endif
&gt; 
&gt; I am fine with this, it is supposed to be temporary.
&gt; 
&gt; When does it make sense to layout differently for isFlexibleBoxIncludingDeprecated() and isRenderGrid()? From a quick view it seems they share many similar &quot;stretching&quot; properties. Wouldn&apos;t it make sense to replace isFlexibleBoxIncludingDeprecated() by something that accounts for grid layout?

I cannot think in a good name for a method merging isFlexibleBoxIncludingDeprecated() and isRenderGrid().
Moreover there&apos;re similar cases like isFloating() and isInline() so I guess we could land it as it&apos;s for the moment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1010944</commentid>
    <comment_count>6</comment_count>
      <attachid>230474</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-05-22 04:54:54 -0700</bug_when>
    <thetext>Comment on attachment 230474
Patch

Clearing flags on attachment: 230474

Committed r169195: &lt;http://trac.webkit.org/changeset/169195&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1010945</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-05-22 04:54:57 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>230474</attachid>
            <date>2014-04-30 05:03:13 -0700</date>
            <delta_ts>2014-05-22 04:54:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-132380-20140430140250.patch</filename>
            <type>text/plain</type>
            <size>2812</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY3OTkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJiZDA1OWFlYTZlNDRi
NTc4OGUzMjFmNGJiOTQwZTY2ODNjZjdjZC4uYWRiMGNhMTYwZDg1NjgyM2IwZGU2MWQ4ZjJkYTk1
NGMzOTk5NTAwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE4IEBACiAyMDE0LTA0LTMwICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCisgICAgICAgIFtDU1MgR3Jp
ZCBMYXlvdXRdIEd1YXJkIFJlbmRlck9iamVjdDo6aXNSZW5kZXJHcmlkKCkgbWV0aG9kCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzIzODAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBHdWFyZCBSZW5kZXJP
YmplY3Q6OmlzUmVuZGVyR3JpZCgpIG1ldGhvZCB1bmRlciBFTkFCTEVfQ1NTX0dSSURfTEFZT1VU
IGNvbXBpbGF0aW9uIGZsYWcuCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6Y29tcHV0ZUxvZ2ljYWxXaWR0aEluUmVnaW9u
KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyT2JqZWN0Lmg6CisKKzIwMTQtMDQtMzAgIE1h
bnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKICAgICAgICAgW0NTUyBH
cmlkIExheW91dF0gRW5hYmxlIHJ1bnRpbWUgZmVhdHVyZSBieSBkZWZhdWx0CiAgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzIxODkKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCA1ZGVhMTA2ODZhMDIxOGNiNDIzMzEwMTY0
MTAzMjczNWVhNTZmZjY2Li44OWNkYzdlZmJlMzU3ZWEzMWUzZWFjNWNmMTFhNDU3ODIyMmQ1YmMy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcApAQCAtMjMwMSw3ICsyMzAx
LDExIEBAIHZvaWQgUmVuZGVyQm94Ojpjb21wdXRlTG9naWNhbFdpZHRoSW5SZWdpb24oTG9naWNh
bEV4dGVudENvbXB1dGVkVmFsdWVzJiBjb21wdXRlCiAgICAgfQogICAgIAogICAgIGlmICghaGFz
UGVycGVuZGljdWxhckNvbnRhaW5pbmdCbG9jayAmJiBjb250YWluZXJMb2dpY2FsV2lkdGggJiYg
Y29udGFpbmVyTG9naWNhbFdpZHRoICE9IChjb21wdXRlZFZhbHVlcy5tX2V4dGVudCArIGNvbXB1
dGVkVmFsdWVzLm1fbWFyZ2lucy5tX3N0YXJ0ICsgY29tcHV0ZWRWYWx1ZXMubV9tYXJnaW5zLm1f
ZW5kKQotICAgICAgICAmJiAhaXNGbG9hdGluZygpICYmICFpc0lubGluZSgpICYmICFjYi0+aXNG
bGV4aWJsZUJveEluY2x1ZGluZ0RlcHJlY2F0ZWQoKSAmJiAhY2ItPmlzUmVuZGVyR3JpZCgpKSB7
CisgICAgICAgICYmICFpc0Zsb2F0aW5nKCkgJiYgIWlzSW5saW5lKCkgJiYgIWNiLT5pc0ZsZXhp
YmxlQm94SW5jbHVkaW5nRGVwcmVjYXRlZCgpCisjaWYgRU5BQkxFKENTU19HUklEX0xBWU9VVCkK
KyAgICAgICAgJiYgIWNiLT5pc1JlbmRlckdyaWQoKQorI2VuZGlmCisgICAgICAgICkgewogICAg
ICAgICBMYXlvdXRVbml0IG5ld01hcmdpbiA9IGNvbnRhaW5lckxvZ2ljYWxXaWR0aCAtIGNvbXB1
dGVkVmFsdWVzLm1fZXh0ZW50IC0gY2ItPm1hcmdpblN0YXJ0Rm9yQ2hpbGQoKnRoaXMpOwogICAg
ICAgICBib29sIGhhc0ludmVydGVkRGlyZWN0aW9uID0gY2ItPnN0eWxlKCkuaXNMZWZ0VG9SaWdo
dERpcmVjdGlvbigpICE9IHN0eWxlKCkuaXNMZWZ0VG9SaWdodERpcmVjdGlvbigpOwogICAgICAg
ICBpZiAoaGFzSW52ZXJ0ZWREaXJlY3Rpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
T2JqZWN0LmgKaW5kZXggODkwOTRkYmViZDQxMjY5NjQ5Yjc4YjdjYzQ5MmM0YzRkMWU3NTIwMC4u
M2I4ZDM0OGJkN2YyYWM4MDJkMTI5MTk4ZGJjN2M2YzkxNWJkZGI0OCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaApAQCAtMzUyLDkgKzM1Miw5IEBAIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIGJvb2wgaXNSZW5kZXJGdWxsU2NyZWVuKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7
IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNSZW5kZXJGdWxsU2NyZWVuUGxhY2Vob2xkZXIoKSBjb25z
dCB7IHJldHVybiBmYWxzZTsgfQogI2VuZGlmCi0KKyNpZiBFTkFCTEUoQ1NTX0dSSURfTEFZT1VU
KQogICAgIHZpcnR1YWwgYm9vbCBpc1JlbmRlckdyaWQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsg
fQotCisjZW5kaWYKICAgICB2aXJ0dWFsIGJvb2wgaXNSZW5kZXJGbG93VGhyZWFkKCkgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNSZW5kZXJOYW1lZEZsb3dUaHJl
YWQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIGJvb2wgaXNJbkZsb3dSZW5kZXJGbG93
VGhyZWFkKCkgY29uc3QgeyByZXR1cm4gaXNSZW5kZXJGbG93VGhyZWFkKCkgJiYgIWlzT3V0T2ZG
bG93UG9zaXRpb25lZCgpOyB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>