-
Notifications
You must be signed in to change notification settings - Fork 30k
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
Aux window does not work in Firefox #213645
Comments
@bpasero This might be a general FF issue, moving an editor into a new window also fails |
The same happens with latest FF (126) on macOS |
Wow, this is really bad and I am not sure something we can actually fix with our current assumptions. As it turns out
We have code in place to mitigate this for certain types such as events: vscode/src/vs/base/browser/dom.ts Lines 1151 to 1154 in 38b63e5
But we never wanted to adopt it for DOM elements because they are actually often created in the main window and only later moved to the floating window. I wonder why Firefox behaves different here, but its possible that they actually behave more correct than others 🤔 |
Just to clarify: maybe its easier to fix for the issue reporter because that one is more scoped to a smaller set of problems. We could start adding those utility methods for the issue reporter and then see whats remaining for the floating windows. But I think adopting this through our code is quite a thing, and we would need methods for basically each kind of HTML element + lint rules to prevent this from being called... |
@bpasero I'm assuming it would be something along the lines of: export function isHTMLElement(e: unknown): e is MouseEvent {
// eslint-disable-next-line no-restricted-syntax
return e instanceof HTMLElement || e instanceof getWindow(e as Node).HTMLElement;
}
export function isTextAreaElement(e: unknown): e is HTMLTextAreaElement {
// eslint-disable-next-line no-restricted-syntax
return e instanceof HTMLTextAreaElement || e instanceof getWindow(e as Node).HTMLTextAreaElement;
}
.... how would this be used in the context of the issue reporter since I'm just calling |
Yeah you are likely using a |
gotcha, I see that now. I'l add the ones I am checking in my UI to |
to clarify, would something like this be a cause of this as well? <HTMLInputElement>this.getElementById('issue-title') |
:( maybe just for firefox for now I'll disable the aux window issue reporter this while we investigate |
I am actually wondering if on Firefox its just not possible to create DOM nodes in the main window and append them into the child window, because I do not see any DOM nodes appearing in the child window. We explicitly decided against creating DOM nodes using the target window because it complicates instance of checks. Anyway, as a mitigation I would disable the window based issue reporter when in Firefox unless we figure out the root cause. |
I found a way 🚀 🎸 |
Testing #213597
122.x
The text was updated successfully, but these errors were encountered: