diff options
author | Thibaut Girka <thib@sitedethib.com> | 2019-04-15 22:23:05 +0200 |
---|---|---|
committer | ThibG <thib@sitedethib.com> | 2019-04-17 18:40:40 +0200 |
commit | e3c1472040105651fe55158b741c7ba92c1a7332 (patch) | |
tree | 6464148676a8b91cb181835b851e2882448824af /app/javascript/flavours/glitch/components/column_header.js | |
parent | 8d57c0e70ea76b2f482c0919fc815d40352ef477 (diff) |
Shift+click on column Back button to return to last pinable column
Diffstat (limited to 'app/javascript/flavours/glitch/components/column_header.js')
-rw-r--r-- | app/javascript/flavours/glitch/components/column_header.js | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/app/javascript/flavours/glitch/components/column_header.js b/app/javascript/flavours/glitch/components/column_header.js index 87e848a59..a0ff09986 100644 --- a/app/javascript/flavours/glitch/components/column_header.js +++ b/app/javascript/flavours/glitch/components/column_header.js @@ -47,10 +47,15 @@ export default class ColumnHeader extends React.PureComponent { animatingNCD: false, }; - historyBack = () => { + historyBack = (skip) => { // if history is exhausted, or we would leave mastodon, just go to root. if (window.history.state) { - this.context.router.history.goBack(); + const state = this.context.router.history.location.state; + if (skip && state && state.mastodonBackSteps) { + this.context.router.history.go(-state.mastodonBackSteps); + } else { + this.context.router.history.goBack(); + } } else { this.context.router.history.push('/'); } @@ -73,8 +78,8 @@ export default class ColumnHeader extends React.PureComponent { this.props.onMove(1); } - handleBackClick = () => { - this.historyBack(); + handleBackClick = (event) => { + this.historyBack(event.shiftKey); } handleTransitionEnd = () => { |