Re: Tabs bug: inactive tabs being overlapped





On Wed, Aug 6, 2008 at 12:33 PM, Scott Scriven <sawfish-list toykeeper net> wrote:
* Fernando <ferkiwi gmail com> wrote:
I suppose it's fixable, but would require one of two
things...

 - Put window group logic inside a lot of core functions, to
   make sure nothing can ever get stacked in the middle of a
   group.
 - Make large changes to how windows are drawn, so that the
   top-most window also draws the tabs for its siblings.


I think I've fixed this issue.
But I'm unsure if it is a clean way. When one of the tabs get focused, the list of tabs will get raised, being the last one raised the one that got focused in the first place.
This way won't be windows getting in the middle of the tabs.
I'm not sure about it being clean because... maybe it is possible for the user to not want the window raised after getting focus (although I'm not so sure if this is really an option in sawfish..).

I've attached here my version of the tab script.
I've also modified some things.. I want to know your opinions:

I've changed "tabgroup.jl" to use the already existing "window groups" in sawfish. I renamed it to "grouplock.jl" since I think this could be an option independent of the displaying of tabs. In my opinion I think it's a good thing to merge both methods (sawfish window groups and tabs) because this way we can benefit of the already existent infrastructure of groups, reusing code and making it more maintainable.

I can't see how someone would ever want to use groups and tabs simultaneously and independently (since groups are just like tabs that are not attached to each other).  Also, there are some features of the groups that can be useful. Like being able to cycle them with a "cycle group" binding (this could make the feature usable even for non compatible themes, maybe just concat the titlebar with a string showing the number or title of the other tabs) ..or making a window match (e.g. making all terminals be tabbed/grouped right when they are created, just like fluxbox).

All of this can be able to work already in the version attached. However.. in the conversion to sawfish groups, I've failed to achieve one of the frame refresh during the transportation of tabs from one multitabbed window to another (you can check the problem in tab.jl line 147).

--
Fernando

Attachment: tabgroups.tgz
Description: GNU Zip compressed data



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]