[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
commit-queue at webkit.org
commit-queue at webkit.org
Wed Dec 22 12:26:03 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit 2fcc090dd752f7faa9375b5e6b54311824922e8e
Author: commit-queue at webkit.org <commit-queue at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Aug 23 16:18:44 2010 +0000
2010-08-23 Ryuan Choi <ryuan.choi at samsung.com>
Reviewed by Antonio Gomes.
[EFL] rendering was broken when missing plugin.
https://bugs.webkit.org/show_bug.cgi?id=43395
Implement RenderThemeEfl::systemFont to render "Missing plugin" when we
don't have proper plugin.
In this case, RenderEmbeddedObject::paintReplaced call systemFont and
pass returned font to GraphicsContext.
* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::setDefaultFontSize):
(WebCore::RenderThemeEfl::systemFont):
* platform/efl/RenderThemeEfl.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65813 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 4393564..4cf38e1 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,20 @@
+2010-08-23 Ryuan Choi <ryuan.choi at samsung.com>
+
+ Reviewed by Antonio Gomes.
+
+ [EFL] rendering was broken when missing plugin.
+ https://bugs.webkit.org/show_bug.cgi?id=43395
+
+ Implement RenderThemeEfl::systemFont to render "Missing plugin" when we
+ don't have proper plugin.
+ In this case, RenderEmbeddedObject::paintReplaced call systemFont and
+ pass returned font to GraphicsContext.
+
+ * platform/efl/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::setDefaultFontSize):
+ (WebCore::RenderThemeEfl::systemFont):
+ * platform/efl/RenderThemeEfl.h:
+
2010-08-23 Pavel Podivilov <podivilov at chromium.org>
Reviewed by Pavel Feldman.
diff --git a/WebCore/platform/efl/RenderThemeEfl.cpp b/WebCore/platform/efl/RenderThemeEfl.cpp
index 36600a9..102f754 100644
--- a/WebCore/platform/efl/RenderThemeEfl.cpp
+++ b/WebCore/platform/efl/RenderThemeEfl.cpp
@@ -26,6 +26,7 @@
#include "config.h"
#include "RenderThemeEfl.h"
+#include "CSSValueKeywords.h"
#include "FileSystem.h"
#include "Frame.h"
#include "FrameView.h"
@@ -631,6 +632,8 @@ void RenderThemeEfl::themeChanged()
applyPartDescriptions();
}
+float RenderThemeEfl::defaultFontSize = 16.0f;
+
RenderThemeEfl::RenderThemeEfl(Page* page)
: RenderTheme()
, m_page(page)
@@ -985,10 +988,24 @@ bool RenderThemeEfl::paintSearchField(RenderObject* o, const PaintInfo& i, const
return paintThemePart(o, SearchField, i, rect);
}
-void RenderThemeEfl::systemFont(int, FontDescription&) const
+void RenderThemeEfl::setDefaultFontSize(int size)
{
- // If you remove this notImplemented(), replace it with an comment that explains why.
- notImplemented();
+ defaultFontSize = size;
+}
+
+void RenderThemeEfl::systemFont(int propId, FontDescription& fontDescription) const
+{
+ // It was called by RenderEmbeddedObject::paintReplaced to render alternative string.
+ // To avoid cairo_error while rendering, fontDescription should be passed.
+ DEFINE_STATIC_LOCAL(String, fontFace, ("Sans"));
+ float fontSize = defaultFontSize;
+
+ fontDescription.firstFamily().setFamily(fontFace);
+ fontDescription.setSpecifiedSize(fontSize);
+ fontDescription.setIsAbsoluteSize(true);
+ fontDescription.setGenericFamily(FontDescription::NoFamily);
+ fontDescription.setWeight(FontWeightNormal);
+ fontDescription.setItalic(false);
}
}
diff --git a/WebCore/platform/efl/RenderThemeEfl.h b/WebCore/platform/efl/RenderThemeEfl.h
index 8e5650d..478dfc5 100644
--- a/WebCore/platform/efl/RenderThemeEfl.h
+++ b/WebCore/platform/efl/RenderThemeEfl.h
@@ -142,6 +142,12 @@ public:
virtual void adjustSliderThumbStyle(CSSStyleSelector*, RenderStyle*, Element*) const;
virtual bool paintSliderThumb(RenderObject*, const PaintInfo&, const IntRect&);
+
+ static void setDefaultFontSize(int size);
+
+protected:
+ static float defaultFontSize;
+
private:
void createCanvas();
void createEdje();
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list