Skip to content

MudDropZone: Add support for Chromium based browsers on Mobile#4818

Merged
henon merged 5 commits intoMudBlazor:devfrom
emorell96:mobile-drag
Mar 2, 2023
Merged

MudDropZone: Add support for Chromium based browsers on Mobile#4818
henon merged 5 commits intoMudBlazor:devfrom
emorell96:mobile-drag

Conversation

@emorell96
Copy link
Contributor

@emorell96 emorell96 commented Jul 3, 2022

Description

Fixes #4817 adding support for drag on mobile. This is still WIP.

The code adds a few new things to port this feature which is based on HTML5 drag events which are mostly unavailable on mobile. This means a little more JS.

moveItemByDifference allows the item to be moved around using translate3d.

The main difficulty I am facing is that DragEnter is not triggered anymore which means that I need to use JS to figure out which drop zone I am dropping on, since I cannot just edit the index as soon as the DragEnter event is triggered since that won't fire anymore on mobile.

Instead I attached to @ontouchstart and @ontouchend in order to know when the dragging starts and when it ends. I use JS to obtain the drop zone in those final coordinates.

Now the issue here is that it's possible to have the _id by reading the div's id but that won't give me any useful info. I needed the Identifier, so to solve this I added an identifier=@Identifier to the div corresponding to the drop zone. Now I can get that attribute and pass it to the C# code using JS Interop.

But how can I check if I can drop the item? After all now I no longer have access to the drop zone itself to check the CanDrop property! So I had to modify the Container a little.

I added a RegisterDropZone method that adds the drop zone to a dictionary in the Container.

I added also a method to remove the drop zone given an identifier, and a way to get it from the Container.

I made a few methods internal though in the DropZone because I need to be able to call them from the MudDynamicDropItem.

I can now properly verify if the item can be drop and the logic continues as it used to before.

For now I have been able to get the simple drop zone behavior working. i.e. multiple dropzones without reorder.

I need more time to get the reordering working as well.

How Has This Been Tested?

This is been tested visually with Chrome's emulation.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

  • The PR is submitted to the correct branch (dev).
  • My code follows the code style of this project.
  • I've added relevant tests.

@codecov
Copy link

codecov bot commented Jul 3, 2022

Codecov Report

Base: 91.47% // Head: 91.08% // Decreases project coverage by -0.39% ⚠️

Coverage data is based on head (c420cfa) compared to base (0ed3e97).
Patch coverage: 16.07% of modified lines in pull request are covered.

❗ Current head c420cfa differs from pull request most recent head dfe02bc. Consider uploading reports for the commit dfe02bc to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##              dev    #4818      +/-   ##
==========================================
- Coverage   91.47%   91.08%   -0.40%     
==========================================
  Files         383      365      -18     
  Lines       15006    12616    -2390     
==========================================
- Hits        13727    11491    -2236     
+ Misses       1279     1125     -154     
Impacted Files Coverage Δ
...rc/MudBlazor/Components/DropZone/MudDropZone.razor 100.00% <ø> (ø)
...lazor/Components/DropZone/MudDynamicDropItem.razor 100.00% <ø> (ø)
...or/Components/DropZone/MudDynamicDropItem.razor.cs 38.96% <6.12%> (-57.47%) ⬇️
...azor/Components/DropZone/MudDropContainer.razor.cs 96.47% <80.00%> (-1.03%) ⬇️
...MudBlazor/Components/DropZone/MudDropZone.razor.cs 99.22% <100.00%> (+0.01%) ⬆️
src/MudBlazor/Extensions/TimeSpanExtensions.cs 40.00% <0.00%> (-20.00%) ⬇️
src/MudBlazor/Components/DataGrid/HeaderCell.razor 72.22% <0.00%> (-17.44%) ⬇️
src/MudBlazor/Components/DataGrid/FooterContext.cs 75.00% <0.00%> (-15.00%) ⬇️
src/MudBlazor/Components/DataGrid/HeaderContext.cs 75.00% <0.00%> (-15.00%) ⬇️
src/MudBlazor/Components/DataGrid/CellContext.cs 66.66% <0.00%> (-11.91%) ⬇️
... and 116 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@emorell96
Copy link
Contributor Author

emorell96 commented Jul 3, 2022

Ok now the drop zones fully work on mobile using JS interop (no other choice imo for such a feature)

Simple drag and drop:

mobile_simple_drag

Transfer zones:

mobile_transfer_zones

Reorder Items:

mobile_reorder_items

mobile_reorder_items_2

Only zones:

mobile_only_zones

Drop rules:

mobile_drop_rules

Drop zones styling:

mobile_drop_rules_styling

Dragging Styles:

mobile_dragging_styles

Override Example:

mobile_override_example

Disabled Items:

mobile_disabled_items

Kaban:

mobile_kaban

Mobile Mailbox:

mobile_mailbox

Chessboard:

mobile_chessboard

As you can see the support is pretty much complete.

In terms of unit tests and such, I am not sure what kind of tests you could write around this feature since it's more of a visual one. If you have any ideas let me know, but for now I think I am satisfied with the features I add to MudBlazor.

@emorell96 emorell96 marked this pull request as ready for review July 3, 2022 12:35
@JonBunator JonBunator added PR: needs review enhancement Adds a new feature or enhances existing functionality (not fixing a defect) in the main library labels Jul 12, 2022
@JonBunator
Copy link
Member

What do you think @just-the-benno ?

@just-the-benno
Copy link
Contributor

Hi @emorell96, and thanks for the work you put into this PR.

As with each introduction of JS, we further increase the complexity of the library and the hardship of testing and maintaining it. So, we have to be very certain that there are no other ways for this feature and that there is a need for it.

While I understand the problem statement, I think your approach is not simply an enhancement for an existing component but a change in its logical structure. You will see this when you try to write tests. (Besides other things like async void and changes from private to internal).

So, if the problem is missing events on mobile, then you can find a way to add those events without changing the actual behavior of this component.

@emorell96
Copy link
Contributor Author

@just-the-benno Hi, I'd be more than ok doing it some other way if you have any better ideas on how to do it. But the problem on mobile is that dragging (the ondrag events used by the component) do not exist at all. I mean you can try the docs of MudBlazor and use the mobile emulator and you'll see they do not work at all.

How do you propose to add these events if they do not exist on mobile? I might be missing some other way of doing this, so let me know if you have any ideas on how to achieve this without JS, I'd be more than happy to avoid JS, after all is one of the main reasons I use MudBlazor on my own projects, I just personally do not know how.

@TiuDerca
Copy link

TiuDerca commented Jul 17, 2022

We plan to use Drop Zone for customer status board kanban, but 70% of our users use service via mobile.
What are the options for solving the complete lack of operability of the "MudDropZone" component?

@emorell96
Copy link
Contributor Author

@TiuDerca if you cannot wait until we find an implementation that reduces JS use (I'm not sure there's one but maybe I'm missing something that the MudBlazor team can point to that I could use to implement this) you can clone my dev-personal branch that has this fix and another other bug fixes that I haven't opened a PR for since I haven't received any feedback on the issue I opened yet (see #4862), and pack it in Release mode using Visual Studio and you can use the nuget from that branch until (if) this gets merged into the main repo.

If you clone my repo, and pack the MudBlazor project you'll get a pre-release nuget with version 6.0.12-dev1, which I chose because it allows for easy upgrade to the next MudBlazor version once it comes out.

@sarboz
Copy link

sarboz commented Jul 29, 2022

any updates on this?

@emorell96
Copy link
Contributor Author

@sarboz, @just-the-benno didn't answer my questions so I have no way to continue this PR until he does.

@just-the-benno
Copy link
Contributor

@emorell96

Remember that for some of us, MudBlazor is just one of the projects we are working on. That means we can't answer immediately and sometimes responses are not recognized or read.

So, regarding your PR. Have you tried how well a polyfill like https://github.com/Bernardo-Castilho/dragdroptouch work? If it works well enough, then that is a solution.

Secondly, have you tried to write a unit test as suggested? I can still recommend it, so you see how much code you need to mock the JS interaction and how difficult specific tests are. Again, the problem is not how the dropzone behaves. The problem is that certain DOM events are currently not supported natively by Blazor. So the solution would be to create a service - an event manager of some kind. Your blazor component, in this case, the dropzone, will listen to events (C# events) from the manager (make it easier to test), and your js code will invoke the events through the event manager. This also makes it easier to migrate once these events are native to Blazor.

@mikes-gh mikes-gh changed the title Add drop zone support on mobile MudDropZone: Add support on mobile Sep 13, 2022
@dnvogel
Copy link

dnvogel commented Oct 8, 2022

Any update on this? Is it just tests that are needed? Thanks.

@Molochnikov
Copy link

So, regarding your PR. Have you tried how well a polyfill like https://github.com/Bernardo-Castilho/dragdroptouch work? If it works well enough, then that is a solution.

It don't work. Please add emorell96 realization. Or can you add your fix for this?

@emorell96
Copy link
Contributor Author

I haven't had time to try polyfill, plus I think it's the wrong way to go. They want to avoid JS dependencies but are happy to add a huge library dependency instead of a simple JS script that moves elements around...

Anyways, I did this since I needed this feature back then, and I was more than happy to contribute my free time to the project. The contribution is clearly not wanted, so I'm not wasting time, specially now that I'm extremely busy with other projects in my life.

Sorry for everyone that needed this support but is not getting it. I know it's frustrating, but I don't work for MudBlazor, and if they, who are paid for it , don't seem to dedicate the time to improve it, I can't dedicate more time myself to it.

@henon
Copy link
Contributor

henon commented Nov 16, 2022

@emorell96 nobody is paid here (the donations are used to cover Azure hosting costs), everyone in the team sacrifices their free time for MudBlazor just like you did for this PR. And I am personally grateful for everyone's contributions.

As I hate it to throw away good work, I will see how the majority in the team sees this PR. Tests would have to be written though.

@henon
Copy link
Contributor

henon commented Nov 16, 2022

Will this also work on Safari? Anybody test it?

@henon henon changed the title MudDropZone: Add support on mobile MudDropZone: Add support on Android Nov 16, 2022
@henon henon changed the title MudDropZone: Add support on Android MudDropZone: Add support for Android Nov 16, 2022
@mikes-gh
Copy link
Contributor

Thanks @henon. Apologies @emorell96 this hasn't been looked at. We are all working in our free time for free.
I agree adding a large polyfill dependency is not a good solution.
OFC this cannot be done without JS and mobile support for drag drop is a must for us.
I hope you are still willing to work with us on this.

@mikes-gh
Copy link
Contributor

Also it would be very useful to asses what platforms and mobile OS dont support the current implementation

@HK69Dev
Copy link

HK69Dev commented Dec 14, 2022

Hi there. This feature is also very important for my current project. But i am no js expert, so i cannot offer help...

@henon
Copy link
Contributor

henon commented Dec 14, 2022

Anybody here who has Android and IOS devices and can test this PR if it works exactly the same on both?

@HK69Dev
Copy link

HK69Dev commented Dec 14, 2022

Anybody here who has Android and IOS devices and can test this PR if it works exactly the same on both?

He henon. I have IOS and a Samsung with Android 12.

@henon
Copy link
Contributor

henon commented Dec 14, 2022

Great, could you please check out this branch and try it?

@HK69Dev
Copy link

HK69Dev commented Dec 14, 2022

I cloned the repo but there are build errors in VS 2022...

@HK69Dev
Copy link

HK69Dev commented Dec 14, 2022

image

@herczegzoltan
Copy link

@herczegzoltan The only thing that remains is that the original author added quite a bit of code that has no test coverage. The JS code does not necessarily have to be tested but the C# parts should be covered by tests. Above you can see my comments to code sections that should be tested.

This is our policy for PRs and makes the library very robust and stable. Writing those tests will protect this code against accidental corruption by future PRs which touch it. The original author is unresponsive, so if you are willing to finish it off by writing bUnit tests that cover the registration logic etc, we could finally merge this.

Basically this number should be as close to 0% as possible: image

You'll see the coverage will go up when you write tests that cover the currently untested C# code. If you need my help I have coverage tools from JetBrains to let you know about functions with missing or bad coverage.

Please provide a test coverage and I can add some tests, open a new PR and tag you.

@henon
Copy link
Contributor

henon commented Mar 2, 2023

@herczegzoltan Here you go, screenshots from JetBrains DotCover (I love it)

image
image

I looked at HasTransactionIndexChanged and IsOrigin see below (their coverage is good enough, it is usually impossible to get to 100% if there is error handling like here)
image

@henon
Copy link
Contributor

henon commented Mar 2, 2023

I am merging this now so that @herczegzoltan can PR on top of it.

@henon henon merged commit b633f84 into MudBlazor:dev Mar 2, 2023
@henon
Copy link
Contributor

henon commented Mar 2, 2023

@henon
Copy link
Contributor

henon commented Mar 2, 2023

@ChristophWeigert
Copy link

Thank you very much for the fast response.

What does not work:

  • In the old variant, a for-loop created seven drop containers (one per day). Here, dragging on the smartphone (or Chrome Dev Tools with iPad Air) does not work. After calling the component seven times it works.
  • Dragging dropzones to others works, but I can't set the order initially. It is always inserted at the top position. Afterwards I can reorder within the dropzone without problems.

Let me know if I can help you to resolve this issues.

@henon
Copy link
Contributor

henon commented Mar 3, 2023

@ChristophWeigert If you want to debug these issues and maybe find solutions that would probably be faster than waiting for someone else to do it. If you PR, please link the PR here.

@henon
Copy link
Contributor

henon commented Mar 14, 2023

@herczegzoltan and @ChristophWeigert any news?

@ChristophWeigert
Copy link

I didn't have time to dig further. Maybe next week.

Have there been changes in 6.2.0 after the 6.1.10-dev1?

@henon
Copy link
Contributor

henon commented Mar 16, 2023

No, v6.2.0 was released accidentally because of a misunderstanding.

3dots pushed a commit to 3dots/MudBlazor that referenced this pull request Mar 23, 2023
…azor#4818)

MudDropZone: Add support for Chromium based browsers on Mobile (MudBlazor#4818)
mblichowski added a commit to mblichowski/MudBlazor-extended that referenced this pull request Mar 23, 2023
* Docs: MudRadioGroup: vertical align (MudBlazor#5597)

* New Component: MudFileUpload (MudBlazor#5488)

* Revert "MudDataGrid: Add onmousedown callback parameter on DataGrid row (MudBlazor#5383)"

This reverts commit 90b1076.

* MudCollapse: Better solution to non-rendering event (Add EventUtil) (MudBlazor#5661)


Co-authored-by: Meinrad Recheis <[email protected]>

* Docs: Corrections to pointer events section (MudBlazor#5663)

* Build(deps): Bump Microsoft.NET.Test.Sdk from 17.3.2 to 17.4.0 in /src (MudBlazor#5679)

Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.3.2 to 17.4.0.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Commits](microsoft/vstest@v17.3.2...v17.4.0)

---
updated-dependencies:
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Picker: Improve test coverage and fix ColorPicker bug (MudBlazor#5680)

* Tests: Fix some missing awaits (MudBlazor#5684)

* Theming: Easier customization of dark mode (MudBlazor#5676)

* MudDataGrid: Add FormFieldChanged event (MudBlazor#5689)

* MudNavLink: Allow custom ActiveClass (MudBlazor#5619)

* Build: Use net6 for local build (MudBlazor#5690)

* Update to 6.0.18

* Snackbar: Testing a potential fix MudBlazor#5695

* Revert "Snackbar: Testing a potential fix MudBlazor#5695". We know now that it is a trimming issue

This reverts commit a22a487.

* Snackbar: Fix accidental API break by PR MudBlazor#5310 (MudBlazor#5701)

Snackbar: Fix API break MudBlazor#5696 by PR MudBlazor#5310

* Snackbar: Fix break due to trimming of SnackbarMessageType (MudBlazor#5711)

* v6.0.19-dev1

* Build: add net7 library (multi-targeting) (MudBlazor#5713)

* v6.0.19-dev2 (net7 support)

* Divider: Fix inconsistent thickness (MudBlazor#5490, MudBlazor#5491)

* Tests: Fix locale issue due to date literal (MudBlazor#5729)

* vv6.0.19-dev3 (net7 support)

* MudDataGrid: Add GroupClassFunc and GroupStyleFunc (MudBlazor#5560)

* MudDataGrid: Fix missing DataGrid reference in FilterDefinition (MudBlazor#5498)

* v6.1.0 (net7 support) (MudBlazor#5732)

* Build: Fix staging publish

* MudMenu: Fix MouseEventArgs on net7 on BSS (MudBlazor#5738)

* v6.1.1

* Build: Add nuget publish github action

* Build: Add manual nuget publish

* Build: Fix manual tag version

* Build: Fix syntax error in nuget publish

* Build: Fix Environment variable test

* v6.1.2 (MudBlazor#5751)

* Build: Dont publish nuget release

* Build(deps): Bump ReportGenerator from 5.1.10 to 5.1.11 in /src (MudBlazor#5743)

Bumps [ReportGenerator](https://github.com/danielpalme/ReportGenerator) from 5.1.10 to 5.1.11.
- [Release notes](https://github.com/danielpalme/ReportGenerator/releases)
- [Commits](danielpalme/ReportGenerator@v5.1.10...v5.1.11)

---
updated-dependencies:
- dependency-name: ReportGenerator
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump Blazored.LocalStorage from 4.2.0 to 4.3.0 in /src (MudBlazor#5746)

Bumps [Blazored.LocalStorage](https://github.com/Blazored/LocalStorage) from 4.2.0 to 4.3.0.
- [Release notes](https://github.com/Blazored/LocalStorage/releases)
- [Commits](Blazored/LocalStorage@v4.2.0...v4.3.0)

---
updated-dependencies:
- dependency-name: Blazored.LocalStorage
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build: Fix code coverage due to SDK 7.0.100 bug

* Changed dispose/event removal order from: (MudBlazor#5706)

* Docs: Update README to reflect support for .NET 7 (MudBlazor#5767)

* MudLink: Add OnClick parameter (MudBlazor#1518) (MudBlazor#5785)

* Charts: Make Legend Clickable (MudBlazor#5484)

* MudColorPicker: Fix MaxLength on HEX TextField for transparent colors (MudBlazor#5582)



Co-authored-by: David Griesser <[email protected]>

* ScrollManager: Fix exceptions no JS environment (MudBlazor#5770)

* MudDialog:  Fix Dialog is null in IDialogReference (MudBlazor#5101)

* Build: Use simpler syntax for internals visibility (MudBlazor#5797)

* Update CONTRIBUTING.md (MudBlazor#5799)

* Build(deps): Bump FluentValidation from 11.2.2 to 11.3.0 in /src (MudBlazor#5803)

Bumps [FluentValidation](https://github.com/JeremySkinner/fluentvalidation) from 11.2.2 to 11.3.0.
- [Release notes](https://github.com/JeremySkinner/fluentvalidation/releases)
- [Changelog](https://github.com/FluentValidation/FluentValidation/blob/main/Changelog.txt)
- [Commits](FluentValidation/FluentValidation@11.2.2...11.3.0)

---
updated-dependencies:
- dependency-name: FluentValidation
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump ReportGenerator from 5.1.11 to 5.1.12 in /src (MudBlazor#5806)

Bumps [ReportGenerator](https://github.com/danielpalme/ReportGenerator) from 5.1.11 to 5.1.12.
- [Release notes](https://github.com/danielpalme/ReportGenerator/releases)
- [Commits](danielpalme/ReportGenerator@v5.1.11...v5.1.12)

---
updated-dependencies:
- dependency-name: ReportGenerator
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump NUnit3TestAdapter from 4.3.0 to 4.3.1 in /src (MudBlazor#5807)

Bumps [NUnit3TestAdapter](https://github.com/nunit/nunit3-vs-adapter) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/nunit/nunit3-vs-adapter/releases)
- [Commits](nunit/nunit3-vs-adapter@V4.3.0...V4.3.1)

---
updated-dependencies:
- dependency-name: NUnit3TestAdapter
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump bunit from 1.11.7 to 1.12.6 in /src (MudBlazor#5804)

Bumps [bunit](https://github.com/bUnit-dev/bUnit) from 1.11.7 to 1.12.6.
- [Release notes](https://github.com/bUnit-dev/bUnit/releases)
- [Changelog](https://github.com/bUnit-dev/bUnit/blob/main/CHANGELOG.md)
- [Commits](bUnit-dev/bUnit@v1.11.7...v1.12.6)

---
updated-dependencies:
- dependency-name: bunit
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Tests: Fix test after bUnit update (MudBlazor#5808)

* Fix ResizeBasedService trim warning (MudBlazor#5809)

* Build: Fix static assets need 2 builds to publish (MudBlazor#5801)

* Build: Fix static assets need 2 builds to publish

* Build: deploy-nuget fixes

* Build: Update secrets token for slot swap

* Remove unused code in ElementReferenceExtensions (MudBlazor#5810)

* Revert "Build: Fix static assets need 2 builds to publish (MudBlazor#5801)" (MudBlazor#5817)

This reverts commit 98068aa.

* Build: Fix static assets need 2 builds to publish (MudBlazor#5818)(MudBlazor#5801) (MudBlazor#5818)

* MudCarousel: Fix swipe direction for next/previous in rtl (MudBlazor#5811)

* MudRadio: Change the default value of the ContentPlacement. (MudBlazor#5813)

* Docs: Update index statistics (MudBlazor#5835)

* MudTable: Fix inconsistent row border thickness (MudBlazor#5822, MudBlazor#5823)

* Table: Fix inconsistent border thickness

* Remove redundant (default) lines border-collapse: separate;

Co-authored-by: Dennis Mlinaric <[email protected]>

* Tests/Components: Remove unnecessary Console.WriteLine (MudBlazor#5836)

* TreeView: Add Public Select Method and Disable Text Selection When ExpandOnDoubleClick is true (MudBlazor#5856)

* MudTable: Fixed table grouping item selection issue (MudBlazor#5759) (MudBlazor#5760)

* Build(deps): Bump FluentValidation from 11.3.0 to 11.4.0 in /src (MudBlazor#5866)

Bumps [FluentValidation](https://github.com/JeremySkinner/fluentvalidation) from 11.3.0 to 11.4.0.
- [Release notes](https://github.com/JeremySkinner/fluentvalidation/releases)
- [Changelog](https://github.com/FluentValidation/FluentValidation/blob/main/Changelog.txt)
- [Commits](FluentValidation/FluentValidation@11.3.0...11.4.0)

---
updated-dependencies:
- dependency-name: FluentValidation
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* add a docstring in BunitTest

* Tests: Autocomplete loading finishes too quickly to test progress (MudBlazor#5872)

* Chip: Fix pointer cursor if href set (MudBlazor#5871)

* Chip: Fix pointer cursor if href set

* Classname property back to lambda

* MudBaseButton: Make OnClickHandler virtual (MudBlazor#5879)

MudBlazor#5878

* MudFileUpload: Maximum file count integrated as a parameter (MudBlazor#5861)

Co-authored-by: Florian <[email protected]>

* Build: Automate release notes (MudBlazor#5881)

* Build: Update exclude labels for release notes

* FileUpload: Cleanup MaximumFileCount tests and update docs. (MudBlazor#5882)

* MudTooltip: Activation via Hover, Focus or Click (MudBlazor#4647)

* MudTimePicker: Fix TimePicker validation in MudForm (MudBlazor#5883) (MudBlazor#5884)

* TreeView: Fix closing arrow transition (MudBlazor#5858)

* Build: Update projects to net7 (MudBlazor#5873)

* fixed typo referenced in MudBlazor#5889 (MudBlazor#5893)

* Build: New workflows for release pipeline (MudBlazor#5899)

* Build: Remove old workflow files

* Build: Remove stray vscode settings file

* Build: Fix website-version inputs

* Build: Fix  deploy-mudblazor worklflow

* Build: Fix versioning parameter on release workflows

* Build: Fix assembly version in nuget

* Build: Fix snippets and API docs include

* Build: Add action for mudblazor HEAD

* Build(deps): Bump Moq from 4.18.2 to 4.18.3 in /src (MudBlazor#5909)

Bumps [Moq](https://github.com/moq/moq4) from 4.18.2 to 4.18.3.
- [Release notes](https://github.com/moq/moq4/releases)
- [Changelog](https://github.com/moq/moq4/blob/main/CHANGELOG.md)
- [Commits](devlooped/moq@v4.18.2...v4.18.3)

---
updated-dependencies:
- dependency-name: Moq
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build: Add trymudblazor deploy on release

* Build: Fix deploy-trymudblazor action

* Build: Fix deploy-trymudblazor action

* Build: Fix deploy-trymudblazor action

* Build: Compile exclude needs `\` comparison

* Build: Update workflow badge

* Table: SelectedItem should fire regardless of EditTrigger setting (MudBlazor#5903)

* Popover : Check popoverContentNode null before use (MudBlazor#5897)

* Tests: Fix TimePicker validation test (MudBlazor#5924)

* Tests: Fix IDialog interface so it can be Moqed (MudBlazor#5925)

* Tests: Refactor to correct naming of TimePicker

* MudSnackbar: Fix overflowing, long message (MudBlazor#3945) (MudBlazor#5929)

* Docs: Add local development requirements (MudBlazor#5930)

* Build: Don't deploy sites for pre-release packages (MudBlazor#5931)

* MudDataGrid: Fixed the resizer handle staying visible (MudBlazor#5851)

* MudDialog: Fix not aligned Toolbar buttons on Dialog header (MudBlazor#5497) (MudBlazor#5725)

* MudDialog: Fix close button in RTL (MudBlazor#5951)

* MudDataGrid: Fix the FilterHeaderCell visible when the Column is hidden (MudBlazor#5777)

* Fix the filter header cell visible when the column is hidden

* Moved the Column.Hidden check so the cell is not rendered only when the column  is hidden

* Moved the null check in the first line

* Updated a test to ensure the filter row is rendered correctly even when a column is not filterable

* MudDataGrid: ServerData initialization fix (MudBlazor#5635)

* MudAlert: Fix CloseIcon color in Filled Variant (MudBlazor#5436) (MudBlazor#5449)

* Select and Autocomplete: Add ListClass (MudBlazor#5402)

* Add ListClass

* Basic Unit Test

* MudTreeViewItem: add CanExpand Property (MudBlazor#4093) (MudBlazor#4097)

* MudTreeViewItem: changed summary of canExpand property of MudTreeViewItem (MudBlazor#5953)

* MudProgress:  Fixed border radius for rounded linear progress bar (MudBlazor#5963)

* BreakpointService: IsMediaSize should will return true for Breakpoint.Always (MudBlazor#5898)

* MudAutoComplete: Don't write to console for errors (MudBlazor#5970)

* MudTable: Allow row-click without selecting checkbox when in multi-select mode (MudBlazor#5961)

* Docs: Fix InvalidOperationException in "Record Type Support" docs example (MudBlazor#5978)

* Build: Remove coverage workaround now SDK 7.0.1 is released

* Build: Update Package versions to 7.0.1

* Docs: Fix GitHub dark mode logo

* Build: Fix badge new shields io url

* Build: Fix build badge markdown

* Build: Add github log to build badge

* Make Blazor Error UI message more legible (MudBlazor#5996)

* Fix table CSS when subtales appear in the last row. (MudBlazor#5992)

* MudTable: Added OverscanCount as a parameter. (MudBlazor#5990)

* MudDataGrid: Fix CollapseAll not clearing internal variable (MudBlazor#5995)

* MudTable: Fixed checkbox state for MultiSelect and (Multi)Grouping (MudBlazor#5985)

* Build: Prioritise breaking change label match

* MudTable: Toggle multigrouping checkbox ocassionaly flickers (MudBlazor#6003)

* Dialog: Fix Unselectable Content Text (MudBlazor#5355)

* Build(deps): Bump Microsoft.NET.Test.Sdk from 17.4.0 to 17.4.1 in /src (MudBlazor#6011)

Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.4.0 to 17.4.1.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Changelog](https://github.com/microsoft/vstest/blob/main/docs/releases.md)
- [Commits](microsoft/vstest@v17.4.0...v17.4.1)

---
updated-dependencies:
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump bunit from 1.12.6 to 1.13.5 in /src (MudBlazor#6015)

Bumps [bunit](https://github.com/bUnit-dev/bUnit) from 1.12.6 to 1.13.5.
- [Release notes](https://github.com/bUnit-dev/bUnit/releases)
- [Changelog](https://github.com/bUnit-dev/bUnit/blob/main/CHANGELOG.md)
- [Commits](bUnit-dev/bUnit@v1.12.6...v1.13.5)

---
updated-dependencies:
- dependency-name: bunit
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump ReportGenerator from 5.1.12 to 5.1.13 in /src (MudBlazor#6014)

Bumps [ReportGenerator](https://github.com/danielpalme/ReportGenerator) from 5.1.12 to 5.1.13.
- [Release notes](https://github.com/danielpalme/ReportGenerator/releases)
- [Commits](danielpalme/ReportGenerator@v5.1.12...v5.1.13)

---
updated-dependencies:
- dependency-name: ReportGenerator
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Rename Cancelled to Canceled and forward for non-breaking (MudBlazor#4856)

* MudTable: Implement "All" option for MudTablePager. (MudBlazor#5994)

* Icons: Remove any <Title> tags on generation (MudBlazor#6023)

* Icons: Update material icons (MudBlazor#6034)

* MudTabs: Add MinimumTabWidth property (MudBlazor#6044)

* MudTabs: Added CustomMinimumTabWidth property

* Changed property to "MinimumTabWidth" and added default 160px, removed min-width class style and added permanent inline style.

* Removed all references to "Custom"

* Prevent BoundingClientRect trimming and throwing JsInteropException (MudBlazor#6053)

* MudFileUpload: Remove erroneous semi-colons (MudBlazor#6058)

* MudTabPanel: Fix possible System.NullReferenceException on Dispose (MudBlazor#6064)

* MudTable: Fix table KeyNotFoundException. (MudBlazor#6065)

* MudTabs: Fix TabPanel collections are not in sync (MudBlazor#6070)

* Build(deps): Bump Moq from 4.18.3 to 4.18.4 in /src (MudBlazor#6080)

Bumps [Moq](https://github.com/moq/moq4) from 4.18.3 to 4.18.4.
- [Release notes](https://github.com/moq/moq4/releases)
- [Changelog](https://github.com/moq/moq4/blob/main/CHANGELOG.md)
- [Commits](devlooped/moq@v4.18.3...v4.18.4)

---
updated-dependencies:
- dependency-name: Moq
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* MudAutocomplete: Fix TextChanged event not sending the text (MudBlazor#6120)

* Docs: Remove redundant nullable usage of NavigationSection (MudBlazor#6098)

* MudTable: Fix 2nd level checkbox default indeterminate state (MudBlazor#6075)

* Docs: added note about Elevation and Outlined properties (MudBlazor#6071)

* Docs: Show how to use custom SVG icons

* Error box: Change background when circuit (connection) is lost. (MudBlazor#6115, MudBlazor#6116)

* MudDivider: Fix fullwidth behavior in flex containers (MudBlazor#5458, MudBlazor#5472)

* MudTooltip: Fix Style not forwarded to popover (MudBlazor#6045, MudBlazor#6051)

* MudDialog: Added Draggable as a DialogOption. (MudBlazor#6083)

* Revert "MudDialog: Added Draggable as a DialogOption. (MudBlazor#6083)" due to reported dragging issues.

This reverts commit 52134a5.

* Build(deps): Bump bunit from 1.13.5 to 1.14.4 in /src (MudBlazor#6156)

Bumps [bunit](https://github.com/bUnit-dev/bUnit) from 1.13.5 to 1.14.4.
- [Release notes](https://github.com/bUnit-dev/bUnit/releases)
- [Changelog](https://github.com/bUnit-dev/bUnit/blob/main/CHANGELOG.md)
- [Commits](bUnit-dev/bUnit@v1.13.5...v1.14.4)

---
updated-dependencies:
- dependency-name: bunit
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump Microsoft.AspNetCore.Components.WebAssembly in /src (MudBlazor#6159)

Bumps [Microsoft.AspNetCore.Components.WebAssembly](https://github.com/dotnet/aspnetcore) from 7.0.1 to 7.0.2.
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Changelog](https://github.com/dotnet/aspnetcore/blob/main/docs/ReleasePlanning.md)
- [Commits](dotnet/aspnetcore@v7.0.1...v7.0.2)

---
updated-dependencies:
- dependency-name: Microsoft.AspNetCore.Components.WebAssembly
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump Microsoft.AspNetCore.Components.WebAssembly.DevServer (MudBlazor#6158)

Bumps [Microsoft.AspNetCore.Components.WebAssembly.DevServer](https://github.com/dotnet/aspnetcore) from 7.0.1 to 7.0.2.
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Changelog](https://github.com/dotnet/aspnetcore/blob/main/docs/ReleasePlanning.md)
- [Commits](dotnet/aspnetcore@v7.0.1...v7.0.2)

---
updated-dependencies:
- dependency-name: Microsoft.AspNetCore.Components.WebAssembly.DevServer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump Microsoft.AspNetCore.Components.WebAssembly.Server (MudBlazor#6157)

Bumps [Microsoft.AspNetCore.Components.WebAssembly.Server](https://github.com/dotnet/aspnetcore) from 7.0.1 to 7.0.2.
- [Release notes](https://github.com/dotnet/aspnetcore/releases)
- [Changelog](https://github.com/dotnet/aspnetcore/blob/main/docs/ReleasePlanning.md)
- [Commits](dotnet/aspnetcore@v7.0.1...v7.0.2)

---
updated-dependencies:
- dependency-name: Microsoft.AspNetCore.Components.WebAssembly.Server
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* MudTable: Add null check on server data items in FilteredItems (MudBlazor#6186)

* MudTable: Enable FluentValidation for TableRowValidator. (MudBlazor#6193)

* MudTabs: Fix incorrect ActivePanelIndex (MudBlazor#6100)

* Build: Exclude reverted PRs from release notes

* MudDateRangePicker: Fix DateRangePicker validation in MudForm (MudBlazor#6194) (MudBlazor#6195)

Fixes an issue where the `MudDateRangePicker` component would keep a
`MudForm` invalid unless its value was changed via the text input.

The `MudDateRangePicker` component is now considered `Touched` if its
value is changed via the picker itself.

Fixes: MudBlazor#6194

* MudInput: Add Accessibility Titles to Nested Icons (MudBlazor#5531)

* Build(deps): Bump ReportGenerator from 5.1.13 to 5.1.15 in /src (MudBlazor#6208)

Bumps [ReportGenerator](https://github.com/danielpalme/ReportGenerator) from 5.1.13 to 5.1.15.
- [Release notes](https://github.com/danielpalme/ReportGenerator/releases)
- [Commits](danielpalme/ReportGenerator@v5.1.13...v5.1.15)

---
updated-dependencies:
- dependency-name: ReportGenerator
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump FluentAssertions from 6.8.0 to 6.9.0 in /src (MudBlazor#6206)

Bumps [FluentAssertions](https://github.com/fluentassertions/fluentassertions) from 6.8.0 to 6.9.0.
- [Release notes](https://github.com/fluentassertions/fluentassertions/releases)
- [Changelog](https://github.com/fluentassertions/fluentassertions/blob/develop/AcceptApiChanges.ps1)
- [Commits](fluentassertions/fluentassertions@6.8.0...6.9.0)

---
updated-dependencies:
- dependency-name: FluentAssertions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* MudOverlay: Fix Absolute property comment (MudBlazor#6225)

* MudAutocomplete: Add option to search while an option is selected (MudBlazor#6231)

Add Parameter "Strict" which when false shows search results even if something is already selected.

* MudTabPanel: Add ShowCloseIcon property (MudBlazor#6197)

* MudThemeProvider: Add sudo css selector for generated theme (5781) (MudBlazor#5798)

Co-authored-by: Theunis van der Stoep <[email protected]>

* Create ROADMAP.md

* Update ROADMAP.md

* Update ROADMAP.md

* Update ROADMAP.md

* InputBase: Add ForceUpdate (fixes MudBlazor#5132) (MudBlazor#6266)

* MudButton: Add IconSize property (MudBlazor#6040)

* Github actions: Add automatic issue/PR labeling (MudBlazor#6257)

* Build(deps): Bump ReportGenerator from 5.1.15 to 5.1.16 in /src (MudBlazor#6285)

Bumps [ReportGenerator](https://github.com/danielpalme/ReportGenerator) from 5.1.15 to 5.1.16.
- [Release notes](https://github.com/danielpalme/ReportGenerator/releases)
- [Commits](danielpalme/ReportGenerator@v5.1.15...v5.1.16)

---
updated-dependencies:
- dependency-name: ReportGenerator
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump bunit from 1.14.4 to 1.15.5 in /src (MudBlazor#6286)

Bumps [bunit](https://github.com/bUnit-dev/bUnit) from 1.14.4 to 1.15.5.
- [Release notes](https://github.com/bUnit-dev/bUnit/releases)
- [Changelog](https://github.com/bUnit-dev/bUnit/blob/main/CHANGELOG.md)
- [Commits](bUnit-dev/bUnit@v1.14.4...v1.15.5)

---
updated-dependencies:
- dependency-name: bunit
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* MudSwitch: Add Size Parameter (MudBlazor#5673)

Co-authored-by: Yan Gauthier <[email protected]>

* Tabs: Fix disabling prevButton after upsizing (MudBlazor#6235) (MudBlazor#6236)

* MudSwitch: Show Validation ErrorText (MudBlazor#6247) (MudBlazor#6268)

Fixes: MudBlazor#6247

* Docs: MudSwitch: Add a separate section for the Size param (MudBlazor#6307)

Co-authored-by: Yan Gauthier <[email protected]>

* Fix NullReferenceException in ResizeOptions equality logic MudBlazor#6128 (MudBlazor#6308)

* Minor fix in Calculator example

* Build(deps): Bump FluentValidation from 11.4.0 to 11.5.0 in /src (MudBlazor#6315)

* Build(deps): Bump bunit from 1.15.5 to 1.16.2 in /src (MudBlazor#6316)

* Build(deps): Bump ReportGenerator from 5.1.16 to 5.1.17 in /src (MudBlazor#6318)

* ResizeObserver: Fix typo in directory name (MudBlazor#6303)

* Build(deps): Bump FluentAssertions from 6.9.0 to 6.10.0 in /src (MudBlazor#6317)

* Tabs: Fix scroll buttons not working on low width (MudBlazor#5212, MudBlazor#6304)

* MudDialog: CSS fix for scroll when size is greater than view height (MudBlazor#3368, MudBlazor#4132)

* MudTabs: Optionally cancel tab panel activations (MudBlazor#4738)

* Build(deps): Bump Microsoft.AspNetCore.Components.WebAssembly.DevServer (MudBlazor#6352)

* Build(deps): Bump Microsoft.AspNetCore.Components.WebAssembly.Server (MudBlazor#6354)

* MudPicker: Fix flickering in delayed BSS (MudBlazor#5450, MudBlazor#3425, MudBlazor#6344)

* Build(deps): Bump Microsoft.AspNetCore.Components.WebAssembly in /src (MudBlazor#6355)

* MudCheckbox: Use flex-row-reverse instead of mud-rtl (Fixes MudBlazor#5634) (MudBlazor#6377)

* MudTable: Fix V3022 warning (MudBlazor#6374)

* Build(deps): Bump NUnit3TestAdapter from 4.3.1 to 4.4.0 in /src (MudBlazor#6397)

* Build(deps): Bump bunit from 1.16.2 to 1.18.4 in /src (MudBlazor#6400)

* Build(deps): Bump FluentValidation from 11.5.0 to 11.5.1 in /src (MudBlazor#6401)

* Build(deps): Bump Microsoft.NET.Test.Sdk from 17.4.1 to 17.5.0 in /src (MudBlazor#6398)

* Build(deps): Bump ReportGenerator from 5.1.17 to 5.1.18 in /src (MudBlazor#6399)

* Move Mr-Technician to core team. (MudBlazor#6402)

* Autocomplete: Correct summary for Strict (MudBlazor#6396)

* Avatar: Refactor Image support (MudBlazor#6382)

* Refactor Avatar.

* Remove Category attributes from obsolete parameters.

* Update src/MudBlazor/Components/Avatar/MudAvatar.razor

Co-authored-by: Jonas B. <[email protected]>

* Update src/MudBlazor/Components/Avatar/MudAvatar.razor.cs

Co-authored-by: Jonas B. <[email protected]>

* Update src/MudBlazor/Components/Avatar/MudAvatar.razor.cs

Co-authored-by: Jonas B. <[email protected]>

---------

Co-authored-by: Jonas B. <[email protected]>

* Dialog: Fix issues with nested inline Dialogs (MudBlazor#6390)

* Add ForceInline option to Dialog.

* Clarify unit test.

* Add force inline dialog docs.

* Remove ForceInline parameter.

* Rewrite docs.

* Improve nested inline dialog docs.

* Remove ForceInline from datagrid.

* MudCarousel: Fix wrong transition direction when using SelectedIndex (MudBlazor#6392, MudBlazor#6394)

* MudMenu: Fix Touch Bubbling Which Causes Other Unwanted Click Event Firing on Mobile Devices (MudBlazor#6358)

* Update README.md (MudBlazor#6339)

* Docs: MudDialog clarifications and formatting fixes

* MudDataGrid: Configuration using expressions (MudBlazor#6049)

MudDataGrid: Configuration using expressions (MudBlazor#6049)

Co-authored-by: Terry Phillips <[email protected]>

* Docs: Remove experimental warning from MudDataGrid.

* MudDropZone: Add support for Chromium based browsers on Mobile (MudBlazor#4818)

MudDropZone: Add support for Chromium based browsers on Mobile (MudBlazor#4818)

* SourceCodeGenerator: Add support for enum source code generation (MudBlazor#6306)

SourceCodeGenerator: Add support for enum source code generation (MudBlazor#6306)

* Fix .csproj formatting (MudBlazor#6422)

* Fix analyzer NullReferenceException in old ToDescriptionString, add test scanrio for it. (MudBlazor#6423)

* Datagrid: Fix Dialog (MudBlazor#6415)

* MudDropZone: Fix code formatting (MudBlazor#6425)

* MudDataGrid : Fixes Select All when using ServerData (MudBlazor#5999)

* Fixes Select All on MudDataGrid when using ServerData

Fixes MudBlazor#5555

* ThemeProvider: Allow watching dark/light system setting (MudBlazor#6320)

Watch dark light theme settings for system.

Co-authored-by: Jonas B. <[email protected]>

* Make sure the loading indicator is shown when loading from server (by invoking StateHasChanged asynchronously) (MudBlazor#4665)

Refactor code to make use of the HasServerData property available

Co-authored-by: Simon Ensslen <[email protected]>

* README.md grammar fix

* Update README.md

* ThemeProvider: Trimming and minor formatting fix (MudBlazor#6444)

* Build(deps): Bump NUnit3TestAdapter from 4.4.0 to 4.4.2 in /src (MudBlazor#6434)

Bumps [NUnit3TestAdapter](https://github.com/nunit/nunit3-vs-adapter) from 4.4.0 to 4.4.2.
- [Release notes](https://github.com/nunit/nunit3-vs-adapter/releases)
- [Commits](nunit/nunit3-vs-adapter@V4.4.0...V4.4.2)

---
updated-dependencies:
- dependency-name: NUnit3TestAdapter
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): Bump Microsoft.CodeAnalysis.CSharp in /src (MudBlazor#6435)

Bumps [Microsoft.CodeAnalysis.CSharp](https://github.com/dotnet/roslyn) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/dotnet/roslyn/releases)
- [Changelog](https://github.com/dotnet/roslyn/blob/main/docs/Breaking%20API%20Changes.md)
- [Commits](https://github.com/dotnet/roslyn/commits)

---
updated-dependencies:
- dependency-name: Microsoft.CodeAnalysis.CSharp
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add Kuro to the contribution team and fix obsolete warnings. (MudBlazor#6446)

* Fix obsolete workaround for images in MudAvatar. (MudBlazor#6448)

* RadioGroup: Add ReadOnly and Disabled options. (MudBlazor#6418)

* Add ReadOnly and Disabled options to RadioGroup.

* Add unit tests.

* Docs: correct class name in Snackbar>Configuration (MudBlazor#6447)

Co-authored-by: Jason Brandt <[email protected]>

* MudDatePicker: Add disabled functionality for months only picker (MudBlazor#6438)

* added disabled functionality for months only picker

---------

Co-authored-by: Jakob Sorgeloos <[email protected]>
Co-authored-by: Jakob <[email protected]>

* MudDataGrid: Fix missing content/error in Cell edit mode for HierarchyColumn (MudBlazor#6024)

* MudDatePicker: Disable months if day is fixed (MudBlazor#6336) (MudBlazor#6338)

* MudDatePicker: Add disabling months if day is fixed (MudBlazor#6336)

* Docs: Fix release page and roadmap page (MudBlazor#6455)

* Docs: Fixed markdown on release page

* Remade into list and less custom css

* Added page title to release page

* Added roadmap from the GitHub markdown file

* Added roadmap link to connect-src

* Added support for older releases and its markdown

* Build(deps): Bump ReportGenerator from 5.1.18 to 5.1.19 in /src (MudBlazor#6461)

Bumps [ReportGenerator](https://github.com/danielpalme/ReportGenerator) from 5.1.18 to 5.1.19.
- [Release notes](https://github.com/danielpalme/ReportGenerator/releases)
- [Commits](danielpalme/ReportGenerator@v5.1.18...v5.1.19)

---
updated-dependencies:
- dependency-name: ReportGenerator
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* MudBaseInput: Obsolete OnKeyPress, to be removed in v7 (MudBlazor#6464)

* Autocomplete: Fix Autocomplete opening on Reset (MudBlazor#6387)

* Fix issue where autocompletes would open upon reset using server side blazor.
* Revert "SetText should be string.Empty, not null."

This reverts commit b36b2ec.

* MudAutocomplete: Fix KeyDown Event (MudBlazor#6462)

* added tests for keydown event

Co-authored-by: Jakob Sorgeloos <[email protected]>

* MudDataGrid: change status from experimental to stable in docs

* MudDialog: Change OnBackdropClick Action to EventCallback (MudBlazor#6151)

* Changed MudDialog's OnBackdropClick delegate to support async methods. Closes MudBlazor#6146


---------

Co-authored-by: Meinrad Recheis <[email protected]>

* MudTable: Add filtered items cache for each render. (MudBlazor#6470)

* MudTable: Add filtered items cache for each render.

---------

Co-authored-by: Štěpán Adámek <[email protected]>

* MudDataGrid: Improve nullability, encapsulation and some nits (MudBlazor#6421)

* Improve nullability, encapsulation and some nits in DataGrid

* MudDataGrid: Sorting and filtering performance improvements. (MudBlazor#6495)

* MudDataGrid: Improve sorting and filtering performance using FilteredItems cache.

* MudDataTable: Ensure PropertyFunc is compiled only once.

---------

Co-authored-by: Štěpán Adámek <[email protected]>

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: TDroogers <[email protected]>
Co-authored-by: Riley Nielsen <[email protected]>
Co-authored-by: Meinrad Recheis <[email protected]>
Co-authored-by: Mike Surcouf <[email protected]>
Co-authored-by: Gary Chan <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jonny Larsson <[email protected]>
Co-authored-by: dennml <[email protected]>
Co-authored-by: Daniele Corsini <[email protected]>
Co-authored-by: nick <[email protected]>
Co-authored-by: Jeffrey Jangli <[email protected]>
Co-authored-by: Adam Renaud <[email protected]>
Co-authored-by: Pawel <[email protected]>
Co-authored-by: Daniel <[email protected]>
Co-authored-by: DoobieAsDave <[email protected]>
Co-authored-by: David Griesser <[email protected]>
Co-authored-by: Artyom M <[email protected]>
Co-authored-by: Mehmet Can Karagöz <[email protected]>
Co-authored-by: Abduwaris Ghujamniyaz <[email protected]>
Co-authored-by: Dennis Mlinaric <[email protected]>
Co-authored-by: Jonas B <[email protected]>
Co-authored-by: Gopichandar Selvaraj <[email protected]>
Co-authored-by: Michel de Kok <[email protected]>
Co-authored-by: Andrew Palmer <[email protected]>
Co-authored-by: Florian Dengg <[email protected]>
Co-authored-by: Florian <[email protected]>
Co-authored-by: Riley Nielsen <[email protected]>
Co-authored-by: Jason Rebelo <[email protected]>
Co-authored-by: popandepo <[email protected]>
Co-authored-by: Stuart Aitken <[email protected]>
Co-authored-by: SinisterMaya <[email protected]>
Co-authored-by: Massimo Giambona <[email protected]>
Co-authored-by: Chris <[email protected]>
Co-authored-by: David V <[email protected]>
Co-authored-by: Lennart Kleymann <[email protected]>
Co-authored-by: Makhmutov Neil <[email protected]>
Co-authored-by: pars-dev <[email protected]>
Co-authored-by: Suenodk <[email protected]>
Co-authored-by: snakex64 <[email protected]>
Co-authored-by: Bevan Weiss <[email protected]>
Co-authored-by: Qian <[email protected]>
Co-authored-by: Hayden Ravenscroft <[email protected]>
Co-authored-by: Idan <[email protected]>
Co-authored-by: WalterWillis <[email protected]>
Co-authored-by: Martin Lantzsch <[email protected]>
Co-authored-by: stoepa <[email protected]>
Co-authored-by: Theunis van der Stoep <[email protected]>
Co-authored-by: Yan Gauthier <[email protected]>
Co-authored-by: Łukasz Prajer <[email protected]>
Co-authored-by: Habetdin <[email protected]>
Co-authored-by: Keith <[email protected]>
Co-authored-by: Lukas Klinger <[email protected]>
Co-authored-by: Henrique Clausing <[email protected]>
Co-authored-by: Marius <[email protected]>
Co-authored-by: Terry Phillips <[email protected]>
Co-authored-by: Terry Phillips <[email protected]>
Co-authored-by: Henry <[email protected]>
Co-authored-by: Justin Lampe <[email protected]>
Co-authored-by: alfadelta88 <[email protected]>
Co-authored-by: Simon Ensslen <[email protected]>
Co-authored-by: Simon Ensslen <[email protected]>
Co-authored-by: dev-jlb <[email protected]>
Co-authored-by: Jason Brandt <[email protected]>
Co-authored-by: Jakob Sorgeloos <[email protected]>
Co-authored-by: Jakob Sorgeloos <[email protected]>
Co-authored-by: Jakob <[email protected]>
Co-authored-by: adameste <[email protected]>
Co-authored-by: Štěpán Adámek <[email protected]>
@jaygreina
Copy link

Hi, thanks to those for working on this issue. Still seeing something strange. I have a dropzone that automatically sorts by product id when dropping the product. With v6.1.9, and below, product was getting sorted when dropping the product.
i.e. drag product 9, gets moved up to top, then drag product 10 and gets moved to 2nd spot.
sorting

With v6.2.0, the sorting doesn't work when first dropped.
i.e. drag product 9, sits at the bottom, then drag product 10, also sits at the bottom, but 9 moves to correct position. If I just move any product slightly, then 10 gets moved to correct position.
not-sorting

@dennisrahmen
Copy link
Contributor

@jaygreina you are probably missing a StateHasChanged() after you sorted the list.

@jaygreina
Copy link

@jaygreina you are probably missing a StateHasChanged() after you sorted the list.

@dennisrahmen thanks for the suggestion. I had thought of this too, right after the sort, but it does nothing. I was trying to look at the commits to this version but can't find exactly where the change is that is causing my code to not render as before.

@henon
Copy link
Contributor

henon commented Mar 27, 2023

@jaygreina The first thing to check would be to see if the list gets sorted after the drop or not. Add temporary Debug.WriteLines in the code to see what it is doing (or set breakpoints). Once the cause is identified it should be easy to fix. You can tag me in your PR to get it reviewed quickly.

ScarletKuro pushed a commit to ScarletKuro/MudBlazor that referenced this pull request Mar 27, 2023
…azor#4818)

MudDropZone: Add support for Chromium based browsers on Mobile (MudBlazor#4818)
@jaygreina
Copy link

I checked the latest version v6.2.1, and the sort issue is still there. I created a simple snippet that shows what I mean.
https://try.mudblazor.com/snippet/QaQHuovRkNwyuica

Drag 'Apple' to Drop Zone 1, the sort doesn't happen. Now if you drag 'Butter' to Drop Zone 1, 'Apple' and all the other items get sorted but 'Butter' does not. Now if you just nudge one of the others items, then 'Butter' gets sorted correctly.
All this works fine with v.6.1.9. Can't figure out what it was.

@henon
Copy link
Contributor

henon commented Apr 13, 2023

@jaygreina v6.1.9 did not work on mobile browsers. I did you debug this issue?

@jaygreina
Copy link

@henon, yes I did debug it, but there's nothing I can see that's any different, even with the simple snippet above. I tried all the suggestions in this thread. It only works correctly if I try the snippet on my phone OR if I set the desktop browser device emulation to mobile. With the phone or desktop emulation turned on, everything gets sorted as soon as I drop an item. Works like a charm. But it's failing on standard desktop browser. So, it seems the fix implemented in v6.2.0 allows mobile to work now, but broke desktop functionality.

@jaygreina
Copy link

jaygreina commented Apr 13, 2023

Ok, I got it to work now. I was looking at the other examples and saw the Refresh method. I created a _container variable, assigned it to the ref property of <MudDropContainer>, and then called _container.Refresh() after the sort. Now it works like before.

@henon
Copy link
Contributor

henon commented Apr 13, 2023

Awesome, is this something that can be added to the component so it works automatically on Desktop? If so, please PR. Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Adds a new feature or enhances existing functionality (not fixing a defect) in the main library

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MudDropZone doesn't work on mobile with touch