Commit Graph

642 Commits

Author SHA1 Message Date
Waseem Daher 0181ec3ef8 Expand scope of "clicking notification causes narrow" experiment.
(imported from commit aa260386c6cf1be9d9c0122bc9daf971650560d0)
2013-12-06 16:37:22 -05:00
Tim Abbott 458c066925 Add reporting for how long narrowing takes in the wild.
I'd also like to add a database table to actually store the values
that we get out of this and our send message requests for future
inspection, but for now, grepping logs+statsd is good enough.

(imported from commit 99ef179651850217fe6e82c5e928d122ca91101e)
2013-12-06 10:28:01 -05:00
Steve Howell f923c15ba8 Change signature of ui.process_condensing().
I renamed ui.process_condensing() to ui.condense_and_collapse(),
and, more importantly, it now takes a list of elements, not a single
element, which allows us to do some computations outside the loop.

(imported from commit d5984088030c2a0d4ec8b258c7fcec3e84caf2b1)
2013-12-05 16:42:07 -05:00
Steve Howell 983f29eac4 Inline ui.could_be_condensed().
This sets us up for the next commit, where we will change
process_condensing to loop over several elements, and we will
not need to recompute height_cutoff every time.

(imported from commit 1cc5b44598b85d1e301bc84492e4dc38f41ec16e)
2013-12-05 16:42:06 -05:00
Leo Franchi 2452a5c0b2 Broadcast an event right before and after doing the WebSocket handshake
(imported from commit 29b80c3b72a2f98c25b59dca3d1597cc5e5f2605)
2013-12-05 16:21:59 -05:00
Zev Benjamin e7b31fd6ad Re-enable use_socket on staging
(imported from commit f96c892409ce554109d4bfef9bd1d364db344e8b)
2013-12-05 15:53:50 -05:00
Zev Benjamin 3bd3991d1b socket: Also cancel ACK timeouts on reconnect
We know we'll never get them and we don't want to trigger additional
reconnects.

(imported from commit c8f932cda378cacf0242aa57bbc829d2f51de2e1)
2013-12-05 15:53:50 -05:00
Zev Benjamin 682a1c92e0 socket: Catch INVALID_STATE_ERR on send
(imported from commit 190652bce7e433c6a237ac99c0c222902bb24f55)
2013-12-05 15:53:50 -05:00
Zev Benjamin cd9a44f35b socket: Cancel pending auth requests on reconnect
(imported from commit 02ea7c1592ef48e2596a0dfd4830c2307a3e7df4)
2013-12-05 15:53:50 -05:00
Zev Benjamin 6eeee0a4f3 socket: Ensure the SockJS object is closed when reconnecting
Without an explicit close, we will continue to get messages on the old
connection, even once we replace the _sockjs property.  This leads to
"impossible" situations, such as receiving ACKs after reconnecting.

(imported from commit f8927fdf0551610e5b9d1db29bba00e160e76b6d)
2013-12-05 15:53:50 -05:00
Allen Rabinovich 30de0b3e77 Add a method for switching to full width and a feature flag to enable full width on staging.
(imported from commit bc7b3a5c8c17ca84e192a63711663cd605425b7f)
2013-12-05 12:41:25 -07:00
Tim Abbott 07cbbfdfda Upgrade slow send restart of get_updates requests to blueslip.error.
Now that this is no longer a known problem with our product, we want
to hear about it when it happens.

I worry a bit that a 2s fuse may be too aggressive for the case of
customers in Europe, but it might be OK.

(imported from commit d1bd6b85cd8dffab9c0d0fd410de5331736b00af)
2013-12-05 14:37:01 -05:00
Steve Howell 70b0e73a24 Support sender:me and pm-with:me search syntax.
We convert sender:me to sender:steve@zulip.com at parsing time,
so users will see the canonicalization in the search bar.  Likewise
for pm-with.

(imported from commit aa9951f13d4633cfef85f03e5486d607fdef414f)
2013-12-05 13:49:04 -05:00
Steve Howell 686c039c81 Turn on topic zooming for everyone.
(imported from commit ca9664d1b838b09615380f48802384fbb33111fa)
2013-12-05 11:38:59 -05:00
Waseem Daher 052b8a3b59 Push experimental background colors out to MIT.
(imported from commit e7420e55b616f2e885a74391b9b3e4452d9bb25d)
2013-12-05 11:16:57 -05:00
Waseem Daher 010475d49f Enable experimental background color for staging.
(imported from commit 833b25ae48e44bc7749463b7dd26418d6e25703a)
2013-12-04 14:15:23 -05:00
Allen Rabinovich 9f226e4cd2 Add a background switcher function.
(imported from commit a9bd0403637c5da04d93c0ff5e1dd0272238f0a6)
2013-12-04 11:07:12 -07:00
acrefoot 1a21db1170 Fix problem with presence list popovers persisting
This addresses Trac #2090

(imported from commit e98a3dae8e946ec7fdb027d3619ae2b0ddbdbf51)
2013-12-04 11:32:59 -05:00
Steve Howell a4c92093a0 Move #users_presence span.arrow click handler in file.
This is purely cosmetic, to keep similar click handlers near
each other.

(imported from commit 6238905462c7a2edae879cad3ee8822f9a854a1d)
2013-12-03 18:39:44 -05:00
Steve Howell d5b0093d0f Remove unused last_sidebar_elem vars.
(imported from commit ec54c62dd0db68956184ec2ed6f07594e023ef64)
2013-12-03 18:39:44 -05:00
Steve Howell 51fe87fcd6 Kill off dead code: show_user_sidebar_popover().
This code isn't really so much dead; it was never even born. :)

(imported from commit 0351b611dae7c0868cc5c3e2c76c010601c1e8ba)
2013-12-03 18:39:44 -05:00
Jeff Arnold ec56e946a7 Only manually update fading if the compose box is staying open
(compose.start() and compose.cancel() both update the fading themselves)

(imported from commit 63ce2f54106c8cce2306b0c1f3ce56e06f24235f)
2013-12-03 16:58:50 -05:00
Jeff Arnold 2cd7c35875 Make c/C compose to a new destination instead of being identical to r/R
R means "I want to send a PM, you can guess the destination"
r means "I want send a stream message, you can guess the destination"
C means "I want to send a PM and specify the destination"
c means "I want to send a stream message and specify the destination"

(imported from commit 4c93cc3029892c21accadd9624da70ee818dec68)
2013-12-03 16:58:50 -05:00
Tim Abbott 6808b5b5fe Disable scrollTop blueslip error for now.
I think we've got plenty of data of user agent strings for when this
warning triggers at this point.

(imported from commit 8bf6601a325b8e35f5127914a447bd522439c531)
2013-12-03 14:32:44 -05:00
Steve Howell 80ec6ff8bc Remove transitional show_huddles flag.
(imported from commit 37f6cdb4f62076faa1e977ec9b0a53cc461f0d11)
2013-12-03 10:45:01 -05:00
Steve Howell fa5681d93b Turn on clicking_notification_causes_narrow for CUSTOMER4.
(imported from commit edf7a341fb66a3783fe933424eeb8dea65cf2954)
2013-12-03 10:45:01 -05:00
Steve Howell 36a7944d2a Give topic zooming to CUSTOMER4.
(imported from commit 7f509f3d32b61708c64bfe2d5982485d8488a44e)
2013-12-03 10:45:00 -05:00
Jessica McKellar c46e5fd0f1 Feature flag the digest emails setting to staging.
(imported from commit 1239ce31281850dccf8f65d0c7156bd2c86ca3a7)
2013-12-02 18:58:04 -05:00
Jessica McKellar c1058355f6 Add a digest emails checkbox to your settings page.
(imported from commit cf1dbae6ca30d2489a77e822c34941a986b93bbd)
2013-12-02 18:58:03 -05:00
Tim Abbott 55acdb546e Add @-everyone to the composebox autocomplete.
(imported from commit 32476a92d4df06b566eeb701bab119c395d9d4bd)
2013-12-02 16:03:21 -05:00
Tim Abbott ef906c3cd3 Fix traceback when unnarrowing before home message list has loaded.
If we load a browser window in a narrowed view and then un-narrow
before the home message list has loaded, we end up attempting to
select message ID -1 from home_msg_list even though it is empty,
triggering a traceback.

(imported from commit eb8b686f6e9c1fa518028e5755ac6196781e92d7)
2013-12-02 16:03:21 -05:00
Steve Howell 00946f97df Log more data for "Cannot select id -1".
Show the incoming id and the length of this._items.

(imported from commit 106dda862918a4f40481a5692cbfee1738218150)
2013-12-02 15:45:40 -05:00
Steve Howell 45a23712ff Select first unread msg when narrowing from user sidebars.
(imported from commit a57508fb2084559c968b23ec4643b7484cbba6cb)
2013-12-02 15:43:34 -05:00
Waseem Daher ebfcdfd35e Disable user-visible UI for editing messages, for MIT.
This doesn't actually prevent a user from making the API call into our
servers to actually go and edit a message, so this isn't a bulletproof
solution for realms where messages ABSOLUTELY MUST NOT be edited.

(imported from commit 5bf043a201e2952189b45f93b8c5ca7648f6aee7)
2013-11-30 18:32:14 -05:00
Waseem Daher aeaac45fd0 Hide right-sidebar user/group PM list from MIT.
(imported from commit 2e3ba1ffd3a33450580a164c0aa1ced23eee37c2)
2013-11-30 18:31:05 -05:00
Waseem Daher 57b6ba4250 Revert "Respect enter-to-send in edit box"
I love press-enter-to-send but find this behavior confusing when
I'm in an edit box -- if we're going to respect it, we should
do so obviously (with a checkbox visible).

This reverts commit 6e3fc6495b7012aa12728a78b8bdd95701bb21e1.

(imported from commit d1ae16110f5504e879e315037c85c211ba3bca9a)
2013-11-28 13:51:45 -08:00
Steve Howell c6a5e8de34 Give MIT topic zooming.
(imported from commit f68db6e21d91f5eb9a57c10b5abdbea9c039fd4e)
2013-11-27 19:17:09 -05:00
Steve Howell 15d520ae1d Turn on topic zooming for three realms.
Turn on topic zooming for three realms with users who
requested to see more than five topics (tracked on #1248).

(imported from commit 56c73926a9f3c1006451a3e4a01b7661807908b5)
2013-11-27 18:34:22 -05:00
Steve Howell c53845a69c Add unit tests for stream_list.
(imported from commit 1d04a2e6115f29b7949466260ec2ba3126b882e6)
2013-11-27 15:09:20 -05:00
Tim Abbott 53059bb10c Fix lint issues with recent pointer bug fix.
(imported from commit d2a9725e8449609fdd29d2c727730934eb4de763)
2013-11-27 10:58:13 -05:00
Jeff Arnold 56fb3dd877 When closing the compose box, hide it first for perceived speed
(imported from commit 598585365141681a5573ad4fe9905be34ac92dd6)
2013-11-27 10:45:22 -05:00
Jeff Arnold 22d0ee55f6 autosize_textarea() is slow, so avoid it while the user is waiting
We need to resize the textarea when it is changed via .val().  By
clearing and resizing the compose box when it is closed, we can
avoid calling autosize_textarea() when the user opens the compose box.

This saves at least 15ms on every compose and might also be a cause
of longer delays.

(imported from commit fe6e092efcd1c4b95a868ee66653448f99af84c0)
2013-11-27 10:45:22 -05:00
Jeff Arnold 3a41184533 Revert "Make c/C compose to a new destination instead of being identical to r/R"
This reverts commit 755c92aed79ab79089b2e35d2c100582f012736a.

(imported from commit b7790fc63a2cea0a8e294c3f0a881ed6f06ed061)
2013-11-27 10:43:10 -05:00
Jeff Arnold c0a8fc459a Make c/C compose to a new destination instead of being identical to r/R
R means "I want to send a PM, you can guess the destination"
r means "I want send a stream message, you can guess the destination"
C means "I want to send a PM and specify the destination"
c means "I want to send a stream message and specify the destination"

(imported from commit 755c92aed79ab79089b2e35d2c100582f012736a)
2013-11-27 10:35:37 -05:00
Tim Abbott 09481aab69 Don't throw blueslip errors when trying to scroll to a negative offset.
(imported from commit 1edd0ced20016f817e0380c4fc341ca44cc51426)
2013-11-27 10:17:55 -05:00
Tim Abbott 3d9ad287fa Fix weird scrolling bug in Chrome on OSX.
We encountered a strange bug in Chrome on OSX where the initial call
to set scrollTop when the browser window loads did not do anything,
until we first scrolled to some other location on the page.  This
patch "fixes" that by automatically scrolling somewhere else before
scrolling to the target place on the page.

(imported from commit 96be6a0016e9e5fd78380613c9587f38406604df)
2013-11-27 10:12:27 -05:00
Steve Howell eb9f7a04b7 Rewrite topic zoom to fix bugs and make cleaner.
In the first cut at topic zoom, I was re-rendering the
streams list, but this created glitches with orphaned
list items.  The reproducible bug was that unread counts
on unshown streams weren't updating.

In the new approach, I keep the elements more permanent, and
I just hide and show them as needed, either through jQuery
show/hide or permanent CSS selectors.

I got rid of toggle_zoom(), so that we just explicitly zoom
in and zoom out in all situations.  In particular, when we
narrow, it's more clear now that only stay zoomed in when
we're narrowing to the same stream as before (including topic
narrows within that stream).

When you zoom in, the number of topics is no longer limited
to 30, since that was kind of arbitrary anyway.  (In practice,
the number of topics is usually well under 30, anyway, due to
the way we track them on the client.)

(imported from commit 5b6c143dee9ba9fe557d8cc36335ff28efb4b0de)
2013-11-26 18:19:49 -05:00
Steve Howell 90bb398784 Revert "[staging] Double-clicking on stream row toggles its zoom level."
This reverts commit 6fdb3cacd68635f313f2a8a81edf2d6101cce2cb.

(imported from commit 6e95bd8caa1b7e327f91a8b7aded72b787d1420a)
2013-11-26 18:19:48 -05:00
Steve Howell c710a54a99 Avoid flicker when narrowing to non-stream view.
(imported from commit a69fd4fe582d56e89990f97a3d3099ea1225315c)
2013-11-26 11:09:38 -05:00
Steve Howell b3e0c93ca6 Zoom out topics when going to Home view.
(imported from commit 04c5ae70d28bd3b41f2311d22f80f95c458f06a2)
2013-11-26 11:09:37 -05:00