zulip/frontend_tests/node_tests
Steve Howell 9dd78c803c Make auto-scrolling less aggressive.
We have code that can automatically scroll an element into "view"
in its container.  We use this for stream sidebar rows inside the
stream list.

Generally the stream sidebar rows are small enough to fit into
the container, and the prior algorithm worked correctly for that
scenario.

If you have lots of topics, however, and a short screen, the
algorithm was being too aggressive.  For example, if the top
wasn't showing, it would scroll the top into view, but at the
cost of scrolling the bottom out of view.

This fix makes the general scrolling algorithm more tame.

Part of the user-facing problem is that the element we pass
into the scrolling code for the stream sidebar rows is bigger
than the part of the row that actually should be shown on
screen.  Nevertheless, it makes sense here to make the general
algorithm more robust.
2017-08-11 13:01:39 -07:00
..
activity.js Use zrequire in node_tests/activity.js. 2017-08-09 12:32:09 -07:00
alert_words.js alert_words: Don't muck up rendered HTML content while munging. 2017-07-31 21:20:21 -07:00
bot_data.js node tests: Add coverage for get_all_bots_for_current_user. 2017-05-25 09:54:05 -07:00
channel.js middleware: Use a proper error code on CSRF failure. 2017-07-25 14:02:12 -07:00
colorspace.js node tests: Add tests for colorspace.js. 2017-05-25 10:09:39 -07:00
common.js Introduce make_zjquery(). 2017-05-24 17:41:41 -07:00
compose_actions.js common.js: Migrate common.js module to use IIFE module style. 2017-06-22 19:06:32 -04:00
compose_fade.js Use stream_id in recipient comparisons. 2017-02-26 16:18:02 -08:00
compose.js sending messages: Extract sent_messages.js. 2017-08-01 08:58:56 -07:00
composebox_typeahead.js emoji: Create tests to check the typeahead resuts. 2017-07-26 09:27:17 -07:00
dict.js Add Dict.is_empty(). 2017-04-21 21:59:22 -07:00
dispatch.js Extract unread_ops.process_read_messages_event(). 2017-08-04 13:31:26 -07:00
drafts.js node tests: Test drafts_overlay_open(). 2017-06-07 00:02:14 -07:00
emoji.js emoji.js: Add test coverage for initialize. 2017-06-26 14:24:20 -04:00
filter.js filter.js: Add test coverage for space after operator. 2017-07-14 17:33:09 -07:00
hashchange.js Add people.initialize(). 2017-05-23 19:35:08 -07:00
hotkey.js hotkey: Add support for hotspots on enter. 2017-08-05 18:32:37 -07:00
hotspots.js hotspots: Unit test hotspots.js. 2017-07-28 16:34:15 -07:00
i18n.js settings: Update text in templates. 2017-07-24 17:33:14 -07:00
markdown.js minor: Indentation fix. 2017-07-31 12:42:36 -07:00
message_edit.js message edit: Prevent editing any failed messages. 2017-07-21 11:38:25 -07:00
message_list_view.js bookend: Make ordering of subscribe bookends consistent. 2017-06-05 16:43:26 -07:00
message_list.js bookend: Hide re-subscribe button for private streams. 2017-06-20 20:56:26 -04:00
message_store.js people.js: Explicitly sort user_ids numerically. 2017-08-02 09:40:47 -07:00
muting.js Revert "muting.js: Track muted streams using stream id." 2017-05-17 07:06:32 -07:00
narrow_state.js narrow.js: Create narrowed_by_stream_reply(). 2017-06-27 14:06:59 -04:00
narrow.js Use zrequire in node_tests/narrow.js. 2017-08-09 12:32:09 -07:00
password.js common.js: Don't set default password quality/length in frontend. 2017-07-07 14:48:06 -07:00
people.js Add people.pm_lookup_key 2017-08-02 09:40:47 -07:00
pm_conversations.js typeahead: Add pm_conversations module. 2017-06-01 08:05:37 +00:00
pm_list.js Use zrequire in node_tests/pm_list.js. 2017-08-09 12:32:09 -07:00
presence.js node tests: Add test_set_user_status(). 2017-06-19 08:00:55 -04:00
reactions.js reactions: Simplify markup related to message ids. 2017-07-21 11:38:25 -07:00
recent_senders.js recent_senders: Fix exception in certain typeahead flows. 2017-07-28 11:04:11 -07:00
rtl.js Add rtl.js library for detecting direction of text. 2017-04-22 11:25:54 -07:00
search_suggestion.js topic_data.js: Refactor topic history internals. 2017-07-27 14:26:22 -07:00
server_events.js Revert commits related to client_message_id. 2017-07-14 12:13:35 -07:00
settings_bots.js zjquery: Add $.create() method. 2017-07-08 10:32:32 -04:00
settings_org.js Move maybe_get_stream_name to stream_data.js. 2017-08-01 16:19:41 -07:00
stream_color.js eslint: change space-before-function-paren from warning to error. 2016-12-05 09:50:37 -08:00
stream_data.js Use zrequire in node_tests/stream_data.js. 2017-08-09 12:32:09 -07:00
stream_events.js zjquery: Add $.create() method. 2017-07-08 10:32:32 -04:00
stream_list.js Make auto-scrolling less aggressive. 2017-08-11 13:01:39 -07:00
stream_sort.js node tests: Get stream_sort.js to 100% node coverage. 2017-06-07 03:23:57 -06:00
subs.js refactor: Pass in a full sub to sub_or_unsub(). 2017-03-05 11:55:09 -08:00
templates.js tutorial: Remove rest of tutorial. 2017-08-01 22:38:22 -07:00
timerender.js uploads: Only display year uploaded if previous year. 2017-07-25 23:06:58 -07:00
topic_data.js Add topic_data.get_server_history(). 2017-08-08 17:07:09 -04:00
topic_generator.js Extract topic_data.js. 2017-07-27 14:26:22 -07:00
topic_list.js Use zjquery to test topic_list.js. 2017-08-09 12:32:09 -07:00
typeahead_helper.js typeahead: Use recent_senders/pm_conversations to sort suggestions. 2017-07-09 10:51:19 -04:00
typing_data.js Extract typing indicator inbound timing logic. 2017-03-22 08:20:21 -07:00
typing_status.js Revamp state tracking for outbound typing indicators. 2017-03-22 07:01:20 -07:00
unread.js Fix bug with topic edits on read messages. 2017-08-10 14:36:18 -04:00
user_events.js Use zjquery in user_events test. 2017-08-09 12:32:09 -07:00
util.js util: Remove execute_early. 2017-07-04 13:54:33 -07:00
zjquery.js zjquery: Add $.create() method. 2017-07-08 10:32:32 -04:00