< prev index next >

modules/javafx.web/src/main/native/Source/WebCore/platform/java/RenderThemeJava.cpp

Print this page
rev 11035 : imported patch 11.patch

@@ -175,11 +175,11 @@
     ).rgb();
 
     JNIEnv* env = WebCore_GetJavaEnv();
 
     WTF::Vector<jbyte> extParams;
-    if (JNI_EXPAND(SLIDER) == widgetIndex) {
+    if (JNI_EXPAND(SLIDER) == widgetIndex && is<RenderSlider>(object)) {
         HTMLInputElement& input = downcast<RenderSlider>(object).element();
 
         extParams.grow(sizeof(jint) + 3 * sizeof(jfloat));
         jbyte *data = extParams.data();
         auto isVertical = jint((object.style().appearance() == SliderHorizontalPart)

@@ -198,10 +198,11 @@
 
         auto valueAsNumber = jfloat(input.valueAsNumber());
         memcpy(data, &valueAsNumber, sizeof(valueAsNumber));
     } else if (JNI_EXPAND(PROGRESS_BAR) == widgetIndex) {
 #if ENABLE(PROGRESS_ELEMENT)
+        if (is<RenderProgress>(object)) {
         RenderProgress& renderProgress = downcast<RenderProgress>(object);
 
         extParams.grow(sizeof(jint) + 3*sizeof(jfloat));
         jbyte *data = extParams.data();
         auto isDeterminate = jint(renderProgress.isDeterminate() ? 1 : 0);

@@ -216,21 +217,22 @@
         memcpy(data, &animationProgress, sizeof(animationProgress));
         data += sizeof(jfloat);
 
         auto animationStartTime = jfloat(renderProgress.animationStartTime());
         memcpy(data, &animationStartTime, sizeof(animationStartTime));
+        }
 #endif
 #if ENABLE(METER_ELEMENT)
     } else if (JNI_EXPAND(METER) == widgetIndex) {
         jfloat value = 0;
         jint region = 0;
         if (object.isMeter()) {
             HTMLMeterElement* meter = static_cast<HTMLMeterElement*>(object.node());
             value = meter->valueRatio();
             region = meter->gaugeRegion();
 #if ENABLE(PROGRESS_ELEMENT)
-        } else if (object.isProgress()) {
+        } else if (is<RenderProgress>(object>)) {
             RenderProgress& renderProgress = downcast<RenderProgress>(object);
             value = jfloat(renderProgress.position());
 #endif
         }
 
< prev index next >