diff --git a/apps/systemtags/css/systemtagsfilelist.css b/apps/systemtags/css/systemtagsfilelist.css index e8fb665e26b38..2da8cd4001276 100644 --- a/apps/systemtags/css/systemtagsfilelist.css +++ b/apps/systemtags/css/systemtagsfilelist.css @@ -27,3 +27,13 @@ .nav-icon-systemtagsfilter { background-image: url('../img/tag.svg'); } + +#app-sidebar .mainFileInfoView .tag-label { + cursor: pointer; + padding: 13px; +} + +#app-sidebar .mainFileInfoView .icon-tag { + opacity: .5; + vertical-align: middle; +} diff --git a/apps/systemtags/img/tag.svg b/apps/systemtags/img/tag.svg index 293a7f5be9cad..d95ddbcc5a0e7 100644 --- a/apps/systemtags/img/tag.svg +++ b/apps/systemtags/img/tag.svg @@ -1,5 +1,5 @@ - + diff --git a/apps/systemtags/js/systemtagsinfoview.js b/apps/systemtags/js/systemtagsinfoview.js index a7320a3956f35..ce41bc504e271 100644 --- a/apps/systemtags/js/systemtagsinfoview.js +++ b/apps/systemtags/js/systemtagsinfoview.js @@ -37,6 +37,8 @@ */ _inputView: null, + _toggleHandle: null, + initialize: function(options) { var self = this; options = options || {}; @@ -58,6 +60,9 @@ this._inputView.on('select', this._onSelectTag, this); this._inputView.on('deselect', this._onDeselectTag, this); + + this._toggleHandle = $('').addClass('tag-label').text(t('systemtags', 'Tags')); + this._toggleHandle.prepend($('').addClass('icon icon-tag')); }, /** @@ -118,11 +123,19 @@ this.selectedTagsCollection.fetch({ success: function(collection) { collection.fetched = true; - self._inputView.setData(collection.map(modelToSelection)); - self.$el.removeClass('hidden'); + + var appliedTags = collection.map(modelToSelection); + self._inputView.setData(appliedTags); + + if (appliedTags.length !== 0) { + self.$el.removeClass('hidden'); + } else { + self.$el.addClass('hidden'); + } } }); } + this.$el.addClass('hidden'); }, @@ -130,12 +143,23 @@ * Renders this details view */ render: function() { + var self = this; + this.$el.append(this._inputView.$el); this._inputView.render(); + + $('#app-sidebar').find('.mainFileInfoView .file-details').append(this._toggleHandle); + this._toggleHandle.off('click'); + this._toggleHandle.on('click', function () { + console.log('toggle'); + console.log(self.$el); + self.$el.toggleClass('hidden'); + }); }, remove: function() { this._inputView.remove(); + this._toggleHandle.remove(); } }); diff --git a/core/css/apps.css b/core/css/apps.css index be5b045cc28cb..eaebefef571ce 100644 --- a/core/css/apps.css +++ b/core/css/apps.css @@ -600,6 +600,7 @@ em { /* generic tab styles */ .tabHeaders { + display: inline-block; margin: 15px; } .tabHeaders .tabHeader { diff --git a/core/css/icons.css b/core/css/icons.css index d1ef86a94d05a..6cfe67c3a4d93 100644 --- a/core/css/icons.css +++ b/core/css/icons.css @@ -284,6 +284,10 @@ img.icon-loading-small-dark, object.icon-loading-small-dark, video.icon-loading- background-image: url('../img/actions/starred.svg?v=1'); } +.icon-tag { + background-image: url('../img/actions/tag.svg?v=1'); +} + .icon-toggle { background-image: url('../img/actions/toggle.svg?v=1'); } diff --git a/core/img/actions/tag.svg b/core/img/actions/tag.svg new file mode 100644 index 0000000000000..d95ddbcc5a0e7 --- /dev/null +++ b/core/img/actions/tag.svg @@ -0,0 +1,5 @@ + + + + +