Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(641)

Unified Diff: Source/core/html/shadow/SliderThumbElement.cpp

Issue 125973004: Update of change event for range input type (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Update of change event for range input type Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/html/shadow/SliderThumbElement.cpp
diff --git a/Source/core/html/shadow/SliderThumbElement.cpp b/Source/core/html/shadow/SliderThumbElement.cpp
index c8f8d0a1b4e3050cc9fa384f74e6c79d8cafe9e0..fc4cee11c5647708a16a2cfc538435dde50bb3c1 100644
--- a/Source/core/html/shadow/SliderThumbElement.cpp
+++ b/Source/core/html/shadow/SliderThumbElement.cpp
@@ -34,6 +34,7 @@
#include "core/html/shadow/SliderThumbElement.h"
#include "core/events/Event.h"
+#include "core/events/KeyboardEvent.h"
#include "core/events/MouseEvent.h"
#include "core/dom/shadow/ShadowRoot.h"
#include "core/html/HTMLInputElement.h"
@@ -305,7 +306,6 @@ void SliderThumbElement::setPositionFromPoint(const LayoutPoint& point)
input->setValueFromRenderer(valueString);
if (renderer())
renderer()->setNeedsLayout();
- input->dispatchFormControlChangeEvent();
}
void SliderThumbElement::startDragging()
@@ -330,6 +330,11 @@ void SliderThumbElement::stopDragging()
void SliderThumbElement::defaultEventHandler(Event* event)
{
+ HTMLInputElement* input = hostInput();
+ if (event->isKeyboardEvent()) {
+ input->dispatchFormControlChangeEvent();
tkent 2014/01/14 01:00:51 I don't think this is necessary. RangeInputType::h
Habib Virji 2014/01/14 10:23:42 Done.
+ }
+
if (!event->isMouseEvent()) {
HTMLDivElement::defaultEventHandler(event);
return;
@@ -337,7 +342,6 @@ void SliderThumbElement::defaultEventHandler(Event* event)
// FIXME: Should handle this readonly/disabled check in more general way.
// Missing this kind of check is likely to occur elsewhere if adding it in each shadow element.
- HTMLInputElement* input = hostInput();
if (!input || input->isDisabledOrReadOnly()) {
stopDragging();
HTMLDivElement::defaultEventHandler(event);
@@ -355,6 +359,7 @@ void SliderThumbElement::defaultEventHandler(Event* event)
startDragging();
return;
} else if (eventType == EventTypeNames::mouseup && isLeftButton) {
+ input->dispatchFormControlChangeEvent();
tkent 2014/01/14 01:00:51 This should be *in* stopDragging() because we need
Habib Virji 2014/01/14 10:23:42 Done. Moved dispatchFormControlChangeEvent to stop
stopDragging();
return;
} else if (eventType == EventTypeNames::mousemove) {

Powered by Google App Engine
This is Rietveld 408576698