From d4a016771f81702802d989916e1d9cb4aed715af Mon Sep 17 00:00:00 2001 From: JFronny Date: Fri, 13 Jan 2023 14:20:16 +0100 Subject: [PATCH] It werks --- .../java/io/gitlab/jfronny/inceptum/gtk/GtkEnvBackend.java | 5 ++--- .../inceptum/gtk/control/InstanceGridEntryFactory.java | 2 +- .../io/gitlab/jfronny/inceptum/gtk/util/ListIndexModel.java | 2 ++ .../io/gitlab/jfronny/inceptum/gtk/window/MainWindow.java | 2 +- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/GtkEnvBackend.java b/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/GtkEnvBackend.java index c3047fc..f42edd1 100644 --- a/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/GtkEnvBackend.java +++ b/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/GtkEnvBackend.java @@ -51,12 +51,11 @@ public enum GtkEnvBackend implements LauncherEnv.EnvBackend { //TODO test Box box = dialog.contentArea; box.append(new Label(details)); Entry entry = new Entry(); - Editable entryEditable = (Editable) entry; - entryEditable.text = defaultValue; + entry.text = defaultValue; box.append(entry); dialog.addButton(I18n.get("ok"), ResponseType.OK.getValue()); dialog.addButton(I18n.get("cancel"), ResponseType.CANCEL.getValue()); - dialog.onResponse(processResponses(dialog, () -> ok.accept(entryEditable.text.toString()), cancel)); + dialog.onResponse(processResponses(dialog, () -> ok.accept(entry.text), cancel)); dialog.show(); }); } diff --git a/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/control/InstanceGridEntryFactory.java b/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/control/InstanceGridEntryFactory.java index 52bf2fa..1e9652f 100644 --- a/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/control/InstanceGridEntryFactory.java +++ b/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/control/InstanceGridEntryFactory.java @@ -65,7 +65,7 @@ public class InstanceGridEntryFactory extends SignalListItemFactory { ListItem li = (ListItem) item; Box box = (Box) li.getChild(); - InstanceThumbnail thumbnail = (InstanceThumbnail) box.firstChild; + InstanceThumbnail thumbnail = InstanceThumbnail.castFrom((Stack) box.firstChild); Label label = (Label) thumbnail.nextSibling; Instance instance = instanceList.get(((ListIndexItem) li.getItem()).getIntValue()); diff --git a/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/util/ListIndexModel.java b/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/util/ListIndexModel.java index 9534ec8..0cc0852 100644 --- a/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/util/ListIndexModel.java +++ b/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/util/ListIndexModel.java @@ -62,9 +62,11 @@ public class ListIndexModel extends GObject implements ListModel { } public void setSize(int size) { + int oldSize = getNItems(); getMemoryLayout() .varHandle(MemoryLayout.PathElement.groupElement("size")) .set(MemorySegment.ofAddress((MemoryAddress) handle(), getMemoryLayout().byteSize(), MemorySession.openImplicit()), size); + itemsChanged(0, oldSize, size); } @Override diff --git a/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/window/MainWindow.java b/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/window/MainWindow.java index 301d2e8..fcc910d 100644 --- a/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/window/MainWindow.java +++ b/launcher-gtk/src/main/java/io/gitlab/jfronny/inceptum/gtk/window/MainWindow.java @@ -149,7 +149,7 @@ public class MainWindow extends ApplicationWindow { try { instanceList.clear(); instanceList.addAll(InstanceList.ordered()); - instanceListIndex.setSize(instanceList.size()); + instanceListIndex.size = instanceList.size(); if (InstanceList.isEmpty) stack.visibleChild = empty; else if (InceptumConfig.listView) stack.visibleChild = listView;