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
{{ message }}
Repository navigation
Viewer/Builder: the 3-D view does not follow a window resize (un-maximise) #275
9.0.0-beta.1, Debian 13 (GNOME, X11). With the Viewer (or Builder) maximised the 3-D view is fine. After un-maximising the window:
The 3-D view goes on drawing at the old, maximised size: the molecule is far too big and cut off at the bottom of the smaller window.
A little later the molecule is drawn at the new size, but a faded copy of the old picture remains behind it.
Seen in a screen recording at 1:42 (Organizer → Viewer on an ORCA water calculation, then un-maximise). Item 2 may be partly GNOME's un-maximise animation; item 1 is ECCE's.
Likely cause: the 3-D canvas (SoWx render area on Coin3D) does not update its viewport, or redraw, on the size event when the frame shrinks. The AUI layout of the panes may also not resize the canvas pane before the next paint.
To check: resize events reaching the canvas (wxEVT_SIZE → setSize/viewport, then a redraw), un-maximise vs drag-resize, Linux and Windows. Test: a headless resize (Xvfb, the Builder script hook) that renders before and after and compares the molecule's size and position against the canvas size.
Not reproduced headless (Xvfb without a window manager: the canvas follows every resize). Likely cause on a real desktop: the GL back buffer follows the window only after ECCE's single on-demand frame. 74cc843 draws one more frame 150 ms after a resize. To be checked on GNOME.
Fixed in ddc6b78. Traced with gdb on GNOME (X11) while the Viewer was dragged to a screen edge: the keep-on-screen fit (ewxWindowUtils::fitToDisplay) read a half-screen tile as too tall and shrank it; mutter restored the tile, and the two alternated. Tiled windows are now skipped, and a size the window manager puts back is accepted. Checked on screen (Linux): tiled, maximised and free windows keep their size.
Activity
3-D view: one more frame 150 ms after a resize (#275)
ohlincha commentedon Oct 11, 2026
Not reproduced headless (Xvfb without a window manager: the canvas follows every resize). Likely cause on a real desktop: the GL back buffer follows the window only after ECCE's single on-demand frame. 74cc843 draws one more frame 150 ms after a resize. To be checked on GNOME.
Builder: no size request on the size-event path; the tool column's fl…
Windows: a tiled window keeps its size; the keep-on-screen fit stops …
ohlincha commentedon Oct 12, 2026
Fixed in ddc6b78. Traced with gdb on GNOME (X11) while the Viewer was dragged to a screen edge: the keep-on-screen fit (ewxWindowUtils::fitToDisplay) read a half-screen tile as too tall and shrank it; mutter restored the tile, and the two alternated. Tiled windows are now skipped, and a size the window manager puts back is accepted. Checked on screen (Linux): tiled, maximised and free windows keep their size.