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

backmerge flixel 6 official #4

Open
wants to merge 112 commits into
base: dev-6.0.0
Choose a base branch
from

Conversation

Geokureli
Copy link

Assuming you never use sprite.animation.frames, or extended FlxSave to use your specific resolve methods, this should work

The only remaining difference between this branch and release6 is the logarithmic sound stuff. Everything else was implemented in flixel 6.0.0

Geokureli and others added 30 commits June 12, 2024 09:59
* add trackingInfo to FlxGraphic for debugging

* add color

* use hex
* ignore alpha when point-selecting sprites

* typo
* Add FlxFlicker.pause() and FlxFlicker.resume()

* Apply suggestions from code review

Co-authored-by: George Kurelic <[email protected]>

---------

Co-authored-by: George Kurelic <[email protected]>
…axeFlixel#3180)

* Don't attempt to retrieve frameCollections on a destroyed graphic.

* Update flixel/graphics/FlxGraphic.hx

Co-authored-by: George Kurelic <[email protected]>

---------

Co-authored-by: George Kurelic <[email protected]>
* More new features and overloads

* add setTileIndex overload and setTileIndexAt

* ver

* changelog
* fix empty result with passed in result arg

* add rect.clipTo
* fix negative tiles

* more unit tests

* one more test
…#3196)

* Fix `null` text alignment returning as CENTER on HashLink

* Moved null check over to the switch statement

* Add comment to explain the bugfix
* overhaul pointer

* fix debug selection on native fullscreen

* fix backwards compat

* fix CI on github actions

* more CI fixes

* D'oh

* doc

* more doc

* more docs
* overhaul pointer

* fix debug selection on native fullscreen

* fix backwards compat

* fix CI on github actions

* more CI fixes

* D'oh

* doc

* more doc

* more docs

* fix warning

* remove unneeded check
* deprecate callback and finishCallback by FlxTypedSignal counterparts

* aw dang it

* fix + doc

* remove deprecation warnings

* remove some more deprecation warnings

* prevent CI errors on final

* rename and restructure

* add new tests

* doc

* imports

* remove unneeded warning suppression

* revert import, hopefully fix CI

* retrigger CI (for testing)

---------

Co-authored-by: George FunBook <[email protected]>
* add onLoopComplete callback signal

* small simplification

* Revert "small simplification"

This reverts commit 4ffbf0b.

* rename

* add unit tests

* style

---------

Co-authored-by: George FunBook <[email protected]>
* remove blend mode from FlxCamera.fill()

* more readable FlxCamera.drawFX()

* revert alpha overrides

* more cleanup

---------

Co-authored-by: George FunBook <[email protected]>
* Update CompletionList.hx

* Update CompletionHandler.hx
* Initial text input implementation

* Fix code climate?

* Add missing FLX_MOUSE check

* Add multiline variable
- Regenerate text graphic when `passwordMode` changes

* Place caret at closest character to mouse

* Selection boxes + selected text color
- Add `setSelection()` function
- `FlxInputText` variables are now destroyed properly

* Implement text selection with mouse & text scrolling
- Added `scrollH`, `scrollV`, `bottomScrollV`, `maxScrollH` & `maxScrollV` variables
- Return end of text if character isn't found at position

* Fix selection not working correctly when mouse is out of bounds
- Selection boxes are now clipped inside the text bounds
- Simplified getting the Y offset of a line

* Mouse wheel scrolling
- Fix scrollV not being able to be modified directly

* Implemented double press and dragging
- Selection sprites now just change their color instead of making new graphics
- scrollH can now be modified properly as well
- Word wrap no longer changes with multiline (multiline only affects adding new lines)

* Action callbacks

* Fix "final" keyword screwing up code climate

* Various fixes & improvements
- Caret is now positioned properly with different alignments
- Caret is now clipped inside the text bounds
- Caret is now automatically resized when changing `bold`, `font`, `italic`, `size` or `systemFont` variables
- Fixed crash when pressing down a key while there isn't a focused input text
- Fixed selected text format overwriting the border color
- Fixed caret not being visible when text is empty
- Fixed selection boxes sometimes not being updated immediately
- Added `useSelectedTextFormat` variable
- Double press check is now when the mouse is released (same as OpenFL)

* Add `forceCase` and filterMode`
- Moved action callback types to an enum abstract

* Added background for text input
- Added `focusGained` and `focusLost` callbacks
- Fixed selection boxes not being clipped properly when they're compeletely out of bounds

* Some improvements
- Added bounds check while changing `caretIndex`, `caretWidth`, `fieldBorderThickness` and `maxLength`
- FlxInputText is now single-line by default
- Fixed text scroll being reset while moving selection with mouse
- Caret index now starts at the end of the text if focus is enabled through code
- Background now gets regenerated in `regenGraphic` instead of instantly after changing a related variable

* Added `editable` and selectable` variables
- Added change and scroll action callbacks
- Made `replaceSelectedText()` public

* Flixel hotkeys (volume & debugger) are now disabled while inputting text
- Fixed space not being inputted on HTML5

* Caret flashing timer
- Fixed text going out of bounds when enabling multiline without a field height set
- Last click time for double click now resets if the mouse clicked on something else

* Optimized selection box sprites (only visible lines are accounted for now)
- Fixed untypeable characters being added to text input on Flash

* Various fixes for Flash
- Fixed text selection and caret positioning on Flash
- Copy, cut, paste and select all commands now work on Flash
- Fixed horizontal scroll not being set automatically on Flash
- Moved to using Flash's `TextEvent.TEXT_INPUT` event (does not dispatch with invalid characters)

* Fixed text selection and scrolling on other platforms

* Fixed text selection with word wrapping enabled

* Added touch support
- Now uses `window.setTextInputRect()` to prevent keyboard overlay from blocking the text field
- Fixed pointer position being inaccurate with camera scrolling
- Fixed `getCharBoundaries()` not giving the correct Y position

* Added documentation
- Fixed not being able to add text if the field starts out empty
- Fixed the caret being the wrong size if the text field is empty
- Fixed the background not being resized when auto size is enabled
- Changing `customFilterPattern` now automatically sets `filterMode` to `CUSTOM_FILTER`
- Renamed `_lastClickTime` to `_lastPressTime`

* Add documentation to `multiline` variable
- Remove setting `_autoHeight` to false after setting multiline to true as its no longer needed

* Add `mouseWheelEnabled` variable
- Remove unneeded `selectable` comment

* Replaced `PREVIOUS_LINE` and `NEXT_LINE` with `WORD_LEFT` and `WORD_RIGHT`
- Ctrl + Up/Down now dispatches `LINE_LEFT` or `LINE_RIGHT` instead of `HOME` or `END`
- Renamed `LINE_BEGINNING` and `LINE_END` to `LINE_LEFT` and `LINE_RIGHT`

* Various fixes
- Clip rect should now work properly
- Fixed caret showing up after changing `text` through code
- Focus will not be removed due to clicking outside of the text field if it has been granted via code in the same frame
- Caret will no longer be visible if the text field isn't editable
- Fixed some html5 tests not compiling on CI

* Various more fixes
- Fixed crash from recursive calls to `regenBackground()` due to `clipSprite()`
- Fixed crash from `pointer.getWorldPosition()`
- Fixed background not being updated after changing text format
- Moved caret sprite regeneration to `regenGraphic()`

* Move input text "frontend" to a manager plugin

* Fixed missing rename

* Replace `callback` with `onTextChange` and `onScrollChange` signals
- Replace `focusGained` and `focusLost` with `onFocusChange` signal
- Renamed filter mode options and added `CHARS` option
- Removed `customFilterPattern` as its now defined in the enum itself

* Move `ENTER_ACTION` over to `onEnter`

* Implement `destroy()` for FlxInputTextManager
- Add `unregisterAll()` to FlxInputTextManager

* add onTypingAction

* allow custom manager

* add setManager

* remove focus setter for setFocus

* better destroy/init

* use case ifs

* improve mac key behavior

* fix selection start/end issue

* remove set_hasFocus for startFocus and endFocus

* use final signals

* let openfl handle maxChars

* inline setters remove redundancies

* simplify caret blink

---------

Co-authored-by: George FunBook <[email protected]>
Geokureli and others added 29 commits December 10, 2024 11:33
… bit of outdated info remoced) (HaxeFlixel#3312)

* Removed @param descriptions for non existent Arguments L115

* remove doc tabs, lowercase arg names

---------

Co-authored-by: George Kurelic <[email protected]>
* auto add sound extensions

* allow FLX_SOUND_ADD_EXT to specify the extension

* doc

* d'oh

* D'oh!

* allow any file extension

* rename to FLX_DEFAULT_SOUND_EXT
* Update documentation for BitmapFrontEnd

- Changed arguments to start with a lowercase letter.
- Fixed documentation ported over from flash(?), where the documented @:params would not align to function arguments.

* Update flixel/system/frontEnds/BitmapFrontEnd.hx

Co-authored-by: George Kurelic <[email protected]>

* Update flixel/system/frontEnds/BitmapFrontEnd.hx

Co-authored-by: George Kurelic <[email protected]>

* Update flixel/system/frontEnds/BitmapFrontEnd.hx

Co-authored-by: George Kurelic <[email protected]>

* Update flixel/system/frontEnds/BitmapFrontEnd.hx

Co-authored-by: George Kurelic <[email protected]>

* Update flixel/system/frontEnds/BitmapFrontEnd.hx

Co-authored-by: George Kurelic <[email protected]>

* Update flixel/system/frontEnds/BitmapFrontEnd.hx

Co-authored-by: George Kurelic <[email protected]>

* Make docs follow the "rules" of documentation

Co-authored-by: George Kurelic <[email protected]>

* Fix a @return doc having 3 spaces instead of 2

* More doc formatting changes

---------

Co-authored-by: George Kurelic <[email protected]>
* fix camera.color

* fix edge cases

* Simplify FlxGraphicsShader

* fix triangles
* fix camera.color

* doc
* change logs to include posInfos

* fix flash errors

* D'oh
* add overloaded scale

* add FlxReadOnlyPoint

* deprecate statusAnimations

* fix drawCircle centering

* Add analog stick to FlxVirtualPad

* fix code climate

* D'oh

* fix coverage

* fix flash

* add distance overloads

* add FlxMath.getFrameLerp

* honor camera in checkInput

* add FlxVirtualStick deprecate FlxAnalog

* rename to getElapsedLerp

* fix multi-touch

* D'oh!

* doc

* add FlxAnalogState helpers

* rename signals, add statuses

* add deadzone

* remove lerp constructor arg

* fix unit test warning

* overload more shit

* 5.10.0

* change 5.10->6
* Remove legacy code & defines
- Removed `FLX_POST_PROCESS` define &  related code
- Removed references to `openfl_next`, `lime_legacy` &  `next` defines
- Removed Lime & OpenFL version checks that are always true/false due to the current minimum versions

* Removed `legacy` define being set in include.xml

* Re-added `#if !flash` check in `initRenderMethod`

I mistakenly removed the entire code due to it including `lime_legacy`.

* Brought back `undump()` & `canBeDumped` as `refreshBitmap()` & `canBeRefreshed` respectively (old ones are now deprecated)
- Also brought back `onAssetsReload()` & `getBitmapFromSystem()`

* Added missing line breaks

* remove old import

* Remove another deprecated define

* Restored mistakenly-removed define check

* Rename `refreshBitmap()` to `refresh()`

---------

Co-authored-by: George FunBook <[email protected]>
* replace `FlxSaveStatus.ERROR` with SAVE_ERROR

* update changelog

* add link

* Add deprecated  ERROR back
* remove implicit int casts to/from directions

* D'oh

* D'oh!

* deprecate operators and fix haxe 4.2.5

* order imports

* remove casts, add explicit cast functions

* fix not() and add tests

* Doc

* doc + tests
@Geokureli Geokureli changed the title replace Funkin backmerge flixel 6 official Jan 30, 2025
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.