* perf: avoid memory leak #1834
Avoid memory leak by remove the exclusive parameter and logic in the code block on AddEventListener method in DomEventService class.
The following are the components affected:
components/affix/Affix.razor.cs
components/anchor/Anchor.razor.cs
components/carousel/Carousel.razor.cs
components/core/Component/Overlay/Overlay.razor.cs
components/core/Component/Overlay/OverlayTrigger.razor.cs
components/core/JsInterop/DomEventService.cs
components/descriptions/Descriptions.razor.cs
components/dropdown/DropdownButton.cs
components/grid/Row.razor.cs
components/input/Input.cs
components/input/TextArea.razor.cs
components/layout/Sider.razor.cs
components/list/ListItem.razor.cs
components/select/Select.razor.cs
components/select/internal/SelectContent.razor.cs
components/slider/Slider.razor.cs
components/table/Table.razor.cs
components/tabs/Tabs.razor.cs
* fix override AddEventListener method in AntDesign.TestKit project
* add register/remove event listerner for exclusive use in DomEventService class
* move _dotNetObjects to DomEventListerner class/service, so that users not required to maintain it in each component.
* * move share/reuse dom event listerner methods to DomEventListerner class
* remove method 'AddEventListener' that no longer exists in DomEventService class in AntDesign.TestKit project
* * change the component referring to an IDomEventListerner interface instead of a concrete class,
so that the component can be tested via a mock TestDomEventListerner.
* introduce DisposeShared and Dispose method in DomEventListerner to ease user remove callback from DomEventListerner
* register IDomEventListerner into DI container instead of create manually
* fix FormatKey
* fix FormatKey
* fix tests
* fix test
* fix test
Co-authored-by: James Yeung <shunjiey@hotmail.com>
* feat(module:overlay): OverlayTrigger not bound to a div
* feat(module:overlay): OverlayTrigger not bound to a div
* feat(module:overlay): Logic transfer to single Overlay
* feat(module:overlay): remove obsolete duplication
* feat(module:Tooltip): Add for unbounded oncontextmenu event handler
* feat(module:tooltip): unbound js event listeners remove
* docs(module:tooltip): unbound explanation
* fix(module:button): attach Ref to top level html element @ref
* feat(module:dropdown&tooltip&popconfirm&popover): Overlay not bound to a div
* docs(module:dropdown&tooltip&popconfirm&popover): unbound explanation
* feat(module:OverlayTrigger): common logic relocation
* feat(module:overlaytrigger): Overlay not bound to a div
* feat(module:DatePicker): Overlay not bound to a div
* feat(module:select): Overlay not boud to div
* fix(module:select): onclickarrow event relocation
* fix(module:select): rename Show to OnArrowClick
* feat(module:avatar): Overlay not bound to a div
* docs(module:avatar): demo switch to unbound version
* feat(module:autocomplete): partial OverlayTrigger not bound to a div
* feat(module:slider): tooltip
* docs(module:slider): tooltip
* fix(module:overlay): add SetVisible method
* feat: set Ref where missing, performance
components register Ref when missing
IsFixed flag for CascadeValue changed
hard-code sequence numbers when using RenderTreeBuilder
Rate component use Tooltip Unbound version
Tabs test fix
* fix: revert changes (accidental)
* feat(module:upload): tooltip with unbound usage
* feat(module:table): column use of unbound tooltip
* feat(module:autocomplete):overlay unbound from div
* fix(module:upload): missing div restore
Co-authored-by: James Yeung <shunjiey@hotmail.com>
* fix(module:slider): drag lag and reposition fix
remove unnecessary check from OnMouseMove
change position calculation - remove handle size
* fix(module:slider): text select issue while slider drag fix
* fix: remove the style
* clean value
* fix(module:slider): text select while slider drag fix
Co-authored-by: ElderJames <shunjiey@hotmail.com>
* fix:(module: slider): changed to lock to clicked edge
add new OnMouseDownEdge event handler to razor and base class to detect which edge was clicked
add new helper method IsMoveInEdgeBoundary and helper variables
add IsMoveInEdgeBoundary evaluation to OnMouseMove and OnMouseUp event handlers to detec if
value update needs to run
feature: added click-able edges to support forcing of left/right scenarios
* fix:(module:slider): Range property replaced with nullable backing field.
Evaluation of Range is happening in getter (only first time).
Removed evaluation of Range from OnInitialized().
* fix:(module:slider): Reset _leftValue & _rightValue when both change.
Fixes the prolem when both lef&right values are changing significantly compared to original values.
* fix:(module:slider): single edge slider was broken after previous commits
changed IsMoveInEdgeBoundary method to handle null event arguments
added OnMouseDownEdge event to single edged slider
* fix(module:slider): change Value evaluation to handle reversed order
value property is overridden to ensure the delivered tuple is in ascending order
fixes#867
* fix(module:slider): change evaluation of left and right values
fixes#865
* fix(module:slider) reverse parameter is refreshing styles on change
fixes #
* feat: new demo for switch, radio, slider and inputnumber
* fix: remove some blank in demo doc api section
* fix: format the code in demo
* fix: checkbox and switch
Co-authored-by: ElderJames <shunjiey@hotmail.com>