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