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

vth #1820

Closed
wants to merge 1 commit into from
Closed

vth #1820

wants to merge 1 commit into from

Conversation

StephaneDelcroix
Copy link
Contributor

Description of Change

Implements #

Additions made

  • Adds

PR Checklist

  • Targets the correct branch
  • Tests are passing (or failures are unrelated)
  • Targets a single property for a single control (or intertwined few properties)
  • Adds the property to the appropriate interface
  • Avoids any changes not essential to the handler property
  • Adds the mapping to the PropertyMapper in the handler
  • Adds the mapping method to the Android, iOS, and Standard aspects of the handler
  • Implements the actual property updates (usually in extension methods in the Platform section of Core)
  • Tags ported renderer methods with [PortHandler]
  • Adds an example of the property to the sample project (MainPage)
  • Adds the property to the stub class
  • Implements basic property tests in DeviceTests

Does this PR touch anything that might affect accessibility?

  • Does this PR introduce a new control? (If yes, add an example using SemanticProperties to the SemanticsPage)
  • APIs that modify focusability?
  • APIs that modify any text property on a control?
  • Does this PR modify view nesting or view arrangement in anyway?
  • Is there the smallest possibility that your PR will change accessibility?
  • I'm not sure, please help me

If any of the above checkboxes apply to your PR, then the PR will need to provide testing to demonstrate that accessibility still works.

[EditorBrowsable(EditorBrowsableState.Never)]
public interface IVisualTreeHelper
{
IReadOnlyList<object> GetVisualChildren();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

object might be a bit too broad. You can use IView, or IElement if you need to include windows as "visual children".

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree. Since everything is based on IElement and that's the base, we should be safe using that instead of object

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IElement is internal, are you ok with the interface being internal too @drasticactions ? also, TableSection isn't an Element, but you used to return it in the other implementation...

@drasticactions please change this PR the way you prefer it, that'd be easier

Copy link
Member

@mattleibow mattleibow Jul 28, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IElement is public. The core one that is. The one in controls is not the same and is not the correct one

@@ -437,5 +437,7 @@ protected internal virtual void CleanUp()

NavigationProxy = null;
}

IReadOnlyList<object> IVisualTreeHelper.GetVisualChildren() => new List<object> { MainPage }.AsReadOnly();
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be the Windows instead? MainPage is more of a helper method and will always create a window..

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the purpose of this PR is to help the XET team deliver their features. It should be whatever they need 🤷‍♂️

@@ -638,5 +638,7 @@ private protected virtual void OnParentChangingCore(Element oldParent, Element n
ParentChanging?.Invoke(this, args);
OnParentChanging(args);
}

IReadOnlyList<object> IVisualTreeHelper.GetVisualChildren() => LogicalChildren;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hartez is this still LogicalChildren? I recall a PR somewhere that did something with this property. Not sure if it was additive or now is a bigger change.

@mattleibow
Copy link
Member

Superseded by #1845

@mattleibow mattleibow closed this Jul 29, 2021
@mattleibow mattleibow deleted the VTH branch July 29, 2021 18:12
mattleibow pushed a commit that referenced this pull request Jul 29, 2021
Co-authored-by: Stephane Delcroix <stephane@delcroix.org>
@Redth Redth added this to the 6.0.100-preview.7 milestone Aug 2, 2021
@samhouts samhouts added area-controls-collectionview CollectionView, CarouselView, IndicatorView area-controls-shell Shell Navigation, Routes, Tabs, Flyout labels Jul 11, 2023
@github-actions github-actions bot locked and limited conversation to collaborators Dec 22, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-controls-collectionview CollectionView, CarouselView, IndicatorView area-controls-shell Shell Navigation, Routes, Tabs, Flyout
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants