Surfin’ Safari

Adam Barth and Dave Levin are now WebKit reviewers

Posted by Eric Seidel on Monday, June 8th, 2009 at 3:13 pm

Adam has been a long-time contributer of security fixes. Dave comes to us through the Chromium porting effort and has done quite a bit of work on HTML5 Workers as well. Please join me in congratulating Adam and Dave on their reviewer status!

Jan Michael Alonzo is now a WebKit Reviewer

Posted by Gustavo Noronha on Wednesday, May 13th, 2009 at 12:46 pm

Jan has been around for a very long time now, and has contributed lots of patches to the GTK+ port of WebKit. He’s worked tirelessly on the build system, and on keeping the port compilable. He has also done important work on the testing infra-structure, and contributed sizable chunks of API. Please join me in congratulating Jan on his reviewer status!

Xan Lopez and Gustavo Noronha are now WebKit reviewers

Posted by Mark Rowe on Wednesday, April 22nd, 2009 at 3:10 pm

Over the last six months, Xan Lopez and Gustavo Noronha have been working tirelessly on the GTK+ port of WebKit. They’ve contributed over 150 improvements to WebKit in the form of bug fixes and API improvements, and have played important roles in driving the development of the GTK+ port forward and assisting contributors that are new to the WebKit project. Please join me in congratulating Xan and Gustavo on their reviewer status!

Fourth Annual WebKit Open Source Party

Posted by dethbakin on Friday, April 17th, 2009 at 1:04 pm

WWDC is upon us, and we hope to see you all there! Our party is open to anyone who is interested, free of charge. So if you will be in town or you are already in town, come and meet some cool web developers, WebKit hackers, browser developers, and lots of folks with an interest in cool technology.

Details

Place: Thirsty Bear Restaurant & Brewery (map)
Date: Wednesday, June 10th
Time: 7:30 PM
upcoming.org

Ariya Hidayat is a WebKit reviewer

Posted by Eric Seidel on Tuesday, April 14th, 2009 at 2:29 pm

Ariya Hidayat is our newest WebKit reviewer. He has done extensive work in the
Qt port with countless bugfixes, performance improvements and API designs.
Please join me in congratulating Ariya on his reviewer status.

Styling Scrollbars

Posted by Dave Hyatt on Thursday, March 19th, 2009 at 2:19 pm

WebKit now supports styling of the scrollbars in overflow sections, listboxes, dropdown menus and textareas. For those who want to skip the article and just go right to the source, here is an example:

Scrollbar Example

Here is a screenshot for those not running a recent enough WebKit:

The scrollbar pseudo-element indicates that an object should use a custom scrollbar. When this pseudo element is present, WebKit will turn off its built-in scrollbar rendering and just use the information provided in CSS.

::-webkit-scrollbar {
    width: 13px;
    height: 13px;
}

The width and height properties on the scrollbar element indicate the width of the vertical scrollbar and the height of the horizontal scrollbar. Percentages can be specified for these values as well, in which case the scrollbar will consume that percentage of the viewport area.

A scrollbar consists of scrollbar buttons and a track. The track itself is further subdivided into track pieces and a thumb. The track pieces represent the areas above and below the thumb.

In addition the scrollbar corner can now be styled, as well as the resizer used by resizable textareas.

Here is a complete list of all the new pseudo-elements. All of these pseudo-elements must be prefixed with -webkit-.

scrollbar
scrollbar-button
scrollbar-track
scrollbar-track-piece
scrollbar-thumb
scrollbar-corner
resizer

Each of these objects can be styled with borders, shadows, background images, and so on to create completely custom scrollbars that will still honor the settings of the operating system as far as button placement and click behavior.

The following pseudo classes have been introduced and can be applied to the pseudo-elements.

:horizontal - The horizontal pseudo-class applies to any scrollbar pieces that have a horizontal orientation.

:vertical - The vertical pseudo-class applies to any scrollbar pieces that have a vertical orientation.

:decrement - The decrement pseudo-class applies to buttons and track pieces. It indicates whether or not the button or track piece will decrement the view’s position when used (e.g., up on a vertical scrollbar, left on a horizontal scrollbar).

:increment - The increment pseudo-class applies to buttons and track pieces. It indicates whether or not a button or track piece will increment the view’s position when used (e.g., down on a vertical scrollbar, right on a horizontal scrollbar).

:start - The start pseudo-class applies to buttons and track pieces. It indicates whether the object is placed before the thumb.

:end - The end pseudo-class applies to buttons and track pieces. It indicates whether the object is placed after the thumb.

:double-button - The double-button pseudo-class applies to buttons and track pieces. It is used to detect whether a button is part of a pair of buttons that are together at the same end of a scrollbar. For track pieces it indicates whether the track piece abuts a pair of buttons.

:single-button - The single-button pseudo-class applies to buttons and track pieces. It is used to detect whether a button is by itself at the end of a scrollbar. For track pieces it indicates whether the track piece abuts a singleton button.

:no-button - Applies to track pieces and indicates whether or not the track piece runs to the edge of the scrollbar, i.e., there is no button at that end of the track.

:corner-present - Applies to all scrollbar pieces and indicates whether or not a scrollbar corner is present.

:window-inactive - Applies to all scrollbar pieces and indicates whether or not the window containing the scrollbar is currently active. (In recent nightlies, this pseudo-class now applies to ::selection as well. We plan to extend it to work with any content and to propose it as a new standard pseudo-class.)

In addition the :enabled, :disabled, :hover and :active pseudo-classes also work with scrollbar pieces.

The display property can be set to none in order to hide specific pieces.

Margins are supported along the axis of the scrollbar. They can be negative (so that the track can for example be inflated to cover the buttons partially).

The linked example above provides a very complex scrollbar that has all of the OS X scrollbar behaviors (double buttons, an inactive look, track overlapping the buttons, etc.) as well as many of the Windows Vista scrollbar behaviors (hover effects, unique pressed looks above and below the track, etc.).

Adam Treat is a WebKit Reviewer

Posted by Eric Seidel on Wednesday, March 11th, 2009 at 2:56 pm

Please join me in congratulating Adam. Adam is one of our most active Qt contributers. Most recently Adam has been active solving Qt-specific bugs and cleaning up various pieces of parser and rendering code in WebCore. Adam is a go-to expert for the WebKit Qt port and now our latest reviewer!

Dimitri Glazkov is a WebKit reviewer

Posted by Eric Seidel on Wednesday, March 11th, 2009 at 1:29 pm

Dimitri Glazkov is our latest WebKit reviewer. Dimitri has worked extensively on WebCore’s Chromium platform layer, the V8 JavaScript bindings layer, and recently on Chromium’s copy of the WebKit Web Inspector. Please join me in congratulating Dimitri and thanking him for his continued work on WebKit!

Darin Fisher is a WebKit Reviewer

Posted by Adele Peterson on Wednesday, February 25th, 2009 at 1:12 pm

Darin Fisher is now a qualified WebKit Reviewer. Darin has done a lot of work on the Chromium port of WebKit, including work to clean up abstractions in the WebKit platform layer. Please join me in congratulating Darin on his reviewer status and thanking him for all of his contributions to WebKit.

Simon Fraser is a WebKit Reviewer

Posted by Sam Weinig on Friday, February 6th, 2009 at 8:36 pm

Simon Fraser is the newest WebKit Reviewer. Simon has done extensive work in the render tree, and had a hand in implementing CSS Transforms, Transitions and Animations. Please join me in congratulating Simon.