Rewrite tab detection js

This commit is contained in:
oobabooga 2023-08-20 21:02:53 -07:00
parent 57036abc76
commit 6394fef1db
2 changed files with 40 additions and 37 deletions

View File

@ -1,29 +1,33 @@
let gallery_element = document.getElementById('gallery-extension'); let gallery_element = document.getElementById('gallery-extension');
let chat_mode_element = document.getElementById('chat-mode'); let chat_mode_element = document.getElementById('chat-mode');
let extensions_block = gallery_element.parentElement; let extensions_block = document.getElementById('extensions');
let extensions_block_size = extensions_block.childNodes.length; let extensions_block_size = extensions_block.childNodes.length;
let gallery_only = (extensions_block_size == 5); let gallery_only = (extensions_block_size == 5);
main_parent.addEventListener('click', function(e) { document.querySelector('.header_bar').addEventListener('click', function(event) {
let chat_visible = (chat_tab.offsetHeight > 0 && chat_tab.offsetWidth > 0); if (event.target.tagName === 'BUTTON') {
let chat_mode_visible = (chat_mode_element.offsetHeight > 0 && chat_mode_element.offsetWidth > 0); const buttonText = event.target.textContent.trim();
let notebook_visible = (notebook_tab.offsetHeight > 0 && notebook_tab.offsetWidth > 0);
let default_visible = (default_tab.offsetHeight > 0 && default_tab.offsetWidth > 0);
// Only show this extension in the Chat tab let chat_visible = (buttonText == 'Chat');
if (chat_visible) { let default_visible = (buttonText == 'Default');
if (chat_mode_visible) { let notebook_visible = (buttonText == 'Notebook');
gallery_element.style.display = 'block'; let chat_mode_visible = (chat_mode_element.offsetHeight > 0 && chat_mode_element.offsetWidth > 0);
extensions_block.style.display = '';
// Only show this extension in the Chat tab
if (chat_visible) {
if (chat_mode_visible) {
gallery_element.style.display = 'block';
extensions_block.style.display = '';
} else {
gallery_element.style.display = 'none';
extensions_block.style.display = 'none';
}
} else { } else {
gallery_element.style.display = 'none'; gallery_element.style.display = 'none';
extensions_block.style.display = 'none'; if (gallery_only) {
} extensions_block.style.display = 'none';
} else { }
gallery_element.style.display = 'none';
if (gallery_only) {
extensions_block.style.display = 'none';
} }
} }
}); });

View File

@ -1,32 +1,31 @@
let chat_tab = document.getElementById('chat-tab'); let main_parent = document.getElementById('chat-tab').parentNode;
let notebook_tab = document.getElementById('notebook-tab');
let default_tab = document.getElementById('default-tab');
let main_parent = chat_tab.parentNode;
let extensions = document.getElementById('extensions'); let extensions = document.getElementById('extensions');
main_parent.childNodes[0].classList.add("header_bar"); main_parent.childNodes[0].classList.add("header_bar");
main_parent.style = "padding: 0; margin: 0"; main_parent.style = "padding: 0; margin: 0";
main_parent.parentNode.parentNode.style = "padding: 0"; main_parent.parentNode.parentNode.style = "padding: 0";
// Add an event listener to the generation tabs document.querySelector('.header_bar').addEventListener('click', function(event) {
main_parent.addEventListener('click', function(e) { if (event.target.tagName === 'BUTTON') {
let chat_visible = (chat_tab.offsetHeight > 0 && chat_tab.offsetWidth > 0); const buttonText = event.target.textContent.trim();
let notebook_visible = (notebook_tab.offsetHeight > 0 && notebook_tab.offsetWidth > 0);
let default_visible = (default_tab.offsetHeight > 0 && default_tab.offsetWidth > 0);
// Check if one of the generation tabs is visible let chat_visible = (buttonText == 'Chat');
if (chat_visible || notebook_visible || default_visible) { let default_visible = (buttonText == 'Default');
extensions.style.display = 'flex'; let notebook_visible = (buttonText == 'Notebook');
if (chat_visible) {
extensions.style.maxWidth = "800px"; // Check if one of the generation tabs is visible
extensions.style.padding = "0px"; if (chat_visible || notebook_visible || default_visible) {
extensions.style.display = 'flex';
if (chat_visible) {
extensions.style.maxWidth = "800px";
extensions.style.padding = "0px";
} else {
extensions.style.maxWidth = "none";
extensions.style.padding = "15px";
}
} else { } else {
extensions.style.maxWidth = "none"; extensions.style.display = 'none';
extensions.style.padding = "15px";
} }
} else {
extensions.style.display = 'none';
} }
}); });