From 845c4a729714a4bd762824a92aa2d7b596ff35fe Mon Sep 17 00:00:00 2001 From: James Allen Date: Sat, 28 Jun 2014 12:07:18 +0100 Subject: [PATCH] Get layout and resize logic working for PDF view --- .../web/app/views/project/editor/editor.jade | 45 +++++++++++-------- .../web/app/views/project/editor/pdf.jade | 12 +++++ .../views/project/editor/track-changes.jade | 3 +- .../coffee/app/ide/directives/layout.coffee | 12 +++-- .../ide/editor/directives/aceEditor.coffee | 11 ++--- .../stylesheets/app/editor/toolbar.less | 13 +++++- 6 files changed, 66 insertions(+), 30 deletions(-) create mode 100644 services/web/app/views/project/editor/pdf.jade diff --git a/services/web/app/views/project/editor/editor.jade b/services/web/app/views/project/editor/editor.jade index 4fd79ab6d0..a0630b9588 100644 --- a/services/web/app/views/project/editor/editor.jade +++ b/services/web/app/views/project/editor/editor.jade @@ -1,19 +1,28 @@ -div.full-size(ng-show="ui.view == 'editor'") - .loading-panel(ng-show="!editor.sharejs_doc || editor.opening") - i.fa.fa-spin.fa-refresh - |   Loading... +div.full-size( + ng-show="ui.view == 'editor'" + layout="pdf" + resize-on="layout:main:resize" +) + .ui-layout-center + .loading-panel(ng-show="true || !editor.sharejs_doc || editor.opening") + i.fa.fa-spin.fa-refresh + |   Loading... - #editor( - ace-editor, - ng-show="!!editor.sharejs_doc && !editor.opening" - theme="settings.theme", - keybindings="settings.mode", - font-size="settings.fontSize", - auto-complete="settings.autoComplete", - spell-check-language="project.spellCheckLanguage", - annotations="onlineUserCursorAnnotations[editor.open_doc_id]" - show-print-margin="false", - sharejs-doc="editor.sharejs_doc", - last-updated="editor.last_updated", - cursor-position="editor.cursorPosition" - ) \ No newline at end of file + #editor( + ace-editor, + ng-show="!!editor.sharejs_doc && !editor.opening" + theme="settings.theme", + keybindings="settings.mode", + font-size="settings.fontSize", + auto-complete="settings.autoComplete", + spell-check-language="project.spellCheckLanguage", + annotations="onlineUserCursorAnnotations[editor.open_doc_id]" + show-print-margin="false", + sharejs-doc="editor.sharejs_doc", + last-updated="editor.last_updated", + cursor-position="editor.cursorPosition", + resize-on="layout:main:resize,layout:pdf:resize" + ) + + .ui-layout-east + include ./pdf \ No newline at end of file diff --git a/services/web/app/views/project/editor/pdf.jade b/services/web/app/views/project/editor/pdf.jade new file mode 100644 index 0000000000..dd73044b6f --- /dev/null +++ b/services/web/app/views/project/editor/pdf.jade @@ -0,0 +1,12 @@ +.toolbar.toolbar-tall + a.btn.btn-primary( + href + ) + i.fa.fa-refresh + | Recompile + a( + href + tooltip="Logs" + tooltip-placement="bottom" + ) + i.fa.fa-file-text-o \ No newline at end of file diff --git a/services/web/app/views/project/editor/track-changes.jade b/services/web/app/views/project/editor/track-changes.jade index 64ec9194cd..77cb6230de 100644 --- a/services/web/app/views/project/editor/track-changes.jade +++ b/services/web/app/views/project/editor/track-changes.jade @@ -72,7 +72,8 @@ div#trackChanges(ng-show="ui.view == 'track-changes'") font-size="settings.fontSize", text="trackChanges.diff.text", annotations="trackChanges.diff.annotations", - read-only="true" + read-only="true", + resize-on="layout:main:resize" ) .diff-deleted.text-centered( ng-show="trackChanges.diff.deleted" diff --git a/services/web/public/coffee/app/ide/directives/layout.coffee b/services/web/public/coffee/app/ide/directives/layout.coffee index 188b10edc9..fd0c39a836 100644 --- a/services/web/public/coffee/app/ide/directives/layout.coffee +++ b/services/web/public/coffee/app/ide/directives/layout.coffee @@ -10,14 +10,20 @@ define [ spacing_open: 24 spacing_closed: 24 onresize: () => - scope.$broadcast "layout:resize" + console.log "Triggering", "layout:#{name}:resize", name + scope.$broadcast "layout:#{name}:resize" + #maskIframesOnResize: true # Restore previously recorded state - if (state = $.localStorage("layout.main"))? + if (state = $.localStorage("layout.#{name}"))? options.west = state.west options.east = state.east - $(element).layout options + element.layout options + element.layout().resizeAll() + + if attrs.resizeOn? + scope.$on attrs.resizeOn, () -> element.layout().resizeAll() # Save state when exiting $(window).unload () -> diff --git a/services/web/public/coffee/app/ide/editor/directives/aceEditor.coffee b/services/web/public/coffee/app/ide/editor/directives/aceEditor.coffee index 3c777665b0..7b8f09973a 100644 --- a/services/web/public/coffee/app/ide/editor/directives/aceEditor.coffee +++ b/services/web/public/coffee/app/ide/editor/directives/aceEditor.coffee @@ -58,13 +58,10 @@ define [ editor.commands.removeCommand "showSettingsMenu" editor.commands.removeCommand "foldall" - scope.$on "layout:resize", () -> - console.log "LAYOUT RESIZED" - editor.resize() - - $(window).on "resize", () -> - console.log "WINDOW RESIZED" - editor.resize() + if attrs.resizeOn? + for event in attrs.resizeOn.split(",") + scope.$on event, () -> + editor.resize() editor.on "changeSelection", () -> cursor = editor.getCursorPosition() diff --git a/services/web/public/stylesheets/app/editor/toolbar.less b/services/web/public/stylesheets/app/editor/toolbar.less index 12472919c3..a9a45d98ae 100644 --- a/services/web/public/stylesheets/app/editor/toolbar.less +++ b/services/web/public/stylesheets/app/editor/toolbar.less @@ -2,7 +2,7 @@ height: 40px; border-bottom: 1px solid @toolbar-border-color; - a { + a:not(.btn) { display: inline-block; color: @gray-light; padding: 6px 12px 8px; @@ -60,4 +60,15 @@ } } } + + &.toolbar-tall { + height: 48px; + a.btn { + margin-left: 12px; + } + a:not(.btn) { + padding-top: 10px; + margin-left: 4px; + } + } }