| 6063 | eventMixin(SharedTextMarker); |
| 6064 | |
| 6065 | function markTextShared(doc, from, to, options, type) { |
| 6066 | options = copyObj(options); |
| 6067 | options.shared = false; |
| 6068 | var markers = [markText(doc, from, to, options, type)], primary = markers[0]; |
| 6069 | var widget = options.widgetNode; |
| 6070 | linkedDocs(doc, function (doc) { |
| 6071 | if (widget) { options.widgetNode = widget.cloneNode(true); } |
| 6072 | markers.push(markText(doc, clipPos(doc, from), clipPos(doc, to), options, type)); |
| 6073 | for (var i = 0; i < doc.linked.length; ++i) |
| 6074 | { if (doc.linked[i].isParent) { return } } |
| 6075 | primary = lst(markers); |
| 6076 | }); |
| 6077 | return new SharedTextMarker(markers, primary) |
| 6078 | } |
| 6079 | |
| 6080 | function findSharedMarkers(doc) { |
| 6081 | return doc.findMarks(Pos(doc.first, 0), doc.clipPos(Pos(doc.lastLine())), function (m) { return m.parent; }) |