From 7533db12c726f69e6f92dff3f11972746b34eeb7 Mon Sep 17 00:00:00 2001 From: JannisX11 Date: Mon, 19 Dec 2022 12:43:27 +0100 Subject: [PATCH] Improvements to tab overview Update material icons --- css/dialogs.css | 10 +++++- font/MaterialIcons-Regular.ttf | Bin 353892 -> 356840 bytes js/api.js | 9 +++-- js/interface/dialog.js | 10 +++++- js/io/project.js | 61 +++++++++++++++++++++++---------- 5 files changed, 67 insertions(+), 23 deletions(-) diff --git a/css/dialogs.css b/css/dialogs.css index 9fb1de77..41b51ebf 100644 --- a/css/dialogs.css +++ b/css/dialogs.css @@ -1690,6 +1690,14 @@ dialog#edit_bedrock_binding > .dialog_wrapper > .dialog_content { right: 0; left: 0; pointer-events: none; + flex-direction: column; + align-items: center; + } + #tab_overview_search .search_bar { + top: 130px; + pointer-events: all; + box-shadow: 0 0 0 2px var(--color-accent); + width: min(100vw, 326px); } #tab_overview_grid { display: flex; @@ -1700,6 +1708,7 @@ dialog#edit_bedrock_binding > .dialog_wrapper > .dialog_content { max-width: 100%; max-height: 86%; overflow-y: auto; + pointer-events: all; } #tab_overview_grid > li { width: 300px; @@ -1709,7 +1718,6 @@ dialog#edit_bedrock_binding > .dialog_wrapper > .dialog_content { cursor: pointer; padding: 0 10px; box-shadow: 0 0px 28px rgb(0 0 0 / 24%); - pointer-events: all; } #tab_overview_grid > li:hover { color: var(--color-light); diff --git a/font/MaterialIcons-Regular.ttf b/font/MaterialIcons-Regular.ttf index 0588628b03774c88c8209d0846d27dd10d213f50..9d09b0feb85c35beeaddd31246be0b7c8e0e69a4 100644 GIT binary patch delta 15745 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 I96v?)KOiZ0F8}}l diff --git a/js/api.js b/js/api.js index 9d9d62bd..5daacfec 100644 --- a/js/api.js +++ b/js/api.js @@ -279,10 +279,15 @@ const Blockbench = { jq_dialog.css('position', 'absolute') $('#dialog_wrapper').append(jq_dialog) - $('.dialog').hide() - $('#blackout').show() jq_dialog.show() + jq_dialog[0].style.zIndex = 21 + Dialog.stack.length * 2; + + let blackout = document.getElementById('blackout'); + blackout.style.display = 'block'; + blackout.classList.toggle('darken', true); + blackout.style.zIndex = 20 + Dialog.stack.length * 2; + jq_dialog.css('top', limitNumber(window.innerHeight/2-jq_dialog.height()/2 - 140, 0, 2000)+'px') if (options.width) { jq_dialog.css('width', options.width+'px') diff --git a/js/interface/dialog.js b/js/interface/dialog.js index 57984155..01f6a891 100644 --- a/js/interface/dialog.js +++ b/js/interface/dialog.js @@ -793,7 +793,7 @@ window.EmptyDialog = class EmptyDialog extends Dialog { constructor(id, options) { super(id, options); - this.build = options.build; + if (options.build) this.build = options.build; } confirm(event) { this.close(this.confirmIndex, event); @@ -815,6 +815,14 @@ window.EmptyDialog = class EmptyDialog extends Dialog { show() { super.show() } + build() { + this.object = Interface.createElement('div', {id: 'tab_overview', class: 'empty_dialog'}); + + if (this.component) { + this.component.name = 'dialog-content'; + this.content_vue = new Vue(this.component).$mount(this.object, true); + } + } delete() { $(this.object).remove() } diff --git a/js/io/project.js b/js/io/project.js index 9e83d9cd..bdbb03d9 100644 --- a/js/io/project.js +++ b/js/io/project.js @@ -640,7 +640,7 @@ onVueSetup(() => { this.new_tab.select(); setStartScreen(true); }, - searchTabs() { + tabOverview() { BarItems.tab_overview.trigger(); }, mouseDown(tab, e1) { @@ -1047,27 +1047,50 @@ BARS.defineActions(function() { if (Project) Project.updateThumbnail(); let dialog = new EmptyDialog('tab_overview', { - build() { - this.object = Interface.createElement('div', {id: 'tab_overview', class: 'empty_dialog'}); - - let entries = ModelProject.all.map(project => { - let img = new Image(); - img.src = project.thumbnail; - if (!project.thumbnail) img.style.visibility = 'hidden'; - let entry = Interface.createElement('li', {}, [ - img, - project.name - ]) - entry.addEventListener('click', event => { - this.confirm(); + component: { + data() {return { + search_term: '', + projects: ModelProject.all + }}, + methods: { + select(project) { + Dialog.open.confirm(); project.select(); - }) - return entry; - }) - let list = Interface.createElement('ul', {id: 'tab_overview_grid'}, entries); - this.object.append(list); + } + }, + computed: { + filtered_projects() { + if (!this.search_term) return this.projects; + let term = this.search_term.toLowerCase(); + return this.projects.filter(project => { + return project.name.toLowerCase().includes(term) || project.model_identifier?.toLowerCase().includes(term); + }) + } + }, + template: ` +
+ +
    +
  • + + {{ project.name }} +
  • +
+
+ ` + }, + onConfirm() { + let projects = this.content_vue.filtered_projects; + if (this.content_vue.search_term) { + projects[0].select(); + } } }).show(); + Vue.nextTick(() => { + document.querySelector('#tab_overview_search input')?.focus() + }) } }) })