Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Catch up to upstream #19

Merged
merged 12 commits into from
Dec 27, 2024
Merged

Catch up to upstream #19

merged 12 commits into from
Dec 27, 2024

Conversation

YannickMG
Copy link

@YannickMG YannickMG commented Dec 27, 2024

Caught up with PRs to upstream. Ideally this shouldn't be squash-merged to help keep tracked of what was pulled.

Let me know if I should open individual PRs for each pulled upstream PR instead.

Also, fixed a broken lang key in the code.

YannickMG and others added 12 commits December 27, 2024 09:00
(cherry picked from commit 7cf5c23)
…gets (CleanroomMC#86)

* update enabled state on setting condition

* IPanelHandler improvements
seal PanelSyncHandler and change to accept IPanelHandler

* weaken setSyncHandler and throw exception for invalid handlers

* fix TestTile

* expand IPanelSyncManager
use interface in ModularSyncManager
warn and return for updating null synchandlers

* add overload for collectSyncValues()
use proper sync manager for new panels

* fix draggables

* only initialize synchandlers if they are invalid

* fix issues with unboxing

* add example to test tile

* get the correct sync manager on close

* basic impl for disposing a synced panel

* rename field and remove shadow in TestTile

* yeet IPanelSyncManager

* yeet ClientEventHandler and move it into ClientScreenHandler

* address reviews

* go back to registering PSHs to the main PSM
item slot moment

* add registered check for ItemSlotSH
no need to check for SyncHandler init

* renaming this was an unnecessary change

* fix TextWidget unable to resize with empty string
enforce nullability better

(cherry picked from commit 9e2c120)
* add method overload + small improvements

* add new method
other misc changes

* simplify code

* add nullability guards and checks
update mapToMatrix and correct parameter name

* don't set element margin to 2
rename margin method

* simplify even more

* one more nullability guard

(cherry picked from commit d296c8d)
* add the ability to invert selected textures for ToggleButton and PageButton

* use in ColorPickerDialog

(cherry picked from commit 8eb467d)
* add constructor overloads

* add ByteSyncValue

* update cache in constructor

* implement ByteValue
move byte interfaces to ByteValue

* actually update cache

* enforce not null
no need to check if getter is null

* update cache in constructor

(cherry picked from commit fe47b3b)
* account for padding when drawing area
add equals for DrawableWidget

* use padding for x, y

* use area x and y and add padding

* fix widget drawing

(cherry picked from commit c925ae3)
(cherry picked from commit e2635d4)
(cherry picked from commit db7a588)
* Allow focusing on text field upon GUI open

* Remove selected chars on key type or paste

Handler test prevents invalid chars from removing textbox

* Prevent § from being pasted

* Shorten cursor blink rate to 0.5s

This is the same behavior as of MUI1. Also Windows uses 530 ms by default.

* Parse thousand separator

* Clear text on right click

* Add support for suffixes and E notation

The implementation is somewhat dirty, but I can't think of better way.
I renamed constant E to NAPIER, as it clashes with E notation. I don't think someone will use this anyway.

* Allow retrieving parse fail message

Printing to log might make people think it's bug in code.
This feature can be used for indicator of what's wrong with the use input.
This also stops function construction from failing silently.

* Allow setting default number

* Make division by zero throw exception

I believe this is better than silently dividing by 1.

* Add config to restore the last text if ESC key is pressed

* Handle cases failed to parse function

* Catch all the exceptions

It's not game-breaking fatal error anyway.

* Split into text field and numeric field

Former defaultValue is gone, because 1. It's set by onInit 2. It's better to restore the last value rather than something supposed to be default

* Rename

TextFieldWidget -> OneLineTextField
StringTextFieldWidget -> TextFieldWidget

* Dirty solution for comma as thousand separator

* Rewrite the way E notation is handled

* Revert "Rename"

This reverts commit 8e00147.

* Revert "Split into text field and numeric field"

This reverts commit 580683b.

(cherry picked from commit 53f305e)
@YannickMG YannickMG requested review from serenibyss, Caedis and a team December 27, 2024 14:49
@serenibyss serenibyss merged commit b2512ac into master Dec 27, 2024
1 check passed
@serenibyss serenibyss deleted the catchup-to-upstream branch December 27, 2024 15:58
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.

5 participants