1/*
2 * Copyright (C) 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#include "config.h"
27#include "WKTextChecker.h"
28#include "TextChecker.h"
29
30#if defined(BUILDING_GTK__)
31#include "WKAPICast.h"
32#include "WebPageProxy.h"
33#include "WebTextChecker.h"
34#endif
35
36using namespace WebKit;
37
38void WKTextCheckerSetTestingMode(bool enabled)
39{
40 TextChecker::setTestingMode(enabled);
41}
42
43#if defined(BUILDING_GTK__)
44
45void WKTextCheckerSetClient(const WKTextCheckerClientBase* wkClient)
46{
47 if (wkClient && wkClient->version)
48 return;
49 WebTextChecker::singleton()->setClient(wkClient);
50}
51
52void WKTextCheckerContinuousSpellCheckingEnabledStateChanged(bool enabled)
53{
54 WebTextChecker::singleton()->continuousSpellCheckingEnabledStateChanged(enabled);
55}
56
57void WKTextCheckerGrammarCheckingEnabledStateChanged(bool enabled)
58{
59 WebTextChecker::singleton()->grammarCheckingEnabledStateChanged(enabled);
60}
61
62void WKTextCheckerCheckSpelling(WKPageRef page, bool startBeforeSelection)
63{
64 WebTextChecker::singleton()->checkSpelling(toImpl(page), startBeforeSelection);
65}
66
67void WKTextCheckerChangeSpellingToWord(WKPageRef page, WKStringRef word)
68{
69 WebTextChecker::singleton()->changeSpellingToWord(toImpl(page), toWTFString(word));
70}
71
72#endif
73