diff --git a/gui/app/components/folder/folder-toolbar.js b/gui/app/components/folder/folder-toolbar.js index 15f4affd..fcfe713d 100644 --- a/gui/app/components/folder/folder-toolbar.js +++ b/gui/app/components/folder/folder-toolbar.js @@ -44,12 +44,18 @@ export default Ember.Component.extend(NotifierMixin, TooltipMixin, AuthMixin, { let folder = this.get('folder'); this.set('pinState.pinId', this.get('pinned').isSpacePinned(folder.get('id'))); this.set('pinState.isPinned', this.get('pinState.pinId') !== ''); - this.set('pinState.newName', folder.get('name').substring(0,3).toUpperCase()); + this.set('pinState.newName', folder.get('name')); this.set('movedFolderOptions', targets); }, didRender() { + this.renderTooltips(); + }, + + renderTooltips() { + this.destroyTooltips(); + if (this.get('hasSelectedDocuments')) { if (this.get('permissions.documentMove')) { this.addTooltip(document.getElementById("move-documents-button")); @@ -65,21 +71,18 @@ export default Ember.Component.extend(NotifierMixin, TooltipMixin, AuthMixin, { this.addTooltip(document.getElementById("space-settings-button")); } if (this.get('session.authenticated')) { - let t = this.get('pinState.tip'); - if (is.not.null(t)) { - t.destroy(); - } - - if (this.get('pinState.isPinned')) { - this.set('pinState.tip', this.addTooltip(document.getElementById("space-unpin-button"))) - } else { - this.set('pinState.tip', this.addTooltip(document.getElementById("space-pin-button"))) - } + this.addTooltip(document.getElementById("space-unpin-button")); + } else { + this.addTooltip(document.getElementById("space-pin-button")); } } }, willDestroyElement() { + if (this.get('isDestroyed') || this.get('isDestroying')) { + return; + } + if (is.not.null(this.get('drop'))) { this.get('drop').destroy(); this.set('drop', null); @@ -94,6 +97,7 @@ export default Ember.Component.extend(NotifierMixin, TooltipMixin, AuthMixin, { this.set('pinState.isPinned', false); this.set('pinState.pinId', ''); this.eventBus.publish('pinChange'); + this.renderTooltips(); }); }, @@ -113,6 +117,7 @@ export default Ember.Component.extend(NotifierMixin, TooltipMixin, AuthMixin, { this.set('pinState.isPinned', true); this.set('pinState.pinId', pin.get('id')); this.eventBus.publish('pinChange'); + this.renderTooltips(); }); return true; diff --git a/gui/app/mixins/tooltip.js b/gui/app/mixins/tooltip.js index 06fe6e84..21afd12a 100644 --- a/gui/app/mixins/tooltip.js +++ b/gui/app/mixins/tooltip.js @@ -35,10 +35,14 @@ export default Ember.Mixin.create({ }, destroyTooltips() { - let tt = this.get('tooltips'); + if (this.get('isDestroyed') || this.get('isDestroying')) { + return; + } + + let tt = this.get('tooltips'); tt.forEach(t => { - t.destroy(); + t.destroy(); }); tt.length = 0; diff --git a/gui/app/templates/components/folder/folder-toolbar.hbs b/gui/app/templates/components/folder/folder-toolbar.hbs index 926d2f18..8e6f71c0 100644 --- a/gui/app/templates/components/folder/folder-toolbar.hbs +++ b/gui/app/templates/components/folder/folder-toolbar.hbs @@ -42,11 +42,11 @@ {{else}} {{#if pinState.isPinned}} -
+
favorite
{{else}} -
+
favorite_border
{{/if}} @@ -68,10 +68,10 @@ {{/if}} {{#unless pinState.isPinned}} - {{#dropdown-dialog target="space-pin-button" position="bottom right" button="Pin" color="flat-green" onAction=(action 'onPin') focusOn="pin-space-name" }} + {{#dropdown-dialog target="space-pin-button" position="bottom right" button="Pin" color="flat-green" onAction=(action 'onPin') focusOn="pin-space-name"}}
- -
A 3 or 4 character name
+ +
Provide short name
{{input type='text' id="pin-space-name" value=pinState.newName}}
{{/dropdown-dialog}}