1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/layout/tools/layout-debug/src/nsILayoutDebuggingTools.idl Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,52 @@ 1.4 +/* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ 1.5 +// vim:cindent:tabstop=4:expandtab:shiftwidth=4: 1.6 +/* This Source Code Form is subject to the terms of the Mozilla Public 1.7 + * License, v. 2.0. If a copy of the MPL was not distributed with this 1.8 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 1.9 + 1.10 +#include "nsISupports.idl" 1.11 + 1.12 +interface nsIDOMWindow; 1.13 + 1.14 +/** 1.15 + * A series of hooks into non-IDL-ized layout code to allow all the 1.16 + * layout debugging functions to be used from chrome. 1.17 + */ 1.18 + 1.19 +[scriptable, uuid(4b968d4b-9c08-4635-a7e0-55084843f0fd)] 1.20 +interface nsILayoutDebuggingTools : nsISupports 1.21 +{ 1.22 + 1.23 + /* 1.24 + * Initialize debugger object to act on a docshell. 1.25 + */ 1.26 + void init(in nsIDOMWindow win); 1.27 + 1.28 + /* 1.29 + * Notify the debugger that the docshell has been told to load a new 1.30 + * URI. 1.31 + */ 1.32 + void newURILoaded(); 1.33 + 1.34 + /* Toggle various debugging states */ 1.35 + attribute boolean visualDebugging; 1.36 + attribute boolean visualEventDebugging; 1.37 + attribute boolean paintFlashing; 1.38 + attribute boolean paintDumping; 1.39 + attribute boolean invalidateDumping; 1.40 + attribute boolean eventDumping; 1.41 + attribute boolean motionEventDumping; 1.42 + attribute boolean crossingEventDumping; 1.43 + attribute boolean reflowCounts; 1.44 + 1.45 + /* Run various tests. */ 1.46 + void dumpWebShells(); 1.47 + void dumpContent(); 1.48 + void dumpFrames(); 1.49 + void dumpViews(); 1.50 + 1.51 + void dumpStyleSheets(); 1.52 + void dumpStyleContexts(); 1.53 + 1.54 + void dumpReflowStats(); 1.55 +};