The server only saves the maximum position the pointer has ever had. So
on reload, it often jumped to the end instead of where the user was.
(imported from commit 418ccb1144286c67503578020e88ae7b3869acd6)
Previously, if you were narrowed when we reloaded you, you'd be
kicked out to the home view.
(imported from commit c00f1b92c9a4f559998463e141a402b69873fd56)
I don't love the default reloading message, but I'm not sure how to
tell the user why we need to reload in several cases.
(imported from commit 5f2eecdb0d83f31bd60673b247e8aac8f08ce20f)
Fixes a message forgery bug (#335).
This works because Django will not generate a new CSRF token if a valid token
cookie is already present (see django/middleware/csrf.py).
(imported from commit 23222cb0bb62ae8a2f8ac7fb3f24bbc866103454)
Personals are now just private messages between two people (which
sometimes manifests as a private message with one recipient). The
new message type on the send path is 'private'. Note that the receive
path still has 'personal' and 'huddle' message types.
(imported from commit 97a438ef5c0b3db4eb3e6db674ea38a081265dd3)