During accessibility testing it was discovered that tree view in our wizard reads "Tree Node tree view" instead of the proper label that is specified. It turned out to be the problem with the tree component, where `ariaLabel` was hardcoded to "Tree Node", instead of the one provided in the options.
This change addresses the problem by passing through `ariaLabel` from the options object to the underlying tree control. I also removed the default `Tree Node` hardcoded label, as it didn't make much sense. This does mean that all tree-views that do not explicitly specify their aria-label will now get an empty label. I think this is better than having unrelated, unlocalized `Tree Node`.
I'm also worried about changes to the `ariaLabel` property after the component was initialized. I updated the code to propagate the value to the underlying tree view in the `setProperties` override of the tree component and hope that it will take care of it.
During accessibility testing, it was discovered that screen reader does not announce what checkboxes in the tree view represent. It was merely announcing "checkbox unchecked", so it was not clear without visuals which checkbox the focus is on.
This change sets an `aria-label` of the checkbox elements to match the label of the owning tree node. This way the announcement becomes "My Node; checkbox; unchecked". This is fine as a quick solution to the problem, but in the future we may want to consider adding additional checkbox label property to the nodes exposed by the tree provider, so that each checkbox can announce additional information, if needed.
* Checks for successful directory creation
* Revert "Checks for successful directory creation"
This reverts commit 372409ef323f0d82e11992bc7bc33d607a7d5581.
* Checks for the existence of the logs directory before accessing.
* Adds SQL carbon edit comment
* Removing call to copy from non-existing directory.
* Removes unneeded import
* Checks for file existence before copying.
* Provides explanation for modification
* Replaces file existence check with exception handling.
* Use built-in SQL ExecuteProvider by default if no other provider exists.
* Gracefully handle case where standardKernels are not defined for a provider.
* Standardize on just using arrays for various provider registration details.
* use glob to get files for new style msbuild sdk sqlproj
* add tests
* cleanup
* fix test
* don't show bin and obj files and folders
* handle other glob patterns
* fix duplicate entries getting added for glob patterns in project's folder