Your self-hosted, globally interconnected microblogging community
Go to file
Thibaut Girka cc396f085d Use history.state to decide whether we should goBack() or go to / (fixes #247)
So far, glitch-soc used history.length to decide whether to call `goBack()` or
go to / in order to not leave the webUI. This made clicking the “Back” button
go to the “Getting started” column instead of going back in the browser's
history when such an action would leave the web UI, but also when:
- The WebUI is refreshed (F5)
- A tab is restored
- The history length reaches its maximum (e.g., 50 in Firefox)

This commit fixes these shortcomings by checking `window.history.state`.
Indeed, we only want to go back in the browser's history when the current
location has been reached from within the WebUI, which only happens via
`pushState` as far as I know. Since browser store the serialized state in
the browser history, this also survives page reload and session restoration.
2018-05-31 14:39:02 +02:00
.circleci Add CONTINUOUS_INTEGRATION: true to .circleci/config.yml (#7447) 2018-05-11 11:51:07 +02:00
.github Multiple Issue templates (#7402) 2018-05-08 13:35:33 +02:00
app Use history.state to decide whether we should goBack() or go to / (fixes #247) 2018-05-31 14:39:02 +02:00
bin Port travis_retry for CI (#7379) 2018-05-06 10:55:50 +02:00
config Merge branch 'master' into glitch-soc/merge-upstream 2018-05-29 13:52:26 +02:00
db Merge branch 'master' into glitch-soc/merge 2018-05-14 20:51:50 +02:00
docs Fix redirect link on Tuning.md (#1595) 2017-04-12 12:40:37 +02:00
lib Merge branch 'master' into glitch-soc/merge-upstream 2018-05-23 16:05:19 +02:00
log
nanobox [Nanobox] Tuning Update (#6660) 2018-03-06 21:59:35 +01:00
public Merge remote-tracking branch 'tootsuite/master' into glitchsoc/master 2018-04-11 00:50:09 +00:00
spec Merge branch 'master' into glitch-soc/merge-upstream 2018-05-29 13:52:26 +02:00
streaming Add media timeline (#6631) 2018-05-21 12:43:38 +02:00
vendor/assets
.babelrc Remove debug option from Babel preset env (#6852) 2018-03-21 10:26:15 +01:00
.buildpacks Add heroku APT buildpack for scalingo. (#3051) 2017-05-14 12:57:13 +02:00
.codeclimate.yml Upgrade ESLint to version 4.x (#6276) 2018-01-17 16:57:15 +01:00
.dockerignore Ignore elasticsearch directory (#7070) 2018-04-08 16:57:16 +09:00
.editorconfig Add final newline to locale files (#2890) 2017-05-07 19:55:47 +02:00
.env.nanobox [Nanobox] Enable ElasticSearch support by default (#6977) 2018-03-31 13:17:25 +02:00
.env.production.sample Merge branch 'master' into glitch-soc/merge-upstream 2018-05-29 13:52:26 +02:00
.env.test Add parallel test processors (#7215) 2018-04-21 21:36:22 +02:00
.env.vagrant Add a default LOCAL_DOMAIN=mastodon.dev to .env.vagrant 2017-01-26 19:22:59 +11:00
.eslintignore Dev Tooling fixes (eslint/editorconfig) (#1398) 2017-04-11 00:36:03 +02:00
.eslintrc.yml Merge branch 'master' into glitch-soc/merge-upstream 2018-05-29 13:52:26 +02:00
.foreman Replace sprockets/browserify with Webpack (#2617) 2017-05-03 02:04:16 +02:00
.gitattributes Add .gitattributes file to avoid unwanted CRLF (#3954) 2017-06-26 13:15:24 +02:00
.gitignore Ignore elasticsearch directory (#7070) 2018-04-08 16:57:16 +09:00
.gitmodules Rename themes -> flavours ? ? 2017-12-03 23:26:40 -08:00
.haml-lint.yml Added haml-lint and fix warnings (#2773) 2017-05-08 03:35:25 +02:00
.nanoignore Remove Storybook (#4397) 2017-07-27 22:30:27 +02:00
.nvmrc update Node to 6.x LTS (#1228) 2017-04-15 02:05:41 +02:00
.postcssrc.yml Add object-fit polyfill for Edge (#4182) 2017-07-14 01:59:34 +02:00
.profile Add ffmpeg and dependent packages as well as LD_LIBRARY_PATHs (#3276) 2017-05-24 17:57:33 +02:00
.rspec
.rubocop.yml Add handling of Linked Data Signatures in payloads (#4687) 2017-08-26 13:47:38 +02:00
.ruby-version Update Ruby to version 2.4.4 (#6964) 2018-04-01 23:43:08 +02:00
.scss-lint.yml Enable CodeClimate SCSS Lint checks (#2886) 2017-05-07 20:47:31 +02:00
.slugignore Remove Storybook (#4397) 2017-07-27 22:30:27 +02:00
.travis.yml ci: Hack around a Travis condition, I guess 2018-05-18 09:51:00 -05:00
.yarnclean Reduce container size with clean yarn (#3506) 2017-09-30 22:05:24 +02:00
app.json Change logo URL for Heroku and Scalingo (#4476) 2017-08-01 05:59:11 +02:00
Aptfile Specify libicu explicitly in Aptfile (#4920) 2017-09-13 09:30:13 +02:00
AUTHORS.md docs: Add AUTHORS file (#6685) 2018-03-09 13:11:43 +01:00
boxfile.yml [Nanobox] Enable ElasticSearch support by default (#6977) 2018-03-31 13:17:25 +02:00
Capfile remove capistrano/faster_assets from Capfile (#2737) 2017-05-03 12:14:52 +02:00
CODE_OF_CONDUCT.md update code of conduct email address 2017-11-21 11:01:28 -05:00
config.ru Fix rubocop issues, introduce usage of frozen literal to improve performance 2016-11-15 16:56:29 +01:00
CONTRIBUTING.md Merge remote-tracking branch 'origin/master' into gs-master 2018-05-04 12:16:12 -05:00
docker-compose.yml Remove Puma pidfile before boot if container receives SIGTERM (#7052) 2018-05-25 18:50:31 +02:00
Dockerfile Merge remote-tracking branch 'origin/master' into gs-master 2018-04-01 20:24:50 -05:00
Gemfile Merge branch 'master' into glitch-soc/merge-upstream 2018-05-19 22:41:10 +02:00
Gemfile.lock Merge branch 'master' into glitch-soc/merge-upstream 2018-05-19 22:41:10 +02:00
jest.config.js Removed glitch tests 2017-11-17 19:29:17 -08:00
LICENSE
package.json Merge branch 'master' into glitch-soc/merge-upstream 2018-05-29 13:52:26 +02:00
Procfile More robust PuSH subscription refreshes (#2799) 2017-05-05 02:23:01 +02:00
Procfile.dev Fix Procfile on OS X (#6748) 2018-03-12 03:50:40 +01:00
Rakefile
README.md Replace badge to CircleCI (#7216) 2018-04-21 21:56:40 +02:00
scalingo.json Missing OTP_SECRET in scalingo.json (#6917) 2018-03-26 12:47:34 +02:00
stack-fix.c dockerfile: Give more stack space to /sbin/tini. 2018-01-11 04:09:16 -06:00
Vagrantfile Merge remote-tracking branch 'origin/master' into merge-upstream 2018-02-04 16:36:19 -06:00
yarn.lock Merge branch 'master' into glitch-soc/merge-upstream 2018-05-29 13:52:26 +02:00

Mastodon Glitch Edition

Now with automated deploys!

Build Status

So here's the deal: we all work on this code, and then it runs on dev.glitch.social and anyone who uses that does so absolutely at their own risk. can you dig it?