Skip to content

Add Virtual Keyboard to more text inputs#586

Closed
Devlrxxh wants to merge 4 commits intosmartcmd:mainfrom
Devlrxxh:keyboard-menu
Closed

Add Virtual Keyboard to more text inputs#586
Devlrxxh wants to merge 4 commits intosmartcmd:mainfrom
Devlrxxh:keyboard-menu

Conversation

@Devlrxxh
Copy link
Contributor

@Devlrxxh Devlrxxh commented Mar 5, 2026

Description

The current system uses windows DialogBox which looks extremely bad and is unusable on Controller. This introduces a virtual keyboard like on consoles

Changes

Previous Behavior

Changing Texts opens a DialogBox

Root Cause

Unusable on controller, looks bad

New Behavior

Opens the new Virtual Keyboard.

Fix Implementation

There had been issues implementing the callback the issue with the current RequestKeyboard method is that it can't take specific values and I cant change its behavior due to it being built into 4j libs.

AI Use Disclosure

AI was only used to come up with an idea on how to do the fallbacks as the issue is with the current #RequestKeyboard system its extremely limited.

Preview:
https://streamable.com/shkdzl

@lspepinho
Copy link
Contributor

This is pretty good ngl

@void2012
Copy link
Collaborator

void2012 commented Mar 5, 2026

Please attach a screenshot and gameplay footage.

@Devlrxxh
Copy link
Contributor Author

Devlrxxh commented Mar 5, 2026

Please attach a screenshot and gameplay footage.

Already attached it's at the Preview section. The file was too large to directly upload to GitHub

@void2012
Copy link
Collaborator

void2012 commented Mar 5, 2026

Don't forget to open an issue in 4JLibs

@void2012
Copy link
Collaborator

void2012 commented Mar 5, 2026

By the way, we don't need that virtual keyboard if no controller is connected(PC with a keyboard). Does the code check for this? I can't find it.

@Devlrxxh
Copy link
Contributor Author

Devlrxxh commented Mar 5, 2026

By the way, we don't need that virtual keyboard if no controller is connected(PC with a keyboard). Does the code check for this? I can't find it.

You are able to still use the keyboard Arrow Keys and Enter keys for example, but I could make it use the old system if no controller is connected

@void2012
Copy link
Collaborator

void2012 commented Mar 5, 2026

My point is that there should be no virtual keyboard when an actual keyboard is there and there is no controller. Please implement this behavior.

@EnderActually
Copy link
Contributor

I think instead of checking if a controller is connected, instead you check what input device entered the text Field.

@Devlrxxh
Copy link
Contributor Author

Devlrxxh commented Mar 5, 2026

My point is that there should be no virtual keyboard when an actual keyboard is there and there is no controller. Please implement this behavior.

So should it use the old system when no controller is connected?

@zephiii
Copy link
Contributor

zephiii commented Mar 5, 2026

My point is that there should be no virtual keyboard when an actual keyboard is there and there is no controller. Please implement this behavior.

So should it use the old system when no controller is connected?

TL;DR, it should only appear if a controller is connected, but a keyboard is not.

@Devlrxxh
Copy link
Contributor Author

Devlrxxh commented Mar 5, 2026

My point is that there should be no virtual keyboard when an actual keyboard is there and there is no controller. Please implement this behavior.

So should it use the old system when no controller is connected?

TL;DR, it should only appear if a controller is connected, but a keyboard is not.

It now uses the last inputted input

@rtm516
Copy link
Collaborator

rtm516 commented Mar 5, 2026

This should probably be done in 4J Input

@EnderActually
Copy link
Contributor

I don't have perms to merge but is this ready to push?
I'm excited for this to be on the main.

@dtentiion
Copy link
Contributor

Issue was already resolved in #539

@void2012
Copy link
Collaborator

void2012 commented Mar 5, 2026

Issue was already resolved in #539

So I should close this one and convert yours to draft?
@Devlrxxh, @dtentiion

@Devlrxxh
Copy link
Contributor Author

Devlrxxh commented Mar 5, 2026

Issue was already resolved in #539

So I should close this one and convert yours to draft?

@Devlrxxh, @dtentiion

Yeah mb i hadn't seen that a pr is already open for it

@void2012 void2012 closed this Mar 5, 2026
@codeHusky
Copy link
Collaborator

This addresses things not addressed in #539 like seed and other text prompts, this still has relevance.

@codeHusky codeHusky reopened this Mar 5, 2026
@codeHusky codeHusky changed the title Virtual Keyboard (Console Like) Add Virtual Keyboard to more text inputs Mar 5, 2026
@codeHusky codeHusky marked this pull request as draft March 5, 2026 21:34
@Devlrxxh Devlrxxh closed this Mar 6, 2026
@Devlrxxh Devlrxxh deleted the keyboard-menu branch March 6, 2026 23:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants