Bug 23053 - LI element loses its bullet in multi-column mode
: LI element loses its bullet in multi-column mode
Status: NEW
Product: WebKit
Classification: Unclassified
Component: CSS
: 528+ (Nightly build)
: Macintosh PowerPC OS X 10.4
: P2 Normal
Assigned To: gur.trio
http://zanstra.com/x/webkit/li-colcou...
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2008-12-31 00:42 PST by Doeke Zanstra
Modified: 2014-02-26 12:48 PST (History)
20 users (show)

See Also:


Attachments
Patch (4.12 KB, patch)
2014-02-17 22:01 PST, gur.trio
simon.fraser: review-
simon.fraser: commit‑queue-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Doeke Zanstra 2008-12-31 00:42:18 PST
When setting the CSS property -webkit-column-count, the bullets of the LI-elements disappear. See test-case provided (URL). Also this script:

  <ul style="-webkit-column-count:2">
    <li>One<li>Two<li>Three<li>Four
  </ul>
Comment 1 Oli Studholme 2010-06-12 22:02:35 PDT
also ordered list numerals, and according to Bug 38835 list-style-image images too https://bugs.webkit.org/show_bug.cgi?id=38835
Comment 2 Oli Studholme 2010-06-12 22:08:02 PDT
Workaround: list-style-position: inside; (Webkit default is presumably outside)
Comment 3 Alexey Proskuryakov 2011-02-23 21:28:08 PST
Still reproducible with r79080.
Comment 4 gur.trio 2014-02-05 05:13:24 PST
(In reply to comment #3)
> Still reproducible with r79080.

As per the code what is happening is that when we paint the markers it checks whether the marker position intersects with the paint area rect and it fails in that check and does not draw anything.
So one fix is when we query the marker property for position (inside or outside) we can return true if UL has columns. Please suggest?
Comment 5 gur.trio 2014-02-17 20:16:25 PST
*** Bug 38835 has been marked as a duplicate of this bug. ***
Comment 6 gur.trio 2014-02-17 22:01:06 PST
Created attachment 224470 [details]
Patch
Comment 7 gur.trio 2014-02-18 01:15:55 PST
(In reply to comment #6)
> Created an attachment (id=224470) [details]
> Patch

Please review. Thanks.
Comment 8 zalan 2014-02-26 08:53:51 PST
Comment on attachment 224470 [details]
Patch

and now even OUTSIDE is treated like INSIDE when <ul> has columns? Not sure if that's correct. It'd be great to figure out why the marker is mispositioned as opposed to force it to behave like INSIDE.
Comment 9 Simon Fraser (smfr) 2014-02-26 09:04:11 PST
Comment on attachment 224470 [details]
Patch

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

> Source/WebCore/rendering/RenderListMarker.cpp:1741
> -    return m_listItem.notInList() || style().listStylePosition() == INSIDE;
> +    return m_listItem.notInList() || style().listStylePosition() == INSIDE || m_listItem.parent()->hasColumns();

This doesn't seem like the correct way to fix this.