2013-10-01 20:55:17 |
Chris Coulson |
description |
Currently in Oxide, the popups for HTML <select> elements are delegated to the embedder, which can use native styled popups (as with Chrome on OS X and Android). However, <select> elements with the "multiple" attribute are handled entirely in Blink without using any popups. This is desirable for desktop form factors (Chrome on OS X does it like this), but we would like to be able to delegate these to an embedder supplied popup which is capable of selecting multiple items on mobile form-factors (like Chrome on Android does).
It looks like we need to provide our own additional CSS in third_party/WebKit/Source/core/css/ to set "-webkit-appearance: menulist" on <select> elements with the "multiple" attribute set. I think we also need to override WebCore::RenderTheme::delegatesMenuListRendering() |
Currently in Oxide, the popups for HTML <select> elements are delegated to the embedder, which can use native styled popups (as with Chrome on OS X and Android). However, <select> elements with the "multiple" or "size" attribute are handled entirely in Blink without using any popups. This is desirable for desktop form factors (Chrome on OS X does it like this), but we would like to be able to delegate these to an embedder supplied popup on mobile form-factors (like Chrome and Firefox on Android both do).
It looks like we need to provide our own additional CSS in third_party/WebKit/Source/core/css/ to set "-webkit-appearance: menulist" on <select> elements with the "multiple" and/or "size" attribute set. We also need to override WebCore::RenderTheme::delegatesMenuListRendering() to return true, and override WebCore::RenderTheme::extraDefaultStyleSheet() to use our CSS on mobile form-factors. |
|