From a248be4fcedc2908e4fc073ccea3ee3185264417 Mon Sep 17 00:00:00 2001 From: Sorin Davidoi Date: Wed, 26 Jul 2017 19:03:56 +0200 Subject: [PATCH] fix(columns_area): Manually set tabs style when swiping (#4320) --- .../mastodon/features/ui/components/columns_area.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/app/javascript/mastodon/features/ui/components/columns_area.js b/app/javascript/mastodon/features/ui/components/columns_area.js index 7de66ce3f..63bd1b021 100644 --- a/app/javascript/mastodon/features/ui/components/columns_area.js +++ b/app/javascript/mastodon/features/ui/components/columns_area.js @@ -56,6 +56,15 @@ export default class ColumnsArea extends ImmutablePureComponent { handleSwipe = (index) => { this.pendingIndex = index; + + const nextLinkTranslationId = links[index].props['data-preview-title-id']; + const currentLinkSelector = '.tabs-bar__link.active'; + const nextLinkSelector = `.tabs-bar__link[data-preview-title-id="${nextLinkTranslationId}"]`; + + // HACK: Remove the active class from the current link and set it to the next one + // React-router does this for us, but too late, feeling laggy. + document.querySelector(currentLinkSelector).classList.remove('active'); + document.querySelector(nextLinkSelector).classList.add('active'); } handleAnimationEnd = () => {