summaryrefslogtreecommitdiffstats
path: root/widget/windows/InProcessWinCompositorWidget.cpp
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@gmail.com>2018-11-01 20:16:11 +0100
committerwolfbeast <mcwerewolf@gmail.com>2018-11-01 20:16:11 +0100
commite0de8181d9d51cff079f9b54fd6fa276d6aeb094 (patch)
tree260dea667bc815c9e80543faf6c50a1bf85f4916 /widget/windows/InProcessWinCompositorWidget.cpp
parent24a83a813641a6500e91f9fcf1ea3ca0aecc047a (diff)
downloadUXP-e0de8181d9d51cff079f9b54fd6fa276d6aeb094.tar
UXP-e0de8181d9d51cff079f9b54fd6fa276d6aeb094.tar.gz
UXP-e0de8181d9d51cff079f9b54fd6fa276d6aeb094.tar.lz
UXP-e0de8181d9d51cff079f9b54fd6fa276d6aeb094.tar.xz
UXP-e0de8181d9d51cff079f9b54fd6fa276d6aeb094.zip
Protect main thread in-process access to WinCompositorWidget transparent surface.
Diffstat (limited to 'widget/windows/InProcessWinCompositorWidget.cpp')
-rw-r--r--widget/windows/InProcessWinCompositorWidget.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/widget/windows/InProcessWinCompositorWidget.cpp b/widget/windows/InProcessWinCompositorWidget.cpp
index 685eaf5ca..a11790b32 100644
--- a/widget/windows/InProcessWinCompositorWidget.cpp
+++ b/widget/windows/InProcessWinCompositorWidget.cpp
@@ -23,6 +23,31 @@ InProcessWinCompositorWidget::InProcessWinCompositorWidget(const CompositorWidge
MOZ_ASSERT(mWindow);
}
+void
+InProcessWinCompositorWidget::OnDestroyWindow()
+{
+ EnterPresentLock();
+ WinCompositorWidget::OnDestroyWindow();
+ LeavePresentLock();
+}
+
+void
+InProcessWinCompositorWidget::UpdateTransparency(nsTransparencyMode aMode)
+{
+ EnterPresentLock();
+ WinCompositorWidget::UpdateTransparency(aMode);
+ LeavePresentLock();
+}
+
+void
+InProcessWinCompositorWidget::ClearTransparentWindow()
+{
+ EnterPresentLock();
+ WinCompositorWidget::ClearTransparentWindow();
+ LeavePresentLock();
+}
+
+
nsIWidget*
InProcessWinCompositorWidget::RealWidget()
{