[Worlds >= 3.1.6] VRCInputField InputField no longer sends OnEndEdit event
tracked
ScruffyRuffles
I used USharpVideo to test, I tested 3.1.5 which worked but 3.1.6 and 3.1.10 did not work.
By "work" I mean the event fires and the video plays
Log In
Haxy
TMPInputField does not fire OnEndEdit as of build 1550
JanSharp
Hi, sdk 3.6.1 here, I've gone ahead and tested all of the events on both TextMeshPro InputFields as well as Legacy InputFields.
On TextMeshPro InputFields we only get OnValueChanged, but only one time, once the player has finished editing. So basically upon ending edit. If the user did not change the text at all we do not get any event.
On Legacy InputFields we get OnValueChanged with the same behavior as for TextMeshPro. So also no OnEndEdit. However we do get OnSubmit, even if the text did not change.
While unlikely, if you need to know whenever the player edited some text regardless of if it actually changed, you have to use Legacy InputFields with OnSubmit.
I'd like to as respectfully as possible point out that it is insane how a bug affecting every single InputField has been in the game for over 1.5 years. I am baffled how there's only 6 upvotes, considering using OnValueChanged to get the effect of OnEndEdit is incredibly backwards and the opposite behavior of what one would experience while testing in the editor.
I should also mention that OnEndEdit did work in 2019 so for me, coming from there just now, this was one of the last things I thought of to test when my script wasn't working.
Fax
tracked
ImLeXz
Also had same issue, tested with different video players and in completely new project created with VCC, Steps I took->
New project with VCC containing SDK Base
Add VRC Worlds SDK 3.1.10
Add UdonSharp 1.1.6
Add ClientSim 1.2.2
Open project
import latest release of UdonSharpVideo
Setup basic scene and drag in UdonSharpVideo prefab
Enter URL and click enter on keyboard
Expected result: Video is shown on the screen after messages are printed to console
Actual result: No video shown, no messages are printed to console
Clicking "Invoke" on the OnEndEdit event makes the Video Player function as expected, so its just the OnEndEdit event not being sent properly