tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

EditorController.cpp (5953B)


      1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
      2 /* This Source Code Form is subject to the terms of the Mozilla Public
      3 * License, v. 2.0. If a copy of the MPL was not distributed with this
      4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      5 
      6 #include "mozilla/EditorController.h"
      7 
      8 #include "EditorCommands.h"
      9 #include "mozilla/mozalloc.h"
     10 #include "nsControllerCommandTable.h"
     11 #include "nsDebug.h"
     12 #include "nsError.h"
     13 
     14 namespace mozilla {
     15 
     16 #define NS_REGISTER_COMMAND(_cmdClass, _cmdName) \
     17  aCommandTable->RegisterCommand(_cmdName ""_ns, _cmdClass::GetInstance());
     18 
     19 // static
     20 void EditorController::RegisterEditingCommands(
     21    nsControllerCommandTable* aCommandTable) {
     22  // now register all our commands
     23  // These are commands that will be used in text widgets, and in composer
     24 
     25  NS_REGISTER_COMMAND(UndoCommand, "cmd_undo");
     26  NS_REGISTER_COMMAND(RedoCommand, "cmd_redo");
     27 
     28  NS_REGISTER_COMMAND(CutCommand, "cmd_cut");
     29  NS_REGISTER_COMMAND(CutOrDeleteCommand, "cmd_cutOrDelete");
     30  NS_REGISTER_COMMAND(CopyCommand, "cmd_copy");
     31  NS_REGISTER_COMMAND(CopyOrDeleteCommand, "cmd_copyOrDelete");
     32  NS_REGISTER_COMMAND(SelectAllCommand, "cmd_selectAll");
     33 
     34  NS_REGISTER_COMMAND(PasteCommand, "cmd_paste");
     35  NS_REGISTER_COMMAND(PasteTransferableCommand, "cmd_pasteTransferable");
     36 
     37  NS_REGISTER_COMMAND(SwitchTextDirectionCommand, "cmd_switchTextDirection");
     38 
     39  NS_REGISTER_COMMAND(DeleteCommand, "cmd_delete");
     40  NS_REGISTER_COMMAND(DeleteCommand, "cmd_deleteCharBackward");
     41  NS_REGISTER_COMMAND(DeleteCommand, "cmd_deleteCharForward");
     42  NS_REGISTER_COMMAND(DeleteCommand, "cmd_deleteWordBackward");
     43  NS_REGISTER_COMMAND(DeleteCommand, "cmd_deleteWordForward");
     44  NS_REGISTER_COMMAND(DeleteCommand, "cmd_deleteToBeginningOfLine");
     45  NS_REGISTER_COMMAND(DeleteCommand, "cmd_deleteToEndOfLine");
     46 
     47  // Insert content
     48  NS_REGISTER_COMMAND(InsertPlaintextCommand, "cmd_insertText");
     49  NS_REGISTER_COMMAND(InsertParagraphCommand, "cmd_insertParagraph");
     50  NS_REGISTER_COMMAND(InsertLineBreakCommand, "cmd_insertLineBreak");
     51  NS_REGISTER_COMMAND(PasteQuotationCommand, "cmd_pasteQuote");
     52 }
     53 
     54 // static
     55 void EditorController::RegisterEditorCommands(
     56    nsControllerCommandTable* aCommandTable) {
     57  // These are commands that will be used in text widgets only.
     58 
     59  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_scrollTop");
     60  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_scrollBottom");
     61  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_moveTop");
     62  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_moveBottom");
     63  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectTop");
     64  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectBottom");
     65  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_lineNext");
     66  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_linePrevious");
     67  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectLineNext");
     68  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectLinePrevious");
     69  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_charPrevious");
     70  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_charNext");
     71  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectCharPrevious");
     72  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectCharNext");
     73  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_beginLine");
     74  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_endLine");
     75  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectBeginLine");
     76  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectEndLine");
     77  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_wordPrevious");
     78  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_wordNext");
     79  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectWordPrevious");
     80  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectWordNext");
     81  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_scrollPageUp");
     82  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_scrollPageDown");
     83  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_scrollLineUp");
     84  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_scrollLineDown");
     85  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_movePageUp");
     86  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_movePageDown");
     87  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectPageUp");
     88  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectPageDown");
     89  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_moveLeft");
     90  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_moveRight");
     91  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_moveUp");
     92  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_moveDown");
     93  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_moveLeft2");
     94  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_moveRight2");
     95  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_moveUp2");
     96  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_moveDown2");
     97  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectLeft");
     98  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectRight");
     99  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectUp");
    100  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectDown");
    101  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectLeft2");
    102  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectRight2");
    103  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectUp2");
    104  NS_REGISTER_COMMAND(SelectionMoveCommands, "cmd_selectDown2");
    105 }
    106 
    107 // static
    108 void EditorController::Shutdown() {
    109  // EditingCommands
    110  UndoCommand::Shutdown();
    111  RedoCommand::Shutdown();
    112  CutCommand::Shutdown();
    113  CutOrDeleteCommand::Shutdown();
    114  CopyCommand::Shutdown();
    115  CopyOrDeleteCommand::Shutdown();
    116  PasteCommand::Shutdown();
    117  PasteTransferableCommand::Shutdown();
    118  SwitchTextDirectionCommand::Shutdown();
    119  DeleteCommand::Shutdown();
    120  SelectAllCommand::Shutdown();
    121  InsertPlaintextCommand::Shutdown();
    122  InsertParagraphCommand::Shutdown();
    123  InsertLineBreakCommand::Shutdown();
    124  PasteQuotationCommand::Shutdown();
    125 
    126  // EditorCommands
    127  SelectionMoveCommands::Shutdown();
    128 }
    129 
    130 }  // namespace mozilla