aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/client/views/nodes/AudioBox.scss2
-rw-r--r--src/client/views/nodes/AudioBox.tsx34
-rw-r--r--src/client/views/nodes/formattedText/FormattedTextBox.tsx24
3 files changed, 54 insertions, 6 deletions
diff --git a/src/client/views/nodes/AudioBox.scss b/src/client/views/nodes/AudioBox.scss
index 7b0e50e60..6d52988bb 100644
--- a/src/client/views/nodes/AudioBox.scss
+++ b/src/client/views/nodes/AudioBox.scss
@@ -194,7 +194,7 @@
background: gray;
border-radius: 50%;
box-shadow: black 2px 2px 1px;
- overflow: auto;
+ overflow: visible;
cursor: pointer;
.audiobox-marker {
diff --git a/src/client/views/nodes/AudioBox.tsx b/src/client/views/nodes/AudioBox.tsx
index 0cab0fc61..02932baac 100644
--- a/src/client/views/nodes/AudioBox.tsx
+++ b/src/client/views/nodes/AudioBox.tsx
@@ -72,6 +72,7 @@ export class AudioBox extends ViewBoxAnnotatableComponent<FieldViewProps, AudioD
_left: boolean = false;
_amount: number = 1;
_markers: Array<any> = [];
+ _first: boolean = false;
private _isPointerDown = false;
private _currMarker: any;
@@ -128,6 +129,22 @@ export class AudioBox extends ViewBoxAnnotatableComponent<FieldViewProps, AudioD
this._reactionDisposer = reaction(() => SelectionManager.SelectedDocuments(),
selected => {
const sel = selected.length ? selected[0].props.Document : undefined;
+ // if (sel) {
+ // DocListCast(sel.links).map((l, i) => {
+ // let la1 = l.anchor1 as Doc;
+ // let la2 = l.anchor2 as Doc;
+ // let linkTime = NumCast(l.anchor2_timecode);
+ // if (Doc.AreProtosEqual(la1, this.dataDoc)) {
+ // la1 = l.anchor2 as Doc;
+ // la2 = l.anchor1 as Doc;
+ // linkTime = NumCast(l.anchor1_timecode);
+ // }
+ // console.log(linkTime);
+ // if (linkTime) {
+ // this.layoutDoc.playOnSelect && this.recordingStart && sel && sel.creationDate && !Doc.AreProtosEqual(sel, this.props.Document) && this.playFrom(linkTime);
+ // }
+ // });
+ // }
this.layoutDoc.playOnSelect && this.recordingStart && sel && sel.creationDate && !Doc.AreProtosEqual(sel, this.props.Document) && this.playFromTime(DateCast(sel.creationDate).date.getTime());
this.layoutDoc.playOnSelect && this.recordingStart && !sel && this.pause();
});
@@ -186,7 +203,7 @@ export class AudioBox extends ViewBoxAnnotatableComponent<FieldViewProps, AudioD
if (endTime !== this.dataDoc.duration) {
play = setTimeout(() => this.pause(), (this._duration) * 1000);
}
- } else {
+ } else { // this is getting called because time is greater than duration
this.pause();
}
}
@@ -226,9 +243,9 @@ export class AudioBox extends ViewBoxAnnotatableComponent<FieldViewProps, AudioD
specificContextMenu = (e: React.MouseEvent): void => {
const funcs: ContextMenuProps[] = [];
funcs.push({ description: (this.layoutDoc.playOnSelect ? "Don't play" : "Play") + " when document selected", event: () => this.layoutDoc.playOnSelect = !this.layoutDoc.playOnSelect, icon: "expand-arrows-alt" });
- funcs.push({ description: (this.layoutDoc.hideMarkers ? "Don't hide" : "Hide") + " markers", event: () => this.layoutDoc.hideMarkers = !this.layoutDoc.hideMarkers, icon: "expand-arrows-alt" })
- funcs.push({ description: (this.layoutDoc.hideLabels ? "Don't hide" : "Hide") + " labels", event: () => this.layoutDoc.hideLabels = !this.layoutDoc.hideLabels, icon: "expand-arrows-alt" })
- funcs.push({ description: (this.layoutDoc.playOnClick ? "Don't play" : "Play") + " onClick", event: () => this.layoutDoc.playOnClick = !this.layoutDoc.playOnClick, icon: "expand-arrows-alt" })
+ funcs.push({ description: (this.layoutDoc.hideMarkers ? "Don't hide" : "Hide") + " markers", event: () => this.layoutDoc.hideMarkers = !this.layoutDoc.hideMarkers, icon: "expand-arrows-alt" });
+ funcs.push({ description: (this.layoutDoc.hideLabels ? "Don't hide" : "Hide") + " labels", event: () => this.layoutDoc.hideLabels = !this.layoutDoc.hideLabels, icon: "expand-arrows-alt" });
+ funcs.push({ description: (this.layoutDoc.playOnClick ? "Don't play" : "Play") + " onClick", event: () => this.layoutDoc.playOnClick = !this.layoutDoc.playOnClick, icon: "expand-arrows-alt" });
ContextMenu.Instance?.addItem({ description: "Options...", subitems: funcs, icon: "asterisk" });
}
@@ -421,12 +438,14 @@ export class AudioBox extends ViewBoxAnnotatableComponent<FieldViewProps, AudioD
return false;
}
+ // Probably need a better way to format
isOverlap = (m: any, i: number) => {
console.log("called");
let counter = 0;
- if (i == 0) {
+ if (this._first) {
this._markers = [];
+ this._first = false;
}
for (let i = 0; i < this._markers.length; i++) {
if ((m.audioEnd > this._markers[i].audioStart && m.audioStart < this._markers[i].audioEnd)) {
@@ -508,9 +527,14 @@ export class AudioBox extends ViewBoxAnnotatableComponent<FieldViewProps, AudioD
}
}
+ reset = () => {
+ this._first = true;
+ }
+
render() {
//trace();
const interactive = this.active() ? "-interactive" : "";
+ this.reset();
return <div className={`audiobox-container`} onContextMenu={this.specificContextMenu} onClick={!this.path ? this.recordClick : undefined}>
{!this.path ?
<div className="audiobox-buttons">
diff --git a/src/client/views/nodes/formattedText/FormattedTextBox.tsx b/src/client/views/nodes/formattedText/FormattedTextBox.tsx
index 6b6fc5da2..b1d9be73b 100644
--- a/src/client/views/nodes/formattedText/FormattedTextBox.tsx
+++ b/src/client/views/nodes/formattedText/FormattedTextBox.tsx
@@ -1295,6 +1295,30 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<(FieldViewProp
}
e.stopPropagation();
if (e.key === "Tab" || e.key === "Enter") {
+ // console.log(this._recording);
+ // if (this._editorView) {
+ // const state = this._editorView.state;
+ // const now = Date.now();
+ // let mark = schema.marks.user_mark.create({ userid: Doc.CurrentUserEmail, modified: Math.floor(now / 1000) });
+ // if (!this._break && state.selection.to !== state.selection.from) {
+ // for (let i = state.selection.from; i <= state.selection.to; i++) {
+ // const pos = state.doc.resolve(i);
+ // const um = Array.from(pos.marks()).find(m => m.type === schema.marks.user_mark);
+ // if (um) {
+ // mark = um;
+ // break;
+ // }
+ // }
+ // }
+ // const recordingStart = DateCast(this.props.Document.recordingStart).date.getTime();
+ // this._break = false;
+ // let value = "" + (mark.attrs.modified * 1000 - recordingStart) / 1000;
+ // //let value = "[0:02]";
+ // const from = state.selection.from;
+ // const inserted = state.tr.insertText(value).addMark(from, from + value.length + 1, mark);
+
+ // this._editorView.dispatch(inserted.setSelection(TextSelection.create(inserted.doc, from, from + value.length + 1)));
+ // }
e.preventDefault();
}
if (e.key === " " || this._lastTimedMark?.attrs.userid !== Doc.CurrentUserEmail) {