summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libs/hwui/OpenGLRenderer.cpp12
-rw-r--r--tests/HwAccelerationTest/AndroidManifest.xml3
2 files changed, 13 insertions, 2 deletions
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp
index 3440687..49d49da 100644
--- a/libs/hwui/OpenGLRenderer.cpp
+++ b/libs/hwui/OpenGLRenderer.cpp
@@ -575,6 +575,14 @@ void OpenGLRenderer::drawText(const char* text, int bytesCount, int count,
return;
}
+ float scaleX = paint->getTextScaleX();
+ bool applyScaleX = scaleX < 0.9999f || scaleX > 1.0001f;
+ if (applyScaleX) {
+ save(0);
+ translate(x - (x * scaleX), 0.0f);
+ scale(scaleX, 1.0f);
+ }
+
float length = -1.0f;
switch (paint->getTextAlign()) {
case SkPaint::kCenter_Align:
@@ -626,6 +634,10 @@ void OpenGLRenderer::drawText(const char* text, int bytesCount, int count,
glDisableVertexAttribArray(mCurrentProgram->getAttrib("texCoords"));
drawTextDecorations(text, bytesCount, length, x, y, paint);
+
+ if (applyScaleX) {
+ restore();
+ }
}
void OpenGLRenderer::drawPath(SkPath* path, SkPaint* paint) {
diff --git a/tests/HwAccelerationTest/AndroidManifest.xml b/tests/HwAccelerationTest/AndroidManifest.xml
index 3ac8c5e..564f13e 100644
--- a/tests/HwAccelerationTest/AndroidManifest.xml
+++ b/tests/HwAccelerationTest/AndroidManifest.xml
@@ -119,8 +119,7 @@
<activity
android:name="TextActivity"
android:label="_Text"
- android:theme="@android:style/Theme.NoTitleBar"
- android:hardwareAccelerated="true">
+ android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />