| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2007 Apple Inc. | 2 * Copyright (C) 2007 Apple Inc. |
| 3 * Copyright (C) 2007 Alp Toker <alp@atoker.com> | 3 * Copyright (C) 2007 Alp Toker <alp@atoker.com> |
| 4 * Copyright (C) 2008 Collabora Ltd. | 4 * Copyright (C) 2008 Collabora Ltd. |
| 5 * Copyright (C) 2008, 2009 Google Inc. | 5 * Copyright (C) 2008, 2009 Google Inc. |
| 6 * Copyright (C) 2009 Kenneth Rohde Christiansen | 6 * Copyright (C) 2009 Kenneth Rohde Christiansen |
| 7 * | 7 * |
| 8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
| 9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
| 10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
| (...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 200 unsigned activeForegroundColor, | 200 unsigned activeForegroundColor, |
| 201 unsigned inactiveBackgroundColor, | 201 unsigned inactiveBackgroundColor, |
| 202 unsigned inactiveForegroundColor) | 202 unsigned inactiveForegroundColor) |
| 203 { | 203 { |
| 204 m_activeSelectionBackgroundColor = activeBackgroundColor; | 204 m_activeSelectionBackgroundColor = activeBackgroundColor; |
| 205 m_activeSelectionForegroundColor = activeForegroundColor; | 205 m_activeSelectionForegroundColor = activeForegroundColor; |
| 206 m_inactiveSelectionBackgroundColor = inactiveBackgroundColor; | 206 m_inactiveSelectionBackgroundColor = inactiveBackgroundColor; |
| 207 m_inactiveSelectionForegroundColor = inactiveForegroundColor; | 207 m_inactiveSelectionForegroundColor = inactiveForegroundColor; |
| 208 } | 208 } |
| 209 | 209 |
| 210 bool RenderThemeChromiumDefault::paintCheckbox(RenderObject* o, const PaintInfo&
i, const IntRect& rect) | 210 bool RenderThemeChromiumDefault::paintCheckbox(RenderObject* o, PaintInfo& i, co
nst IntRect& rect) |
| 211 { | 211 { |
| 212 WebKit::WebThemeEngine::ExtraParams extraParams; | 212 WebKit::WebThemeEngine::ExtraParams extraParams; |
| 213 WebKit::WebCanvas* canvas = i.context->canvas(); | 213 WebKit::WebCanvas* canvas = i.getContext()->canvas(); |
| 214 extraParams.button.checked = isChecked(o); | 214 extraParams.button.checked = isChecked(o); |
| 215 extraParams.button.indeterminate = isIndeterminate(o); | 215 extraParams.button.indeterminate = isIndeterminate(o); |
| 216 | 216 |
| 217 float zoomLevel = o->style()->effectiveZoom(); | 217 float zoomLevel = o->style()->effectiveZoom(); |
| 218 GraphicsContextStateSaver stateSaver(*i.context); | 218 GraphicsContextStateSaver stateSaver(*(i.getContext())); |
| 219 IntRect unzoomedRect = rect; | 219 IntRect unzoomedRect = rect; |
| 220 if (zoomLevel != 1) { | 220 if (zoomLevel != 1) { |
| 221 unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel); | 221 unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel); |
| 222 unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel); | 222 unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel); |
| 223 i.context->translate(unzoomedRect.x(), unzoomedRect.y()); | 223 i.getContext()->translate(unzoomedRect.x(), unzoomedRect.y()); |
| 224 i.context->scale(FloatSize(zoomLevel, zoomLevel)); | 224 i.getContext()->scale(FloatSize(zoomLevel, zoomLevel)); |
| 225 i.context->translate(-unzoomedRect.x(), -unzoomedRect.y()); | 225 i.getContext()->translate(-unzoomedRect.x(), -unzoomedRect.y()); |
| 226 } | 226 } |
| 227 | 227 |
| 228 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartCheckbox, getWebThemeState(this, o), WebKit::WebRect(unzoomedRect), &e
xtraParams); | 228 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartCheckbox, getWebThemeState(this, o), WebKit::WebRect(unzoomedRect), &e
xtraParams); |
| 229 return false; | 229 return false; |
| 230 } | 230 } |
| 231 | 231 |
| 232 void RenderThemeChromiumDefault::setCheckboxSize(RenderStyle* style) const | 232 void RenderThemeChromiumDefault::setCheckboxSize(RenderStyle* style) const |
| 233 { | 233 { |
| 234 // If the width and height are both specified, then we have nothing to do. | 234 // If the width and height are both specified, then we have nothing to do. |
| 235 if (!style->width().isIntrinsicOrAuto() && !style->height().isAuto()) | 235 if (!style->width().isIntrinsicOrAuto() && !style->height().isAuto()) |
| 236 return; | 236 return; |
| 237 | 237 |
| 238 IntSize size = WebKit::Platform::current()->themeEngine()->getSize(WebKit::W
ebThemeEngine::PartCheckbox); | 238 IntSize size = WebKit::Platform::current()->themeEngine()->getSize(WebKit::W
ebThemeEngine::PartCheckbox); |
| 239 float zoomLevel = style->effectiveZoom(); | 239 float zoomLevel = style->effectiveZoom(); |
| 240 size.setWidth(size.width() * zoomLevel); | 240 size.setWidth(size.width() * zoomLevel); |
| 241 size.setHeight(size.height() * zoomLevel); | 241 size.setHeight(size.height() * zoomLevel); |
| 242 setSizeIfAuto(style, size); | 242 setSizeIfAuto(style, size); |
| 243 } | 243 } |
| 244 | 244 |
| 245 bool RenderThemeChromiumDefault::paintRadio(RenderObject* o, const PaintInfo& i,
const IntRect& rect) | 245 bool RenderThemeChromiumDefault::paintRadio(RenderObject* o, PaintInfo& i, const
IntRect& rect) |
| 246 { | 246 { |
| 247 WebKit::WebThemeEngine::ExtraParams extraParams; | 247 WebKit::WebThemeEngine::ExtraParams extraParams; |
| 248 WebKit::WebCanvas* canvas = i.context->canvas(); | 248 WebKit::WebCanvas* canvas = i.getContext()->canvas(); |
| 249 extraParams.button.checked = isChecked(o); | 249 extraParams.button.checked = isChecked(o); |
| 250 | 250 |
| 251 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartRadio, getWebThemeState(this, o), WebKit::WebRect(rect), &extraParams)
; | 251 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartRadio, getWebThemeState(this, o), WebKit::WebRect(rect), &extraParams)
; |
| 252 return false; | 252 return false; |
| 253 } | 253 } |
| 254 | 254 |
| 255 void RenderThemeChromiumDefault::setRadioSize(RenderStyle* style) const | 255 void RenderThemeChromiumDefault::setRadioSize(RenderStyle* style) const |
| 256 { | 256 { |
| 257 // If the width and height are both specified, then we have nothing to do. | 257 // If the width and height are both specified, then we have nothing to do. |
| 258 if (!style->width().isIntrinsicOrAuto() && !style->height().isAuto()) | 258 if (!style->width().isIntrinsicOrAuto() && !style->height().isAuto()) |
| 259 return; | 259 return; |
| 260 | 260 |
| 261 IntSize size = WebKit::Platform::current()->themeEngine()->getSize(WebKit::W
ebThemeEngine::PartRadio); | 261 IntSize size = WebKit::Platform::current()->themeEngine()->getSize(WebKit::W
ebThemeEngine::PartRadio); |
| 262 float zoomLevel = style->effectiveZoom(); | 262 float zoomLevel = style->effectiveZoom(); |
| 263 size.setWidth(size.width() * zoomLevel); | 263 size.setWidth(size.width() * zoomLevel); |
| 264 size.setHeight(size.height() * zoomLevel); | 264 size.setHeight(size.height() * zoomLevel); |
| 265 setSizeIfAuto(style, size); | 265 setSizeIfAuto(style, size); |
| 266 } | 266 } |
| 267 | 267 |
| 268 bool RenderThemeChromiumDefault::paintButton(RenderObject* o, const PaintInfo& i
, const IntRect& rect) | 268 bool RenderThemeChromiumDefault::paintButton(RenderObject* o, PaintInfo& i, cons
t IntRect& rect) |
| 269 { | 269 { |
| 270 WebKit::WebThemeEngine::ExtraParams extraParams; | 270 WebKit::WebThemeEngine::ExtraParams extraParams; |
| 271 WebKit::WebCanvas* canvas = i.context->canvas(); | 271 WebKit::WebCanvas* canvas = i.getContext()->canvas(); |
| 272 extraParams.button.hasBorder = true; | 272 extraParams.button.hasBorder = true; |
| 273 extraParams.button.backgroundColor = defaultButtonBackgroundColor; | 273 extraParams.button.backgroundColor = defaultButtonBackgroundColor; |
| 274 if (o->hasBackground()) | 274 if (o->hasBackground()) |
| 275 extraParams.button.backgroundColor = o->resolveColor(CSSPropertyBackgrou
ndColor).rgb(); | 275 extraParams.button.backgroundColor = o->resolveColor(CSSPropertyBackgrou
ndColor).rgb(); |
| 276 | 276 |
| 277 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartButton, getWebThemeState(this, o), WebKit::WebRect(rect), &extraParams
); | 277 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartButton, getWebThemeState(this, o), WebKit::WebRect(rect), &extraParams
); |
| 278 return false; | 278 return false; |
| 279 } | 279 } |
| 280 | 280 |
| 281 bool RenderThemeChromiumDefault::paintTextField(RenderObject* o, const PaintInfo
& i, const IntRect& rect) | 281 bool RenderThemeChromiumDefault::paintTextField(RenderObject* o, PaintInfo& i, c
onst IntRect& rect) |
| 282 { | 282 { |
| 283 // WebThemeEngine does not handle border rounded corner and background image | 283 // WebThemeEngine does not handle border rounded corner and background image |
| 284 // so return true to draw CSS border and background. | 284 // so return true to draw CSS border and background. |
| 285 if (o->style()->hasBorderRadius() || o->style()->hasBackgroundImage()) | 285 if (o->style()->hasBorderRadius() || o->style()->hasBackgroundImage()) |
| 286 return true; | 286 return true; |
| 287 | 287 |
| 288 ControlPart part = o->style()->appearance(); | 288 ControlPart part = o->style()->appearance(); |
| 289 | 289 |
| 290 WebKit::WebThemeEngine::ExtraParams extraParams; | 290 WebKit::WebThemeEngine::ExtraParams extraParams; |
| 291 extraParams.textField.isTextArea = part == TextAreaPart; | 291 extraParams.textField.isTextArea = part == TextAreaPart; |
| 292 extraParams.textField.isListbox = part == ListboxPart; | 292 extraParams.textField.isListbox = part == ListboxPart; |
| 293 | 293 |
| 294 WebKit::WebCanvas* canvas = i.context->canvas(); | 294 WebKit::WebCanvas* canvas = i.getContext()->canvas(); |
| 295 | 295 |
| 296 // Fallback to white if the specified color object is invalid. | 296 // Fallback to white if the specified color object is invalid. |
| 297 Color backgroundColor = o->resolveColor(CSSPropertyBackgroundColor, Color::w
hite); | 297 Color backgroundColor = o->resolveColor(CSSPropertyBackgroundColor, Color::w
hite); |
| 298 extraParams.textField.backgroundColor = backgroundColor.rgb(); | 298 extraParams.textField.backgroundColor = backgroundColor.rgb(); |
| 299 | 299 |
| 300 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartTextField, getWebThemeState(this, o), WebKit::WebRect(rect), &extraPar
ams); | 300 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartTextField, getWebThemeState(this, o), WebKit::WebRect(rect), &extraPar
ams); |
| 301 return false; | 301 return false; |
| 302 } | 302 } |
| 303 | 303 |
| 304 bool RenderThemeChromiumDefault::paintMenuList(RenderObject* o, const PaintInfo&
i, const IntRect& rect) | 304 bool RenderThemeChromiumDefault::paintMenuList(RenderObject* o, PaintInfo& i, co
nst IntRect& rect) |
| 305 { | 305 { |
| 306 if (!o->isBox()) | 306 if (!o->isBox()) |
| 307 return false; | 307 return false; |
| 308 | 308 |
| 309 const int right = rect.x() + rect.width(); | 309 const int right = rect.x() + rect.width(); |
| 310 const int middle = rect.y() + rect.height() / 2; | 310 const int middle = rect.y() + rect.height() / 2; |
| 311 | 311 |
| 312 WebKit::WebThemeEngine::ExtraParams extraParams; | 312 WebKit::WebThemeEngine::ExtraParams extraParams; |
| 313 extraParams.menuList.arrowX = (o->style()->direction() == RTL) ? rect.x() +
7 : right - 13; | 313 extraParams.menuList.arrowX = (o->style()->direction() == RTL) ? rect.x() +
7 : right - 13; |
| 314 extraParams.menuList.arrowY = middle; | 314 extraParams.menuList.arrowY = middle; |
| 315 const RenderBox* box = toRenderBox(o); | 315 const RenderBox* box = toRenderBox(o); |
| 316 // Match Chromium Win behaviour of showing all borders if any are shown. | 316 // Match Chromium Win behaviour of showing all borders if any are shown. |
| 317 extraParams.menuList.hasBorder = box->borderRight() || box->borderLeft() ||
box->borderTop() || box->borderBottom(); | 317 extraParams.menuList.hasBorder = box->borderRight() || box->borderLeft() ||
box->borderTop() || box->borderBottom(); |
| 318 extraParams.menuList.hasBorderRadius = o->style()->hasBorderRadius(); | 318 extraParams.menuList.hasBorderRadius = o->style()->hasBorderRadius(); |
| 319 // Fallback to transparent if the specified color object is invalid. | 319 // Fallback to transparent if the specified color object is invalid. |
| 320 extraParams.menuList.backgroundColor = Color::transparent; | 320 extraParams.menuList.backgroundColor = Color::transparent; |
| 321 if (o->hasBackground()) | 321 if (o->hasBackground()) |
| 322 extraParams.menuList.backgroundColor = o->resolveColor(CSSPropertyBackgr
oundColor).rgb(); | 322 extraParams.menuList.backgroundColor = o->resolveColor(CSSPropertyBackgr
oundColor).rgb(); |
| 323 | 323 |
| 324 WebKit::WebCanvas* canvas = i.context->canvas(); | 324 WebKit::WebCanvas* canvas = i.getContext()->canvas(); |
| 325 | 325 |
| 326 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartMenuList, getWebThemeState(this, o), WebKit::WebRect(rect), &extraPara
ms); | 326 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartMenuList, getWebThemeState(this, o), WebKit::WebRect(rect), &extraPara
ms); |
| 327 return false; | 327 return false; |
| 328 } | 328 } |
| 329 | 329 |
| 330 bool RenderThemeChromiumDefault::paintSliderTrack(RenderObject* o, const PaintIn
fo& i, const IntRect& rect) | 330 bool RenderThemeChromiumDefault::paintSliderTrack(RenderObject* o, PaintInfo& i,
const IntRect& rect) |
| 331 { | 331 { |
| 332 WebKit::WebThemeEngine::ExtraParams extraParams; | 332 WebKit::WebThemeEngine::ExtraParams extraParams; |
| 333 WebKit::WebCanvas* canvas = i.context->canvas(); | 333 WebKit::WebCanvas* canvas = i.getContext()->canvas(); |
| 334 extraParams.slider.vertical = o->style()->appearance() == SliderVerticalPart
; | 334 extraParams.slider.vertical = o->style()->appearance() == SliderVerticalPart
; |
| 335 | 335 |
| 336 paintSliderTicks(o, i, rect); | 336 paintSliderTicks(o, i, rect); |
| 337 | 337 |
| 338 float zoomLevel = o->style()->effectiveZoom(); | 338 float zoomLevel = o->style()->effectiveZoom(); |
| 339 GraphicsContextStateSaver stateSaver(*i.context); | 339 GraphicsContextStateSaver stateSaver(*(i.getContext())); |
| 340 IntRect unzoomedRect = rect; | 340 IntRect unzoomedRect = rect; |
| 341 if (zoomLevel != 1) { | 341 if (zoomLevel != 1) { |
| 342 unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel); | 342 unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel); |
| 343 unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel); | 343 unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel); |
| 344 i.context->translate(unzoomedRect.x(), unzoomedRect.y()); | 344 i.getContext()->translate(unzoomedRect.x(), unzoomedRect.y()); |
| 345 i.context->scale(FloatSize(zoomLevel, zoomLevel)); | 345 i.getContext()->scale(FloatSize(zoomLevel, zoomLevel)); |
| 346 i.context->translate(-unzoomedRect.x(), -unzoomedRect.y()); | 346 i.getContext()->translate(-unzoomedRect.x(), -unzoomedRect.y()); |
| 347 } | 347 } |
| 348 | 348 |
| 349 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartSliderTrack, getWebThemeState(this, o), WebKit::WebRect(unzoomedRect),
&extraParams); | 349 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartSliderTrack, getWebThemeState(this, o), WebKit::WebRect(unzoomedRect),
&extraParams); |
| 350 | 350 |
| 351 return false; | 351 return false; |
| 352 } | 352 } |
| 353 | 353 |
| 354 bool RenderThemeChromiumDefault::paintSliderThumb(RenderObject* o, const PaintIn
fo& i, const IntRect& rect) | 354 bool RenderThemeChromiumDefault::paintSliderThumb(RenderObject* o, PaintInfo& i,
const IntRect& rect) |
| 355 { | 355 { |
| 356 WebKit::WebThemeEngine::ExtraParams extraParams; | 356 WebKit::WebThemeEngine::ExtraParams extraParams; |
| 357 WebKit::WebCanvas* canvas = i.context->canvas(); | 357 WebKit::WebCanvas* canvas = i.getContext()->canvas(); |
| 358 extraParams.slider.vertical = o->style()->appearance() == SliderThumbVertica
lPart; | 358 extraParams.slider.vertical = o->style()->appearance() == SliderThumbVertica
lPart; |
| 359 extraParams.slider.inDrag = isPressed(o); | 359 extraParams.slider.inDrag = isPressed(o); |
| 360 | 360 |
| 361 float zoomLevel = o->style()->effectiveZoom(); | 361 float zoomLevel = o->style()->effectiveZoom(); |
| 362 GraphicsContextStateSaver stateSaver(*i.context); | 362 GraphicsContextStateSaver stateSaver(*(i.getContext())); |
| 363 IntRect unzoomedRect = rect; | 363 IntRect unzoomedRect = rect; |
| 364 if (zoomLevel != 1) { | 364 if (zoomLevel != 1) { |
| 365 unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel); | 365 unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel); |
| 366 unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel); | 366 unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel); |
| 367 i.context->translate(unzoomedRect.x(), unzoomedRect.y()); | 367 i.getContext()->translate(unzoomedRect.x(), unzoomedRect.y()); |
| 368 i.context->scale(FloatSize(zoomLevel, zoomLevel)); | 368 i.getContext()->scale(FloatSize(zoomLevel, zoomLevel)); |
| 369 i.context->translate(-unzoomedRect.x(), -unzoomedRect.y()); | 369 i.getContext()->translate(-unzoomedRect.x(), -unzoomedRect.y()); |
| 370 } | 370 } |
| 371 | 371 |
| 372 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartSliderThumb, getWebThemeState(this, o), WebKit::WebRect(unzoomedRect),
&extraParams); | 372 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartSliderThumb, getWebThemeState(this, o), WebKit::WebRect(unzoomedRect),
&extraParams); |
| 373 return false; | 373 return false; |
| 374 } | 374 } |
| 375 | 375 |
| 376 void RenderThemeChromiumDefault::adjustInnerSpinButtonStyle(RenderStyle* style,
Element*) const | 376 void RenderThemeChromiumDefault::adjustInnerSpinButtonStyle(RenderStyle* style,
Element*) const |
| 377 { | 377 { |
| 378 IntSize size = WebKit::Platform::current()->themeEngine()->getSize(WebKit::W
ebThemeEngine::PartInnerSpinButton); | 378 IntSize size = WebKit::Platform::current()->themeEngine()->getSize(WebKit::W
ebThemeEngine::PartInnerSpinButton); |
| 379 | 379 |
| 380 style->setWidth(Length(size.width(), Fixed)); | 380 style->setWidth(Length(size.width(), Fixed)); |
| 381 style->setMinWidth(Length(size.width(), Fixed)); | 381 style->setMinWidth(Length(size.width(), Fixed)); |
| 382 } | 382 } |
| 383 | 383 |
| 384 bool RenderThemeChromiumDefault::paintInnerSpinButton(RenderObject* o, const Pai
ntInfo& i, const IntRect& rect) | 384 bool RenderThemeChromiumDefault::paintInnerSpinButton(RenderObject* o, PaintInfo
& i, const IntRect& rect) |
| 385 { | 385 { |
| 386 WebKit::WebThemeEngine::ExtraParams extraParams; | 386 WebKit::WebThemeEngine::ExtraParams extraParams; |
| 387 WebKit::WebCanvas* canvas = i.context->canvas(); | 387 WebKit::WebCanvas* canvas = i.getContext()->canvas(); |
| 388 extraParams.innerSpin.spinUp = (controlStatesForRenderer(o) & SpinUpState); | 388 extraParams.innerSpin.spinUp = (controlStatesForRenderer(o) & SpinUpState); |
| 389 extraParams.innerSpin.readOnly = isReadOnlyControl(o); | 389 extraParams.innerSpin.readOnly = isReadOnlyControl(o); |
| 390 | 390 |
| 391 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartInnerSpinButton, getWebThemeState(this, o), WebKit::WebRect(rect), &ex
traParams); | 391 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartInnerSpinButton, getWebThemeState(this, o), WebKit::WebRect(rect), &ex
traParams); |
| 392 return false; | 392 return false; |
| 393 } | 393 } |
| 394 | 394 |
| 395 bool RenderThemeChromiumDefault::paintProgressBar(RenderObject* o, const PaintIn
fo& i, const IntRect& rect) | 395 bool RenderThemeChromiumDefault::paintProgressBar(RenderObject* o, PaintInfo& i,
const IntRect& rect) |
| 396 { | 396 { |
| 397 if (!o->isProgress()) | 397 if (!o->isProgress()) |
| 398 return true; | 398 return true; |
| 399 | 399 |
| 400 RenderProgress* renderProgress = toRenderProgress(o); | 400 RenderProgress* renderProgress = toRenderProgress(o); |
| 401 IntRect valueRect = progressValueRectFor(renderProgress, rect); | 401 IntRect valueRect = progressValueRectFor(renderProgress, rect); |
| 402 | 402 |
| 403 WebKit::WebThemeEngine::ExtraParams extraParams; | 403 WebKit::WebThemeEngine::ExtraParams extraParams; |
| 404 extraParams.progressBar.determinate = renderProgress->isDeterminate(); | 404 extraParams.progressBar.determinate = renderProgress->isDeterminate(); |
| 405 extraParams.progressBar.valueRectX = valueRect.x(); | 405 extraParams.progressBar.valueRectX = valueRect.x(); |
| 406 extraParams.progressBar.valueRectY = valueRect.y(); | 406 extraParams.progressBar.valueRectY = valueRect.y(); |
| 407 extraParams.progressBar.valueRectWidth = valueRect.width(); | 407 extraParams.progressBar.valueRectWidth = valueRect.width(); |
| 408 extraParams.progressBar.valueRectHeight = valueRect.height(); | 408 extraParams.progressBar.valueRectHeight = valueRect.height(); |
| 409 | 409 |
| 410 DirectionFlippingScope scope(o, i, rect); | 410 DirectionFlippingScope scope(o, i, rect); |
| 411 WebKit::WebCanvas* canvas = i.context->canvas(); | 411 WebKit::WebCanvas* canvas = i.getContext()->canvas(); |
| 412 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartProgressBar, getWebThemeState(this, o), WebKit::WebRect(rect), &extraP
arams); | 412 WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEn
gine::PartProgressBar, getWebThemeState(this, o), WebKit::WebRect(rect), &extraP
arams); |
| 413 return false; | 413 return false; |
| 414 } | 414 } |
| 415 | 415 |
| 416 bool RenderThemeChromiumDefault::shouldOpenPickerWithF4Key() const | 416 bool RenderThemeChromiumDefault::shouldOpenPickerWithF4Key() const |
| 417 { | 417 { |
| 418 return true; | 418 return true; |
| 419 } | 419 } |
| 420 | 420 |
| 421 } // namespace WebCore | 421 } // namespace WebCore |
| OLD | NEW |