Known issues:
* Not all of the options in the menu are functional yet
* The wording isn't totally perfect on some of these options;
I kind of want to use a 'first name' in some of them.
(imported from commit 5a333fb939fcca7e0d0ecb2c43e79501139ac0db)
We'll use this internally for the commit bot. We might eventually disable it
for external users.
(imported from commit 3136cd9faadc6b81355889d2ee6472985da87fbe)
There was this very cute problem where if you were narrowed and
scrolled to the top of the page, you couldn't seem to click on the
stream or subject name.
The issue was: the floating_recipient_row div was visibility: hidden,
which means that it made top_statusbar big enough to cover up that top
part, capturing the clicks.
So instead we make top_statusbar also visibility: hidden so that
the clicks get through.
(imported from commit 471e041ba1c429ad0b6e225da22585dc72120945)
If we make the recipient_rows the same size for huddles and stream
messages, this becomes a non-issue. (Previously, the border on huddles
was 2px, which I think caused our invisible row to have its height
grow by 1px -- which was a problem, because then it left a little 1px
gap that you could see through when we scrolled over non-huddle
messages.)
(imported from commit d1f24e5c536bdf9c0827a15b611ba680ee4e5e36)
When the window is narrow, vertical space (particularly in
our navigation menu) is at a premium, so let's be more
parsimonious.
(imported from commit 72628827bc108f4d9f2d47a11c48e0e772b769d4)
Before this commit, the timestamps are higher than the narrowbar,
on the z-axis, so they slide over it as you scroll.
As a philosophical aside, I almost wonder if the timestamps should
live in their own table row, that way they can't possibly overlap
with the message bodies. (This would require reverting Tim-style
sometimes-show-date-and-time timestamps.)
(imported from commit 0c59f1feacebd59b88e76bf056d96e05159d2937)
This is one approach, anyway. Another is to keep it inside
message_list, which is what we (currently) do in the composebox.
(imported from commit 64c69b931012e3d21b7a10e3909f7a13f7dcfc4f)
Paradoxically, life is better if we specify a max-width rather
than a min-width!
(This has the side effect, though, of sometimes having our message
boxes, etc. be ~548px rather than 640px, but philosophically
it's kind of nice if that all scales nicely).
(imported from commit 7f41c147b727348a148197c74b299cb31636f83b)
The issue with the animation is that it removes the composebox div
when it's done -- or more relevantly, it "adds" it when the composebox
appears, which causes some DOM elements to get reshuffled slightly
which causes some jitter.
(Similar to what was happening with the email addresses earlier.)
So instead of using display:none, we play with visibility:hidden,
which causes the thing not to show up, but doesn't cause it to
lose its place in the DOM.
(imported from commit a18dbdcd1784b2b54436d48d8425d5fdc8dfbba4)
This also prevents the "bounciness" associated with the fact
that the stream/huddle selector was an absolutely positioned
div relative to the bottom of the compose window.
(imported from commit 413003a83c187efd45d0281f7cb6c9d0bd550674)