Changeset 51909 in webkit


Ignore:
Timestamp:
Dec 9, 2009 11:52:28 AM (14 years ago)
Author:
eric@webkit.org
Message:

2009-12-09 Avi Drissman <avi@chromium.org>

Reviewed by Darin Fisher.

Chromium tickmarks in scrollbar now UX approved.
https://bugs.webkit.org/show_bug.cgi?id=32069

  • platform/chromium/ScrollbarThemeChromiumMac.mm: (WebCore::ScrollbarThemeChromiumMac::paint):
Location:
trunk/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r51906 r51909  
     12009-12-09  Avi Drissman  <avi@chromium.org>
     2
     3        Reviewed by Darin Fisher.
     4
     5        Chromium tickmarks in scrollbar now UX approved.
     6        https://bugs.webkit.org/show_bug.cgi?id=32069
     7
     8        * platform/chromium/ScrollbarThemeChromiumMac.mm:
     9        (WebCore::ScrollbarThemeChromiumMac::paint):
     10
    1112009-12-09  Chris Marrin  <cmarrin@apple.com>
    212
  • trunk/WebCore/platform/chromium/ScrollbarThemeChromiumMac.mm

    r51603 r51909  
    416416    scrollbar->client()->getTickmarks(tickmarks);
    417417    if (scrollbar->orientation() == VerticalScrollbar && tickmarks.size()) {
    418         static RefPtr<Image> dash = Image::loadPlatformResource("tickmarkDash");
    419         if (dash->isNull()) {
    420             ASSERT_NOT_REACHED();
    421         }
    422 
    423418        drawingContext->save();
     419        drawingContext->setShouldAntialias(false);
     420        drawingContext->setStrokeColor(Color(0xCC, 0xAA, 0x00, 0xFF), DeviceColorSpace);
     421        drawingContext->setFillColor(Color(0xFF, 0xDD, 0x00, 0xFF), DeviceColorSpace);
    424422
    425423        IntRect thumbArea = trackRect(scrollbar, false);
     
    429427        }
    430428        // The ends are rounded and the thumb doesn't go there.
    431         thumbArea.inflateY(-thumbArea.width() * 2 / 3);
     429        thumbArea.inflateY(-thumbArea.width());
    432430
    433431        for (Vector<IntRect>::const_iterator i = tickmarks.begin(); i != tickmarks.end(); ++i) {
    434432            // Calculate how far down (in %) the tick-mark should appear.
    435433            const float percent = static_cast<float>(i->y()) / scrollbar->totalSize();
     434            if (percent < 0.0 || percent > 1.0)
     435              continue;
    436436
    437437            // Calculate how far down (in pixels) the tick-mark should appear.
    438             const int yPos = thumbArea.topLeft().y() + (thumbArea.height() * percent);
    439 
    440             IntPoint tick(thumbArea.topLeft().x(), yPos);
    441             drawingContext->drawImage(dash.get(), DeviceColorSpace, tick);
     438            const int yPos = static_cast<int>((thumbArea.topLeft().y() + (thumbArea.height() * percent))) & ~1;
     439
     440            // Paint.
     441            const int indent = 2;
     442            FloatRect tickRect(thumbArea.topLeft().x() + indent, yPos, thumbArea.width() - 2 * indent - 1, 2);
     443            drawingContext->fillRect(tickRect);
     444            drawingContext->strokeRect(tickRect, 1);
    442445        }
    443446
Note: See TracChangeset for help on using the changeset viewer.