Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 /* -*- Mode: C++; tab-width: 2; 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/. */
6 #ifndef nsMathMLmphantomFrame_h___
7 #define nsMathMLmphantomFrame_h___
9 #include "mozilla/Attributes.h"
10 #include "nsMathMLContainerFrame.h"
12 //
13 // <mphantom> -- make content invisible but preserve its size
14 //
16 class nsMathMLmphantomFrame : public nsMathMLContainerFrame {
17 public:
18 NS_DECL_FRAMEARENA_HELPERS
20 friend nsIFrame* NS_NewMathMLmphantomFrame(nsIPresShell* aPresShell, nsStyleContext* aContext);
22 NS_IMETHOD
23 InheritAutomaticData(nsIFrame* aParent) MOZ_OVERRIDE;
25 NS_IMETHOD
26 TransmitAutomaticData() MOZ_OVERRIDE {
27 return TransmitAutomaticDataForMrowLikeElement();
28 }
30 virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
31 const nsRect& aDirtyRect,
32 const nsDisplayListSet& aLists) MOZ_OVERRIDE {}
34 bool
35 IsMrowLike() MOZ_OVERRIDE {
36 return mFrames.FirstChild() != mFrames.LastChild() ||
37 !mFrames.FirstChild();
38 }
40 protected:
41 nsMathMLmphantomFrame(nsStyleContext* aContext)
42 : nsMathMLContainerFrame(aContext) {}
43 virtual ~nsMathMLmphantomFrame();
44 };
46 #endif /* nsMathMLmphantomFrame_h___ */