1/*
2 * Copyright (C) 2013 Samsung Electronics
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 THE COPYRIGHT HOLDERS AND CONTRIBUTORS
14 * "AS IS" 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 THE COPYRIGHT HOLDER OR
17 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
22 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
23 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 */
25
26#include "config.h"
27#include "TextCheckerCompletion.h"
28
29namespace WebKit {
30using namespace WebCore;
31
32Ref<TextCheckerCompletion> TextCheckerCompletion::create(uint64_t requestID, const TextCheckingRequestData& requestData, WebPageProxy* page)
33{
34 return adoptRef(*new TextCheckerCompletion(requestID, requestData, page));
35}
36
37TextCheckerCompletion::TextCheckerCompletion(uint64_t requestID, const TextCheckingRequestData& requestData, WebPageProxy* page)
38 : m_requestID(requestID)
39 , m_requestData(requestData)
40 , m_page(page)
41{
42}
43
44const TextCheckingRequestData& TextCheckerCompletion::textCheckingRequestData() const
45{
46 return m_requestData;
47}
48
49int64_t TextCheckerCompletion::spellDocumentTag()
50{
51 return m_page->spellDocumentTag();
52}
53
54void TextCheckerCompletion::didFinishCheckingText(const Vector<TextCheckingResult>& result) const
55{
56 if (result.isEmpty())
57 didCancelCheckingText();
58
59 m_page->didFinishCheckingText(m_requestID, result);
60}
61
62void TextCheckerCompletion::didCancelCheckingText() const
63{
64 m_page->didCancelCheckingText(m_requestID);
65}
66
67} // namespace WebKit
68