Merge pull request #3154 from SillyTavern/optimize-past-swipes Optimize past swipes

3ed095bb0e59d2ca91cf6d576f67e44c4dd87efa

Cohee <18619528+Cohee1207@users.noreply.github.com>

Signed
5 files changed, +14 -26Ignore whitespace
public/index.html+1 -1
@@ -4184,7 +4184,7 @@
41844184 </label>
41854185 <label for="show_swipe_num_all_messages" class="checkbox_label" title="Display swipe numbers for all messages, not just the last." data-i18n="[title]Display swipe numbers for all messages, not just the last.">
41864186 <input id="show_swipe_num_all_messages" type="checkbox" />
41874187 <small data-i18n="Swipe # for All Messages">Swipe # for All Messages</small><i class="fa-solid fa-mobile-screen-button"></i>
41884188 </label>
41894189 <label for="hotswapEnabled" class="checkbox_label" title="In the Character Management panel, show quick selection buttons for favorited characters." data-i18n="[title]In the Character Management panel, show quick selection buttons for favorited characters">
41904190 <input id="hotswapEnabled" type="checkbox" />
public/script.js+3 -6
@@ -98,7 +98,6 @@ import {
9898 resetMovableStyles,
9999 forceCharacterEditorTokenize,
100100 applyPowerUserSettings,
101- switchSwipeNumAllMessages,
102101} from './scripts/power-user.js';
103102
104103import {
@@ -7664,14 +7663,12 @@ export function showSwipeButtons() {
76647663 //allows for writing individual swipe counters for past messages
76657664 const lastSwipeCounter = $('.last_mes .swipes-counter');
76667665 lastSwipeCounter.text(swipeCounterText).show();
7667-
7668- switchSwipeNumAllMessages();
76697666}
76707667
76717668export function hideSwipeButtons() {
76727669 $('#chat')chatElement.find('.swipe_right').hide();
76737670 $('#chat')chatElement.find('.last_mes .swipes-counter').hide();
76747671 $('#chat')chatElement.find('.swipe_left').hide();
76757672}
76767673
76777674/**
public/scripts/extensions/stable-diffusion/index.js+0 -15
@@ -60,7 +60,6 @@ import { ToolManager } from '../../tool-calling.js';
6060export { MODULE_NAME };
6161
6262const MODULE_NAME = 'sd';
63-const UPDATE_INTERVAL = 1000;
6463// This is a 1x1 transparent PNG
6564const PNG_PIXEL = 'iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=';
6665const CUSTOM_STOP_EVENT = 'sd_stop_generation';
@@ -3687,8 +3686,6 @@ async function addSDGenButtons() {
36873686 const button = $('#sd_gen');
36883687 const dropdown = $('#sd_dropdown');
36893688 dropdown.hide();
3690- button.hide();
3691- messageButton.hide();
36923689
36933690 let popper = Popper.createPopper(button.get(0), dropdown.get(0), {
36943691 placement: 'top',
@@ -3770,18 +3767,6 @@ function isValidState() {
37703767 }
37713768}
37723769
3773-async function moduleWorker() {
3774- if (isValidState()) {
3775- $('#sd_gen').show();
3776- $('.sd_message_gen').show();
3777- }
3778- else {
3779- $('#sd_gen').hide();
3780- $('.sd_message_gen').hide();
3781- }
3782-}
3783-
3784-setInterval(moduleWorker, UPDATE_INTERVAL);
37853770let buttonAbortController = null;
37863771
37873772async function sdMessageButton(e) {
public/scripts/power-user.js+2 -2
@@ -472,9 +472,9 @@ function switchCompactInputArea() {
472472 $('#compact_input_area').prop('checked', power_user.compact_input_area);
473473}
474474
475475export function switchSwipeNumAllMessages() {
476476 $('#show_swipe_num_all_messages').prop('checked', power_user.show_swipe_num_all_messages);
477477 $('.mes:not(.last_mes) .swipes-counterbody').csstoggleClass('opacityswipeAllMessages', '').toggle(!!power_user.show_swipe_num_all_messages);
478478}
479479
480480var originalSliderValues = [];
public/style.css+8 -2
@@ -1040,8 +1040,14 @@ body .panelControlBar {
10401040 height: var(--swipeCounterHeight);
10411041}
10421042
10431043body:not(.swipeAllMessages) .mes:not(.last_mes) .swipes-counter {
10441044 opacityvisibility: 0.3hidden;
1045+}
1046+
1047+body.swipeAllMessages .mes:not(.last_mes) .swipes-counter {
1048+ /* Avoid expensive DOM queries */
1049+ opacity: 0.3 !important;
1050+ display: flex !important;
10451051}
10461052
10471053.swipe_left {