strategyState => {
   var selection = strategyState.getSelection();
   var offset = selection.getStartOffset();
   // If there are no words before the cursor, remove the preceding newline.
   if (offset === 0) {
     return moveSelectionBackward(strategyState, 1);
   }
   var key = selection.getStartKey();
   var content = strategyState.getCurrentContent();
   var text = content.getBlockForKey(key).getText().slice(0, offset);
   var toRemove = DraftRemovableWord.getBackward(text);
   return moveSelectionBackward(
     strategyState,
     toRemove.length || 1,
   );
 },
Esempio n. 2
0
 strategyState => {
   var selection = strategyState.getSelection();
   var content = strategyState.getCurrentContent();
   var key = selection.getAnchorKey();
   var offset = selection.getAnchorOffset();
   var charBehind = content.getBlockForKey(key).getText()[offset - 1];
   return moveSelectionBackward(
     strategyState,
     charBehind ? UnicodeUtils.getUTF16Length(charBehind, 0) : 1
   );
 },
    strategyState => {
      const selection = strategyState.getSelection();
      if (selection.isCollapsed() && selection.getAnchorOffset() === 0) {
        return moveSelectionBackward(strategyState, 1);
      }

      const domSelection = global.getSelection();
      let range = domSelection.getRangeAt(0);
      range = expandRangeToStartOfLine(range);

      return getDraftEditorSelectionWithNodes(
        strategyState,
        null,
        range.endContainer,
        range.endOffset,
        range.startContainer,
        range.startOffset,
      ).selectionState;
    },