summaryrefslogtreecommitdiffstats
path: root/WebCore/page/Frame.h
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-03-03 18:28:41 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2009-03-03 18:28:41 -0800
commit648161bb0edfc3d43db63caed5cc5213bc6cb78f (patch)
tree4b825dc642cb6eb9a060e54bf8d69288fbee4904 /WebCore/page/Frame.h
parenta65af38181ac7d34544586bdb5cd004de93897ad (diff)
downloadexternal_webkit-648161bb0edfc3d43db63caed5cc5213bc6cb78f.zip
external_webkit-648161bb0edfc3d43db63caed5cc5213bc6cb78f.tar.gz
external_webkit-648161bb0edfc3d43db63caed5cc5213bc6cb78f.tar.bz2
auto import from //depot/cupcake/@135843
Diffstat (limited to 'WebCore/page/Frame.h')
-rw-r--r--WebCore/page/Frame.h314
1 files changed, 0 insertions, 314 deletions
diff --git a/WebCore/page/Frame.h b/WebCore/page/Frame.h
deleted file mode 100644
index 8f50062..0000000
--- a/WebCore/page/Frame.h
+++ /dev/null
@@ -1,314 +0,0 @@
-/*
- * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org>
- * 1999-2001 Lars Knoll <knoll@kde.org>
- * 1999-2001 Antti Koivisto <koivisto@kde.org>
- * 2000-2001 Simon Hausmann <hausmann@kde.org>
- * 2000-2001 Dirk Mueller <mueller@kde.org>
- * 2000 Stefan Schimanski <1Stein@gmx.de>
- * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved.
- * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
- * Copyright (C) 2008 Eric Seidel <eric@webkit.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef Frame_h
-#define Frame_h
-
-#include "DragImage.h"
-#include "EditAction.h"
-#include "RenderLayer.h"
-#include "TextGranularity.h"
-
-#if PLATFORM(MAC)
-#ifndef __OBJC__
-class NSArray;
-class NSDictionary;
-class NSMutableDictionary;
-class NSString;
-typedef int NSWritingDirection;
-#endif
-#endif
-
-namespace WebCore {
-
-class Editor;
-class EventHandler;
-class FrameLoader;
-class FrameLoaderClient;
-class FramePrivate;
-class FrameTree;
-class HTMLFrameOwnerElement;
-class HTMLTableCellElement;
-class ScriptController;
-class RegularExpression;
-class RenderPart;
-class Selection;
-class SelectionController;
-class Widget;
-
-template <typename T> class Timer;
-
-class Frame : public RefCounted<Frame> {
-public:
- static PassRefPtr<Frame> create(Page* page, HTMLFrameOwnerElement* ownerElement, FrameLoaderClient* client)
- {
- return adoptRef(new Frame(page, ownerElement, client));
- }
- void setView(FrameView*);
- ~Frame();
-
- void init();
-
- Page* page() const;
- HTMLFrameOwnerElement* ownerElement() const;
-
- void pageDestroyed();
- void disconnectOwnerElement();
-
- Document* document() const;
- FrameView* view() const;
-
- DOMWindow* domWindow() const;
- void clearFormerDOMWindow(DOMWindow*);
- Editor* editor() const;
- EventHandler* eventHandler() const;
- FrameLoader* loader() const;
- SelectionController* selection() const;
- FrameTree* tree() const;
- AnimationController* animation() const;
- ScriptController* script();
-
- RenderView* contentRenderer() const; // root renderer for the document contained in this frame
- RenderPart* ownerRenderer() const; // renderer for the element that contains this frame
-
- bool isDisconnected() const;
- void setIsDisconnected(bool);
- bool excludeFromTextSearch() const;
- void setExcludeFromTextSearch(bool);
-
- friend class FramePrivate;
-
-private:
- Frame(Page*, HTMLFrameOwnerElement*, FrameLoaderClient*);
-
- FramePrivate* d;
-
-// === undecided, would like to consider moving to another class
-
-public:
- static Frame* frameForWidget(const Widget*);
-
- Settings* settings() const; // can be NULL
-
-#if FRAME_LOADS_USER_STYLESHEET
- void setUserStyleSheetLocation(const KURL&);
- void setUserStyleSheet(const String& styleSheetData);
-#endif
-
- void setPrinting(bool printing, float minPageWidth, float maxPageWidth, bool adjustViewSize);
-
- bool inViewSourceMode() const;
- void setInViewSourceMode(bool = true) const;
-
- void keepAlive(); // Used to keep the frame alive when running a script that might destroy it.
-#ifndef NDEBUG
- static void cancelAllKeepAlive();
-#endif
-
- void setDocument(PassRefPtr<Document>);
-
- void clearTimers();
- static void clearTimers(FrameView*, Document*);
-
- // Convenience, to avoid repeating the code to dig down to get this.
- UChar backslashAsCurrencySymbol() const;
-
- void setNeedsReapplyStyles();
- bool needsReapplyStyles() const;
- void reapplyStyles();
-
- String documentTypeString() const;
-
- // This method -- and the corresponding list of former DOM windows --
- // should move onto ScriptController
- void clearDOMWindow();
-
-private:
- void lifeSupportTimerFired(Timer<Frame>*);
-
-// === to be moved into Document
-
-public:
- bool isFrameSet() const;
-
-// === to be moved into EventHandler
-
-public:
- void sendResizeEvent();
- void sendScrollEvent();
-
-// === to be moved into FrameView
-
-public:
- void forceLayout(bool allowSubtree = false);
- void forceLayoutWithPageWidthRange(float minPageWidth, float maxPageWidth, bool adjustViewSize);
-
- void adjustPageHeight(float* newBottom, float oldTop, float oldBottom, float bottomLimit);
-
- void setZoomFactor(float scale, bool isTextOnly);
- float zoomFactor() const;
- bool isZoomFactorTextOnly() const;
- bool shouldApplyTextZoom() const;
- bool shouldApplyPageZoom() const;
- float pageZoomFactor() const { return shouldApplyPageZoom() ? zoomFactor() : 1.0f; }
- float textZoomFactor() const { return shouldApplyTextZoom() ? zoomFactor() : 1.0f; }
-
-// === to be moved into Chrome
-
-public:
- void focusWindow();
- void unfocusWindow();
- bool shouldClose();
- void scheduleClose();
-
- void setJSStatusBarText(const String&);
- void setJSDefaultStatusBarText(const String&);
- String jsStatusBarText() const;
- String jsDefaultStatusBarText() const;
-
-// === to be moved into Editor
-
-public:
- String selectedText() const;
- bool findString(const String&, bool forward, bool caseFlag, bool wrapFlag, bool startInSelection);
-
- const Selection& mark() const; // Mark, to be used as emacs uses it.
- void setMark(const Selection&);
-
- void computeAndSetTypingStyle(CSSStyleDeclaration* , EditAction = EditActionUnspecified);
- String selectionStartStylePropertyValue(int stylePropertyID) const;
- void applyEditingStyleToBodyElement() const;
- void removeEditingStyleFromBodyElement() const;
- void applyEditingStyleToElement(Element*) const;
- void removeEditingStyleFromElement(Element*) const;
-
- IntRect firstRectForRange(Range*) const;
-
- void respondToChangedSelection(const Selection& oldSelection, bool closeTyping);
- bool shouldChangeSelection(const Selection& oldSelection, const Selection& newSelection, EAffinity, bool stillSelecting) const;
-
- RenderStyle* styleForSelectionStart(Node*& nodeToRemove) const;
-
- unsigned markAllMatchesForText(const String&, bool caseFlag, unsigned limit);
- bool markedTextMatchesAreHighlighted() const;
- void setMarkedTextMatchesAreHighlighted(bool flag);
-
- PassRefPtr<CSSComputedStyleDeclaration> selectionComputedStyle(Node*& nodeToRemove) const;
-
- void textFieldDidBeginEditing(Element*);
- void textFieldDidEndEditing(Element*);
- void textDidChangeInTextField(Element*);
- bool doTextFieldCommandFromEvent(Element*, KeyboardEvent*);
- void textWillBeDeletedInTextField(Element* input);
- void textDidChangeInTextArea(Element*);
-
- DragImageRef dragImageForSelection();
-
-// === to be moved into SelectionController
-
-public:
- TextGranularity selectionGranularity() const;
- void setSelectionGranularity(TextGranularity) const;
-
- bool shouldChangeSelection(const Selection&) const;
- bool shouldDeleteSelection(const Selection&) const;
- void clearCaretRectIfNeeded();
- void setFocusedNodeIfNeeded();
- void selectionLayoutChanged();
- void notifyRendererOfSelectionChange(bool userTriggered);
-
- void invalidateSelection();
-
- void setCaretVisible(bool = true);
- void paintCaret(GraphicsContext*, const IntRect&) const;
- void paintDragCaret(GraphicsContext*, const IntRect&) const;
-
- bool isContentEditable() const; // if true, everything in frame is editable
-
- void updateSecureKeyboardEntryIfActive();
-
- CSSMutableStyleDeclaration* typingStyle() const;
- void setTypingStyle(CSSMutableStyleDeclaration*);
- void clearTypingStyle();
-
- FloatRect selectionRect(bool clipToVisibleContent = true) const;
- void selectionTextRects(Vector<FloatRect>&, bool clipToVisibleContent = true) const;
-
- HTMLFormElement* currentForm() const;
-
- void revealSelection(const RenderLayer::ScrollAlignment& = RenderLayer::gAlignCenterIfNeeded) const;
- void revealCaret(const RenderLayer::ScrollAlignment& = RenderLayer::gAlignCenterIfNeeded) const;
- void setSelectionFromNone();
-
- void setUseSecureKeyboardEntry(bool);
-
-private:
- void caretBlinkTimerFired(Timer<Frame>*);
-
-public:
- SelectionController* dragCaretController() const;
-
- String searchForLabelsAboveCell(RegularExpression*, HTMLTableCellElement*);
- String searchForLabelsBeforeElement(const Vector<String>& labels, Element*);
- String matchLabelsAgainstElement(const Vector<String>& labels, Element*);
-
- VisiblePosition visiblePositionForPoint(const IntPoint& framePoint);
- Document* documentAtPoint(const IntPoint& windowPoint);
-
-#if PLATFORM(MAC)
-
-// === undecided, would like to consider moving to another class
-
-public:
- NSString* searchForNSLabelsAboveCell(RegularExpression*, HTMLTableCellElement*);
- NSString* searchForLabelsBeforeElement(NSArray* labels, Element*);
- NSString* matchLabelsAgainstElement(NSArray* labels, Element*);
-
-#if ENABLE(DASHBOARD_SUPPORT)
- NSMutableDictionary* dashboardRegionsDictionary();
-#endif
-
- NSImage* selectionImage(bool forceBlackText = false) const;
- NSImage* snapshotDragImage(Node*, NSRect* imageRect, NSRect* elementRect) const;
- NSImage* nodeImage(Node*) const;
-
-private:
- NSImage* imageFromRect(NSRect) const;
-
-// === to be moved into Editor
-
-public:
- NSDictionary* fontAttributesForSelectionStart() const;
- NSWritingDirection baseWritingDirectionForSelectionStart() const;
-
-#endif
-
-};
-
-} // namespace WebCore
-
-#endif // Frame_h