-
-
Notifications
You must be signed in to change notification settings - Fork 10.4k
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
Docking: Odd behavior with docked/tabbed windows and ImGuiCond_Appearing #2283
Comments
You are correct this is an issue. This might be a little tricky because Other cases to consider are I will look further into this. |
Could you somehow describe the context in which you are using
I'm not sure there - SetNextWindowPos is an explicit request from the code and it seems fair to undock the window to ensure it can reaches its target. I can see four possibilities of how to handle that: Right now we are doing A and you are suggesting B. I think B would get in the way of many genuine operations. But we need to find out the circumstance in which SetNextWindowPos() is used other than to set an easy default. Perhaps SetNextWindowPos might need some flags to select behavior? If there was a way to do |
Internally we have switched all It a bit confusing since docked and/or tabbed windows are visually a merged together window. It may be possible that A, B, and D are all genuine operations. This could be separated out as other
The more I think about this, these behaviors are very open ended and exposing the windows dock state might be the cleanest option. EDIT: |
Yes that's true. Interestingly,
EDIT: ( On the possibility of adding a variant of |
Regarding IsWindowDocked(), something as follows:
The only problem would be the first query, where the Begin(...) has not been reached yet. Queries to any window by name would also need to account for if that window exists.
Flags as such could be nice but may scale badly. The condition flags could have two sets of meanings event state (once, always, appearing) and window state (docked, undocked). Personally, to avoid unintentional combos I would split the two.
However, both options sound good. |
Regarding the docking branch.
Reporting an odd behavior that occurs as follow:
This behavior kind of makes sense logically.
However automatically un-tabbing is undesirable (and looks like a bug) since the user did not untab themselves.
Visually a tabbed window is partially hidden and partially inactive, such that the user can still see and interact with the tab.
I would expect the tabbed window to do nothing in this case
Minor note: also slightly breaks symmetry with this similar behavior.
Thoughts?
The text was updated successfully, but these errors were encountered: