From 48f287036b47b1498ca1e5115e9fbced579360c0 Mon Sep 17 00:00:00 2001 From: Andrea Iacovitti Date: Sun, 16 Nov 2014 01:30:33 +0100 Subject: [PATCH] Minor optimization --- khtml/css/css_renderstyledeclarationimpl.cpp | 4 ++-- khtml/css/css_valueimpl.cpp | 13 ++++++++----- khtml/css/cssstyleselector.cpp | 10 +++++++--- 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/khtml/css/css_renderstyledeclarationimpl.cpp b/khtml/css/css_renderstyledeclarationimpl.cpp index d16e6a65fb..52eaf4c15b 100644 --- a/khtml/css/css_renderstyledeclarationimpl.cpp +++ b/khtml/css/css_renderstyledeclarationimpl.cpp @@ -461,7 +461,7 @@ CSSValueImpl *RenderStyleDeclarationImpl::getPropertyCSSValue( int propertyID ) case CSS_PROP_BACKGROUND_POSITION: { RETURN_NULL_ON_NULL(renderer); - DOMString string; + QString string; Length length(style->backgroundXPosition()); if (length.isPercent()) string = QString(QString::number(length.percent()) + "%"); @@ -473,7 +473,7 @@ CSSValueImpl *RenderStyleDeclarationImpl::getPropertyCSSValue( int propertyID ) string += QString(QString::number(length.percent()) + "%"); else string += QString(QString::number(length.minWidth(renderer->contentWidth())) + "px"); - return new CSSPrimitiveValueImpl(string, CSSPrimitiveValue::CSS_STRING); + return new CSSPrimitiveValueImpl(DOMString(string), CSSPrimitiveValue::CSS_STRING); } case CSS_PROP_BACKGROUND_POSITION_X: RETURN_NULL_ON_NULL(renderer); diff --git a/khtml/css/css_valueimpl.cpp b/khtml/css/css_valueimpl.cpp index aa825b7c63..d0da9346ee 100644 --- a/khtml/css/css_valueimpl.cpp +++ b/khtml/css/css_valueimpl.cpp @@ -959,14 +959,17 @@ void CSSValueListImpl::append(CSSValueImpl *val) DOM::DOMString CSSValueListImpl::cssText() const { - DOMString result = ""; + DOMString separatorString; + if (m_separator == Comma) { + separatorString = DOMString(", "); + } else { // Space + separatorString = DOMString(" "); + } + DOMString result = ""; for (QListIterator iterator(m_values); iterator.hasNext();) { if (!result.isEmpty()) { - if (m_separator == Comma) - result += ", "; - else if (m_separator == Space) - result += " "; + result += separatorString; } result += iterator.next()->cssText(); } diff --git a/khtml/css/cssstyleselector.cpp b/khtml/css/cssstyleselector.cpp index ffd0f3e9ba..450a5557ed 100644 --- a/khtml/css/cssstyleselector.cpp +++ b/khtml/css/cssstyleselector.cpp @@ -4422,9 +4422,13 @@ void CSSStyleSelector::mapBackgroundSize(BackgroundLayer* layer, CSSValueImpl* v return; CSSPrimitiveValueImpl* primitiveValue = static_cast(value); - int id = primitiveValue->getIdent(); - if (id == CSS_VAL_CONTAIN || id == CSS_VAL_COVER) { - layer->setBackgroundSizeType( (id == CSS_VAL_CONTAIN) ? BGSCONTAIN : BGSCOVER ); + const int id = primitiveValue->getIdent(); + if (id == CSS_VAL_CONTAIN) { + layer->setBackgroundSizeType(BGSCONTAIN); + return; + } + if (id == CSS_VAL_COVER) { + layer->setBackgroundSizeType(BGSCOVER); return; } -- GitLab