From 5eaf2c9e027f1f6ef4e783e726ab7fcbc769a881 Mon Sep 17 00:00:00 2001 From: Thibaut Girka Date: Wed, 19 Dec 2018 13:13:24 +0100 Subject: [Glitch] Back to the getting-started when pins the timeline Port 5bf100f87be571e86305f3ab244183fc46f1ede2 to glitch-soc --- .../flavours/glitch/components/column_header.js | 29 +++++++++++++++------- 1 file changed, 20 insertions(+), 9 deletions(-) (limited to 'app/javascript') diff --git a/app/javascript/flavours/glitch/components/column_header.js b/app/javascript/flavours/glitch/components/column_header.js index 72207637d..87e848a59 100644 --- a/app/javascript/flavours/glitch/components/column_header.js +++ b/app/javascript/flavours/glitch/components/column_header.js @@ -47,6 +47,15 @@ export default class ColumnHeader extends React.PureComponent { animatingNCD: false, }; + historyBack = () => { + // if history is exhausted, or we would leave mastodon, just go to root. + if (window.history.state) { + this.context.router.history.goBack(); + } else { + this.context.router.history.push('/'); + } + } + handleToggleClick = (e) => { e.stopPropagation(); this.setState({ collapsed: !this.state.collapsed, animating: true }); @@ -65,12 +74,7 @@ export default class ColumnHeader extends React.PureComponent { } handleBackClick = () => { - // if history is exhausted, or we would leave mastodon, just go to root. - if (window.history.state) { - this.context.router.history.goBack(); - } else { - this.context.router.history.push('/'); - } + this.historyBack(); } handleTransitionEnd = () => { @@ -81,13 +85,20 @@ export default class ColumnHeader extends React.PureComponent { this.setState({ animatingNCD: false }); } + handlePin = () => { + if (!this.props.pinned) { + this.historyBack(); + } + this.props.onPin(); + } + onEnterCleaningMode = () => { this.setState({ animatingNCD: true }); this.props.onEnterCleaningMode(!this.props.notifCleaningActive); } render () { - const { intl, icon, active, children, pinned, onPin, multiColumn, extraButton, showBackButton, intl: { formatMessage }, notifCleaning, notifCleaningActive } = this.props; + const { intl, icon, active, children, pinned, multiColumn, extraButton, showBackButton, intl: { formatMessage }, notifCleaning, notifCleaningActive } = this.props; const { collapsed, animating, animatingNCD } = this.state; let title = this.props.title; @@ -132,7 +143,7 @@ export default class ColumnHeader extends React.PureComponent { } if (multiColumn && pinned) { - pinButton = ; + pinButton = ; moveButtons = (
@@ -141,7 +152,7 @@ export default class ColumnHeader extends React.PureComponent {
); } else if (multiColumn) { - pinButton = ; + pinButton = ; } if (!pinned && (multiColumn || showBackButton)) { -- cgit