#119 Open Tab in iconized Window

Program (79)

This complements Eddy's patch #963120 (now committed)
by allowing iconized windows to accept the new
document. Iconized windows don't belong to any desktop,
so they are ignored while looking for an Untitled tab
to receive the new document.

There is no preference, since I believe this is the
natural thing to do.

This is only tested on Debian Sarge w/ Enlightenment,
so please try to find problems.

TODO: If the last non-Untitled tab is closed, the
window should iconify itself. This would require a pref
of course.


  • Thorsten Haude

    Thorsten Haude - 2004-07-15

    Logged In: YES

    The iconification is not that hard to do.

    I will add preferences later on, when the existing stuff is
    shown to be working on various platforms. It's a global
    pref, so it shouldn't be too difficult.

  • Eddy De Greef

    Eddy De Greef - 2004-07-15

    Logged In: YES

    I see two problems:
    - Some window managers keep track of what windows are
    iconized per desktop (eg, sawfish) and some users may not
    like it when an arbitrary iconized window is moved to
    another desktop behind their back (I'm one of them). NEdit
    should not move windows between desktops; that's the task of
    the window manager.
    - If I'm not mistaken, you pick either a window on the
    current desktop or an iconized window, whichever comes
    first. I think you should not pick an iconized window unless
    you are sure that there is no visible window.

    I don't see this patch a complementary to mine. On the
    contrary: it's counter-acting. My patch prevents new
    documents from being sucked to arbitrary desktops. Unless
    I'm mistaken, your patch sucks sets of (iconized) documents
    to arbitrary desktops.

  • Thorsten Haude

    Thorsten Haude - 2004-07-15

    Logged In: YES

    1. I wasn't aware of that. For the sake of the discussion, I
    could redefine 'iconized' to mean 'iconized and not
    belonging to a desktop'. I think that could be implemented
    and would solve this problem.
    2. True, will be fixed.
    3. The way I think about your patch, it offers a way to
    restrict new documents to windows on the current desktop. I
    think about mine as extending it to the icon box (which was
    neutral ground for me before your post). It also offers a
    nice way to get rid of empty windows.

    This behaviour is from Ultraedit. The way Windows is
    completely unaware of my multiple desktop app is a good
    simulation of Enlightenments behaviour. The idea is that you
    never exit the NEdit session: Just close the last document,
    and the window goes (nearly) away. Change desktop, do other
    things. As soon as you open a new file the window is back

    I guess this will take a while to get it right.

  • Eddy De Greef

    Eddy De Greef - 2004-07-16

    Logged In: YES

    If you can keep iconized windows on their desktop, then I
    would have no problem with it, on the contrary.

    But I misunderstood the problem. With sawfish, iconized
    windows also belong to a desktop and the current
    implementation makes no distinction between visible and
    iconized windows. Ie, iconized windows already accept new
    documents. (As a side note: I think the current
    implementation can be improved by first considering
    non-iconized windows; now the choice is arbitrary.)

    It is probably Enlightenment-specific that iconized windows
    don't belong to a desktop (ie, they have no _NET_WM_DESKTOP
    property), so in that case picking an arbitrary iconized
    window makes sense, I guess.

    To summarize, I think the proper selection algorithm is the
    1) Look for a visible window on the current desktop.
    2) If none is found, look for an iconized window on the
    current desktop.
    3) If none is found, look for an iconized window not
    belonging to any desktop.
    4) If none is found, create a new window.

    The idea of having an NEdit server running in the background
    has been brought up before, and the Ultraedit-like behaviour
    is probably a good way of achieving this in a relatively
    simple way (as long as it remains an option).


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks