tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

PVsyncBridge.ipdl (1005B)


      1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
      2 /* This Source Code Form is subject to the terms of the Mozilla Public
      3  * License, v. 2.0. If a copy of the MPL was not distributed with this
      4  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      5 
      6 include "mozilla/layers/LayersMessageUtils.h";
      7 
      8 using class mozilla::TimeStamp from "mozilla/TimeStamp.h";
      9 using mozilla::layers::LayersId from "mozilla/layers/LayersTypes.h";
     10 using mozilla::VsyncEvent from "mozilla/VsyncDispatcher.h";
     11 
     12 namespace mozilla {
     13 namespace gfx {
     14 
     15 // This protocol only serves one purpose: deliver vsync notifications from a
     16 // dedicated thread in the UI process to the compositor thread in the
     17 // compositor process. The child side exists in the UI process, and the
     18 // parent side in the GPU process.
     19 [NeedsOtherPid, ParentProc=GPU, ChildProc=Parent]
     20 sync protocol PVsyncBridge
     21 {
     22 parent:
     23   async NotifyVsync(VsyncEvent vsync, LayersId layersId);
     24 };
     25 
     26 } // namespace gfx
     27 } // namespace mozilla