https://bugs.webkit.org/show_bug.cgi?id=77383
[WebKit-https.git] / Source / WebKit2 / WebProcess / InjectedBundle / API / c / WKBundlePagePrivate.h
1 /*
2  * Copyright (C) 2010, 2011 Apple Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
14  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
17  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
23  * THE POSSIBILITY OF SUCH DAMAGE.
24  */
25
26 #ifndef WKBundlePagePrivate_h
27 #define WKBundlePagePrivate_h
28
29 #include <WebKit2/WKBase.h>
30
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34
35 WK_EXPORT void WKBundlePageStopLoading(WKBundlePageRef page);
36 WK_EXPORT void WKBundlePageSetDefersLoading(WKBundlePageRef page, bool defersLoading);
37 WK_EXPORT bool WKBundlePageIsEditingCommandEnabled(WKBundlePageRef page, WKStringRef commandName);
38 WK_EXPORT void WKBundlePageClearMainFrameName(WKBundlePageRef page);
39 WK_EXPORT void WKBundlePageClose(WKBundlePageRef page);
40 WK_EXPORT WKStringRef WKBundlePageCopyRenderTreeExternalRepresentation(WKBundlePageRef page);
41 WK_EXPORT void WKBundlePageExecuteEditingCommand(WKBundlePageRef page, WKStringRef commandName, WKStringRef argument);
42
43 WK_EXPORT double WKBundlePageGetTextZoomFactor(WKBundlePageRef page);
44 WK_EXPORT void WKBundlePageSetTextZoomFactor(WKBundlePageRef page, double zoomFactor);
45 WK_EXPORT double WKBundlePageGetPageZoomFactor(WKBundlePageRef page);
46 WK_EXPORT void WKBundlePageSetPageZoomFactor(WKBundlePageRef page, double zoomFactor);
47
48 WK_EXPORT void WKBundlePageSetScaleAtOrigin(WKBundlePageRef page, double scale, WKPoint origin);
49
50 WK_EXPORT void WKBundlePageForceRepaint(WKBundlePageRef page);
51
52 WK_EXPORT void WKBundlePageSimulateMouseDown(WKBundlePageRef page, int button, WKPoint position, int clickCount, WKEventModifiers modifiers, double time);
53 WK_EXPORT void WKBundlePageSimulateMouseUp(WKBundlePageRef page, int button, WKPoint position, int clickCount, WKEventModifiers modifiers, double time);
54 WK_EXPORT void WKBundlePageSimulateMouseMotion(WKBundlePageRef page, WKPoint position, double time);
55
56 WK_EXPORT uint64_t WKBundlePageGetRenderTreeSize(WKBundlePageRef page);
57
58 // FIXME: This is temporary. Ultimately WebKit should choose the threshold itself.
59 WK_EXPORT void WKBundlePageSetPaintedObjectsCounterThreshold(WKBundlePageRef page, uint64_t threshold);
60
61 WK_EXPORT void WKBundlePageSetTracksRepaints(WKBundlePageRef page, bool trackRepaints);
62 WK_EXPORT bool WKBundlePageIsTrackingRepaints(WKBundlePageRef page);
63 WK_EXPORT void WKBundlePageResetTrackedRepaints(WKBundlePageRef page);
64 WK_EXPORT WKArrayRef WKBundlePageCopyTrackedRepaintRects(WKBundlePageRef page);
65
66 WK_EXPORT WKStringRef WKBundlePageViewportConfigurationAsText(WKBundlePageRef, int deviceDPI, int deviceWidth, int deviceHeight, int availableWidth, int availableHeight);
67
68 WK_EXPORT void WKBundlePageSetComposition(WKBundlePageRef page, WKStringRef text, int from, int length);
69 WK_EXPORT bool WKBundlePageHasComposition(WKBundlePageRef page);
70 WK_EXPORT void WKBundlePageConfirmComposition(WKBundlePageRef page);
71 WK_EXPORT void WKBundlePageConfirmCompositionWithText(WKBundlePageRef page, WKStringRef text);
72
73 WK_EXPORT void* WKAccessibilityRootObject(WKBundlePageRef);
74 WK_EXPORT void* WKAccessibilityFocusedObject(WKBundlePageRef);    
75
76 #ifdef __cplusplus
77 }
78 #endif
79
80 #endif /* WKBundlePagePrivate_h */