mirror of
https://github.com/flynx/ImageGrid.git
synced 2025-12-17 08:41:40 +00:00
now clicking an unfocused window will not close the overlay...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
ed0388e852
commit
ff6117c1c9
@ -1122,7 +1122,6 @@ var BrowserPrototype = {
|
|||||||
.map(function(e){ return e.replace(/\\(\s)/, '$1') })
|
.map(function(e){ return e.replace(/\\(\s)/, '$1') })
|
||||||
.join('|')
|
.join('|')
|
||||||
+ ')', 'gi')
|
+ ')', 'gi')
|
||||||
console.log('>>>>', p, pattern)
|
|
||||||
// XXX should this be case insensitive???
|
// XXX should this be case insensitive???
|
||||||
this.filter(pattern,
|
this.filter(pattern,
|
||||||
// rejected...
|
// rejected...
|
||||||
|
|||||||
@ -55,6 +55,8 @@ var OverlayPrototype = {
|
|||||||
'click',
|
'click',
|
||||||
'keydown',
|
'keydown',
|
||||||
],
|
],
|
||||||
|
|
||||||
|
closeOnUnFocusedClick: false,
|
||||||
},
|
},
|
||||||
|
|
||||||
// XXX for some reason this does not work...
|
// XXX for some reason this does not work...
|
||||||
@ -89,9 +91,35 @@ var OverlayPrototype = {
|
|||||||
|
|
||||||
object.superMethod(Overlay, '__init__').call(this, parent, client, options)
|
object.superMethod(Overlay, '__init__').call(this, parent, client, options)
|
||||||
|
|
||||||
|
// Prevent closing the overlay if clicked while blurred...
|
||||||
|
// i.e.
|
||||||
|
// 1'st click -- focus window
|
||||||
|
// 2'nd click -- close overlay
|
||||||
|
//
|
||||||
|
// XXX HACK: need a better way to do this...
|
||||||
|
var focused
|
||||||
|
var unlock = function() { setTimeout(function(){ focused = true }, 200) }
|
||||||
|
var lock = function() { focused = false }
|
||||||
|
// blur-lock...
|
||||||
|
$(window)
|
||||||
|
.focus(unlock)
|
||||||
|
.blur(lock)
|
||||||
|
// cleanup...
|
||||||
|
this.close(function(){
|
||||||
|
$(window)
|
||||||
|
.off('focus', unlock)
|
||||||
|
.off('blur', lock)
|
||||||
|
})
|
||||||
|
|
||||||
this.dom
|
this.dom
|
||||||
.click(function(){
|
.click(function(){
|
||||||
that.close()
|
if(that.options.closeOnUnFocusedClick || focused){
|
||||||
|
that.close()
|
||||||
|
|
||||||
|
// don't make the user wait if they really wants to close...
|
||||||
|
} else {
|
||||||
|
focused = true
|
||||||
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
this.parent
|
this.parent
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user