diff options
| author | andrewdkim <adkim414@gmail.com> | 2019-07-29 12:24:03 -0400 | 
|---|---|---|
| committer | andrewdkim <adkim414@gmail.com> | 2019-07-29 12:24:03 -0400 | 
| commit | 10a5b5a99ae77d890412b3a3d25b6b85c935f25b (patch) | |
| tree | 506f98d8632df09cfc1f9d25bf0e81891575f623 /src/client/views/nodes/PDFBox.tsx | |
| parent | afe2355cd66c98e391965ebfe022d8f8607ac794 (diff) | |
| parent | e7ea2028f54787d6c92fb22b789f17b7268d3793 (diff) | |
Merged from master
Diffstat (limited to 'src/client/views/nodes/PDFBox.tsx')
| -rw-r--r-- | src/client/views/nodes/PDFBox.tsx | 18 | 
1 files changed, 17 insertions, 1 deletions
diff --git a/src/client/views/nodes/PDFBox.tsx b/src/client/views/nodes/PDFBox.tsx index 5a5e6e6dd..4973340df 100644 --- a/src/client/views/nodes/PDFBox.tsx +++ b/src/client/views/nodes/PDFBox.tsx @@ -24,6 +24,8 @@ import { Flyout, anchorPoints } from '../DocumentDecorations';  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';  import { ScriptField } from '../../../new_fields/ScriptField';  import { KeyCodes } from '../../northstar/utils/KeyCodes'; +import { Utils } from '../../../Utils'; +import { Id } from '../../../new_fields/FieldSymbols';  type PdfDocument = makeInterface<[typeof positionSchema, typeof pageSchema]>;  const PdfDocument = makeInterface(positionSchema, pageSchema); @@ -67,10 +69,24 @@ export class PDFBox extends DocComponent<FieldViewProps, PdfDocument>(PdfDocumen      componentDidMount() {          if (this.props.setPdfBox) this.props.setPdfBox(this); + +        document.removeEventListener("copy", this.copy); +        document.addEventListener("copy", this.copy);      }      componentWillUnmount() {          this._reactionDisposer && this._reactionDisposer(); +        document.removeEventListener("copy", this.copy); +    } + +    private copy = (e: ClipboardEvent) => { +        if (this.props.active()) { +            if (e.clipboardData) { +                e.clipboardData.setData("text/plain", text); +                e.clipboardData.setData("dash/pdfOrigin", this.props.Document[Id]); +                e.preventDefault(); +            } +        }      }      public GetPage() { @@ -151,7 +167,7 @@ export class PDFBox extends DocComponent<FieldViewProps, PdfDocument>(PdfDocumen      scrollTo(y: number) {          if (this._mainCont.current) { -            this._mainCont.current.scrollTo({ top: y, behavior: "auto" }); +            this._mainCont.current.scrollTo({ top: Math.max(y - (this._mainCont.current!.offsetHeight / 2), 0), behavior: "auto" });          }      }  | 
