10bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch/* 20bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org> 30bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * Copyright (C) 2006 Zack Rusin <zack@kde.org> 40bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * Copyright (C) 2006 Apple Computer, Inc. 50bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * Copyright (C) 2007 Ryan Leavengood <leavengood@gmail.com> 60bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * Copyright (C) 2007 Andrea Anzani <andrea.anzani@gmail.com> 70bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * 80bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * All rights reserved. 90bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * 100bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * Redistribution and use in source and binary forms, with or without 110bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * modification, are permitted provided that the following conditions 120bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * are met: 130bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * 1. Redistributions of source code must retain the above copyright 140bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * notice, this list of conditions and the following disclaimer. 150bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * 2. Redistributions in binary form must reproduce the above copyright 160bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * notice, this list of conditions and the following disclaimer in the 170bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * documentation and/or other materials provided with the distribution. 180bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * 190bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY 200bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 210bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 220bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR 230bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 240bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 250bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 260bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 270bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 280bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 290bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 300bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch */ 310bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 320bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "config.h" 330bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "EditorClientHaiku.h" 340bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 350bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "Document.h" 360bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "Editor.h" 370bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "FocusController.h" 380bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "Frame.h" 390bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "KeyboardEvent.h" 405af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke#include "NotImplemented.h" 410bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "Page.h" 420bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch#include "PlatformKeyboardEvent.h" 43dcc8cf2e65d1aa555cce12431a16547e66b469eeSteve Block#include "WindowsKeyboardCodes.h" 440bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 450bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 460bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochnamespace WebCore { 470bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 480bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochEditorClientHaiku::EditorClientHaiku() 490bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch : m_editing(false) 500bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch , m_inUndoRedo(false) 510bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 520bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 530bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 540bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::setPage(Page* page) 550bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 560bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch m_page = page; 570bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 580bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 590bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::pageDestroyed() 600bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 610bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 620bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 630bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 640bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::shouldDeleteRange(Range*) 650bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 660bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 670bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return true; 680bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 690bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 700bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::shouldShowDeleteInterface(HTMLElement*) 710bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 720bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 730bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return false; 740bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 750bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 760bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::smartInsertDeleteEnabled() 770bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 780bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 790bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return false; 800bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 810bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 820bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::isSelectTrailingWhitespaceEnabled() 830bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 840bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 850bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return false; 860bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 870bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 880bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::isContinuousSpellCheckingEnabled() 890bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 900bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 910bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return false; 920bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 930bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 940bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::toggleContinuousSpellChecking() 950bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 960bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 970bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 980bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 990bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::isGrammarCheckingEnabled() 1000bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1010bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1020bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return false; 1030bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1040bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1050bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::toggleGrammarChecking() 1060bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1070bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1080bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1090bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1100bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochint EditorClientHaiku::spellCheckerDocumentTag() 1110bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1120bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1130bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return 0; 1140bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1150bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1160bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::shouldBeginEditing(WebCore::Range*) 1170bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1180bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1190bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return true; 1200bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1210bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1220bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::shouldEndEditing(WebCore::Range*) 1230bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1240bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1250bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return true; 1260bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1270bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1280bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::shouldInsertNode(Node*, Range*, EditorInsertAction) 1290bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1300bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1310bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return true; 1320bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1330bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1340bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::shouldInsertText(const String&, Range*, EditorInsertAction) 1350bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1360bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1370bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return true; 1380bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1390bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1400bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::shouldChangeSelectedRange(Range* fromRange, Range* toRange, 1410bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch EAffinity, bool stillSelecting) 1420bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1430bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1440bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return true; 1450bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1460bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1470bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::shouldApplyStyle(WebCore::CSSStyleDeclaration*, 1480bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebCore::Range*) 1490bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1500bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1510bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return true; 1520bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1530bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1540bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::shouldMoveRangeAfterDelete(Range*, Range*) 1550bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1560bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1570bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return true; 1580bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1590bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1600bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::didBeginEditing() 1610bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1620bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1630bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch m_editing = true; 1640bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1650bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1660bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::respondToChangedContents() 1670bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1680bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1690bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1700bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1710bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::respondToChangedSelection() 1720bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1730bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1740bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1750bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1760bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::didEndEditing() 1770bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1780bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1790bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch m_editing = false; 1800bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1810bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1820bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::didWriteSelectionToPasteboard() 1830bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1840bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1850bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1860bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1870bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::didSetSelectionTypesForPasteboard() 1880bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1890bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1900bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1910bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1920bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::registerCommandForUndo(WTF::PassRefPtr<WebCore::EditCommand> cmd) 1930bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1940bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 1950bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 1960bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 1970bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::registerCommandForRedo(WTF::PassRefPtr<WebCore::EditCommand>) 1980bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 1990bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 2000bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 2010bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 2020bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::clearUndoRedoOperations() 2030bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 2040bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 2050bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 2060bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 20781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochbool EditorClientHaiku::canCopyCut(bool defaultValue) const 20881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 20981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return defaultValue; 21081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 21181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 21281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochbool EditorClientHaiku::canPaste(bool defaultValue) const 21381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch{ 21481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch return defaultValue; 21581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch} 21681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 2170bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::canUndo() const 2180bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 2190bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 2200bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return false; 2210bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 2220bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 2230bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::canRedo() const 2240bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 2250bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 2260bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return false; 2270bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 2280bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 2290bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::undo() 2300bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 2310bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 2320bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch m_inUndoRedo = true; 2330bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch m_inUndoRedo = false; 2340bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 2350bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 2360bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::redo() 2370bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 2380bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 2390bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch m_inUndoRedo = true; 2400bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch m_inUndoRedo = false; 2410bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 2420bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 2430bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::handleKeyboardEvent(KeyboardEvent* event) 2440bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 2450bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch Frame* frame = m_page->focusController()->focusedOrMainFrame(); 2460bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch if (!frame || !frame->document()->focusedNode()) 2470bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return; 2480bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 2490bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch const PlatformKeyboardEvent* kevent = event->keyEvent(); 2500bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch if (!kevent || kevent->type() == PlatformKeyboardEvent::KeyUp) 2510bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return; 2520bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 25381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch Node* start = frame->selection()->start().containerNode(); 2540bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch if (!start) 2550bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return; 2560bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 2572daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch if (start->isContentEditable()) { 2585af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke switch (kevent->windowsVirtualKeyCode()) { 2590bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_BACK: 260cad810f21b803229eb11403f9209855525a25d57Steve Block frame->editor()->deleteWithDirection(DirectionBackward, 2610bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch kevent->ctrlKey() ? WordGranularity : CharacterGranularity, 2620bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch false, true); 2630bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 2640bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_DELETE: 265cad810f21b803229eb11403f9209855525a25d57Steve Block frame->editor()->deleteWithDirection(DirectionForward, 2660bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch kevent->ctrlKey() ? WordGranularity : CharacterGranularity, 2670bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch false, true); 2680bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 2690bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_LEFT: 2705af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke frame->selection()->modify(kevent->shiftKey() ? SelectionController::AlterationExtend : SelectionController::AlterationMove, 271cad810f21b803229eb11403f9209855525a25d57Steve Block DirectionLeft, 2720bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch kevent->ctrlKey() ? WordGranularity : CharacterGranularity, 2730bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch true); 2740bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 2750bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_RIGHT: 2765af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke frame->selection()->modify(kevent->shiftKey() ? SelectionController::AlterationExtend : SelectionController::AlterationMove, 277cad810f21b803229eb11403f9209855525a25d57Steve Block DirectionRight, 2780bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch kevent->ctrlKey() ? WordGranularity : CharacterGranularity, 2790bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch true); 2800bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 2810bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_UP: 2825af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke frame->selection()->modify(kevent->shiftKey() ? SelectionController::AlterationExtend : SelectionController::AlterationMove, 283cad810f21b803229eb11403f9209855525a25d57Steve Block DirectionBackward, 2840bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch kevent->ctrlKey() ? ParagraphGranularity : LineGranularity, 2850bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch true); 2860bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 2870bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_DOWN: 2885af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke frame->selection()->modify(kevent->shiftKey() ? SelectionController::AlterationExtend : SelectionController::AlterationMove, 289cad810f21b803229eb11403f9209855525a25d57Steve Block DirectionForward, 2900bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch kevent->ctrlKey() ? ParagraphGranularity : LineGranularity, 2910bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch true); 2920bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 2935af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke case VK_PRIOR: // PageUp 2940bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("MoveUpByPageAndModifyCaret"); 2950bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 2965af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke case VK_NEXT: // PageDown 2970bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("MoveDownByPageAndModifyCaret"); 2980bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 2990bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_RETURN: 3000bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("InsertLineBreak"); 3010bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3020bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_TAB: 3030bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return; 3040bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch default: 3050bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch if (!kevent->ctrlKey() && !kevent->altKey() && !kevent->text().isEmpty()) { 3060bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch if (kevent->text().length() == 1) { 3070bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch UChar ch = kevent->text()[0]; 3080bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch // Don't insert null or control characters as they can result in unexpected behaviour 3090bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch if (ch < ' ') 3100bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3110bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch } 3120bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->insertText(kevent->text(), event); 3130bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch } else if (kevent->ctrlKey()) { 3140bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch switch (kevent->windowsVirtualKeyCode()) { 3150bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_A: 3160bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("SelectAll"); 3170bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3180bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_B: 3190bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("ToggleBold"); 3200bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3210bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_C: 3220bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("Copy"); 3230bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3240bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_I: 3250bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("ToggleItalic"); 3260bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3270bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_V: 3280bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("Paste"); 3290bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3300bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_X: 3310bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("Cut"); 3320bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3330bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_Y: 3340bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("Redo"); 3350bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3360bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_Z: 3370bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("Undo"); 3380bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3390bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch default: 3400bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return; 3410bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch } 3425af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke } else 3435af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke return; 3440bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch } 3450bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch } else { 3460bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch switch (kevent->windowsVirtualKeyCode()) { 3470bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_UP: 3480bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("MoveUp"); 3490bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3500bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_DOWN: 3510bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("MoveDown"); 3520bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3535af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke case VK_PRIOR: // PageUp 3540bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("MoveUpByPageAndModifyCaret"); 3550bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3565af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke case VK_NEXT: // PageDown 3570bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("MoveDownByPageAndModifyCaret"); 3580bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3590bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_HOME: 3600bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch if (kevent->ctrlKey()) 3610bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("MoveToBeginningOfDocument"); 3620bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3630bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch case VK_END: 3640bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch if (kevent->ctrlKey()) 3650bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch frame->editor()->command("MoveToEndOfDocument"); 3660bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch break; 3670bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch default: 3680bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch if (kevent->ctrlKey()) { 3695af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke switch (kevent->windowsVirtualKeyCode()) { 3705af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke case VK_A: 3715af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke frame->editor()->command("SelectAll"); 3725af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke break; 3735af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke case VK_C: case VK_X: 3745af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke frame->editor()->command("Copy"); 3755af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke break; 3765af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke default: 3775af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke return; 3780bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch } 3795af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke } else 3805af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke return; 3810bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch } 3820bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch } 3830bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch event->setDefaultHandled(); 3840bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 3850bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 3860bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::handleInputMethodKeydown(KeyboardEvent*) 3870bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 3880bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 3890bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 3900bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 3910bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::textFieldDidBeginEditing(Element*) 3920bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 3930bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch m_editing = true; 3940bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 3950bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 3960bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::textFieldDidEndEditing(Element*) 3970bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 3980bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch m_editing = false; 3990bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4000bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4010bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::textDidChangeInTextField(Element*) 4020bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4030bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4040bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4050bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4060bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::doTextFieldCommandFromEvent(Element*, KeyboardEvent*) 4070bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4080bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return false; 4090bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4100bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4110bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::textWillBeDeletedInTextField(Element*) 4120bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4130bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4140bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4150bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4160bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::textDidChangeInTextArea(Element*) 4170bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4180bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4190bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4200bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4210bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::ignoreWordInSpellDocument(const String&) 4220bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4230bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4240bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4250bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4260bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::learnWord(const String&) 4270bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4280bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4290bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4300bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4310bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::checkSpellingOfString(const UChar*, int, int*, int*) 4320bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4330bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4340bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4350bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4360bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben MurdochString EditorClientHaiku::getAutoCorrectSuggestionForMisspelledWord(const String& misspelledWord) 4370bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4380bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4390bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return String(); 4400bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4410bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4420bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::checkGrammarOfString(const UChar*, int, Vector<GrammarDetail>&, int*, int*) 4430bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4440bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4450bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4460bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4470bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::updateSpellingUIWithGrammarString(const String&, const GrammarDetail&) 4480bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4490bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4500bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4510bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4520bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::updateSpellingUIWithMisspelledWord(const String&) 4530bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4540bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4550bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4560bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4570bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::showSpellingUI(bool) 4580bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4590bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4600bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4610bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4620bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::spellingUIIsShowing() 4630bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4640bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4650bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return false; 4660bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4670bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 468f05b935882198ccf7d81675736e3aeb089c5113aBen Murdochvoid EditorClientHaiku::getGuessesForWord(const String& word, const String& context, Vector<String>& guesses) 4690bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4700bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4710bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4720bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 473967717af5423377c967781471ee106e2bb4e11c8Ben Murdochvoid EditorClientHaiku::willSetInputMethodState() 474967717af5423377c967781471ee106e2bb4e11c8Ben Murdoch{ 475967717af5423377c967781471ee106e2bb4e11c8Ben Murdoch notImplemented(); 476967717af5423377c967781471ee106e2bb4e11c8Ben Murdoch} 477967717af5423377c967781471ee106e2bb4e11c8Ben Murdoch 4780bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochvoid EditorClientHaiku::setInputMethodState(bool enabled) 4790bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4800bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch notImplemented(); 4810bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4820bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4830bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochbool EditorClientHaiku::isEditing() const 4840bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch{ 4850bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch return m_editing; 4860bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} 4870bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 4880bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch} // namespace WebCore 489