You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
Fullscreen (or maximized) state, is not persisted when calling api.toJSON. Instead this.exitMaximizedView(); is called modifying the end users state.
Whenever there's a call to onDidLayoutChange we persist the user's layout state, with toJSON() so we store the layout structure on our end.
When we added the Maximize feature we noticed that the when the user maximizes the group, and changes the active tab, the call to toJSON() executed on onDidLayoutChange causes the maximize state to be lost.
Upon closer inspection on the library we noticed that
dockviewComponent.ts ln.1010 -> this.gridview.serialize() // When the gridview is serialized
|__ gridview.ts ln.439 -> this.exitMaximizedView() // The library exits the maximized view purposely
Additionally we noticed the comment on
gridview.ts ln.435
/**
* do not persist maximized view state
* firstly exit any maximized views to ensure the correct dimensions are persisted
*/
And were wondering if there was a reason for such, we on our end wanted to persist the maximized state, as it's originated from a user interaction, so forcefully removing state is thought as a non expected behavior, but not sure if there was a deeper reason as to not persist such state on your end.
Expected behavior
When the layout is persisted through toJSON method, the maximized state is persisted along the other components.
Screenshots
N/A
Desktop (please complete the following information):
Browser all
Version all
The text was updated successfully, but these errors were encountered:
This issue is even more evident when the group is maximized but the visible panel is not active. If you click anywhere in the maximized panel (inactive), onDidLayoutChange gets triggered and the maximized state is exited.
This issue is even more evident when the group is maximized but the visible panel is not active. If you click anywhere in the maximized panel (inactive), onDidLayoutChange gets triggered and the maximized state is exited.
Screen.Recording.2024-02-08.at.16.00.42.mov
This particular issue has been fixed in v1.10.0 - when a group is maximized it's automatically set as the active group
As for the fullscreen state not being persisted - it would require some non-trival code changes to get to work due the fact of having to store extra metadata in the persisted state.
I agree it's a feature that should exist and will look into it at some point in the near future.
Describe the bug
Fullscreen (or maximized) state, is not persisted when calling
api.toJSON
. Insteadthis.exitMaximizedView();
is called modifying the end users state.To Reproduce
Codesandbox example
Screen.Recording.2024-02-07.at.15.44.43.mov
Whenever there's a call to
onDidLayoutChange
we persist the user's layout state, withtoJSON()
so we store the layout structure on our end.When we added the Maximize feature we noticed that the when the
user maximizes the group
, and changes theactive tab
, the call totoJSON()
executed ononDidLayoutChange
causes the maximize state to be lost.Upon closer inspection on the library we noticed that
Additionally we noticed the comment on
And were wondering if there was a reason for such, we on our end wanted to persist the maximized state, as it's originated from a user interaction, so forcefully removing state is thought as a non expected behavior, but not sure if there was a deeper reason as to not persist such state on your end.
Expected behavior
When the layout is persisted through
toJSON
method, the maximized state is persisted along the other components.Screenshots
N/A
Desktop (please complete the following information):
all
all
The text was updated successfully, but these errors were encountered: