mirror of
https://github.com/TriliumNext/Notes.git
synced 2025-07-27 18:12:29 +08:00
Merge pull request #2030 from TriliumNext/tab
fix: improve tab scroll UX by switching from instant to smooth behavior
This commit is contained in:
commit
23439a0b0e
@ -386,15 +386,8 @@ export default class TabRowWidget extends BasicWidget {
|
|||||||
};
|
};
|
||||||
|
|
||||||
setupScrollEvents() {
|
setupScrollEvents() {
|
||||||
let isScrolling = false;
|
|
||||||
this.$tabScrollingContainer[0].addEventListener('wheel', (event) => {
|
this.$tabScrollingContainer[0].addEventListener('wheel', (event) => {
|
||||||
if (!isScrolling) {
|
this.scrollTabContainer(event.deltaY * 1.5);
|
||||||
isScrolling = true;
|
|
||||||
requestAnimationFrame(() => {
|
|
||||||
this.scrollTabContainer(event.deltaY * 1.5, 'instant');
|
|
||||||
isScrolling = false;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
this.$scrollButtonLeft[0].addEventListener('click', () => this.scrollTabContainer(-200));
|
this.$scrollButtonLeft[0].addEventListener('click', () => this.scrollTabContainer(-200));
|
||||||
@ -480,7 +473,7 @@ export default class TabRowWidget extends BasicWidget {
|
|||||||
const totalTabsWidthUsingTarget = flooredClampedTargetWidth * numberOfTabs + marginWidth;
|
const totalTabsWidthUsingTarget = flooredClampedTargetWidth * numberOfTabs + marginWidth;
|
||||||
const totalExtraWidthDueToFlooring = tabsContainerWidth - totalTabsWidthUsingTarget;
|
const totalExtraWidthDueToFlooring = tabsContainerWidth - totalTabsWidthUsingTarget;
|
||||||
|
|
||||||
const widths = [];
|
const widths: number[] = [];
|
||||||
let extraWidthRemaining = totalExtraWidthDueToFlooring;
|
let extraWidthRemaining = totalExtraWidthDueToFlooring;
|
||||||
|
|
||||||
for (let i = 0; i < numberOfTabs; i += 1) {
|
for (let i = 0; i < numberOfTabs; i += 1) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user