--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/WebCore/bindings/objc/DOMPrivate.h Fri Sep 17 09:02:29 2010 +0300
@@ -0,0 +1,97 @@
+/*
+ * Copyright (C) 2004-2006 Apple Computer, Inc. All rights reserved.
+ * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#import <WebCore/DOM.h>
+
+@interface DOMNode (DOMNodeExtensionsPendingPublic)
+- (NSImage *)renderedImage;
+- (NSArray *)textRects;
+@end
+
+// FIXME: this should be removed as soon as all internal Apple uses of it have been replaced with
+// calls to the public method - (NSColor *)color.
+@interface DOMRGBColor (WebPrivate)
+- (NSColor *)_color;
+@end
+
+// FIXME: this should be removed as soon as all internal Apple uses of it have been replaced with
+// calls to the public method - (NSString *)text.
+@interface DOMRange (WebPrivate)
+- (NSString *)_text;
+@end
+
+@interface DOMRange (DOMRangeExtensions)
+- (NSRect)boundingBox;
+- (NSArray *)lineBoxRects; // Deprecated. Use textRects instead.
+- (NSArray *)textRects;
+@end
+
+@interface DOMElement (WebPrivate)
+- (NSFont *)_font;
+- (NSData *)_imageTIFFRepresentation;
+- (NSURL *)_getURLAttribute:(NSString *)name;
+- (BOOL)isFocused;
+@end
+
+@interface DOMCSSStyleDeclaration (WebPrivate)
+- (NSString *)_fontSizeDelta;
+- (void)_setFontSizeDelta:(NSString *)fontSizeDelta;
+@end
+
+@interface DOMHTMLDocument (WebPrivate)
+- (DOMDocumentFragment *)_createDocumentFragmentWithMarkupString:(NSString *)markupString baseURLString:(NSString *)baseURLString;
+- (DOMDocumentFragment *)_createDocumentFragmentWithText:(NSString *)text;
+@end
+
+// All the methods in this category are used by Safari forms autofill and should not be used for any other purpose.
+// Each one should eventually be replaced by public DOM API, and when that happens Safari will switch to implementations
+// using that public API, and these will be deleted.
+@interface DOMHTMLInputElement (FormsAutoFillTransition)
+- (BOOL)_isAutofilled;
+- (BOOL)_isTextField;
+- (NSRect)_rectOnScreen; // bounding box of the text field, in screen coordinates
+- (void)_replaceCharactersInRange:(NSRange)targetRange withString:(NSString *)replacementString selectingFromIndex:(int)index;
+- (NSRange)_selectedRange;
+- (void)_setAutofilled:(BOOL)filled;
+@end
+
+// These changes are necessary to detect whether a form input was modified by a user
+// or javascript
+@interface DOMHTMLInputElement (FormPromptAdditions)
+- (BOOL)_isEdited;
+@end
+
+@interface DOMHTMLTextAreaElement (FormPromptAdditions)
+- (BOOL)_isEdited;
+@end
+
+// All the methods in this category are used by Safari forms autofill and should not be used for any other purpose.
+// They are stopgap measures until we finish transitioning form controls to not use NSView. Each one should become
+// replaceable by public DOM API, and when that happens Safari will switch to implementations using that public API,
+// and these will be deleted.
+@interface DOMHTMLSelectElement (FormsAutoFillTransition)
+- (void)_activateItemAtIndex:(int)index;
+@end