Kaynağa Gözat

Turn off message animations by default

JC Brand 7 yıl önce
ebeveyn
işleme
db8fd5c018
3 değiştirilmiş dosya ile 21 ekleme ve 4 silme
  1. 6 0
      CHANGES.md
  2. 10 0
      docs/source/configuration.rst
  3. 5 4
      src/converse-chatview.js

+ 6 - 0
CHANGES.md

@@ -2,6 +2,12 @@
 
 ## 3.3.1 (Unreleased)
 
+### UI/UX changes
+- Add new configuration option
+  [show_message_load_animation](https://conversejs.org/docs/html/configurations.html#show-message-load-animation)
+  with a default value of `false`. The message load animations (added in 3.3.0)
+  cause slowness and performance issues in Firefox, so they're now disabled by default.
+
 ### Translation changes
 - Updated Spanish and French translations.
 - New translation: "Simplified Chinese"

+ 10 - 0
docs/source/configuration.rst

@@ -1138,6 +1138,16 @@ the operating system or browser (which might not support emoji).
 See also `emojione_image_path`_.
 
 
+show_message_load_animation
+---------------------------
+* Default: ``false``
+
+Determines whether a CSS3 background-color fade-out animation is shown when messages
+appear in chats.
+
+Set to ``false`` by default since this option causes performance issues on Firefox.
+
+
 show_only_online_users
 ----------------------
 

+ 5 - 4
src/converse-chatview.js

@@ -110,6 +110,7 @@
                 'chatview_avatar_height': 32,
                 'chatview_avatar_width': 32,
                 'show_toolbar': true,
+                'show_message_load_animation': false,
                 'time_format': 'HH:mm',
                 'visible_toolbar_buttons': {
                     'emoji': true,
@@ -520,10 +521,10 @@
                 },
 
                 getExtraMessageClasses (attrs) {
-                    if (window.converse_disable_effects) {
-                        return attrs.delayed && 'delayed' || '';
-                    } else {
+                    if (_converse.show_message_load_animation) {
                         return 'onload ' + (attrs.delayed && 'delayed' || '');
+                    } else {
+                        return attrs.delayed && 'delayed' || '';
                     }
                 },
 
@@ -566,7 +567,7 @@
                             'extra_classes': this.getExtraMessageClasses(attrs)
                         })
                     ));
-                    if (!window.converse_disable_effects) {
+                    if (_converse.show_message_load_animation) {
                         window.setTimeout(_.partial(u.removeClass, 'onload', msg), 2000);
                     }
                     const msg_content = msg.querySelector('.chat-msg-content');