diff options
Diffstat (limited to 'content/shell/renderer/test_runner/SpellCheckClient.h')
-rw-r--r-- | content/shell/renderer/test_runner/SpellCheckClient.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/content/shell/renderer/test_runner/SpellCheckClient.h b/content/shell/renderer/test_runner/SpellCheckClient.h new file mode 100644 index 0000000..bc8ad9d --- /dev/null +++ b/content/shell/renderer/test_runner/SpellCheckClient.h @@ -0,0 +1,55 @@ +// Copyright 2013 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef SpellCheckClient_h +#define SpellCheckClient_h + +#include "content/shell/renderer/test_runner/MockSpellCheck.h" +#include "content/shell/renderer/test_runner/WebTask.h" +#include "third_party/WebKit/public/platform/WebNonCopyable.h" +#include "third_party/WebKit/public/web/WebSpellCheckClient.h" + +namespace WebTestRunner { + +class WebTestDelegate; +class WebTestProxyBase; + +class SpellCheckClient : public blink::WebSpellCheckClient, public blink::WebNonCopyable { +public: + explicit SpellCheckClient(WebTestProxyBase*); + virtual ~SpellCheckClient(); + + void setDelegate(WebTestDelegate*); + + WebTaskList* taskList() { return &m_taskList; } + MockSpellCheck* mockSpellCheck() { return &m_spellcheck; } + + // blink::WebSpellCheckClient implementation. + virtual void spellCheck(const blink::WebString&, int& offset, int& length, blink::WebVector<blink::WebString>* optionalSuggestions); + virtual void checkTextOfParagraph(const blink::WebString&, blink::WebTextCheckingTypeMask, blink::WebVector<blink::WebTextCheckingResult>*); + virtual void requestCheckingOfText(const blink::WebString&, + const blink::WebVector<uint32_t>&, + const blink::WebVector<unsigned>&, + blink::WebTextCheckingCompletion*); + virtual blink::WebString autoCorrectWord(const blink::WebString&); + +private: + void finishLastTextCheck(); + + // The mock spellchecker used in spellCheck(). + MockSpellCheck m_spellcheck; + + blink::WebString m_lastRequestedTextCheckString; + blink::WebTextCheckingCompletion* m_lastRequestedTextCheckingCompletion; + + WebTaskList m_taskList; + + WebTestDelegate* m_delegate; + + WebTestProxyBase* m_webTestProxy; +}; + +} + +#endif // SpellCheckClient_h |