| Index: Source/core/html/shadow/SpinButtonElement.cpp
|
| diff --git a/Source/core/html/shadow/SpinButtonElement.cpp b/Source/core/html/shadow/SpinButtonElement.cpp
|
| index 22f4255e658a0f763186abbf5bdb8323c2437bd8..79d4e2297334e6da62050d282052340a3101a7a9 100644
|
| --- a/Source/core/html/shadow/SpinButtonElement.cpp
|
| +++ b/Source/core/html/shadow/SpinButtonElement.cpp
|
| @@ -60,12 +60,6 @@ PassRefPtr<SpinButtonElement> SpinButtonElement::create(Document& document, Spin
|
| return element.release();
|
| }
|
|
|
| -void SpinButtonElement::detach(const AttachContext& context)
|
| -{
|
| - releaseCapture();
|
| - HTMLDivElement::detach(context);
|
| -}
|
| -
|
| void SpinButtonElement::defaultEventHandler(Event* event)
|
| {
|
| if (!event->isMouseEvent()) {
|
| @@ -111,7 +105,7 @@ void SpinButtonElement::defaultEventHandler(Event* event)
|
| event->setDefaultHandled();
|
| }
|
| } else if (mouseEvent->type() == EventTypeNames::mouseup && mouseEvent->button() == LeftButton) {
|
| - stopRepeatingTimer();
|
| + releaseCapture();
|
| } else if (event->type() == EventTypeNames::mousemove) {
|
| if (box->pixelSnappedBorderBoxRect().contains(local)) {
|
| if (!m_capturing) {
|
| @@ -198,6 +192,9 @@ void SpinButtonElement::releaseCapture()
|
| page->chrome().unregisterPopupOpeningObserver(this);
|
| }
|
| }
|
| + if (m_spinButtonOwner)
|
| + m_spinButtonOwner->spinButtonDidReleaseMouseCapture();
|
| +
|
| }
|
|
|
| bool SpinButtonElement::matchesReadOnlyPseudoClass() const
|
|
|