refactor and format

pull/609/head
li3317 3 years ago
parent 3a9630421e
commit 850f2a0c03
  1. 2
      lib/src/widgets/editor.dart
  2. 3
      lib/src/widgets/raw_editor.dart
  3. 22
      lib/src/widgets/raw_editor/raw_editor_state_selection_delegate_mixin.dart

@ -6,11 +6,11 @@ import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import '../models/documents/style.dart';
import 'package:tuple/tuple.dart'; import 'package:tuple/tuple.dart';
import '../models/documents/document.dart'; import '../models/documents/document.dart';
import '../models/documents/nodes/container.dart' as container_node; import '../models/documents/nodes/container.dart' as container_node;
import '../models/documents/style.dart';
import '../utils/platform.dart'; import '../utils/platform.dart';
import 'box.dart'; import 'box.dart';
import 'controller.dart'; import 'controller.dart';

@ -852,7 +852,8 @@ class RawEditorState extends EditorState
@override @override
void copySelection(SelectionChangedCause cause) { void copySelection(SelectionChangedCause cause) {
_pastePlainText = widget.controller.getPlainText(); _pastePlainText =
widget.controller.getPlainText();
_pasteStyle = widget.controller.getAllIndividualSelectionStyles(); _pasteStyle = widget.controller.getAllIndividualSelectionStyles();
// Copied straight from EditableTextState // Copied straight from EditableTextState
super.copySelection(cause); super.copySelection(cause);

@ -4,7 +4,6 @@ import 'package:flutter/rendering.dart';
import 'package:flutter/widgets.dart'; import 'package:flutter/widgets.dart';
import '../../models/documents/nodes/leaf.dart'; import '../../models/documents/nodes/leaf.dart';
import '../../models/documents/style.dart';
import '../../utils/delta.dart'; import '../../utils/delta.dart';
import '../editor.dart'; import '../editor.dart';
@ -27,17 +26,16 @@ mixin RawEditorStateSelectionDelegateMixin on EditorState
diff.start, diff.deleted.length, insertedText, value.selection); diff.start, diff.deleted.length, insertedText, value.selection);
if (insertedText == pastePlainText && pastePlainText != '') { if (insertedText == pastePlainText && pastePlainText != '') {
var pos = diff.start; final pos = diff.start;
for ( var i = 0; i < pasteStyle.length; i++){ for (var i = 0; i < pasteStyle.length; i++) {
int offset = pasteStyle[i].item1; final offset = pasteStyle[i].item1;
Style style = pasteStyle[i].item2; final style = pasteStyle[i].item2;
if (i == pasteStyle.length - 1) { widget.controller.formatTextStyle(
style.attributes.forEach((k, v) => widget.controller pos + offset,
.formatText(pos + offset, pastePlainText.length - offset, v)); i == pasteStyle.length - 1
} else { ? pastePlainText.length - offset
style.attributes.forEach((k, v) => widget.controller : pasteStyle[i + 1].item1,
.formatText(pos + offset, pasteStyle[i + 1].item1, v)); style);
}
} }
} }
} }

Loading…
Cancel
Save