diff --git a/public/index.html b/public/index.html
index 1df2fa887..f96c78a85 100644
--- a/public/index.html
+++ b/public/index.html
@@ -3739,6 +3739,11 @@
Tags as Folders
+
Miscellaneous
diff --git a/public/script.js b/public/script.js
index 6c258b7e0..66f47fd8c 100644
--- a/public/script.js
+++ b/public/script.js
@@ -10226,28 +10226,27 @@ jQuery(async function () {
$('body').append(newElement);
newElement.fadeIn();
- if (messageElement.attr('is_user') == 'true') { //handle user avatars
- $(`.zoomed_avatar[forChar="${charname}"] img`).attr('src', thumbURL);
- $(`.zoomed_avatar[forChar="${charname}"] img`).attr('data-izoomify-url', thumbURL);
- } else if (messageElement.attr('is_system') == 'true' && !isValidCharacter) { //handle system avatars
- $(`.zoomed_avatar[forChar="${charname}"] img`).attr('src', thumbURL);
- $(`.zoomed_avatar[forChar="${charname}"] img`).attr('data-izoomify-url', thumbURL);
+ const zoomedAvatarImgElement = $(`.zoomed_avatar[forChar="${charname}"] img`);
+ if (messageElement.attr('is_user') == 'true' || (messageElement.attr('is_system') == 'true' && !isValidCharacter)) { //handle user and system avatars
+ zoomedAvatarImgElement.attr('src', thumbURL);
+ zoomedAvatarImgElement.attr('data-izoomify-url', thumbURL);
} else if (messageElement.attr('is_user') == 'false') { //handle char avatars
- $(`.zoomed_avatar[forChar="${charname}"] img`).attr('src', avatarSrc);
- $(`.zoomed_avatar[forChar="${charname}"] img`).attr('data-izoomify-url', avatarSrc);
+ zoomedAvatarImgElement.attr('src', avatarSrc);
+ zoomedAvatarImgElement.attr('data-izoomify-url', avatarSrc);
}
loadMovingUIState();
$(`.zoomed_avatar[forChar="${charname}"]`).css('display', 'flex');
dragElement(newElement);
- $('.zoomed_avatar_container').izoomify();
+ if (power_user.zoomed_avatar_magnification)
+ $('.zoomed_avatar_container').izoomify();
- $(`.zoomed_avatar[forChar="${charname}"] img`).on('click', (e) => {
+ zoomedAvatarImgElement.on('click', (e) => {
$(`.zoomed_avatar[forChar="${charname}"]`).fadeOut();
setTimeout(function() { $(`.zoomed_avatar[forChar="${charname}"]`).remove(); }, 410);
});
- $(`.zoomed_avatar[forChar="${charname}"] img`).on('dragstart', (e) => {
+ zoomedAvatarImgElement.on('dragstart', (e) => {
console.log('saw drag on avatar!');
e.preventDefault();
return false;
diff --git a/public/scripts/power-user.js b/public/scripts/power-user.js
index 35f4984b7..24d954f15 100644
--- a/public/scripts/power-user.js
+++ b/public/scripts/power-user.js
@@ -247,6 +247,7 @@ let power_user = {
encode_tags: false,
servers: [],
bogus_folders: false,
+ zoomed_avatar_magnification: false,
show_tag_filters: false,
aux_field: 'character_version',
restore_user_input: true,
@@ -1303,6 +1304,13 @@ async function applyTheme(name) {
printCharactersDebounced();
},
},
+ {
+ key: 'zoomed_avatar_magnification',
+ action: async () => {
+ $('#zoomed_avatar_magnification').prop('checked', power_user.zoomed_avatar_magnification);
+ printCharactersDebounced();
+ },
+ },
{
key: 'reduced_motion',
action: async () => {
@@ -1498,6 +1506,7 @@ function loadPowerUserSettings(settings, data) {
$('#auto_fix_generated_markdown').prop('checked', power_user.auto_fix_generated_markdown);
$('#auto_scroll_chat_to_bottom').prop('checked', power_user.auto_scroll_chat_to_bottom);
$('#bogus_folders').prop('checked', power_user.bogus_folders);
+ $('#zoomed_avatar_magnification').prop('checked', power_user.zoomed_avatar_magnification);
$(`#tokenizer option[value="${power_user.tokenizer}"]`).attr('selected', true);
$(`#send_on_enter option[value=${power_user.send_on_enter}]`).attr('selected', true);
$('#import_card_tags').prop('checked', power_user.import_card_tags);
@@ -2148,6 +2157,7 @@ async function saveTheme(name = undefined) {
hotswap_enabled: power_user.hotswap_enabled,
custom_css: power_user.custom_css,
bogus_folders: power_user.bogus_folders,
+ zoomed_avatar_magnification: power_user.zoomed_avatar_magnification,
reduced_motion: power_user.reduced_motion,
compact_input_area: power_user.compact_input_area,
};
@@ -3410,8 +3420,13 @@ $(document).ready(() => {
});
$('#bogus_folders').on('input', function () {
- const value = !!$(this).prop('checked');
- power_user.bogus_folders = value;
+ power_user.bogus_folders = !!$(this).prop('checked');
+ printCharactersDebounced();
+ saveSettingsDebounced();
+ });
+
+ $('#zoomed_avatar_magnification').on('input', function () {
+ power_user.zoomed_avatar_magnification = !!$(this).prop('checked');
printCharactersDebounced();
saveSettingsDebounced();
});