diff --git a/devtools/client/debugger/new/debugger.js b/devtools/client/debugger/new/debugger.js index 54c54ff73861..3ba7bb00ef96 100644 --- a/devtools/client/debugger/new/debugger.js +++ b/devtools/client/debugger/new/debugger.js @@ -73515,7 +73515,6 @@ return /******/ (function(modules) { // webpackBootstrap "SVGViewSpec": false, "SVGVKernElement": false, "SVGZoomAndPan": false, - "SVGZoomEvent": false, "Text": false, "TextDecoder": false, "TextEncoder": false, diff --git a/dom/events/EventDispatcher.cpp b/dom/events/EventDispatcher.cpp index daf58176fe3d..85a02348122e 100644 --- a/dom/events/EventDispatcher.cpp +++ b/dom/events/EventDispatcher.cpp @@ -43,7 +43,6 @@ #include "mozilla/dom/SimpleGestureEvent.h" #include "mozilla/dom/ScriptSettings.h" #include "mozilla/dom/StorageEvent.h" -#include "mozilla/dom/SVGZoomEvent.h" #include "mozilla/dom/TimeEvent.h" #include "mozilla/dom/TouchEvent.h" #include "mozilla/dom/TransitionEvent.h" @@ -940,9 +939,6 @@ EventDispatcher::CreateEvent(EventTarget* aOwner, case eClipboardEventClass: return NS_NewDOMClipboardEvent(aOwner, aPresContext, aEvent->AsClipboardEvent()); - case eSVGZoomEventClass: - return NS_NewDOMSVGZoomEvent(aOwner, aPresContext, - aEvent->AsSVGZoomEvent()); case eSMILTimeEventClass: return NS_NewDOMTimeEvent(aOwner, aPresContext, aEvent->AsSMILTimeEvent()); @@ -1066,14 +1062,6 @@ EventDispatcher::CreateEvent(EventTarget* aOwner, LOG_EVENT_CREATION(SVGEVENTS); return NS_NewDOMEvent(aOwner, aPresContext, nullptr); } - if (aEventType.LowerCaseEqualsLiteral("svgzoomevent")) { - LOG_EVENT_CREATION(SVGZOOMEVENT); - return NS_NewDOMSVGZoomEvent(aOwner, aPresContext, nullptr); - } - if (aEventType.LowerCaseEqualsLiteral("svgzoomevents")) { - LOG_EVENT_CREATION(SVGZOOMEVENTS); - return NS_NewDOMSVGZoomEvent(aOwner, aPresContext, nullptr); - } if (aEventType.LowerCaseEqualsLiteral("timeevent")) { LOG_EVENT_CREATION(TIMEEVENT); return NS_NewDOMTimeEvent(aOwner, aPresContext, nullptr); diff --git a/dom/events/EventNameList.h b/dom/events/EventNameList.h index d56c26a5deb6..bfc38376fe46 100644 --- a/dom/events/EventNameList.h +++ b/dom/events/EventNameList.h @@ -835,19 +835,6 @@ NON_IDL_EVENT(SVGScroll, EventNameType_None, eBasicEventClass) -NON_IDL_EVENT(SVGZoom, - eSVGZoom, - EventNameType_None, - eSVGZoomEventClass) - -// Only map the ID to the real event name when MESSAGE_TO_EVENT is defined. -#ifndef MESSAGE_TO_EVENT -// This is a bit hackish, but SVG's event names are weird. -NON_IDL_EVENT(zoom, - eSVGZoom, - EventNameType_SVGSVG, - eBasicEventClass) -#endif // Only map the ID to the real event name when MESSAGE_TO_EVENT is defined. #ifndef MESSAGE_TO_EVENT NON_IDL_EVENT(begin, diff --git a/dom/events/test/test_all_synthetic_events.html b/dom/events/test/test_all_synthetic_events.html index ffd969d8d639..1f1225fca5c9 100644 --- a/dom/events/test/test_all_synthetic_events.html +++ b/dom/events/test/test_all_synthetic_events.html @@ -381,13 +381,6 @@ const kEventConstructors = { }, chromeOnly: true, }, - SVGZoomEvent: { create: function (aName, aProps) { - var e = document.createEvent("svgzoomevent"); - e.initUIEvent(aName, aProps.bubbles, aProps.cancelable, - aProps.view, aProps.detail); - return e; - }, - }, TCPSocketErrorEvent: { create: function(aName, aProps) { return new TCPSocketErrorEvent(aName, aProps); }, diff --git a/dom/smil/test/test_smilTimeEvents.xhtml b/dom/smil/test/test_smilTimeEvents.xhtml index 1a2e52a282bd..13064e0d8829 100644 --- a/dom/smil/test/test_smilTimeEvents.xhtml +++ b/dom/smil/test/test_smilTimeEvents.xhtml @@ -322,14 +322,6 @@ d.addEventListener("zoom", function(e) { expectedEvents.shift(); }); -var zoomEvent = document.createEvent("svgzoomevent"); -zoomEvent.initEvent("zoom", true, true); -d.dispatchEvent(zoomEvent); -zoomEvent = document.createEvent("svgzoomevent"); -zoomEvent.initEvent("SVGZoom", true, true); -d.dispatchEvent(zoomEvent); -is(expectedEvents.length, 0, "Got all the expected events."); - ]]> diff --git a/dom/svg/SVGSVGElement.cpp b/dom/svg/SVGSVGElement.cpp index ffb613687d97..cd7ba4b98473 100644 --- a/dom/svg/SVGSVGElement.cpp +++ b/dom/svg/SVGSVGElement.cpp @@ -475,7 +475,7 @@ SVGSVGElement::SetZoomAndPan(uint16_t aZoomAndPan, ErrorResult& rv) } //---------------------------------------------------------------------- -// helper methods for implementing SVGZoomEvent: +// helper method for implementing SetCurrentScale/Translate void SVGSVGElement::SetCurrentScaleTranslate(float s, float x, float y) @@ -499,6 +499,9 @@ SVGSVGElement::SetCurrentScaleTranslate(float s, float x, float y) // change that caused the event's dispatch, which is *not* necessarily the // same thing as the values of currentScale and currentTranslate prior to // their own last change. + // + // XXX This comment is out-of-date due to removal of SVGZoomEvent. Can we + // remove some of this code? mPreviousScale = mCurrentScale; mPreviousTranslate = mCurrentTranslate; @@ -511,10 +514,7 @@ SVGSVGElement::SetCurrentScaleTranslate(float s, float x, float y) nsCOMPtr presShell = doc->GetShell(); if (presShell && IsRoot()) { nsEventStatus status = nsEventStatus_eIgnore; - if (mPreviousScale != mCurrentScale) { - InternalSVGZoomEvent svgZoomEvent(true, eSVGZoom); - presShell->HandleDOMEventWithTarget(this, &svgZoomEvent, &status); - } else { + if (mPreviousScale == mCurrentScale) { WidgetEvent svgScrollEvent(true, eSVGScroll); presShell->HandleDOMEventWithTarget(this, &svgScrollEvent, &status); } diff --git a/dom/svg/SVGSVGElement.h b/dom/svg/SVGSVGElement.h index 0145ae8fac76..d8aa70aa506e 100644 --- a/dom/svg/SVGSVGElement.h +++ b/dom/svg/SVGSVGElement.h @@ -132,6 +132,8 @@ public: * For use by zoom controls to allow currentScale, currentTranslate.x and * currentTranslate.y to be set by a single operation that dispatches a * single SVGZoom event (instead of one SVGZoom and two SVGScroll events). + * + * XXX SVGZoomEvent is no more, is this needed? */ void SetCurrentScaleTranslate(float s, float x, float y); diff --git a/dom/svg/SVGZoomEvent.cpp b/dom/svg/SVGZoomEvent.cpp deleted file mode 100644 index 4856f2c3896a..000000000000 --- a/dom/svg/SVGZoomEvent.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* vim: set ts=8 sts=2 et sw=2 tw=80: */ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#include "DOMSVGPoint.h" -#include "mozilla/ContentEvents.h" -#include "mozilla/dom/Element.h" -#include "mozilla/dom/SVGSVGElement.h" -#include "mozilla/dom/SVGZoomEvent.h" -#include "nsIDocument.h" -#include "nsIPresShell.h" -#include "prtime.h" - -namespace mozilla { -namespace dom { - -//---------------------------------------------------------------------- -// Implementation - -NS_IMPL_CYCLE_COLLECTION_INHERITED(SVGZoomEvent, UIEvent, mPreviousTranslate, mNewTranslate) - -NS_IMPL_ADDREF_INHERITED(SVGZoomEvent, UIEvent) -NS_IMPL_RELEASE_INHERITED(SVGZoomEvent, UIEvent) - -NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(SVGZoomEvent) -NS_INTERFACE_MAP_END_INHERITING(UIEvent) - -SVGZoomEvent::SVGZoomEvent(EventTarget* aOwner, - nsPresContext* aPresContext, - InternalSVGZoomEvent* aEvent) - : UIEvent(aOwner, aPresContext, - aEvent ? aEvent : new InternalSVGZoomEvent(false, eSVGZoom)) - , mPreviousScale(0) - , mNewScale(0) -{ - if (aEvent) { - mEventIsInternal = false; - } - else { - mEventIsInternal = true; - mEvent->mTime = PR_Now(); - } - - // We must store the "Previous" and "New" values before this event is - // dispatched. Reading the values from the root 'svg' element after we've - // been dispatched is not an option since event handler code may change - // currentScale and currentTranslate in response to this event. - nsIPresShell *presShell; - if (mPresContext && (presShell = mPresContext->GetPresShell())) { - nsIDocument *doc = presShell->GetDocument(); - if (doc) { - Element *rootElement = doc->GetRootElement(); - if (rootElement) { - // If the root element isn't an SVG 'svg' element - // (e.g. if this event was created by calling createEvent on a - // non-SVGDocument), then the "New" and "Previous" - // properties will be left null which is probably what we want. - if (rootElement->IsSVGElement(nsGkAtoms::svg)) { - SVGSVGElement *SVGSVGElem = - static_cast(rootElement); - - mNewScale = SVGSVGElem->GetCurrentScale(); - mPreviousScale = SVGSVGElem->GetPreviousScale(); - - const SVGPoint& translate = SVGSVGElem->GetCurrentTranslate(); - mNewTranslate = - new DOMSVGPoint(translate.GetX(), translate.GetY()); - mNewTranslate->SetReadonly(true); - - const SVGPoint& prevTranslate = SVGSVGElem->GetPreviousTranslate(); - mPreviousTranslate = - new DOMSVGPoint(prevTranslate.GetX(), prevTranslate.GetY()); - mPreviousTranslate->SetReadonly(true); - } - } - } - } -} - -SVGZoomEvent::~SVGZoomEvent() -{ -} - -} // namespace dom -} // namespace mozilla - - -//////////////////////////////////////////////////////////////////////// -// Exported creation functions: - -using namespace mozilla; -using namespace mozilla::dom; - -already_AddRefed -NS_NewDOMSVGZoomEvent(EventTarget* aOwner, - nsPresContext* aPresContext, - mozilla::InternalSVGZoomEvent* aEvent) -{ - RefPtr it = new SVGZoomEvent(aOwner, aPresContext, aEvent); - return it.forget(); -} diff --git a/dom/svg/SVGZoomEvent.h b/dom/svg/SVGZoomEvent.h deleted file mode 100644 index c0937309b0c8..000000000000 --- a/dom/svg/SVGZoomEvent.h +++ /dev/null @@ -1,78 +0,0 @@ -/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* vim: set ts=8 sts=2 et sw=2 tw=80: */ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#ifndef mozilla_dom_SVGZoomEvent_h -#define mozilla_dom_SVGZoomEvent_h - -#include "DOMSVGPoint.h" -#include "mozilla/dom/UIEvent.h" -#include "mozilla/dom/SVGZoomEventBinding.h" -#include "mozilla/EventForwards.h" - -class nsPresContext; - -namespace mozilla { - -class nsISVGPoint; - -namespace dom { - -class SVGZoomEvent final : public UIEvent -{ -public: - - NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(SVGZoomEvent, UIEvent) - NS_DECL_ISUPPORTS_INHERITED - - SVGZoomEvent(EventTarget* aOwner, nsPresContext* aPresContext, - InternalSVGZoomEvent* aEvent); - - // Forward to base class - NS_FORWARD_TO_UIEVENT - - virtual JSObject* WrapObjectInternal(JSContext* aCx, JS::Handle aGivenProto) override - { - return SVGZoomEventBinding::Wrap(aCx, this, aGivenProto); - } - - float PreviousScale() const - { - return mPreviousScale; - } - - nsISVGPoint* GetPreviousTranslate() const - { - return mPreviousTranslate; - } - - float NewScale() const - { - return mNewScale; - } - - nsISVGPoint* GetNewTranslate() const - { - return mNewTranslate; - } - -private: - ~SVGZoomEvent(); - - float mPreviousScale; - float mNewScale; - RefPtr mPreviousTranslate; - RefPtr mNewTranslate; -}; - -} // namespace dom -} // namespace mozilla - -already_AddRefed -NS_NewDOMSVGZoomEvent(mozilla::dom::EventTarget* aOwner, - nsPresContext* aPresContext, - mozilla::InternalSVGZoomEvent* aEvent); - -#endif // mozilla_dom_SVGZoomEvent_h diff --git a/dom/svg/moz.build b/dom/svg/moz.build index 0b71f1aaa08d..94e4aab26413 100644 --- a/dom/svg/moz.build +++ b/dom/svg/moz.build @@ -102,7 +102,6 @@ EXPORTS.mozilla.dom += [ 'SVGTSpanElement.h', 'SVGUseElement.h', 'SVGViewElement.h', - 'SVGZoomEvent.h', ] UNIFIED_SOURCES += [ @@ -249,7 +248,6 @@ UNIFIED_SOURCES += [ 'SVGUseElement.cpp', 'SVGViewBoxSMILType.cpp', 'SVGViewElement.cpp', - 'SVGZoomEvent.cpp', ] include('/ipc/chromium/chromium-config.mozbuild') diff --git a/dom/svg/test/mochitest.ini b/dom/svg/test/mochitest.ini index c44776b2ff6d..ddc0e4b4725c 100644 --- a/dom/svg/test/mochitest.ini +++ b/dom/svg/test/mochitest.ini @@ -27,7 +27,6 @@ support-files = text-helper-selection.svg text-helper.svg viewport-helper.svg - zoom-helper.svg [test_a_href_01.xhtml] [test_a_href_02.xhtml] @@ -105,5 +104,4 @@ support-files = use-with-hsts-helper.html use-with-hsts-helper.html^headers^ [test_valueAsString.xhtml] [test_valueLeaks.xhtml] [test_viewport.html] -[test_zoom.xhtml] diff --git a/dom/svg/test/test_zoom.xhtml b/dom/svg/test/test_zoom.xhtml deleted file mode 100644 index ce920b29dbad..000000000000 --- a/dom/svg/test/test_zoom.xhtml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - Test for Bug 547596 - - - - - Mozilla Bug 547596 -

- - - - - - - diff --git a/dom/svg/test/zoom-helper.svg b/dom/svg/test/zoom-helper.svg deleted file mode 100644 index a9e40cdaa8d2..000000000000 --- a/dom/svg/test/zoom-helper.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/dom/tests/mochitest/general/test_interfaces.js b/dom/tests/mochitest/general/test_interfaces.js index 714e6f6f83e5..d5be8ebe93eb 100644 --- a/dom/tests/mochitest/general/test_interfaces.js +++ b/dom/tests/mochitest/general/test_interfaces.js @@ -1118,8 +1118,6 @@ var interfaceNamesInGlobalScope = "SVGViewElement", // IMPORTANT: Do not change this list without review from a DOM peer! "SVGZoomAndPan", -// IMPORTANT: Do not change this list without review from a DOM peer! - "SVGZoomEvent", // IMPORTANT: Do not change this list without review from a DOM peer! "Text", // IMPORTANT: Do not change this list without review from a DOM peer! diff --git a/dom/webidl/SVGZoomEvent.webidl b/dom/webidl/SVGZoomEvent.webidl deleted file mode 100644 index 044247f3ca09..000000000000 --- a/dom/webidl/SVGZoomEvent.webidl +++ /dev/null @@ -1,25 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. - * - * The origin of this IDL file is - * http://www.w3.org/TR/SVG2/ - * - * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C - * liability, trademark and document use rules apply. - */ - -interface SVGZoomEvent : UIEvent { - // Not implemented - // readonly attribute SVGRect zoomRectScreen; - - [Constant] - readonly attribute float previousScale; - [Constant] - readonly attribute SVGPoint? previousTranslate; - [Constant] - readonly attribute float newScale; - [Constant] - readonly attribute SVGPoint? newTranslate; -}; diff --git a/dom/webidl/moz.build b/dom/webidl/moz.build index fb517109944a..2ff1e2fffb2b 100644 --- a/dom/webidl/moz.build +++ b/dom/webidl/moz.build @@ -900,7 +900,6 @@ WEBIDL_FILES = [ 'SVGViewElement.webidl', 'SVGZoomAndPan.webidl', 'SVGZoomAndPanValues.webidl', - 'SVGZoomEvent.webidl', 'TCPServerSocket.webidl', 'TCPServerSocketEvent.webidl', 'TCPSocket.webidl', diff --git a/testing/web-platform/meta/dom/nodes/Document-createEvent.html.ini b/testing/web-platform/meta/dom/nodes/Document-createEvent.html.ini index f8475cc9ad7e..46760df2ea7e 100644 --- a/testing/web-platform/meta/dom/nodes/Document-createEvent.html.ini +++ b/testing/web-platform/meta/dom/nodes/Document-createEvent.html.ini @@ -148,30 +148,6 @@ expected: FAIL bug: https://github.com/whatwg/dom/issues/362, 1314303 - [createEvent('SVGZoomEvent') should be initialized correctly.] - expected: FAIL - bug: 1314388 - - [createEvent('svgzoomevent') should be initialized correctly.] - expected: FAIL - bug: 1314388 - - [createEvent('SVGZOOMEVENT') should be initialized correctly.] - expected: FAIL - bug: 1314388 - - [createEvent('SVGZoomEvents') should be initialized correctly.] - expected: FAIL - bug: 1314388 - - [createEvent('svgzoomevents') should be initialized correctly.] - expected: FAIL - bug: 1314388 - - [createEvent('SVGZOOMEVENTS') should be initialized correctly.] - expected: FAIL - bug: 1314388 - [Should throw NOT_SUPPORTED_ERR for pluralized legacy event interface "TextEvents"] expected: FAIL bug: 1251198 @@ -344,9 +320,3 @@ expected: FAIL bug: 1251198 - [Should throw NOT_SUPPORTED_ERR for non-legacy event interface "SVGZoomEvent"] - expected: FAIL - - [Should throw NOT_SUPPORTED_ERR for pluralized non-legacy event interface "SVGZoomEvents"] - expected: FAIL - diff --git a/testing/web-platform/meta/svg/historical.html.ini b/testing/web-platform/meta/svg/historical.html.ini index d7dbe0d85f66..bfbbbda26cd8 100644 --- a/testing/web-platform/meta/svg/historical.html.ini +++ b/testing/web-platform/meta/svg/historical.html.ini @@ -3,9 +3,6 @@ [SVGPathSeg interface must be removed] expected: FAIL - [SVGZoomEvent interface must be removed] - expected: FAIL - [SVGUnitTypes mixin interface must not be exposed] expected: FAIL diff --git a/testing/web-platform/tests/svg/interfaces.html b/testing/web-platform/tests/svg/interfaces.html index a9bf2bd6bb52..ce979dde55a7 100644 --- a/testing/web-platform/tests/svg/interfaces.html +++ b/testing/web-platform/tests/svg/interfaces.html @@ -983,14 +983,6 @@ interface SVGScriptElement : SVGElement { SVGScriptElement implements SVGURIReference; -interface SVGZoomEvent : UIEvent { - [SameObject] readonly attribute DOMRectReadOnly zoomRectScreen; - readonly attribute float previousScale; - [SameObject] readonly attribute DOMPointReadOnly previousTranslate; - readonly attribute float newScale; - [SameObject] readonly attribute DOMPointReadOnly newTranslate; -}; - interface SVGAElement : SVGGraphicsElement { [SameObject] readonly attribute SVGAnimatedString target; }; diff --git a/widget/BasicEvents.h b/widget/BasicEvents.h index c7a8f2690825..61ab0f9231b3 100644 --- a/widget/BasicEvents.h +++ b/widget/BasicEvents.h @@ -324,7 +324,6 @@ private: break; case eTransitionEventClass: case eAnimationEventClass: - case eSVGZoomEventClass: mFlags.mCancelable = false; mFlags.mBubbles = true; break; diff --git a/widget/ContentEvents.h b/widget/ContentEvents.h index be64b7bebdc0..2cc8b0c5c13a 100644 --- a/widget/ContentEvents.h +++ b/widget/ContentEvents.h @@ -316,38 +316,6 @@ public: } }; -/****************************************************************************** - * mozilla::InternalSVGZoomEvent - ******************************************************************************/ - -class InternalSVGZoomEvent : public WidgetGUIEvent -{ -public: - virtual InternalSVGZoomEvent* AsSVGZoomEvent() override { return this; } - - InternalSVGZoomEvent(bool aIsTrusted, EventMessage aMessage) - : WidgetGUIEvent(aIsTrusted, aMessage, nullptr, eSVGZoomEventClass) - { - } - - virtual WidgetEvent* Duplicate() const override - { - MOZ_ASSERT(mClass == eSVGZoomEventClass, - "Duplicate() must be overridden by sub class"); - // Not copying widget, it is a weak reference. - InternalSVGZoomEvent* result = new InternalSVGZoomEvent(false, mMessage); - result->AssignSVGZoomEventData(*this, true); - result->mFlags = mFlags; - return result; - } - - void AssignSVGZoomEventData(const InternalSVGZoomEvent& aEvent, - bool aCopyTargets) - { - AssignGUIEventData(aEvent, aCopyTargets); - } -}; - /****************************************************************************** * mozilla::InternalSMILTimeEvent ******************************************************************************/ diff --git a/widget/EventClassList.h b/widget/EventClassList.h index e6a160fab86d..fc08792b238f 100644 --- a/widget/EventClassList.h +++ b/widget/EventClassList.h @@ -48,7 +48,6 @@ NS_EVENT_CLASS(Internal, ClipboardEvent) NS_EVENT_CLASS(Internal, FocusEvent) NS_EVENT_CLASS(Internal, TransitionEvent) NS_EVENT_CLASS(Internal, AnimationEvent) -NS_EVENT_CLASS(Internal, SVGZoomEvent) NS_EVENT_CLASS(Internal, SMILTimeEvent) // MiscEvents.h