-
-
Notifications
You must be signed in to change notification settings - Fork 32.3k
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
[TextField] Handle Chrome autofill #17436
Conversation
Details of bundle changes.Comparing: e9f26fc...1e77b3f
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is no confirmed reproduction that rules out browser issues. Please include the detailed reproduction in the PR.
The changes should solve two structural issues: 1. the JavaScript change event was fired before we listen to it. 2. The input value is hidden for security reasons. What browser issues do you have in mind? |
That was my question. It is not obvious what issue is solved here. Only theoretical issues that have no confirmed reproduction. |
We have a couple of root issues:
|
To be clear: A reproduction is code + environment. |
What is the use case for hydrating after a timeout? Seems like a strawman to me.
As I said no example in that issue has a confirmable reproduction. It might reproduce for you but without knowing the environment you cannot know if this is a library or environment issue.
BrowserStack is not a reliable source for reproduction. If it was we would not have tabable buttons in safari. |
For instance, you might want to wait for an optional polyfill to be loaded, over the network, before hydrating your DOM. I had the very use case at Onepixel, I was frustrated Next.js has no support for it.
Then we can call it a nice side effect of fixing the previous issue.
Don't worry, we have enough users to report if these fixes don't cut it. I don't think that we should wait to get the perfect reproduction, we might never have it. I think that we should move fast (type 2, reversible changes) by sacrificing the scope of the problems we solve and the information we collect, without sacrificing the code quality so we can learn from "production". In this case, we have an opportunity to try these changes. Worse case 1. we still have this bug, people provide a better reproduction, worse case 2. we solved the bug, but we remove the logic in the future, for some reason, people report the regression or they don't. In any case, the changes are direct application of people reported solution to the problem we can find on GitHub issues, commit, blog post or StackOverflow. @croraf and I have seen a positive impact with them. Things are imperfect and will always be :). |
Well thanks for adding technical debt that we need to refactor. |
@eps1lon I'm sorry you feel this way. I understand that you have done great progress in the past simplifying the logic of this component and that you want to keep it in a great state. I will personally make sure this new logic only remains if proven valuable. Meaning:
But yes, the more problems we solve, the more complex the codebase is and the more inertia we have. Sometimes, it's better not to solve problems reported by our users. I don't think it's one of these cases. |
* [docs] Batch small changes (mui#17435) * [docs] Add synonyms for brand icons (mui#17455) * [docs] Add synonyms for brand icons * Remove Ic prefixed icons * [docs] Improve in-site search (mui#17450) * [ButtonBase] Fix blurry text issue (mui#17453) * [docs] Revert hits per page change (mui#17458) * [docs] Fix heading format in CONTRIBUTING.md (mui#17460) * [Chip] Load the right version of Avatar (mui#17469) * [TablePagination] Merge root classes properly (mui#17467) * [Breadcrumbs] Improve API docs (mui#17468) * [TextField] Handle Chrome autofill (mui#17436) * [docs] Clarify props spread for ListItem when button flag is set (mui#17466)
this update makes me change something to still have my transparent background for my input: Separate css /* Chrome hack for auto set password ;) */
@-webkit-keyframes autofill {
to {
color: white;
background: transparent;
}
} Adaptation in theming, to still have this transparent background and not a grey-blue one
|
@jkeruzec Do you have a reproduction? |
Fixes #14427 as per given fix by @oliviertassinari