diff --git a/services/web/app/src/Features/Project/ProjectController.js b/services/web/app/src/Features/Project/ProjectController.js index 1f1c4724ab..e3bca01b9c 100644 --- a/services/web/app/src/Features/Project/ProjectController.js +++ b/services/web/app/src/Features/Project/ProjectController.js @@ -872,6 +872,7 @@ const ProjectController = { 'new_file_view', user.alphaProgram || user.betaProgram ), + showNewPdfPreview: shouldDisplayFeature('new_pdf_preview', false), showSymbolPalette: shouldDisplayFeature( 'symbol_palette', user.alphaProgram || user.betaProgram diff --git a/services/web/app/views/project/editor/editor.pug b/services/web/app/views/project/editor/editor.pug index a6a364fe2e..c8fdef22bf 100644 --- a/services/web/app/views/project/editor/editor.pug +++ b/services/web/app/views/project/editor/editor.pug @@ -19,7 +19,10 @@ div.full-size( .ui-layout-east div(ng-if="ui.pdfLayout == 'sideBySide'") - include ./pdf + if showNewPdfPreview + pdf-preview-pane() + else + include ./pdf .ui-layout-resizer-controls.synctex-controls( ng-show="!!pdf.url && settings.pdfViewer == 'pdfjs'" @@ -48,7 +51,10 @@ div.full-size( ng-if="ui.pdfLayout == 'flat'" ng-show="ui.view == 'pdf'" ) - include ./pdf + if showNewPdfPreview + pdf-preview-pane() + else + include ./pdf // fallback, shown when no file/view is selected div.full-size.no-file-selection( diff --git a/services/web/frontend/js/features/pdf-preview/components/pdf-preview-pane.js b/services/web/frontend/js/features/pdf-preview/components/pdf-preview-pane.js new file mode 100644 index 0000000000..609685bdcb --- /dev/null +++ b/services/web/frontend/js/features/pdf-preview/components/pdf-preview-pane.js @@ -0,0 +1,7 @@ +import { memo } from 'react' + +function PdfPreviewPane() { + return
PDF Preview
+} + +export default memo(PdfPreviewPane) diff --git a/services/web/frontend/js/features/pdf-preview/controllers/pdf-preview-controller.js b/services/web/frontend/js/features/pdf-preview/controllers/pdf-preview-controller.js new file mode 100644 index 0000000000..b8e535fa23 --- /dev/null +++ b/services/web/frontend/js/features/pdf-preview/controllers/pdf-preview-controller.js @@ -0,0 +1,6 @@ +import App from '../../../base' +import { react2angular } from 'react2angular' + +import PdfPreviewPane from '../components/pdf-preview-pane' + +App.component('pdfPreviewPane', react2angular(PdfPreviewPane, undefined)) diff --git a/services/web/frontend/js/ide.js b/services/web/frontend/js/ide.js index 3041f0a927..3f9dbe4dff 100644 --- a/services/web/frontend/js/ide.js +++ b/services/web/frontend/js/ide.js @@ -66,6 +66,7 @@ import './main/system-messages' import '../../modules/modules-ide.js' import './shared/context/controllers/root-context-controller' import './features/editor-navigation-toolbar/controllers/editor-navigation-toolbar-controller' +import './features/pdf-preview/controllers/pdf-preview-controller' import './features/share-project-modal/controllers/react-share-project-modal-controller' import getMeta from './utils/meta'