node-projects / dock-spawn-ts

A TypeScript HTML Docking Framework (fork of dock-spawn)
MIT License
123 stars 27 forks source link

Public Request for beta-testing of the new docking library. #97

Open evonox opened 1 month ago

evonox commented 1 month ago

I am just before finishing the pre-alpha version of the new DockerTS library. Could I ask for the public testing? Pre-alpha demo version of the library you can find at: https://docker.robotkarel.cz/ . If you find any repeatable error scenario, please submit me issue at: https://github.com/evonox/docker . Thank you very much for any support, suggestions or opinions of how to make the new library better. It will be released using MIT license for the benefit of the whole community.

timadevelop commented 1 week ago

Don't know what sort of a11y issues you mean?

afaik screen readers and the whole ARIA spec relies on DOM order. Some commercial apps have to be certified for a11y which includes a set of rules like providing high contrast settings, screen reader, etc.

And yes, the content div's are absolutely positioned ones.

Makes sense :+1:

maybe this would solve it, but it for sure will take months (maybe years) untill such an API arrives

Yeah, probably years

jogibear9988 commented 1 week ago

Don't know what sort of a11y issues you mean?

afaik screen readers and the whole ARIA spec relies on DOM order. Some commercial apps have to be certified for a11y which includes a set of rules like providing high contrast settings, screen reader, etc.

don't know if a docking UI could be usefully used in a screenreader

And yes, the content div's are absolutely positioned ones.

Makes sense 👍

maybe this would solve it, but it for sure will take months (maybe years) untill such an API arrives

Yeah, probably years

mathuo commented 1 week ago

In dockview when using the always rendered mode as you can see in the below gif those panels set to that render mode are positioned absolutly within the container with their DOM node position never changing. The elements are set to display: none when not visible.

Animation

In regards to opening panels in new windows you can view the code here which copies across the stylesheets before pushing the DOM node into the new document. It''s a fairly basic implemenation that doesn't do anything fancy as of right now, it does not make use of the adoptNode method.

jogibear9988 commented 1 week ago

For me it looks, if you drag it out to a popup, it does change dom position or not? That is not the case in dock-spawn-ts

For the OpenInNewWindow, you need to do more, if you use webcomponents wich use adoptedStylesheets, see my code here: https://github.com/node-projects/dock-spawn-ts/blob/master/src/BrowserDialogHelper.ts

Also using your sample on a IPhone seems not to work for me. I could not drag around the views