diff --git a/apps/common/main/lib/component/Mixtbar.js b/apps/common/main/lib/component/Mixtbar.js index 2b8876d3f..331c47b6f 100644 --- a/apps/common/main/lib/component/Mixtbar.js +++ b/apps/common/main/lib/component/Mixtbar.js @@ -281,13 +281,14 @@ define([ }, setExtra: function (place, el) { - if ( this.$tabs ) { - } else { - if ( place == 'right' ) { - this.$layout.find('.extra.right').html(el); - } else - if ( place == 'left' ) { - this.$layout.find('.extra.left').html(el); + if ( !!el ) { + if (this.$tabs) { + } else { + if (place == 'right') { + this.$layout.find('.extra.right').html(el); + } else if (place == 'left') { + this.$layout.find('.extra.left').html(el); + } } } } diff --git a/apps/common/main/lib/view/Header.js b/apps/common/main/lib/view/Header.js index 40efd54d3..bcf711685 100644 --- a/apps/common/main/lib/view/Header.js +++ b/apps/common/main/lib/view/Header.js @@ -208,13 +208,14 @@ define([ me.fireEvent('go:back', ['page:' + item.value]); }) - me.logo.on('click', function (e) { - var _url = !!me.branding && !!me.branding.logo && !!me.branding.logo.url ? - me.branding.logo.url : 'http://www.onlyoffice.com'; + if ( me.logo ) + me.logo.on('click', function (e) { + var _url = !!me.branding && !!me.branding.logo && !!me.branding.logo.url ? + me.branding.logo.url : 'http://www.onlyoffice.com'; - var newDocumentPage = window.open(_url); - newDocumentPage && newDocumentPage.focus(); - }); + var newDocumentPage = window.open(_url); + newDocumentPage && newDocumentPage.focus(); + }); $panelUsers.on('shown.bs.dropdown', function () { $userList.scroller && $userList.scroller.update({minScrollbarLength: 40, alwaysVisibleY: true}); @@ -239,13 +240,15 @@ define([ $labelChangeRights[(!mode.isOffline && !mode.isReviewOnly && mode.sharingSettingsUrl && mode.sharingSettingsUrl.length)?'show':'hide'](); $panelUsers[(storeUsers.size() > 1 || !mode.isOffline && !mode.isReviewOnly && mode.sharingSettingsUrl && mode.sharingSettingsUrl.length) ? 'show' : 'hide'](); - $saveStatus.attr('data-width', me.textSaveExpander); - if ( appConfig.canUseHistory ) { - // $saveStatus.on('click', function(e) { - // me.fireEvent('history:show', ['header']); - // }); - } else { - $saveStatus.addClass('locked'); + if ( $saveStatus ) { + $saveStatus.attr('data-width', me.textSaveExpander); + if (appConfig.canUseHistory) { + // $saveStatus.on('click', function(e) { + // me.fireEvent('history:show', ['header']); + // }); + } else { + $saveStatus.addClass('locked'); + } } } @@ -310,8 +313,8 @@ define([ return this; }, - getPanel: function (role) { - if ( role == 'left' ) { + getPanel: function (role, config) { + if ( role == 'left' && (!config || !config.isDesktopApp)) { $html = $(templateLeftBox); this.logo = $html.find('#header-logo'); return $html; @@ -323,8 +326,23 @@ define([ textSaveEnd: this.textSaveEnd })); - if ( this.canBack === true ) { - this.btnGoBack.render($html.find('#slot-btn-back')); + this.labelDocName = $html.find('#rib-doc-name'); + $saveStatus = $html.find('#rib-save-status'); + $saveStatus.hide(); + + if ( config && config.isDesktopApp ) { + $html.addClass('desktop'); + $html.find('#slot-btn-back').hide(); + this.labelDocName.hide(); + + if ( config.isOffline ) + $saveStatus = false; + } else { + if ( this.canBack === true ) { + this.btnGoBack.render($html.find('#slot-btn-back')); + } else { + $html.find('#slot-btn-back').hide(); + } } if ( this.documentCaption ) { @@ -332,14 +350,11 @@ define([ Common.Utils.String.htmlEncode(this.documentCaption) ); } - this.labelDocName = $html.find('#rib-doc-name'); $userList = $html.find('.cousers-list'); $panelUsers = $html.find('.box-cousers'); $btnUsers = $html.find('.btn-users'); - $saveStatus = $html.find('#rib-save-status'); $panelUsers.hide(); - $saveStatus.hide(); return $html; } diff --git a/apps/common/main/resources/less/header.less b/apps/common/main/resources/less/header.less index 5ed84fc06..356369b86 100644 --- a/apps/common/main/resources/less/header.less +++ b/apps/common/main/resources/less/header.less @@ -47,8 +47,13 @@ } &.right { - min-width: 150px; + min-width: 100px; padding-right: 12px; + + .desktop { + padding: 10px 0; + text-align: right; + } } #rib-doc-name { @@ -57,6 +62,7 @@ text-overflow: ellipsis; overflow: hidden; min-width: 50px; + text-align: right; } #rib-save-status { diff --git a/apps/common/main/resources/less/toolbar.less b/apps/common/main/resources/less/toolbar.less index 561051b36..afd462f58 100644 --- a/apps/common/main/resources/less/toolbar.less +++ b/apps/common/main/resources/less/toolbar.less @@ -49,6 +49,7 @@ width: 100%; border-top: 1px solid @gray-dark; top: @height-tabs - 1; + left: 0; z-index: 1; } } diff --git a/apps/documenteditor/main/app/controller/Viewport.js b/apps/documenteditor/main/app/controller/Viewport.js index 60b27db8d..c34863558 100644 --- a/apps/documenteditor/main/app/controller/Viewport.js +++ b/apps/documenteditor/main/app/controller/Viewport.js @@ -70,8 +70,9 @@ define([ this.addListeners({ 'Toolbar': { 'render:before' : function (toolbar) { - toolbar.setExtra('right', me.header.getPanel('right')); - toolbar.setExtra('left', me.header.getPanel('left')); + var config = DE.getController('Main').appOptions; + toolbar.setExtra('right', me.header.getPanel('right', config)); + toolbar.setExtra('left', me.header.getPanel('left', config)); }, 'view:compact' : function (toolbar, state) { me.viewport.vlayout.panels[0].height = state ? 40 : 40+67; diff --git a/apps/presentationeditor/main/app/controller/Viewport.js b/apps/presentationeditor/main/app/controller/Viewport.js index 50371dc51..3ca7ff640 100644 --- a/apps/presentationeditor/main/app/controller/Viewport.js +++ b/apps/presentationeditor/main/app/controller/Viewport.js @@ -71,8 +71,9 @@ define([ this.addListeners({ 'Toolbar': { 'render:before' : function (toolbar) { - toolbar.setExtra('right', me.header.getPanel('right')); - toolbar.setExtra('left', me.header.getPanel('left')); + var config = PE.getController('Main').appOptions; + toolbar.setExtra('right', me.header.getPanel('right', config)); + toolbar.setExtra('left', me.header.getPanel('left', config)); }, 'view:compact' : function (toolbar, state) { me.viewport.vlayout.panels[0].height = state ? 40 : 40+67; diff --git a/apps/spreadsheeteditor/main/app/controller/Viewport.js b/apps/spreadsheeteditor/main/app/controller/Viewport.js index 821b69d03..f8cb63114 100644 --- a/apps/spreadsheeteditor/main/app/controller/Viewport.js +++ b/apps/spreadsheeteditor/main/app/controller/Viewport.js @@ -69,8 +69,9 @@ define([ this.addListeners({ 'Toolbar': { 'render:before' : function (toolbar) { - toolbar.setExtra('right', me.header.getPanel('right')); - toolbar.setExtra('left', me.header.getPanel('left')); + var config = SSE.getController('Main').appOptions; + toolbar.setExtra('right', me.header.getPanel('right', config)); + toolbar.setExtra('left', me.header.getPanel('left', config)); }, 'view:compact' : function (toolbar, state) { me.viewport.vlayout.panels[0].height = state ? 40 : 40+67;