Bug 665599: Remove AddRemoveEventListenerByIID from nsXBLWindowKeyHandler. r=jst

This commit is contained in:
Jonas Sicking 2011-06-24 16:12:34 -07:00
parent d14f4eaad2
commit 7d85bcf0a7
2 changed files with 11 additions and 29 deletions

View File

@ -201,8 +201,7 @@ nsXBLWindowKeyHandler::~nsXBLWindowKeyHandler()
}
}
NS_IMPL_ISUPPORTS2(nsXBLWindowKeyHandler,
nsIDOMKeyListener,
NS_IMPL_ISUPPORTS1(nsXBLWindowKeyHandler,
nsIDOMEventListener)
static void
@ -393,28 +392,20 @@ nsXBLWindowKeyHandler::WalkHandlers(nsIDOMKeyEvent* aKeyEvent, nsIAtom* aEventTy
return NS_OK;
}
nsresult nsXBLWindowKeyHandler::KeyUp(nsIDOMEvent* aEvent)
NS_IMETHODIMP
nsXBLWindowKeyHandler::HandleEvent(nsIDOMEvent* aEvent)
{
nsCOMPtr<nsIDOMKeyEvent> keyEvent(do_QueryInterface(aEvent));
NS_ENSURE_TRUE(keyEvent, NS_ERROR_INVALID_ARG);
return WalkHandlers(keyEvent, nsGkAtoms::keyup);
}
nsresult nsXBLWindowKeyHandler::KeyDown(nsIDOMEvent* aEvent)
{
nsCOMPtr<nsIDOMKeyEvent> keyEvent(do_QueryInterface(aEvent));
NS_ENSURE_TRUE(keyEvent, NS_ERROR_INVALID_ARG);
return WalkHandlers(keyEvent, nsGkAtoms::keydown);
}
nsAutoString eventType;
aEvent->GetType(eventType);
nsCOMPtr<nsIAtom> eventTypeAtom = do_GetAtom(eventType);
NS_ENSURE_TRUE(eventTypeAtom, NS_ERROR_OUT_OF_MEMORY);
nsresult nsXBLWindowKeyHandler::KeyPress(nsIDOMEvent* aEvent)
{
nsCOMPtr<nsIDOMKeyEvent> keyEvent(do_QueryInterface(aEvent));
NS_ENSURE_TRUE(keyEvent, NS_ERROR_INVALID_ARG);
return WalkHandlers(keyEvent, nsGkAtoms::keypress);
return WalkHandlers(keyEvent, eventTypeAtom);
}
//
// EventMatched
//

View File

@ -41,7 +41,7 @@
#define nsXBLWindowKeyHandler_h__
#include "nsWeakPtr.h"
#include "nsIDOMKeyListener.h"
#include "nsIDOMEventListener.h"
class nsIAtom;
class nsIDOMElement;
@ -52,23 +52,14 @@ class nsIXBLDocumentInfo;
class nsXBLSpecialDocInfo;
class nsXBLPrototypeHandler;
class nsXBLWindowKeyHandler : public nsIDOMKeyListener
class nsXBLWindowKeyHandler : public nsIDOMEventListener
{
public:
nsXBLWindowKeyHandler(nsIDOMElement* aElement, nsIDOMEventTarget* aTarget);
virtual ~nsXBLWindowKeyHandler();
// nsIDOMetc.
NS_IMETHOD HandleEvent(nsIDOMEvent* aEvent)
{
return NS_OK;
}
NS_IMETHOD KeyUp(nsIDOMEvent* aKeyEvent);
NS_IMETHOD KeyDown(nsIDOMEvent* aKeyEvent);
NS_IMETHOD KeyPress(nsIDOMEvent* aKeyEvent);
NS_DECL_ISUPPORTS
NS_DECL_NSIDOMEVENTLISTENER
// release globals
static NS_HIDDEN_(void) ShutDown();