mirror of
https://github.com/wekan/wekan.git
synced 2025-04-20 12:07:11 -04:00
Maintain a visual indication of the popup openerElement
This commit is contained in:
parent
dea52907bd
commit
56a240a643
4 changed files with 15 additions and 6 deletions
|
@ -6,7 +6,7 @@ template(name="headerBoard")
|
|||
.board-header-btns.left
|
||||
unless isSandstorm
|
||||
if currentUser
|
||||
a.board-header-btn.js-star-board(class="{{#if isStarred}}is-hovered{{/if}}"
|
||||
a.board-header-btn.js-star-board(class="{{#if isStarred}}is-active{{/if}}"
|
||||
title="{{#if isStarred}}{{_ 'click-to-unstar'}}{{else}}{{_ 'click-to-star'}}{{/if}} {{_ 'starred-boards-description'}}")
|
||||
i.fa(class="fa-star{{#unless isStarred}}-o{{/unless}}")
|
||||
if showStarCounter
|
||||
|
|
|
@ -120,7 +120,7 @@
|
|||
|
||||
.board-header-btn,
|
||||
h1.is-clickable
|
||||
&.is-hovered,
|
||||
&.is-active,
|
||||
&:hover
|
||||
background: rgba(0, 0, 0, .15)
|
||||
|
||||
|
|
|
@ -19,9 +19,13 @@ Popup = {
|
|||
return function(evt) {
|
||||
// If a popup is already openened, clicking again on the opener element
|
||||
// should close it -- and interupt the current `open` function.
|
||||
if (self.isOpen() &&
|
||||
self._getTopStack().openerElement === evt.currentTarget) {
|
||||
return self.close();
|
||||
if (self.isOpen()) {
|
||||
var previousOpenerElement = self._getTopStack().openerElement;
|
||||
if (previousOpenerElement === evt.currentTarget) {
|
||||
return self.close();
|
||||
} else {
|
||||
$(previousOpenerElement).removeClass('is-active');
|
||||
}
|
||||
}
|
||||
|
||||
// We determine the `openerElement` (the DOM element that is being clicked
|
||||
|
@ -36,6 +40,7 @@ Popup = {
|
|||
self._stack = [];
|
||||
openerElement = evt.currentTarget;
|
||||
}
|
||||
$(openerElement).addClass('is-active');
|
||||
|
||||
// We modify the event to prevent the popup being closed when the event
|
||||
// bubble up to the document element.
|
||||
|
@ -122,6 +127,10 @@ Popup = {
|
|||
if (this.isOpen()) {
|
||||
Blaze.remove(this.current);
|
||||
this.current = null;
|
||||
|
||||
var openerElement = this._getTopStack().openerElement;
|
||||
$(openerElement).removeClass('is-active');
|
||||
|
||||
this._stack = [];
|
||||
}
|
||||
},
|
||||
|
|
|
@ -25,6 +25,6 @@ a
|
|||
&.fa, i.fa
|
||||
color: darken(white, 35%)
|
||||
|
||||
&:hover
|
||||
&:hover, &.is-active
|
||||
&.fa, i.fa
|
||||
color: darken(white, 60%)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue