1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-01 15:09:14 +00:00

[dir view] grid view: bugfix & improvement

This commit is contained in:
llj
2016-03-05 16:41:26 +08:00
parent eaf51187c0
commit cefd38b98d
3 changed files with 16 additions and 18 deletions

View File

@@ -141,22 +141,15 @@ define([
}
});
// stop default event when clicking the right mouse button in grid view
$('.grid-view').bind("contextmenu", function(e) {
if (e && e.preventDefault) {
e.preventDefault();
} else {
window.event.returnValue = false;
}
});
// remove 'grid-item-op' popup
// for 'grid view': click to hide the contextmenu of '.grid-item'
$(document).click(function(e) {
var target = e.target || event.srcElement;
var $popup = $('.grid-item-op');
if ($popup.length > 0 &&
!$popup.is(target) &&
!$popup.find('*').is(target)) {
!$popup.find('*').is(target) &&
!$popup.closest('.grid-item').is(target) &&
!$popup.closest('.grid-item').find('*').is(target)) {
$popup.remove();
}
});

View File

@@ -77,8 +77,8 @@ define([
events: {
'mouseenter': 'highlight',
'mouseleave': 'rmHighlight',
'contextmenu .img-link': 'showPopupMenu',
'contextmenu .text-link': 'showPopupMenu'
'click': 'closeMenu',
'contextmenu': 'showPopupMenu'
},
highlight: function() {
@@ -91,7 +91,10 @@ define([
this.$('.text-link').removeClass('hl');
},
showPopupMenu: function(event) {
showPopupMenu: function(e) {
// make sure there is only 1 menu popup
$('.grid-item-op', this.dirView.$dirent_grid).remove();
var dir = this.dir;
var template;
@@ -120,8 +123,8 @@ define([
var el_pos = this.$el.offset();
this.$('.grid-item-op').css({
'position': 'absolute',
'left': event.pageX - el_pos.left,
'top': event.pageY - el_pos.top
'left': e.pageX - el_pos.left,
'top': e.pageY - el_pos.top
});
// Using _.bind(function, object) to make that whenever the function is