After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 603848 - Single-window mode is not properly session managed yet
Single-window mode is not properly session managed yet
Status: RESOLVED FIXED
Product: GIMP
Classification: Other
Component: User Interface
git master
Other All
: Normal normal
: 2.8
Assigned To: GIMP Bugs
GIMP Bugs
: 612853 623253 645229 (view as bug list)
Depends on:
Blocks: 643533
 
 
Reported: 2009-12-05 15:50 UTC by Michael Martin-Smucker
Modified: 2011-08-26 15:55 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Michael Martin-Smucker 2009-12-05 15:50:23 UTC
I open up Gimp, set all of my docks and and toolboxes the way I want.  I work for awhile.  I quit Gimp, and when I  start up the program the next time, all of my dockable dialogs are gone and I have a blank workspace.

I'm using 2.7.1 in single-window mode (but I think the problem also happens when not in single-window mode).

I'm fairly new to the Gimp, so I could have easily caused this problem myself.  Also, I searched through other bug reports, but if this is a dupe, you have my apologies.
Comment 1 Martin Nordholts 2009-12-05 15:51:52 UTC
Hi and thanks for the bug report. This is a known problem, it only happens in single-window mode and with multi-column docks. I'm working on it right now.
Comment 2 Martin Nordholts 2010-01-05 10:43:12 UTC
The multi-column dock window case is taken care of a while ago (although work still neds to be done for the toolbox dock-window case), and the single-window mode case will be taken care of in 2.7.2, i.e. it will not be in the 2.7.1 release.

commit 34ad9dad1a06b67ab2b2383606318ea8f457a653
Author: Martin Nordholts <martinn@src.gnome.org>
Date:   Sun Dec 6 14:49:13 2009 +0100

    app: Session manage multi-column dock windows

    Introduce GimpSessionInfoDock and session manage multi-column dock
    windows. We are still backwards compatible with sessionrc, the only
    difference is that a "session-info" entry now can have multiple "dock"
    entries.

    Also make ond dock window multi-column in the regression test
    app/tests/test-session-management.c and adjust positions and image
    selection menus a bit.

 app/tests/gimpdir/sessionrc           |   34 ++++++++------
 app/widgets/gimpsessioninfo-dock.c    |   72 +++++++++++++++++++++--------
 app/widgets/gimpsessioninfo-dock.h    |   33 +++++++++-----
 app/widgets/gimpsessioninfo-private.h |    4 +-
 app/widgets/gimpsessioninfo.c         |   81 ++++++++++++++++++++++-----------
 app/widgets/widgets-types.h           |    1 +
 6 files changed, 153 insertions(+), 72 deletions(-)
Comment 3 Martin Nordholts 2010-03-14 10:20:48 UTC
*** Bug 612853 has been marked as a duplicate of this bug. ***
Comment 4 Ángel Guzmán Maeso (shakaran) 2010-07-01 08:40:42 UTC
*** Bug 623253 has been marked as a duplicate of this bug. ***
Comment 5 Clemens Adolphs 2011-03-19 18:34:56 UTC
*** Bug 645229 has been marked as a duplicate of this bug. ***
Comment 6 Martin Nordholts 2011-06-04 10:29:59 UTC
GIMP can now be started in single-window mode:

commit 42c2c747d8f88f95fb487b321bdaadafd31f1af6
Author: Martin Nordholts <martinn@src.gnome.org>
Date:   Tue May 31 23:49:24 2011 +0200

    Bug 603848 - Single-window mode is not properly session managed yet
    
    Make GimpImageWindow implement GimpDockContainer and
    GimpSessionManaged so that GIMP can be started in single-window mode.

commit a2a95bc16e717d8f2e660073ed72c8a0ccaa9358
Author: Martin Nordholts <martinn@src.gnome.org>
Date:   Wed May 11 22:08:41 2011 +0200

    app: Don't disable single-window mode right before exiting
    
    Don't disable single-window mode right before exiting because the
    single-window mode dock layout is now remembered across sessions.

Still some things left to do before this can be closed as FIXED, but the main functionaly is in place.
Comment 7 Martin Nordholts 2011-06-14 21:41:32 UTC
With this bugfix:

commit e74d2209303b82009b70ddc8e954c911c9e84fd2
Author: Martin Nordholts <martinn@src.gnome.org>
Date:   Tue Jun 14 22:37:00 2011 +0200

    app: Restore docks in an idle handler
    
    In single-window mode, gimp_session_managed_set_aux_info() will set
    the size of the dock areas at the sides. If we don't wait for those
    areas to get their size-allocation, we can't properly restore the
    docks inside them, so do that in an idle callback.
    
    Also add a required call to gimp_test_run_mainloop_until_idle()
    because of this in the 'automatic_tab_style' test.

and this regression test:

commit f55f26c9b8c2a0cd3c22d88fac85558e8689803e
Author: Martin Nordholts <martinn@src.gnome.org>
Date:   Thu May 19 07:10:22 2011 +0200

    app/tests: Add single-window mode session files test
    
    Rename and copy some session files and add a single-window mode
    session files test.

I now consider this FIXED. There are two things that I want to fix before I declare single-window mode ready for a 2.8 release:

 * Make newly created dockables end up in the image window in single-window
   mode and not as a dock windows
 * Spread out docks when switching from single-window mode to multi-window
   mode. Right now they all end up under the cursor, stacked on top of each
   other.

Those shouldn't be too hard though... working on them already.

@mitch: Feel free to make a 2.7.3 release, swm is in a good enough shape for that now
Comment 8 flying-sheep@web.de 2011-08-24 18:04:14 UTC
i’m confused: my gimp says it’s 2.7.3, but the single window mode is still disabled when closing. wasn’t this bug fixed before the 2.7.3 release?

if so, i have a regression here…

PS: out of curiosity: is it intended that the distinct single- and multi-window-modes make way for a qt-like dock-widget mechanism one day?
Comment 9 Michael Natterer 2011-08-24 20:33:25 UTC
You clearly have an old GIT version installed. And what is the qt-like
dock-widget? There are no such plans, since I have obviously never heared
of such a thing.
Comment 10 Martin Nordholts 2011-08-24 21:09:19 UTC
@flying-sheep: What does gimp-2.7 --version --verbose say?
Comment 11 flying-sheep@web.de 2011-08-25 11:32:26 UTC
it’s german, but i think you already know what the numbers mean :)

$ gimp-2.7 --version --verbose
GNU Image Manipulation Program Version 2.7.3
git-describe: 

verwendet GEGL Version 0.1.7 (gebaut gegen Version 0.1.7)
verwendet GLib Version 2.28.6 (gebaut gegen Version 2.28.6)
verwendet GdkPixbuf Version 2.23.3 (gebaut gegen Version 2.23.3)
verwendet GTK+ Version 2.24.4 (gebaut gegen Version 2.24.4)
verwendet Pango Version 1.28.4 (gebaut gegen Version 1.28.4)
verwendet Fontconfig Version 2.8.0 (gebaut gegen Version 2.8.0)
verwendet Cairo Version 1.10.2 (gebaut gegen Version 1.10.2)
Comment 12 flying-sheep@web.de 2011-08-25 11:42:13 UTC
and about Qt’s dock widgets: these are windows, which can be dragged to an application’s main window’s edges, in which case it “docks”, i.e. uses space inside the main window.

by dragging them above other dock widgets, they stack and can be swiched by tabs that appear, else they claim space from other dock widgets or the mainn window if it hadn’t any dock widgets at this edge before.

grabbing their title bars and dragging them out will make them windows again.

try a program which uses them (such as Qt designer) to see how versatile they are. (note: don’t try to create a main window with the creator, but try to play around with the dock widgets inside the program itself)
Comment 13 Martin Nordholts 2011-08-26 05:19:56 UTC
Eek, someone break generation of git-version.h when building tarballs, so the exact version you have is not shown :( I will fix that eventually. Anyway, it is not the released 2.7.3 you are running...

About Qt's dock widgets: I know what you mean, the problem is that rewriting GIMP's dock management code is a huge task. I don't see it happening any time soon to be honest, probably never. For it to happen, someone new, really good, needs to spend a lot of time doing the port, and such people rarely show up.
Comment 14 flying-sheep@web.de 2011-08-26 15:55:58 UTC
aah, there we have it. (at least i discovered the git bug in the process)

$ apt-cache policy gimp
gimp:
  Installiert: 2.7.3-2011052002~nn
  Kandidat:    2.7.3-2011052002~nn
  Versionstabelle:
 *** 2.7.3-2011052002~nn 0
        500 http://ppa.launchpad.net/matthaeus123/mrw-gimp-svn/ubuntu/ natty/main amd64 Packages

@dock widgets: a shame. i find it funny though that gimp looks more like a Qt app than a gtk app :D

thanks, i’ll seek a better ppa!