This way if you refer to "trac #253" in the subject, it's super
convenient to get from your recipient bar to the ticket.
A note on performance: this part of rendering for 1000 messages takes
about 3.5ms for messages with 1 match; this is small compared to the
overall time for to_dict_uncached for that many message objects, so I
think this is OK for now.
(imported from commit 5bdc2b8415d7599d59eb554739f545c485b78d5a)
Renamed show, hide and clear to show_box, hide_box, and clear_box,
to make it a little more obvious what each one does and make them
greppable.
Also, hide and clear weren't being used by any other modules, so
these functions are no longer exported.
This resolves Trac ticket #1503.
(imported from commit 904d596ef5b8dc2154dc01ed7c9c99a54dc9b31e)
From Trac ticket #1503:
All of the calls to compose.set_mode() should be calling compose.start()
instead. Nearly all are impossible to trigger while already composing,
and by calling compose.set_mode() they just do the stuff in set_mode()
twice. The only case where this would change behavior, that I can see,
is if you press C, Shift-Tab to unfocus the compose box without
dismissing it and then press c (or vice versa). I think it's okay if we
clear the input fields in that unlikely case.
(imported from commit ba7f181ec9d1df90a443b0a754462a3a201dcabb)
Previously we were checking for webkit before checking for
$('<audio>') support, but that cuts out non-webkit browsers that support
the basics of the HTML5 audio api.
Now we actually run the feature test in order to enable it, and only
check for webkit when enabling webkit-specific desktop notifications
(imported from commit 851eed86af167d0530f7e1793e2ca1f9b4cdd71d)
For completions, since we have no representation of categories, users
might expect lexical ordering.
(imported from commit d2e27dd4d8452df6ac48d44551802d7e65519115)
It would show the recipient bar unfaded over a faded message when
narrowed to a stream.
(imported from commit 576e7bd7bdf1fbb3f241f1ba8cd1548c4546257d)
Previous code iteratively called set_user_status() once for each user;
which in turn was rerendering the user sidebar, also once for each user.
I changed the API a bit by replacing activity.set_user_status() with
activity.set_user_statuses(), plural, that takes an object and updates
all the user statuses in one go before rendering.
(imported from commit 1111c9029264f892f25e76d2e5e5ff996dcbc7ca)
This will hopefully fix some lagginess when logging in on the Hacker
School realm, especially on Firefox, as the user presence rows are
populated (previously requiring hundreds of template renders).
(imported from commit 67e2d7f91ad62d8d7a2e212ee7c7121bd73f010b)
Fix a minor bug where if you return to the home view with a recipient
filled out, it would be unfaded.
(imported from commit d81d974dcb054c63d8a5dd5afec7b072c99d4e3f)
Previously we had fancy logic to determine where to focus, but immediately
clobbered any focus choice we made and forced the stream selection to be in focus.
We also incorrectly determined what to focus in the case of clicking the new PM
button when in a stream narrow.
(imported from commit 01e2cec8eca068ee1d45d3cfb21607b981d5034e)
Unlike the other cases where we do this sort of offset calculation,
we're working with a message which is not msg_list.selected_id() --
which means that this message might not actually be rendered at all.
Correct for this by just letting then_select_offset stay undefined in
that case.
(imported from commit ebb8a23bf34c52f9495aa88ceca8eb4458d50be1)
When it's not offering any other suggestions, suggesting what
you've typed is unnecessary and confusing and it should just
hide completely instead.
Trac #1476
(imported from commit ff69bb53c661e0a3a193dbddde6e7a4ff8b10031)
This seems to have been somehow introduced in the refactoring to move
the popovers into their own file
(36ad3c61e4d7eb05751f9b886d15edceab656d71).
(imported from commit f5f58844a9c2da4b4433489be1772263f3aba350)
This fix also cleans up the search operators so that @-mentions
and Private messages have a more similar naming convention.
(imported from commit fb1a2119aab5aa9e179c6e321a8d2ef2e90290cf)
This scrolling behavior is driving me crazy on staging.
Reverting until we come up with a better alternative.
This reverts commit 41954fecd9efb43820ed1ccb5210283c17752f51.
(imported from commit 2db602cf51ca734b00ec1bd454c39204468fa024)
This is one case I forgot from the last commit. For example, if the
message actions popover is open, and you open the user sidebar popover,
the message actions popover should close. It now does.
(imported from commit a241634cb1aabf8883cf95ebd5b8ba96f5ed9908)
A cleaner, more general solution would be nice but this fixes at least
the most obvious cases for now.
(imported from commit fc7260e25a4f2172eee74af9c2d9384898947ad3)