editor.jade 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. div.full-size(
  2. ng-show="ui.view == 'editor'"
  3. layout="pdf"
  4. layout-disabled="ui.pdfLayout != 'sideBySide'"
  5. mask-iframes-on-resize="true"
  6. resize-on="layout:main:resize"
  7. resize-proportionally="true"
  8. initial-size-east="'50%'"
  9. minimum-restore-size-east="300"
  10. )
  11. .ui-layout-center(ng-controller="ReviewPanelController", ng-class="{'has-review-panel': ui.reviewPanelOpen}")
  12. .loading-panel(ng-show="!editor.sharejs_doc || editor.opening")
  13. span(ng-show="editor.open_doc_id")
  14. i.fa.fa-spin.fa-refresh
  15. |   #{translate("loading")}...
  16. span(ng-show="!editor.open_doc_id")
  17. i.fa.fa-arrow-left
  18. |   #{translate("open_a_file_on_the_left")}
  19. #editor(
  20. ace-editor="editor",
  21. ng-show="!!editor.sharejs_doc && !editor.opening"
  22. theme="settings.theme",
  23. keybindings="settings.mode",
  24. font-size="settings.fontSize",
  25. auto-complete="settings.autoComplete",
  26. spell-check="!anonymous",
  27. spell-check-language="project.spellCheckLanguage",
  28. highlights="onlineUserCursorHighlights[editor.open_doc_id]"
  29. show-print-margin="false",
  30. sharejs-doc="editor.sharejs_doc",
  31. last-updated="editor.last_updated",
  32. cursor-position="editor.cursorPosition",
  33. goto-line="editor.gotoLine",
  34. resize-on="layout:main:resize,layout:pdf:resize,layout:review:resize,reviewPanel:toggle",
  35. annotations="pdf.logEntryAnnotations[editor.open_doc_id]",
  36. read-only="!permissions.write",
  37. file-name="editor.open_doc_name",
  38. on-ctrl-enter="recompileViaKey",
  39. syntax-validation="settings.syntaxValidation",
  40. review-panel="reviewPanel",
  41. on-scroll="onScroll",
  42. scroll-events="scrollEvents",
  43. track-changes-enabled="trackChangesFeatureFlag"
  44. track-new-changes= "reviewPanel.trackNewChanges"
  45. )
  46. #review-panel
  47. .review-panel-toolbar
  48. | Track Changes
  49. input(type="checkbox", ng-model="reviewPanel.trackNewChanges")
  50. .review-panel-scroller
  51. .review-entry-list(review-panel-sorted)
  52. .review-entry(ng-repeat="(entry_id, entry) in reviewPanel.entries", ng-style="{'top': top}")
  53. div(ng-if="entry.type == 'change'")
  54. div.small {{ entry.metadata.ts }}
  55. {{ entry.content }}
  56. div(ng-if="entry.type == 'comment'")
  57. div(ng-repeat="comment in entry.thread", class="comment-thread__comment")
  58. div.small {{ comment.ts }}
  59. div.small {{ comment.user_id }}
  60. {{ comment.content }}
  61. div(ng-if="entry.replying")
  62. textarea(ng-model="entry.replyContent")
  63. a.btn.btn-sm.btn-primary(href, ng-click="submitReply(entry)") Submit
  64. a.btn.btn-sm.btn-primary(href, ng-click="startReply(entry)", ng-if="!entry.replying") Reply
  65. div(ng-if="entry.type == 'focus-position'")
  66. a.btn.btn-sm(href, ng-if="!commentState.adding", ng-click="startNewComment()") Add comment
  67. div(ng-if="commentState.adding")
  68. textarea(ng-model="commentState.content")
  69. a.btn.btn-sm.btn-primary(href, ng-click="submitNewComment()") Submit
  70. .ui-layout-east
  71. div(ng-if="ui.pdfLayout == 'sideBySide'")
  72. include ./pdf
  73. .ui-layout-resizer-controls.synctex-controls(
  74. ng-show="!!pdf.url && settings.pdfViewer == 'pdfjs'"
  75. ng-controller="PdfSynctexController"
  76. )
  77. a.btn.btn-default.btn-xs(
  78. tooltip="#{translate('go_to_code_location_in_pdf')}"
  79. tooltip-placement="right"
  80. tooltip-append-to-body="true"
  81. ng-click="syncToPdf()"
  82. )
  83. i.fa.fa-long-arrow-right
  84. br
  85. a.btn.btn-default.btn-xs(
  86. tooltip-html="'#{translate('go_to_pdf_location_in_code')}'"
  87. tooltip-placement="right"
  88. tooltip-append-to-body="true"
  89. ng-click="syncToCode()"
  90. )
  91. i.fa.fa-long-arrow-left
  92. div.full-size(
  93. ng-if="ui.pdfLayout == 'flat'"
  94. ng-show="ui.view == 'pdf'"
  95. )
  96. include ./pdf