Commit Graph

52 Commits

Author SHA1 Message Date
Tony Yip
4b04f09832 perf: avoid memory leak issue of event listener (#1857)
* 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>
2021-09-09 12:56:11 +08:00
Maksim
cddfca399d feat(module: breadcrumb): add Href parameter and overlay dropdown (#1859)
* Setup breadcrumb dropdown

* Setup breadcrumb href

* fix dropdown style

* fix dropdown trigger class

* fix tests

Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-08-28 03:07:46 +00:00
anranruye
50f9ee4295 fix(module: overlay): use right positioning for bottom-right placement (#1799) 2021-08-01 18:52:43 +08:00
anranruye
bb6d32e940 fix(module: overlay): fix overlay position when container element has border (#1797) 2021-07-31 23:12:48 +08:00
anranruye
65857a63b7 fix(module: overlay): better judge whether mouse is inside the trigger when click (#1692)
Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-07-05 13:45:59 +08:00
Andrzej Bakun
4cac27f887 fix(module: dropdown): dropdown button missing properties & docs fix for Dropdown & Button (#1609)
* fix:fix(module:dropdownbutton): add regular button behaviors and properties

* fix(module:button): add text type & docs

* docs(module:dropdown): version correction

* fix(module:overlay): re-add IsButton parameter

* fix: add xml comment to public methods

* fix(module:overlay): add xml documentation

* fix(module:dropdown): chrome block button force

* fix(module:button): remove Search parameter

Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-06-09 17:51:24 +08:00
Andrzej Bakun
80e0043445 fix(module: dropdown): align with react (#1588)
* fix(module:dropdownbutton): align with react version

* doc(module:dropdownbutton): align with react docs
2021-06-02 10:46:58 +08:00
Ivan Ocoka
201172f122 fix:(module: overlay): positioning should take scroll into account (#1511)
Co-authored-by: Ocoka <somewhere@network>
Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-05-12 02:48:09 +00:00
Andrzej Bakun
a7fabae919 fix(module: datepicker): Date picker panel click closing + some issues from #1431 (#1452)
* fix(module:datetime) keep open when click on panel

fix: tab key behavior
blur/show optimization

* fix(module:rangepicker): tab key behavior improvements

blur/focus optimizations

* fix(module:overlay): overlay visible before positioning

fix: flickering

* fix(module:datepicker): handle escape key

* fix(module:datepicker): mark properly current date on panel

* fix(module:datepicker): week mode calculates weeks properly
2021-05-07 15:31:13 +08:00
笨木头
ece46d4759 fix(module: overlay): issues in boundaryAdjustMode (#1420)
Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-04-28 12:44:23 +00:00
Andrzej Bakun
47ebd7f076 fix(module: table): DataIndex filter pop up (#1421)
* fix(module:overlayTrigger): TrigerRefernece points to OverlayTrigger.Ref.

* fix(module:overlay): Show waits for competing code to finish

* Update OverlayTrigger.razor.cs

* clean code

Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-04-27 05:02:29 +00:00
James Yeung
d4cbc6d4e0 feat: add element component (#1378)
* refactor: rename `HtmlElement` property case

* rename the directory name for overlay

* add element component
2021-04-17 22:14:01 +08:00
ElderJames
433d376739 merge master into feature 2021-04-15 12:55:36 +08:00
James Yeung
f4a3b60047 fix(module: tooltip): wrong popup direction (#1348) 2021-04-15 12:20:48 +08:00
YMohd
9ff708eb31 feat(module: table): add build-in filters (#1267)
* tablefilter-moreoptions

* tablefilter-moreoptions

* tablefilter-moreoptions

* tablefilter-moreoptions

* tablefilter-moreoptions

* fix demo and docs

Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-04-11 01:11:19 +08:00
Andrzej Bakun
851c970f1d fix(module: overlaytrigger): correct method disposal (#1322)
Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-04-08 14:30:53 +00:00
笨木头
d0922fbc50 fix(module: datepicker): incorrect in RTL mode (#1300)
* fix(module: dropdown): default PlacementType is incorrect in RTL mode

* fix(module: datepicker): not correct in RTL mode

* fix(module: datepicker): styles is incorrect when switch to LTR from RTL

Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-04-06 20:02:53 +08:00
James Yeung
d2e9c4b247 feat(module: config-provider): support RTL (#1238)
* feat(module: config-provider): support RTL

* add rtl for each component

* fix rtl for pagination

* add rtl for overlay
2021-03-31 19:23:26 +08:00
笨木头
93b14fe81d fix(module: dropdown): Animations for down and up are inverse (#1274)
Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-03-24 14:11:28 +00:00
Zonciu Liang
da55e9e7e8 fix(animation): missing prefix (#1243)
* fix: add class name prefix for zoom and slide-up animations.

* fix(module: popconfirm): fix animation

* fix(module: popover): correct animation, sync de
2021-03-12 15:46:48 +08:00
笨木头
1a86a88002 fix(module: table): clicking outside couldn't close filter panel (#1232) 2021-03-10 20:03:55 +08:00
James Yeung
4065869806 feat(module: table): add filters (#1178)
* feat: add table filter

* add filter buttons

* fix filter menu

* make filter work

* support multiple filters

* delete the old files

* support single select
2021-02-27 23:55:48 +08:00
笨木头
314b07daf9 feat(model: overlay): add boundary detection adjustment (#1109)
* feat(model: overlay): add boundary detection and orientation adjustment

* feat: suport inview and inscroll mode
2021-02-09 10:01:42 +08:00
Andrzej Bakun
e7b01d509c fix(module: table): table exception on refresh (#1040)
* fix(module:overlay): remove obsolete js call

check for Ref.Id before any js operation on it

* fix(module:table): js interop exceptions on dispose

* docs(module:slider): typo fix

* docs(module:spider): typ
2021-01-25 12:53:19 +08:00
Andrzej Bakun
152a574577 feat(module: overlay): OverlayTrigger not bound to a div (#937)
* 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>
2021-01-21 17:20:10 +08:00
Andrzej Bakun
81817ea3db fix(module: overlay): Interop delElementFrom() exception on page refresh (#1008)
* fix(module:overlay): page reload detection

* fix(module:overlaytrigger): event handler on window resize remove on dispose
2021-01-20 19:58:20 +08:00
dblleaf
17989ff980 fix: overlay can be aligned to right when trigger is not button. (#925) 2020-12-25 13:32:54 +08:00
Bintel
bb700cd7cc feat(module: menu): expose SubMenu's Placement (#921)
* Expose SubMenu's Placement

The Placement of SubMenu can now be changed and it will be set to BottomLeft or RightTop as before if you don't set it.

* Try fix #922

I'm not sure if it will bring new problems, but it solved my problem. I hope someone can help me review it to make sure it doesn't break other things.

* Just optimize code style
2020-12-25 13:28:17 +08:00
Andrzej Bakun
94a06a8256 fix(module: overlay): overlay will reposition on window resize (#897)
fixes #895
2020-12-24 10:55:08 +08:00
笨木头
cdffbaf587 fix(module: menu): submenu couldn't auto close (#852) 2020-12-05 17:23:54 +08:00
Zonciu Liang
d62d23257b fix(module: select): the behavior when Overlay is disabled. Remove clear icon when Select is disabled (#847)
* fix(module: core-overlay): 'disabled' class will be removed correctly

* fix(module: select): remove the clear icon if selector is disabled
2020-12-03 12:28:02 +08:00
ElDiddi
41077bc2fb refactor(module: select): completely new (#800)
* select-rewritten

select-rewritten

* modul: select - update 1

* select-update2

* select-update3

* select-update 4

* feat: append label tag & auto tokenization

* fix: conflict in drpdown demo

Co-authored-by: Lars Diederich <diederich@evodata.de>
Co-authored-by: ElderJames <shunjiey@hotmail.com>
2020-11-27 13:13:26 +08:00
笨木头
2d28ca9cb6 feat(module: dropdown): support context menu in net5 (#815)
* feat(module: dropdown): ContextMenu support offsetX/offsetY in net5

* fix: demo

Co-authored-by: ElderJames <shunjiey@hotmail.com>
2020-11-23 13:34:27 +08:00
Kieran Coldron
504b8bceae fix(module: overlay): don't close overlay if is controlled via visible param fixes #742 (#743) 2020-11-01 16:15:48 +08:00
笨木头
3ca6a1ba96 fix(module: dropdown): context menu would show on "OnClick" event (#678)
Co-authored-by: James Yeung <shunjiey@hotmail.com>
2020-10-14 17:42:57 +08:00
笨木头
34fff47114 fix(overlay): bugs when overlay is nested (#681) 2020-10-14 17:24:26 +08:00
James Yeung
d81f9a583f fix: the prerendering interop exception with some components (#636) 2020-09-21 17:20:19 +08:00
笨木头
edba6e5d4f fix(dropdown, select): work incorrectly in modal (#621)
* fix(module: select): broken removing of selected tag

* fix: [dropdown、select] work incorrectly in modal
2020-09-19 09:15:16 +08:00
笨木头
6d0d8020a3 docs(select&auto-complete): add popupContainerSelector demos (#607)
* docs: add popupContainer

* docs(module: auto-complete): add popupContainer demo

Co-authored-by: James Yeung <shunjiey@hotmail.com>
2020-09-17 10:37:47 +08:00
笨木头
d2c5202c51 refactor(module: select): add overlay, fix some serious bugs (#584) 2020-09-09 22:12:12 +08:00
James Yeung
360fe0d3c0 fix(hosting): server prerendering issue (#583)
* refactor: rename JSInterop constants

* docs: fix typo

* fix: server prerendering issue
2020-09-09 00:52:14 +08:00
James Yeung
a6219ab0bd fix(module: menu): can't open submenu while sider is collapsed (#539) 2020-08-28 13:51:01 +08:00
笨木头
933d67f474 fix: submenu could not open when switch mode (#527)
Co-authored-by: James Yeung <shunjiey@hotmail.com>
2020-08-23 17:33:53 +08:00
笨木头
7a4ab2a302 fix(module: dropdown): couldn't auto close menu (#394)
* fix(module: dropdown): couldn't auto close menu

* refactor(module: overlay): change public function to internal

* fix(module: dropdown): couldn't close in modal
2020-07-23 22:51:02 +08:00
James Yeung
2de927a0d1 refactor: reduce dependence (#301) 2020-07-03 13:37:40 +08:00
笨木头
759c73e0aa feat(module: overlay): add offset parameter (#210)
* feat(module: overlay): add offset parameter

* feat: optimize
2020-06-11 12:28:38 +08:00
ElderJames
97f920ab9a refactor: change namespcae to AntDesign 2020-05-29 00:33:49 +08:00
笨木头
b43282437c refactor: datePicker, update demo doc (#139)
* refactor: datePicker, update demo doc

* docs: fix the number of picker kinds

Co-authored-by: ElderJames <shunjiey@hotmail.com>
2020-05-22 11:24:12 +08:00
笨木头
b24def25a3 refactor: overlay and tooltip (#135)
* refactor: overlay and tooltip

* refactor: getOverlayTop/getOverlayLeft
2020-05-21 12:21:22 +08:00
Zhuangkh
3e86809a9c feat:Add component Tooltip (#131)
* feat:Add AntTooltip

* Update Tooltip.razor.cs

Co-authored-by: 笨木头 <musicvs@163.com>
2020-05-19 22:34:09 +08:00