Commit Graph

74 Commits

Author SHA1 Message Date
SiddharthVarshney fb3484df52 stream-settings: Change checkbox UI.
These checkboxes will now be more consistent
in design as we have in other part of the UI.

e.preventDefault() is added inside the
stream_is_muted_clicked function will disable
the default checkbox and make sure click event
come from only <span> part of the checkbox.
2020-07-21 13:27:21 -07:00
Gittenburg 2fe8d7507d settings: Fix media-query edge case.
If your browser width was between 701px and 750px you got the mobile
view without the mobile header preventing you from changing sections in
the settings menu.

This was caused by a media-query mismatch:

subscriptions.scss used @media (max-width: 750px)
settings.scss however used @media (max-width: 700px)

Comments added by tabbott to help avoid future bugs like this.
2020-06-25 11:08:40 -07:00
sahil839 d9b7228444 streams: Add frontend to set/update message_retention_days of a stream.
This commit adds frontend support for setting and updating message
retention days of a stream from stream settings.

Message retention days can be changed from stream privacy modal of the
stream and can be set from stream_creation_form while creating streams.

Only admins can create streams with message_retention_days value other
than realm_default.

This commit also contains relevant changes to docs.
2020-06-18 17:00:34 -07:00
sahil839 e52b544213 stream settings: Add pills in add subscribers input.
This commit changes the stream settings UI for adding subscribers to
use our standard user pills in the input box, rather than just
plain-text email addresses.  This is important progress towards
removing display email addresses from the Zulip UI.

It also allows subscribing multiple users at the same time, which is a
nice improvement.
2020-06-02 15:32:26 -07:00
Anders Kaseorg 30ab261f91 styles: Undo calc(x + y) → calc(x - -y) workaround.
The bug this was working around does not affect our current toolchain,
as confirmed by grepping through the minified output.

(Also, this linter rule only matched calc(x + y) with two arguments
and we were already using calc($far_left_gutter_size + $left_col_size
+ 4px).)

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2020-05-27 16:29:25 -07:00
Siddharth Varshney a5f0379e0f settings: Fix streams tab-switcher misalignment for iPad size devices.
Fixes: #14913.
2020-05-26 15:25:01 -07:00
Pragati Agrawal d333d82693 stream settings: Move the "Saving" widget to "Personal settings" block.
Rather than showing the "Saving" widget beside stream name, it's more
intuitive to have it in personal settings section because it's the only
section which uses `settings_ui.do_settings_change` function and we follow
having a separate "Saving" widget for each section everywhere.
2020-05-24 16:32:36 -07:00
Anders Kaseorg b26a420c7a styles: Size full-viewport fixed elements as 100%, not 100vw × 100vh.
Mobile Chrome includes the height of the address bar in its
calculation of 100vh, which was causing a corresponding part of our
content to be pushed off the bottom of the screen.

Fixes #11324.

Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-23 15:47:43 -07:00
Roland Crosby ac7ec426b0 Add stream sorting widget to subscriptions page
This change adds a toggle widget to the "add streams" page that
lets the user change the sort order of the streams list. So far,
this supports sorting by stream name, by number of subscribers,
or by estimated weekly traffic.
2020-04-19 15:07:37 -04:00
jiviteshjain 3da483487a manage streams: Move stream filter to next line.
Previously, in narrow viewports, the "filter"
option would disappear, which was very confusing.

This commit moves the filter streams input to the
next line, making it visible at all viewport widths.

@showell modified the commit message and got Casper
tests passing.

Fixes #12898.
2020-04-19 09:59:11 -04:00
Pranav 3b71e0dbfb stream settings: Fix UI feedback on clicking checkbox to subscribe.
Before this change, on clicking a checkbox to toggle subscription to a
stream no UI feedback was shown and users could toggle the checkbox
multiple times to send multiple requests causing bugs. This commit
initializes a spinner on clicking the checkbox, to provide a UI feedback
to the user. This commit also disables the checkbox once a request for
subscription has been sent and re-enables the checkbox only after a
response.

This change has been accomplished by introducing a div to display the
spinner in subscription.hbs. The corresponding styles for the spinner
have been added in subscriptions.scss. The ajaxSubscribe &
ajaxUnsubscribe functions in subs.js have been updated to show & hide
the spinners for the time the request is in process. An additional
parameter, the concerned stream object is passed to these functions(
through the sub_or_unsub function) to get the location where the spinner
is to be displayed. Finally, the checkbox click handler is updated to
support these changes.

The testing for this has been done by adding a wait of 2 secs in
actions.py for the response. This gives sufficient time to test the
working manually. Also, for error cases an error has been sent from
action.py and the behaviour has been manually observed.

Fixes #14481.
2020-04-18 22:00:02 -07:00
Ryan Rehman 39577b58ba stream settings: Display success/failure status for edits.
We have an alert for when the stream name is changed.
This also adds an alert when subscription settings
are updated and the widget is similar to that used in
the settings page.

This is also necessary because the stream specific
notification settings UI updation goes through this
path and it is necessary to display a confirmation
to match with other settings confirmation pattern.
2020-04-01 14:40:41 -07:00
Vaibhav Raj Singh ee9678a2bd stream settings: Fix issues with viewing/editing long stream names.
In continuation to #13250

CHANGES:
-the stream name edit button is now visible for long names too.
-ellipsis are removed when you click on edit name option.
-added border while editing name to give a text-box feel.

REASONS:
-added border while editing the name to give a textbox-esque feel.
-text overflow was changed from ellipsis to clip (while editing) as
ellipsis prevented editing the entire name (clip provides better
functionality).

The last two changes are reverted back to original (i.e. ellipsis and
no border) once you finish editing the stream name.

P.S.- clicking on anywhere else updates the new name perfectly
2020-03-25 17:56:32 -07:00
Vaibhav Raj Singh 9f150385bc design: Fixes height of view stream button.
The view stream button had a line-height property which messed up
its height. Fixed it by removing the line-height property.
2020-02-02 21:34:00 -08:00
Vaibhav Raj Singh 3dec7f6f6f design: Fixes poor line wrapping of long stream names using ellipses.
Earlier, on narrowing the window to some particular sizes,
long stream names used to overlap with the subscribe and view stream
buttons.
The issue was resolved by cutting the stream name short and putting
ellipses at the end. A title was provided to the stream name div so that
the entire stream name would be visible on hovering over it.

Fixes: #13139
2020-02-02 21:34:00 -08:00
Anders Kaseorg 27fac76da8 styles: Move media queries into the files they override.
Webpack code splitting will make the inclusion order of CSS files less
obvious, and we need to guarantee that these rules follow the rules
they override.

Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2019-10-28 15:39:17 -07:00
Tim Abbott 7ca65b2bb5 css: Remove buggy stream settings media CSS for narrow windows.
This caused weird behavior in the relevant band of window widths, and
removing it works considerably better.

There's still bad behavior in handling situations where the stream
name is too long and thus this wraps, but we should address that
as a follow-up.
2019-09-05 11:57:27 -07:00
Mateusz Mandera bf7f4f3f1b stream settings: Replace email address hint popup with link to docs.
Fixes #13134 as the last commit in the series for this issue.
Solves the "The (?) should just be a target=_blank link to
/help/message-a-stream-by-email." part of the issue.
As a result, a bunch code managing the email hint popup can be deleted,
together with a node test for that.
2019-09-05 11:48:32 -07:00
Anders Kaseorg abbd8a7f45 styles: Remove most vendor-prefixed CSS attributes.
Many of them are now automatically generated by autoprefixer, while
others are unnecessary based on .browserslistrc, and some were just
wrong (the linear-gradient based checkerboard pattern in lightbox has
been broken in Firefox for a while).

Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2019-08-30 14:51:52 -07:00
Vaibhav aa29ef0317 css: Use SCSS nesting for 700px media queries in subscriptions.scss. 2019-08-07 17:42:10 -07:00
Vaibhav 5aa22f4acd css: Reorder so `.subscriptions-container` are in same place. 2019-08-07 17:42:10 -07:00
Vaibhav 7019b8a4c6 css: Use SCSS nesting in subscriptions.scss media queries. 2019-08-07 17:42:10 -07:00
Vaibhav 1b1e74bc24 css: Use SCSS nesting for `ul.grey-box`. 2019-08-07 17:42:10 -07:00
Vaibhav 6bd6b846a5 css: Reorder subscriptions.scss so `.large-icon` are in same place. 2019-07-25 14:44:58 -07:00
Vaibhav 36b78b034b css: Remove redundant rules from `.large-icon.hash`. 2019-07-25 14:44:58 -07:00
Vaibhav 350bcbea80 css: Use SCSS nesting for `#subscriptions_overlay`. 2019-07-25 14:44:58 -07:00
Vaibhav 86bff0c3ce css: Nest elements inside `#subscription_overlay`. 2019-07-25 14:44:58 -07:00
Vaibhav 37f70adeb6 css: Use SCSS nesting for `.editable-section`. 2019-07-25 14:44:58 -07:00
Vaibhav 4c70a23d43 css: Nest `#stream_creation_form` inside `#stream-creation`. 2019-07-25 14:44:58 -07:00
Vaibhav 4886f3b8f0 css: Use SCSS nesting for `#stream_creation_form`. 2019-07-25 14:44:58 -07:00
Vaibhav dd6494343a css: Use SCSS nesting for `#stream-creation`. 2019-07-25 14:44:58 -07:00
Vaibhav bd7fc23d30 css: Nest elements inside `#subscription_overlay #stream_creation`. 2019-07-25 14:44:58 -07:00
Vaibhav 4fc3878b00 css: Use SCSS nesting for `.stream-creation-body`. 2019-07-25 14:44:58 -07:00
Vaibhav 6a840e39f6 css: Nest `#announce-new-stream` inside `.stream-creation-body`. 2019-07-25 14:44:58 -07:00
Vaibhav 33bc11980d css: Use SCSS nesting for `.create_stream_button`. 2019-07-25 14:44:58 -07:00
Vaibhav ba2d609e6a css: Nest `.subscriptions-header` inside `.subscriptions-container`. 2019-07-18 11:41:18 -07:00
Vaibhav d104935d69 css: Nest `.display-type` inside `.subscriptions-container .right`. 2019-07-18 11:41:18 -07:00
Vaibhav bafcad8ef3 css: Use SCSS nesting for `.subscriptions-container`. 2019-07-18 11:41:18 -07:00
Vaibhav ef64f33808 css: Reorder subscriptions.scss so .subscriptons-container is in same place. 2019-07-18 11:41:18 -07:00
Vaibhav 3c0f447f1a css: Use SCSS nesting for `.subscriptions-header`. 2019-07-18 11:41:18 -07:00
Vaibhav 279b52ac82 css: Reorder subscriptions.scss so .subscriptions-header is in same place. 2019-07-18 11:41:18 -07:00
Vaibhav 81a7467441 css: Nest `.subscriber-list` inside `.subscriber_list_container`. 2019-07-11 12:23:42 -07:00
Vaibhav 52027af52a css: Nest `.subscriber_list_container` inside `.subscriber-list-box`. 2019-07-11 12:23:42 -07:00
Vaibhav 57aedf0a46 css: Use SCSS nesting for `.subscriber_list_container`. 2019-07-11 12:23:42 -07:00
Vaibhav f27031925a css: Use SCSS nesting for `.subscriber-list`. 2019-07-11 12:23:42 -07:00
Vaibhav 39f6d0a71b css: Reorder subscriptions.scss so `.subscriber-list` are in same place. 2019-07-11 12:23:42 -07:00
Vaibhav 239278ed90 css: Use SCSS nesting for `.stream-row`. 2019-07-10 11:30:56 -07:00
Vaibhav 95dbe28aeb css: Use SCSS nesting for `.stream-row .sub-info-box`. 2019-07-10 11:30:42 -07:00
Vaibhav b5bd0fd4f4 css: Reorder subscriptions.scss to group `sub-info-box *`. 2019-07-10 11:30:36 -07:00
Vaibhav 8af03b92a0 css: Use SCSS nesting in subscriptions.scss for `.stream-row .icon`. 2019-07-08 16:23:17 -07:00