zulip/static/js
Challa Venkata Raghava Reddy 8623a02d98 streams: Avoid showing more topics option when it's useless.
This makes the "more topics" option which appears below the list of
known topics in the left sidebar appear only when it's possible there
are actually more topics to be displayed.  Two specific cases it
resolves completely include:

* Newly created realms; this widget was a common source of confusion
  for new organization administrators.
* Newly created streams.

There are still some corner cases this doesn't handle, e.g. if you
just joined a private stream with protected history, but there isn't
as easy a fix for those.

Essentially rewritten by tabbott to fix code duplication and comment
extensively.

Fixes #10265.
2019-03-14 21:51:24 -07:00
..
billing billing: Use this.value instead of .val(). 2019-02-04 22:37:05 -08:00
bundles css: Split out user_circles.scss. 2019-02-18 14:22:37 -08:00
portico registration: Don't remove LDAP populated full name. 2019-01-17 10:16:48 -08:00
stats stats: Fix the bug in showing all time actives by default. 2019-02-01 11:14:03 -08:00
.eslintrc.json
activity.js private messages: Add user circles to top left. 2019-02-18 14:22:37 -08:00
admin.js settings: Fix handling of day logo without night logo. 2019-02-20 17:55:48 -08:00
alert_words.js lint: Add eslint enforcement for comma-spacing. 2018-12-07 12:22:24 -08:00
alert_words_ui.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
archive.js message_list: Rename show_date_separator to show_group_date_divider. 2019-02-08 11:30:15 -08:00
attachments_ui.js uploads: Show used upload space in attachments UI. 2019-03-07 20:18:00 -08:00
avatar.js settings: Fix width not maximum while uploading user avatar. 2018-10-19 12:36:18 -07:00
blueslip.js Change ui check to ui_report in blueslip. 2018-08-03 15:59:10 -07:00
bot_data.js statis/js/bot_data.js: Add `get_bot_owner_email` function. 2018-11-16 09:52:05 -08:00
buddy_data.js user status: Change Active now to Online now in full user profile. 2019-03-14 15:19:09 -07:00
buddy_list.js refactor: Split out buddy_list_conf(). 2018-10-16 16:53:47 -07:00
channel.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
click_handlers.js popovers: Fix clicking on user popover avatar image. 2019-03-08 13:31:29 -08:00
color_data.js stream_color: Make stream color assignment more efficient. 2018-11-29 13:00:25 -08:00
colorspace.js lint: Add eslint enforcement for comma-spacing. 2018-12-07 12:22:24 -08:00
common.js invite: Clean error handling and use ui_report. 2019-01-17 10:28:59 -08:00
components.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
compose.js compose: Fix narrow button text when switching to PM. 2019-03-11 21:58:05 -07:00
compose_actions.js popovers: Remove a few entries from stream popover. 2019-03-06 17:36:06 -08:00
compose_fade.js compose fade: Use "topic" internally. 2018-12-29 11:40:59 -08:00
compose_pm_pill.js compose pill: Add has_unconverted_data() helper. 2018-10-12 11:20:30 -07:00
compose_state.js subject -> topic: Rename compose fields. 2018-12-09 21:28:45 -08:00
compose_ui.js compose: Fix extra space being added by quote-and-reply. 2019-02-27 13:22:25 -08:00
composebox_typeahead.js compose: Do not show compose-invite-users row for silent mentions. 2019-02-22 13:17:47 -08:00
condense.js me messages: Turn off collapse feature. 2019-03-07 11:32:09 -08:00
confirm_dialog.js settings: Add confirm_dialog module. 2018-10-12 10:37:06 -07:00
copy_and_paste.js copy_and_paste: Fix copy/paste behaviour on Firefox. 2019-03-13 17:37:26 -07:00
csrf.js csrf: Improve API for when no CSRF input is available. 2018-12-16 16:19:23 -08:00
debug.js
dict.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
drafts.js drafts: Fix CSS transition when opening drafts. 2019-03-07 20:55:02 -08:00
echo.js subject -> topic: Sweep "message.subject" in frontend. 2019-01-01 20:49:38 -08:00
emoji.js emoji: Remove now unused `emoji.emojis` data structure. 2019-01-05 15:09:04 -08:00
emoji_picker.js emoji picker: Prevent cropping. 2019-02-15 10:40:53 -08:00
favicon.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
feature_flags.js Remove feature_flags.mark_read_at_bottom. 2018-07-07 10:19:15 +02:00
feedback_widget.js ui: Render feedback widget client side. 2019-01-04 10:54:10 -08:00
fenced_code.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
fetch_status.js message_fetch: Deduplicate logic for finish_newer_batch. 2018-12-13 08:43:56 -08:00
filter.js subject -> topic: Sweep "message.subject" in frontend. 2019-01-01 20:49:38 -08:00
floating_recipient_bar.js floating_recipient_bar: Fix incorrect use of jQuery .next(). 2019-02-11 16:46:11 -08:00
gear_menu.js settings: Extract gear_menu.update_org_settings_menu_item(). 2018-12-07 11:40:40 -08:00
hash_util.js subject -> topic: Fix hash_util.js. 2018-12-29 14:34:06 -08:00
hashchange.js eslint: Add key-spacing linter rule. 2018-12-18 10:41:06 -08:00
hotkey.js ui: Close feedback widget with escape key. 2019-01-04 10:54:09 -08:00
hotspots.js hotspots: Add hotspot for gear menu. 2019-02-05 12:19:21 -08:00
info_overlay.js eslint: Add key-spacing linter rule. 2018-12-18 10:41:06 -08:00
input_pill.js input pills: Fix modal gets closed when user click on remove-pill-btn. 2018-11-28 16:33:08 -08:00
integration_bot_widget.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
invite.js invites: Move multiuse invite status to footer. 2019-02-07 15:41:00 -08:00
keydown_util.js keydown_util: Ignore alt-arrow and similar things. 2018-12-04 12:24:39 -08:00
lightbox.js compose: Use lightbox when clicking images in compose preview. 2019-02-02 11:11:24 -08:00
lightbox_canvas.js lightbox: Make `v` close the lightbox during Pan & Zoom. 2018-07-23 10:36:48 -07:00
list_cursor.js list_cursor: Promote error handling code. 2018-08-24 10:00:04 -07:00
list_render.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
list_util.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
loading.js org settings: Fix a bug where the loading spinner was not visible. 2018-08-08 10:59:23 -07:00
local_message.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
localstorage.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
markdown.js markdown: Fix numbered list handling of blank lines between blocks. 2019-03-01 15:29:07 -08:00
message_edit.js me messages: Avoid empty "message_content" div. 2019-03-07 11:39:38 -08:00
message_events.js message_edit: Fix rendering bug when topic-editing single messages. 2019-02-27 13:57:45 -08:00
message_fetch.js Refactor: Split up add_messages api. 2019-01-07 17:17:55 -08:00
message_flags.js left sidebar: Add an "unstar all messages" option. 2019-03-07 20:52:00 -08:00
message_list.js streams: Avoid showing more topics option when it's useless. 2019-03-14 21:51:24 -07:00
message_list_data.js subject -> topic: Sweep "message.subject" in frontend. 2019-01-01 20:49:38 -08:00
message_list_view.js message_list_view: Use self in render more consistently. 2019-03-01 16:26:28 -08:00
message_live_update.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
message_scroll.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
message_store.js message_store: Add an `each` helper. 2019-02-25 21:12:07 +00:00
message_util.js message scrolling: Fix "Scroll down to view" warning. 2019-01-07 17:17:55 -08:00
message_viewport.js message scrolling: Add started_scrolled_up logic. 2019-01-07 17:11:17 -08:00
muting.js page load: Fix two bugs related to muting/unreads. 2018-12-15 13:44:30 -08:00
muting_ui.js ui: Extract feedback_widget module. 2019-01-04 10:54:07 -08:00
narrow.js compose: Fix narrow button text when switching to PM. 2019-03-11 21:58:05 -07:00
narrow_state.js minor: Change "subject" to "topic" in comments. 2018-12-29 11:38:39 -08:00
navigate.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
night_mode.js night mode: Fix initial state of night mode. 2019-03-08 15:45:11 -08:00
notifications.js notification: Show wrong narrow notification for non locally echoed message. 2019-02-13 15:51:41 -08:00
overlays.js user settings: Fix active background links when a modal is visible. 2018-12-09 22:32:53 -08:00
padded_widget.js buddy list: Add padding to progressive scrollings. 2018-08-02 16:59:27 -07:00
panels.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
people.js typeahead: Migrate from _@ to @_ for silent mentions. 2019-02-20 10:41:42 -08:00
pm_conversations.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
pm_list.js private messages: Add user circles to top left. 2019-02-18 14:22:37 -08:00
pointer.js eslint: Add key-spacing linter rule. 2018-12-18 10:41:06 -08:00
poll_widget.js poll_widget: Add highlight for vote count if current user votes. 2019-03-01 16:35:18 -08:00
popovers.js user popover: Pop user menu closer to avatar. 2019-03-08 15:24:01 -08:00
presence.js presence: Use people.is_my_user_id() for check. 2019-01-03 13:49:44 -08:00
reactions.js reactions: Fix minor formatting in log message. 2018-07-10 16:22:52 -04:00
realm_icon.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
realm_logo.js realm_logo: Refactor `build_realm_logo_widget` function. 2019-03-14 17:05:22 -07:00
recent_senders.js subject -> topic: Sweep "message.subject" in frontend. 2019-01-01 20:49:38 -08:00
reload.js subject -> topic: Fix subject in opts. 2018-12-16 11:26:18 -08:00
reload_state.js refactor: Extract reload_state module. 2018-08-04 13:55:02 +00:00
reminder.js reminder.js: Refactor to make notify_above_composebox conditional. 2019-01-14 12:11:27 -08:00
resize.js css: Remove Group PMs from **left** sidebar. 2019-02-11 19:17:52 -08:00
rows.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
rtl.js rtl.js: Fix support for supplementary planes of unicode characters (>= U+10000). 2018-08-14 11:39:29 -07:00
schema.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
scroll_bar.js right sidebar: Change media cut-off for where we hide the buddy list. 2018-09-27 07:29:32 -04:00
scroll_util.js scroll_util: Account for element padding in height calculations. 2018-07-27 09:09:52 -07:00
search.js lint: Add eslint enforcement for comma-spacing. 2018-12-07 12:22:24 -08:00
search_pill.js search: Add a basic implementation of search pills. 2018-07-23 11:29:10 -07:00
search_pill_widget.js pills: Use `widget` instead of `my_pill` throughout the app. 2018-07-23 11:29:10 -07:00
search_suggestion.js search: Do not display `All messages` suggestion if bar not empty. 2018-07-23 11:29:10 -07:00
search_util.js Extract search_util.js module. 2018-07-30 11:25:32 -07:00
sent_messages.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
server_events.js server_events: Fix unnecessary call to insert_new_messages. 2019-02-20 16:24:28 -08:00
server_events_dispatch.js settings: Fix weird live update when saving zoom form. 2019-02-28 15:39:34 -08:00
settings.js settings: Eliminate admin_sections module. 2018-12-17 10:13:20 -08:00
settings_account.js ajax: Fix wrong ajax setting name from beforeSubmit to beforeSend. 2019-02-02 23:05:10 -08:00
settings_bots.js settings: Update organization permission strings to reflect guests. 2018-10-30 10:48:06 -07:00
settings_display.js emoji: Fix caching for text emojiset. 2018-09-21 18:34:12 -07:00
settings_emoji.js emoji: Remove `display_url` from the context of `admin_emoji_list`. 2018-08-14 12:07:56 -07:00
settings_invites.js invites: Add UI for revoking multiuse invites. 2019-02-15 14:13:31 -08:00
settings_linkifiers.js settings: Rename "settings_filters" to "settings_linkifiers". 2018-12-17 12:28:55 -08:00
settings_muting.js muting: Add stream_id to markup for mute settings. 2018-12-14 16:05:35 -08:00
settings_notifications.js eslint: Add key-spacing linter rule. 2018-12-18 10:41:06 -08:00
settings_org.js realm_logo: Refactor `build_realm_logo_widget` function. 2019-03-14 17:05:22 -07:00
settings_panel_menu.js settings: Reset scroll when switching sections. 2019-02-26 14:26:15 -08:00
settings_profile_fields.js settings: Call maybe_disable_widgets() in set_up() methods. 2018-12-17 10:13:18 -08:00
settings_sections.js settings: Rename "settings_filters" to "settings_linkifiers". 2018-12-17 12:28:55 -08:00
settings_streams.js ui: Fix scrollbar regressions. 2019-01-09 09:15:45 -08:00
settings_toggle.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
settings_ui.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
settings_user_groups.js lint: Add eslint enforcement for comma-spacing. 2018-12-07 12:22:24 -08:00
settings_users.js admin: Display email addresses in user-edit widget. 2019-03-04 09:17:05 -08:00
setup.js js: Extract csrf.js and include in common bundle. 2018-12-16 16:18:42 -08:00
socket.js eslint: Add key-spacing linter rule. 2018-12-18 10:41:06 -08:00
starred_messages.js left sidebar: Add an "unstar all messages" option. 2019-03-07 20:52:00 -08:00
stream_color.js Extract color_data.js. 2018-11-28 14:51:51 -08:00
stream_create.js streams_edit: Prevent newline characters in the description. 2019-02-20 12:27:54 -08:00
stream_data.js streams: Avoid showing more topics option when it's useless. 2019-03-14 21:51:24 -07:00
stream_edit.js streams: Fix announcement-only option being hidden. 2019-02-27 13:29:45 -08:00
stream_events.js stream_data: Use stream rendered_description provided by the backend. 2019-02-11 12:24:27 -08:00
stream_list.js left sidebar: Fix closing stream search. 2019-02-25 09:47:44 -08:00
stream_muting.js Refactor: Split up add_messages api. 2019-01-07 17:17:55 -08:00
stream_popover.js refactor: Make build_stream_popover more generic. 2019-03-14 15:06:41 -07:00
stream_sort.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
submessage.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
subs.js subs: Update Default streams data while renaming streams. 2019-02-13 15:05:25 -08:00
tab_bar.js tab_bar: Make explicit call of narrow change handle function. 2018-11-29 12:36:00 -08:00
templates.js settings: Warn if server is unable to deliver mobile push notifications. 2018-10-31 13:18:17 -07:00
tictactoe_widget.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
timerender.js timerender.js: Remove use of legacy font awesome base class 'icon-vector'. 2018-10-15 19:22:57 +05:30
todo_widget.js todo lists: Make lists sharable. 2018-12-17 07:40:27 -08:00
top_left_corner.js top left: Simplify markup for main links. 2019-01-30 13:53:20 -08:00
topic_data.js eslint: Add key-spacing linter rule. 2018-12-18 10:41:06 -08:00
topic_generator.js muting: Use stream_id for internal data structures. 2018-12-14 15:58:35 -08:00
topic_list.js streams: Avoid showing more topics option when it's useless. 2019-03-14 21:51:24 -07:00
topic_zoom.js Have ESC zoom out topics if you're zoomed in. 2018-10-24 16:54:35 -07:00
translations.js
transmit.js subject -> topic: Sweep "message.subject" in frontend. 2019-01-01 20:49:38 -08:00
tutorial.js eslint: Add key-spacing linter rule. 2018-12-18 10:41:06 -08:00
typeahead_helper.js typeahead: Rename `codepoint` to `emoji_code`. 2019-01-05 15:09:04 -08:00
typing.js typing indicators: Use user ids internally. 2018-10-14 09:38:32 -07:00
typing_data.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
typing_events.js typing_events: Make explicit call of narrow change handle function. 2018-11-29 12:36:00 -08:00
typing_status.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
ui.js ui: Fix scrollbar regressions. 2019-01-09 09:15:45 -08:00
ui_init.js emoji: Allow users to add emoji or react in mobile browsers. 2019-03-14 14:50:26 -07:00
ui_report.js ui_report: Remove now redundant `type` argument from `.message()`. 2019-01-17 10:28:59 -08:00
ui_util.js compose: Fix recent autocomplete regression. 2018-12-22 08:07:23 -08:00
unread.js subject -> topic: Sweep "message.subject" in frontend. 2019-01-01 20:49:38 -08:00
unread_ops.js eslint: Add key-spacing linter rule. 2018-12-18 10:41:06 -08:00
unread_ui.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
upload.js upload: Ensure correct textarea is focused when an upload finishes. 2019-02-08 07:45:41 -08:00
upload_widget.js settings: Add support for uploading logo for night mode. 2019-02-18 15:15:57 -08:00
user_events.js settings: Add guest avatar marker to account settings. 2018-12-30 11:07:00 -08:00
user_groups.js message_list: Fix handling of deleted user groups. 2019-02-15 14:54:25 -08:00
user_pill.js compose pill: Add has_unconverted_data() helper. 2018-10-12 11:20:30 -07:00
user_search.js refactor: Add an explicit `user_search_section`. 2019-02-11 19:12:51 -08:00
user_status.js user status: Add ability to edit status text. 2019-01-29 10:27:49 -08:00
user_status_ui.js user status: Change text of modal button to Save. 2019-02-16 09:28:58 -08:00
util.js frontend: Use topic on message. 2019-01-07 19:20:56 -08:00
widgetize.js widgets: Rename voting_widget to poll_widget. 2018-12-16 19:46:48 -08:00
zcommand.js slash commands: Add undo for /day and /night. 2019-01-04 10:54:10 -08:00
zform.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00
zulip.js app: Prepare JS files for consumption by webpack. 2018-07-05 10:53:36 +02:00