From 500bdf163d9556ba155b22b147882bc95a8b2c78 Mon Sep 17 00:00:00 2001 From: Masayuki Nakano Date: Sat, 11 Jul 2015 10:53:56 +0900 Subject: [PATCH] Bug 1176954 part.8 ContentCacheInParent::OnEventNeedingAckReceived() should log the event message r=smaug --- dom/ipc/PBrowser.ipdl | 4 +++- dom/ipc/TabChild.cpp | 4 ++-- dom/ipc/TabParent.cpp | 4 ++-- dom/ipc/TabParent.h | 2 +- widget/ContentCache.cpp | 9 +++++---- widget/ContentCache.h | 2 +- 6 files changed, 14 insertions(+), 11 deletions(-) diff --git a/dom/ipc/PBrowser.ipdl b/dom/ipc/PBrowser.ipdl index e1690057df55..54865fd13c34 100644 --- a/dom/ipc/PBrowser.ipdl +++ b/dom/ipc/PBrowser.ipdl @@ -269,8 +269,10 @@ parent: * OnEventNeedingAckReceived() is called when a child process dispatches a * composition event or a selection event which is sent from the parent * process. + * + * message The message value of the received event. */ - prio(urgent) async OnEventNeedingAckReceived(); + prio(urgent) async OnEventNeedingAckReceived(uint32_t message); /** * Tells chrome to start plugin IME. If this results in a string getting diff --git a/dom/ipc/TabChild.cpp b/dom/ipc/TabChild.cpp index 43013f652853..ead0376cd292 100644 --- a/dom/ipc/TabChild.cpp +++ b/dom/ipc/TabChild.cpp @@ -2659,7 +2659,7 @@ TabChild::RecvKeyEvent(const nsString& aType, bool TabChild::RecvCompositionEvent(const WidgetCompositionEvent& event) { - unused << SendOnEventNeedingAckReceived(); + unused << SendOnEventNeedingAckReceived(event.message); WidgetCompositionEvent localEvent(event); localEvent.widget = mPuppetWidget; APZCCallbackHelper::DispatchWidgetEvent(localEvent); @@ -2669,7 +2669,7 @@ TabChild::RecvCompositionEvent(const WidgetCompositionEvent& event) bool TabChild::RecvSelectionEvent(const WidgetSelectionEvent& event) { - unused << SendOnEventNeedingAckReceived(); + unused << SendOnEventNeedingAckReceived(event.message); WidgetSelectionEvent localEvent(event); localEvent.widget = mPuppetWidget; APZCCallbackHelper::DispatchWidgetEvent(localEvent); diff --git a/dom/ipc/TabParent.cpp b/dom/ipc/TabParent.cpp index 22561b5a6f8f..f76e0f8bb84a 100644 --- a/dom/ipc/TabParent.cpp +++ b/dom/ipc/TabParent.cpp @@ -2086,7 +2086,7 @@ TabParent::RecvNotifyIMEPositionChange(const ContentCache& aContentCache) } bool -TabParent::RecvOnEventNeedingAckReceived() +TabParent::RecvOnEventNeedingAckReceived(const uint32_t& aMessage) { // This is called when the child process receives WidgetCompositionEvent or // WidgetSelectionEvent. @@ -2098,7 +2098,7 @@ TabParent::RecvOnEventNeedingAckReceived() // While calling OnEventNeedingAckReceived(), TabParent *might* be destroyed // since it may send notifications to IME. nsRefPtr kungFuDeathGrip(this); - mContentCache.OnEventNeedingAckReceived(widget); + mContentCache.OnEventNeedingAckReceived(widget, aMessage); return true; } diff --git a/dom/ipc/TabParent.h b/dom/ipc/TabParent.h index f98c55e99643..7b57957e61b6 100644 --- a/dom/ipc/TabParent.h +++ b/dom/ipc/TabParent.h @@ -177,7 +177,7 @@ public: virtual bool RecvNotifyIMEMouseButtonEvent(const widget::IMENotification& aEventMessage, bool* aConsumedByIME) override; virtual bool RecvNotifyIMEPositionChange(const ContentCache& aContentCache) override; - virtual bool RecvOnEventNeedingAckReceived() override; + virtual bool RecvOnEventNeedingAckReceived(const uint32_t& aMessage) override; virtual bool RecvEndIMEComposition(const bool& aCancel, bool* aNoCompositionEvent, nsString* aComposition) override; diff --git a/widget/ContentCache.cpp b/widget/ContentCache.cpp index 30cfc08f8274..8f9dd19ffa23 100644 --- a/widget/ContentCache.cpp +++ b/widget/ContentCache.cpp @@ -914,15 +914,16 @@ ContentCacheInParent::OnSelectionEvent( } void -ContentCacheInParent::OnEventNeedingAckReceived(nsIWidget* aWidget) +ContentCacheInParent::OnEventNeedingAckReceived(nsIWidget* aWidget, + uint32_t aMessage) { // This is called when the child process receives WidgetCompositionEvent or // WidgetSelectionEvent. MOZ_LOG(sContentCacheLog, LogLevel::Info, - ("ContentCacheInParent: 0x%p OnEventNeedingAckReceived(aWidget=0x%p), " - "mPendingEventsNeedingAck=%u", - this, aWidget, mPendingEventsNeedingAck)); + ("ContentCacheInParent: 0x%p OnEventNeedingAckReceived(aWidget=0x%p, " + "aMessage=%s), mPendingEventsNeedingAck=%u", + this, aWidget, GetEventMessageName(aMessage), mPendingEventsNeedingAck)); MOZ_RELEASE_ASSERT(mPendingEventsNeedingAck > 0); if (--mPendingEventsNeedingAck) { diff --git a/widget/ContentCache.h b/widget/ContentCache.h index 679882c494d8..860bdb984b9e 100644 --- a/widget/ContentCache.h +++ b/widget/ContentCache.h @@ -322,7 +322,7 @@ public: * TabParent or aWidget. Therefore, the caller must not destroy * this instance during a call of this method. */ - void OnEventNeedingAckReceived(nsIWidget* aWidget); + void OnEventNeedingAckReceived(nsIWidget* aWidget, uint32_t aMessage); /** * RequestToCommitComposition() requests to commit or cancel composition to