From bd43511f7f1b5c21c5da44e5fc7d54c9a05ffdb3 Mon Sep 17 00:00:00 2001 From: vincentliu Date: Thu, 13 Apr 2017 13:46:28 +0800 Subject: [PATCH] Bug 1343475 - Add labeling for Dispatch in PuppetWidget::Invalidate(). r=smaug --- widget/PuppetWidget.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/widget/PuppetWidget.cpp b/widget/PuppetWidget.cpp index 9b49681296cc..f57287e93e84 100644 --- a/widget/PuppetWidget.cpp +++ b/widget/PuppetWidget.cpp @@ -10,6 +10,7 @@ #include "ClientLayerManager.h" #include "gfxPlatform.h" #include "mozilla/dom/TabChild.h" +#include "mozilla/dom/TabGroup.h" #include "mozilla/gfx/gfxVars.h" #include "mozilla/Hal.h" #include "mozilla/IMEStateManager.h" @@ -309,9 +310,10 @@ PuppetWidget::Invalidate(const LayoutDeviceIntRect& aRect) mDirtyRegion.Or(mDirtyRegion, aRect); - if (!mDirtyRegion.IsEmpty() && !mPaintTask.IsPending()) { + if (mTabChild && !mDirtyRegion.IsEmpty() && !mPaintTask.IsPending()) { mPaintTask = new PaintTask(this); - NS_DispatchToCurrentThread(mPaintTask.get()); + nsCOMPtr event(mPaintTask.get()); + mTabChild->TabGroup()->Dispatch("PuppetWidget::Invalidate", TaskCategory::Other, event.forget()); return; } }