Do not show the crumbs again after hiding them
After the changes in the previous commit "_showCrumb" no longer shows the menu, only the same crumb that was hidden by the last call to "_hideCrumb". Therefore, if the crumb was hidden because it did not fit there is no need to try to show it again, as it will still not fit. Moreover, the calculated width for a hidden element is not always accurate; in some cases the calculated width is lower than the actual width (it happens, for example, when using a background image like the "Share" icon), which causea the crumb to be shown even if there is not enough room, which in the end causes the siblings to overflow the contents. No unit tests for this one, though; you will have to trust me on this, sorry ;-) Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
This commit is contained in:
parent
a1af18fa35
commit
23559b2eda
|
@ -356,12 +356,6 @@
|
||||||
this.$el.find('.crumbmenu').removeClass('hidden');
|
this.$el.find('.crumbmenu').removeClass('hidden');
|
||||||
this._hideCrumb();
|
this._hideCrumb();
|
||||||
}
|
}
|
||||||
// If container is bigger than content + element to be shown
|
|
||||||
// AND if there is at least one hidden crumb
|
|
||||||
while (this.$el.find(this.hiddenCrumbSelector).length > 0
|
|
||||||
&& this.getTotalWidth() + this._getCrumbElement().outerWidth(true) < availableWidth) {
|
|
||||||
this._showCrumb();
|
|
||||||
}
|
|
||||||
|
|
||||||
this._updateMenu();
|
this._updateMenu();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue