tor-browser

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

PresState.ipdlh (1524B)


      1 /* -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; tab-width: 8 -*- */
      2 /* vim: set sw=2 ts=8 et tw=80 ft=cpp : */
      3 /* This Source Code Form is subject to the terms of the Mozilla Public
      4  * License, v. 2.0. If a copy of the MPL was not distributed with this
      5  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      6 
      7 include "mozilla/GfxMessageUtils.h";
      8 include "mozilla/dom/IPCBlobUtils.h";
      9 
     10 using struct mozilla::void_t from "mozilla/ipc/IPCCore.h";
     11 using struct nsPoint from "nsPoint.h";
     12 [RefCounted] using class mozilla::dom::BlobImpl from "mozilla/dom/BlobImpl.h";
     13 
     14 include CustomElementTypes;
     15 
     16 namespace mozilla {
     17 
     18 struct SelectContentData {
     19   uint32_t[] indices;
     20   nsString[] values;
     21 };
     22 
     23 struct CheckedContentData {
     24   bool checked;
     25 };
     26 
     27 union FileContentData {
     28   nullable BlobImpl;
     29   nsString;
     30 };
     31 
     32 struct TextContentData {
     33   nsString value;
     34   bool lastValueChangeWasInteractive;
     35 };
     36 
     37 union PresContentData {
     38   void_t;
     39   TextContentData;
     40   SelectContentData;
     41   CheckedContentData;
     42   // We can need to serialize blobs in order to transmit this type, so we need
     43   // to handle that in a custom handler.
     44   FileContentData[];
     45   CustomElementTuple;
     46 };
     47 
     48 struct PresState {
     49   PresContentData contentData;
     50   // For frames where layout and visual viewport aren't one and the same thing,
     51   // scrollState will store the position of the *visual* viewport.
     52   nsPoint scrollState;
     53   bool allowScrollOriginDowngrade;
     54   float resolution;
     55   bool disabledSet;
     56   bool disabled;
     57   bool droppedDown;
     58 };
     59 
     60 }  // namespace mozilla