Fixed breadcrumb action feedback and optimisation

Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
This commit is contained in:
John Molakvoæ (skjnldsv) 2017-11-07 05:40:26 +01:00
parent 33bac270db
commit 9d3af829f2
No known key found for this signature in database
GPG key ID: FB5ACEED51955BF8
2 changed files with 9 additions and 7 deletions

View file

@ -33,7 +33,7 @@
*/
var BreadCrumb = function(options){
this.$el = $('<div class="breadcrumb"></div>');
this.$menu = $('<div class="popovermenu menu menu-center"><ul></ul></div>');
this.$menu = $('<div class="popovermenu menu-center"><ul></ul></div>');
options = options || {};
if (options.onClick) {
this.onClick = options.onClick;
@ -84,6 +84,7 @@
},
setDirectoryInfo: function(dirInfo) {
console.log(dirInfo);
if (dirInfo !== this.dirInfo) {
this.dirInfo = dirInfo;
this.render();
@ -144,13 +145,12 @@
}
this.breadcrumbs.push($crumb);
this.$el.append($crumb);
if (this.onClick) {
$crumb.on('click', this.onClick);
// Only add feedback if not menu
if (this.onClick && i !== 0) {
$link.on('click', this.onClick);
}
}
var err = new Error();
console.log(err.stack);
// Menu creation
this._createMenu();
for (var i = 0; i < parts.length; i++) {
@ -165,7 +165,6 @@
}
}
}
_.each(this._detailViews, function(view) {
view.render({
dirInfo: this.dirInfo
@ -188,7 +187,8 @@
hoverClass: 'canDrop'
});
}
// Menu is destroyed on every change, we need to init it
OC.registerMenu($('.crumbmenu'), $('.crumbmenu > .popovermenu'));
this._resize();
},

View file

@ -836,11 +836,13 @@
* Event handler when clicking on a bread crumb
*/
_onClickBreadCrumb: function(e) {
console.log('Clicked breadcrumb ', e);
var $el = $(e.target).closest('.crumb'),
$targetDir = $el.data('dir');
if ($targetDir !== undefined && e.which === 1) {
e.preventDefault();
console.log('Triggered dir change');
this.changeDirectory($targetDir, true, true);
this.updateSearch();
}