-
Notifications
You must be signed in to change notification settings - Fork 13.5k
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
bug: additional properties for searchbar #27606
Comments
Thanks for the report. Can you clarify which attributes you are expecting |
Whatever a normal
|
I'd advise against using Also, when using |
Thanks @colabottles |
@AmitMY You'll be hard-pressed to find an alternative. Until screen reader support improves, this will remain an issue and using an aria attribute with no support is counter-intuitive. It can always be added in when the support is there. |
Hey @AmitMY, I spoke with the team, and we are interested in learning more about the use cases for the following requested attributes:
We are open to adding new properties to As @colabottles noted, |
Hi @liamdebeasi For your question:
|
@AmitMY With all due respect, implementing aria without optimal screen reader support is really discouraged because if aria is implemented with shoddy support, the ramifications to screen reader users in screen readers not supported is they won't get the full accessible experience and the screen reader won't read the content as it is supposed to be read to them. This is taking a giant step back from the work the Ionic team is taking. Inheriting everything is a goal, but in the short term, I'd rather see the team implement things correctly and accessibly for the people with disabilities I advocate for. Leaving disable users behind because you would like to see everything inherited does not make sense and is exclusionary. You're excluding those users from the full experience they have a right to. |
@colabottles This really is not the debate here... The decision of using or not using an attribute should be on the developer. I argue for the inheritance of all attributes, since this is how inputs work. HOWEVER, there can be made exclusions, such as I just don't think that every single attribute requires justification or a use case. Inherit all by default, exclude things that shouldn't be there. (I go with include all at first, exclude some later, rather than exclude all and include only when makes sense) I'd even go one more step and say that it should not be inherited by normal |
This is my final input here. You can go with what you will go with as your thought process @AmitMY, but I stand with Ionic's decision to wait on implementation of any ARIA that has terrible support for assistive technology.
Yes it is, you're campaigning for a product to implement something that is inaccessible. So it most certainly is the debate here and my job as an Accessibility Advocate is to support the disabled community and disabled developers, then it is my job to educate the developer first and find a resolution to something they want to implement that is inaccessible so that it can be accessible.
I agree. Do you know the impact of using ARIA that is inaccessible and creates conflicts with assisted technologies? If you do not know, again, it is my job to educate developers on how to make accessible things.
They certainly do when they create barriers for people with disabilities and make an accessible framework inaccessible, which is what adding In 25 years, I have never NOT justified use of ARIA when it was debated as needed. It's not unless you have the support of the browser and the assistive technology in my space (which is to advocate for people with disabilities). Especially when it must convey the
Why make more work for not only yourself, but for developers who may know the implications of using |
Hello @AmitMY can you share a screenshot or recording of the issues you are experiencing with using Here's a small reproduction case: https://stackblitz.com/edit/angular-htjrcc?file=src%2Fapp%2Fexample.component.html
|
Hi @sean-perkins If I indeed force the input to be |
Thanks for following up! I can confirm the same thing, thanks for the callout to use Hebrew text with the auto direction. This seems to affect Manually modifying the inner control to assign the I need to discuss with the team how we want to track this work. We don't want to inherit all attributes, but there are some problematic attributes that should inherit that currently do not. We should be consistent to applying these attributes to similar text controls that have the same challenges. |
…are inherited to native input (#29098) Issue number: resolves #27606 --------- <!-- Please do not submit updates to dependencies unless it fixes an issue. --> <!-- Please try to limit your pull request to one type (bugfix, feature, etc). Submit multiple pull requests if needed. --> ## What is the current behavior? <!-- Please describe the current behavior that you are modifying. --> Certain attributes are not be inherited to the inner searchbar. Developers need control over these attributes to provide important context to users for things like language and text direction. Additionally, being able to control things like autocapitalize, maxlength, and minlength can help improve the user experience by a) guiding what should be entered into an input and b) removing autocapitalize where it's not appropriate. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Added autocapitalize, maxlength, and minlength properties - lang and dir are global attributes, so adding them as properties will cause issues. However, developers can still set them as attributes and they will be inherited to the native `input` element. We also watch them so any changes to the attributes are also inherited to the native `input`. ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> Note: We expanded the scope of this work to also include input and textarea, and this work will be handled separately. However, the original request was only for searchbar so that's why I associated this PR with the linked issue. Dev build: `7.7.3-dev.11709159644.114cd8b1`
Thanks for the issue. This has been resolved via #29098, and a fix will be available in an upcoming release of Ionic Framework. A couple things to note:
The original issue focused on the searchbar which we've addressed, so I am going to close this. |
Thanks for the issue! This issue is being locked to prevent comments that are not relevant to the original issue. If this is still an issue with the latest version of Ionic, please create a new issue and ensure the template is fully filled out. |
Prerequisites
Ionic Framework Version
v7.x
Current Behavior
The input inside
ion-searchbar
does not support all possible attributes.Results in:
Expected Behavior
Should inherit attributes from
ion-searchbar
.Input should also have
Steps to Reproduce
Create an
ion-searchbar
:Code Reproduction URL
No response
Ionic Info
Ionic:
Ionic CLI : 7.1.1
Utility:
cordova-res : 0.15.4
native-run : 1.7.2
System:
NodeJS : v18.15.0
npm : 9.6.7
OS : macOS Unknown
Additional Information
No response
The text was updated successfully, but these errors were encountered: