Merge pull request #1385 from MathemanFlo/LiveSearch

Live search for browser
This commit is contained in:
Lubos Lenco
2022-04-23 18:43:24 +02:00
committed by GitHub
2 changed files with 11 additions and 13 deletions
+7 -2
View File
@@ -1,5 +1,6 @@
package arm.ui;
import kha.input.KeyCode;
import zui.Zui;
import zui.Id;
import arm.sys.Path;
@@ -54,8 +55,12 @@ class TabBrowser {
if (ui.button(tr("Refresh")) || (inFocus && ui.isKeyPressed && ui.key == kha.input.KeyCode.F5)) {
refresh = true;
}
hsearch.text = ui.textInput(hsearch, tr("Search"));
if (hsearch.text != "" && ui.button(tr("X"))) {
hsearch.text = ui.textInput(hsearch, tr("Search"), Align.Left, true, true);
if (ui.isHovered) ui.tooltip(tr("Press ctrl+f to search and esc to cancel"));
if (ui.isCtrlDown && ui.isKeyPressed && ui.key == KeyCode.F) { // start searching via ctrl+f
ui.startTextEdit(hsearch);
}
if (hsearch.text != "" && (ui.button(tr("X")) || ui.isEscapeDown)) {
hsearch.text = "";
}
ui.endSticky();
+4 -11
View File
@@ -45,7 +45,6 @@ class UINodes {
var recompileMatFinal = false;
var nodeSearchSpawn: TNode = null;
var nodeSearchOffset = 0;
var nodeSearchLast = "";
var lastCanvas: TNodeCanvas = null;
var lastNodeSelected: TNode = null;
var releaseLink = false;
@@ -469,22 +468,16 @@ class UINodes {
var first = true;
UIMenu.draw(function(ui: Zui) {
ui.fill(0, 0, ui._w / ui.SCALE(), ui.t.ELEMENT_H * 8, ui.t.SEPARATOR_COL);
ui.textInput(searchHandle, "");
var search = ui.textInput(searchHandle, "", Left, true, true);
ui.changed = false;
if (first) {
first = false;
ui.startTextEdit(searchHandle); // Focus search bar
ui.textSelected = searchHandle.text;
searchHandle.text = "";
nodeSearchLast = "";
ui.startTextEdit(searchHandle); // Focus search bar
}
var search = searchHandle.text;
if (ui.textSelected != "") search = ui.textSelected;
if (search != nodeSearchLast) {
nodeSearchOffset = 0;
nodeSearchLast = search;
}
if (searchHandle.changed) nodeSearchOffset = 0;
if (ui.isKeyPressed) { // Move selection
if (ui.key == kha.input.KeyCode.Down && nodeSearchOffset < 6) nodeSearchOffset++;
if (ui.key == kha.input.KeyCode.Up && nodeSearchOffset > 0) nodeSearchOffset--;