When we rebuild the user list from scratch, set the unread
counts in the templates to avoid multiple DOM updates.
(imported from commit 2d0c9b0fb99b382332e464ba7c3caad95e05363e)
The rest of the Settings page seems to eschew the colon, so this
change makes the bot listing consistent.
(imported from commit d13ac811b230413f9bbc9718fb7ec35898bdf392)
We now use window.innerWidth to check for CUSTOMER7's skinny
mode, which empirically seems to be more consistent with
CSS's max-width @media settings.
I tested under FF, Safari, and Chrome.
(imported from commit d440998634633c11b471fe732104be252c979cd4)
We now have a stand-in message that says "Loading CSS...", which
only gets hidden once the CSS loads. This is a better user
experience than seeing completely unformatted Zulip HTML on the
page. The message is set to fill the whole page, and it's cleared
once zulip.css gets loaded.
(imported from commit 613fe3d6a39197aabfeb63823b7fad75834bb9eb)
This reverts commit f81f4b2739cbf8e3d3c2db5e467cf55b65f0c2bd.
Conflicts:
static/styles/zulip.css
(imported from commit 6e62619a5f16f120134b222b331a066a57b7cfc6)
This reverts commit b3f8f8f79952c34cdf4087683210bab6e4e46a27.
This seems to break some of our copy-and-pasting code.
(imported from commit 052296a0f4bdb47342708a5e520be260863ccafd)
For some reason "font-style: italic" causes the "(more topics)" link
to be invisible for a while.
(imported from commit e75610e4b1f1263a48dac76ab8d01bb4a29c3d47)
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)
Reported to us by one of our users - prior to this change, code blocks
get sort of cut off by our "selected message" highlight.
(imported from commit 395ae41baca12ea55bc39048b4291e29f78a8db5)
This link lets you zoom in to more topics. We only show it if
there are topics that we had to hide to respect the max-5 limit
along with other rules of when you show topics.
This is feature flagged to staging only.
(imported from commit 9915004ec2eb3df7416fe45c0e60cebcd7fecfea)
This commit doesn't actually add the final UI to zoom/unzoom
topics, because I want to keep those in separate commits, in
case we change how to enable the feature. But this commit
adds a toggle_zoom() function that zooms/unzooms topics.
Zooming is minimally invasive, because we don't really introduce
many extra elements to the UI; instead, we just make the list of
streams be a list of length one (i.e. the active stream). This
gives us a lot of stuff for free, basically, like unread counts, etc.
(imported from commit 814c1361b6210d1591b4174bed1d6e0c98a3f255)
This moves the notify-not-in-view notifications into the composebox area.
It also tries to be a bit smarter about what action it links and what it displays.
(imported from commit 1c79bd0d9ef972059a006b17501a09b72e961ee3)
If a user types "/me runs to the store", we put "runs to the store"
in bold after their name.
(imported from commit fbc11e99244e1c8fa1c03e4753e706957fcd449e)
Show up to 10 of your recent group PM conversations in the right
sidebar. Clicking on the links narrows to the huddle and opens the
compose box for the huddle. The green circles have opacity
proportional to the number of users present in the huddle.
This is feature flagged to staging only.
Some of this code was written by Allen before commits were squashed.
Known issue: unread counts disappear on certain refresh events.
(imported from commit 3b44665150ba20594d8b0295cb30df03601c1d52)
Looking at the historical data, fewer than 50% of active users have
completed the checklist, which means that it is just persistent
clutter. We also have other better ways of encouraging people to send
traffic and get the apps now.
This commit removes both the frontend UI and backend work but leaves
the db row for now for the historical data.
(imported from commit e8f5780be37bbc75f794fb118e4dd41d8811f2bf)
We were using Gravatar for user avatars, but now users can
upload their avatars directly to Zulip, and we will store
their avatar for them. This removes the old Gravatar-related
interface and polling code.
This commit does not attempt to update the avatars in
messages that have already been loaded, either for the user
making the change or other users.
(imported from commit 301dc48f96f83de0136c93de57055638c79e0961)
Currently, code blocks end up with scrollbars annoyingly frequently --
even with a maximum width window, you can't fit a standard 80
character terminal worth without needing a scrollbar. This change
causes our code block text to be the same size as normal text and
inline code blocks.
(imported from commit c2fc7e008cc514e90387f8f0db2b49e357cf4f62)
The main user-facing feature here is that users can open narrows
in new tabs or windows. Internally, it makes the HTML more semantic.
One consequence of making these elements into actual anchor tags
is that clicking on them no longer triggers this logic to
close the compose box when you click outside of it:
// Unfocus our compose area if we click out of it. Don't let exits out
// of modals or selecting text (for copy+paste) trigger cancelling.
if (compose.composing() && !$(e.target).is("a") &&
($(e.target).closest(".modal").length === 0) &&
window.getSelection().toString() === "") {
compose.cancel();
}
Instead of patching the above code, I elected to just call
compose.cancel() explicitly in the click handlers for the links
themselves.
We are gonna try to clean up the compose-box behavior globally soon.
(imported from commit c9a01916f1714fe3dd495d25c78cd5e5532105ef)
For whatever reason, it makes it easier to compare the detail pages
when they are full width, since each column is in a more or less
consistent place every time.
(imported from commit cba47ac1a370884c0397d26d6028248f0b9cc9d7)
The previous setting of 1.4em translates to about 19.6px. In the case of
the CUSTOMER4 emoji, 19.6px looks bad in Firefox on Linux while 20px
looks fine.
(imported from commit 01de911076e5f54e4aee96dc9edd3d40f03a4bb3)
It had an invisible part that didn't hide, which covered the send button
in skinny, leading to Trac #1776.
(imported from commit faec9413539238c40c584ab636fc4d75618a5935)
If the date_row is between two messages, it tells you when the message
below was sent, but not when the message above was sent--for that you'd
either have to click on a message or keep scrolling up. This is especially
annoying when there are sometimes gap days on a particular stream (you shouldn't
assume that the message above is simply from the previous day).
This adds the date of the previous message (the time above) to the date_row.
(imported from commit 4c6c956118ae09fedca042e797a6029fdd26e00c)
In particular:
* Pull the count containers out of the containers that cut off overflow text
* Make them lozenge-like
* Add logic for shortening the overflow container when a count container is
present
(imported from commit a2b3d237cbfe4fadfbbc3a931d2de85dfba10d04)
Specifically:
* Add and style the sidebar toggle button to the header and remove the
gravatar.
* Add the logic for retracting the left side bar.
* Modify the logic for clicking on the referral pane to prevent it from
closing the sidebar.
* Modify the logic for clicking on the stream filters to prevent them
from closing the sidebar.
* Modify the logic for clicking on the stream settings dropdown and the
user info dropdown to prevent them from closing the sidebars.
(imported from commit 73e00eb834a6e87cb8d659fdcf6c2e06fff3731d)
As part of this commit:
* Add and style a top right button that controls the sidebar
* Add the necessary styles for the right sidebar when it's in that mode.
* Add the logic for controlling the sidebar expansion
* Modify the logic for prevent default click events to generally
hide popovers correctly.
(imported from commit ca8063f6c62b436799f952e88541ff0ae8ba85fe)
Home/All/Private/Starred/@-mentions lost their left padding due to a
mistake in 700b444. Restored here.
(imported from commit 9a4d5ab5d376e64ba82802097c30449c6544a5e9)
This helps make our statuses more meaningful and should resolve trac #1534.
As part of this, we lower OFFLINE_THRESHOLD_SECS to 1.1̅6 minutes and
mark the user as idle after 5 minutes.
(imported from commit ee6b1ad203554a84b11e16c4c6195be9df5bcf4f)
This change would allow anyone in the realm to set a topic for a "no topic"
message. As soon as the message topic is set, only the sender can change it again.
(imported from commit 0a91a93b8fd14549965cedc79f45ffd869d82307)
Specifically:
* Fix the settings menu positioning and appearance
* Restyle menu and add arrow on top
* Remove labels from new message buttons in narrow windows and adjust the close button on the composition pane
(imported from commit 586753b6526289b32ec0a90b62d8b2ac1c8182cd)
Specifically:
* Remove min width setting for the main div as it is no longer necessary.
* Change max width for the app to 1200 and adjust top margin on the message pane
(imported from commit 846dd3dcd7798efa615e15c61681b0ab7465f5e3)
When you read messages in a narrow and then un-narrow, collapse
adjacent messages read in the narrow into a summary row that can
be clicked to expand those messages.
Scoped to staging with feature flags.
The implementation of this within our current MessageList is rather ugly.
(imported from commit bcb3a39d8c0c334136fe86318f18ead03f0f50bf)
For now, we just get emails about referrals that we have to follow up
on manually.
I don't love using the name "referral" in some places and "invite" in
others, but we already use the verb "invite" to mean something else
and "invite" is a canonical noun.
(imported from commit 0814c18395952fcdef234c1584984f71ca1b6f37)
Bug was introduced by 9152e6e128e0ac38d97d893cb8243e3b9185351b, which
requests gravatars at 2x size (for retina displays).
They are now 25px, which is a little on the small side, but will do for
now. Properly centered.
(imported from commit 769b71101d62206cde1341b9b6b11fbb7925ae28)
This is a bit wasteful on most systems, but will result in their
looking pretty sharp on Retina displays.
(I also go and actually fix up the size we request for a bunch of
these so that they actually match the size of the gravatar in the
document -- previously we were requesting a size 30 gravatar when we
were displaying it in a size 25 space, which leads to unnecessary
ugliness upon resize.)
(imported from commit 9152e6e128e0ac38d97d893cb8243e3b9185351b)
Gone are the days of having to laboriously look up the Unicode
for each icon when you need it!
(imported from commit 35ce9c2626ac1ff0b5f4e7d6679129e8d533033e)
This is a compromise between the old color when selected and when not
selected. It makes the border a little easier to see while still being
subtle.
(imported from commit 7177d8f688af3de15f3e309d6a9c7c248acb1db4)
Since we no longer change the selected message's background color, it
doesn't make sense for these other colors to still change when the
message is selected.
(imported from commit a7c387e7d390b7f2973dc6bd3168651d88880139)
The width setting was unintentional, and it interferes with
the inline-block settings for the image and bot info.
(imported from commit 741c82829efed00b6d47badcf14b26223b47a7a9)