Clemens Zeidler, one of the spearheads for the Stack & Tile implementation on Haiku, has let the Haiku development mailing list know that a new and improved (and refactored) version of the feature has been committed to the Haiku source tree. This new version is no longer a hack into Haiku’s app server itself, but is it’s own decorator, in Haiku/Be parlance.
Stack & Tile Project Reworked
About The Author
Follow me on Twitter @thomholwerda
2010-09-04 1:17 amValhalla
Yes, I too was surprised at the level of customization a ‘decorator’ can have on the gui. I was under the assumption that it was simply a way to change the look of defined gui objects, which is obviously wrong. Judging from this the ‘decorator’ can hook into pretty much anything concerning the gui which as you said really gives power to those who wants to manipulate the gui in a non-intrusive way through add-ons. So, any bets on when the first ‘Windows 7’ decorator will show up?
2010-09-04 7:19 pmdarkwyrm
The app_server’s decorators used to be as you described — just for changing the look of windows and minor behavioral changes. I’m really pleased to see how their capabilities have been expanded.
I think the new features in the decorator code will pave the way for some really nice window management features. The one thing I wouldn’t mind seeing is dragging a window tab to one side of the screen to tile it horizontally like is done in Windows 7. There isn’t much I like about Windows 7, but that is one of the few features that I do.
Edited 2010-09-04 03:42 UTC
They should just create an ‘addon’ that divides the screen up into a sane number of tiles, optimised based upon screen resolution (think 4×3 for 1024×768, 6×4 for 1920×1200 – no windows below 250×250 pixels), then enforce snap-to behaviour when moving and resizing, so that all windows conform to the grid.
The ‘stacking’, or tabbing could just be an informal consequence of this, with ‘windows move/resize as a group’ being an option that users can toggle on the fly.
Get away from this pixel-by-pixel move/resize mentality; it’s a degree of precision you don’t need and few users can wield. Also avoid that confusing pane-like behaviour.
amazes me what is possible with the BeOS/Haiku API, everytime I look at it. I recently picked up Haiku again to do some application development (mainly for refreshing my C++ ^^) and I may have a look at some open bugs/requests in the Haiku sources!
Anyway, good job Clemens!
SAT in action:
The function seems nice, but in the video at auckland.ac.nz the guy seems to not know the basic combination of alt-tab (which is faster as doesn’t need to move the hands away from keyboard) or the existance of wide screens (even faster, can see more).
2010-09-05 5:43 amIcaria
Alt+tabbing is only fast if you’ve only got a couple of windows open. It also doesn’t solve the problem of not being able to see multiple windows simultaneously (which Windows already provides a semi-competent solution for: you can select multiple windows from the taskbar with Ctrl and tile them via the taskbar context menu).
CZeidler is working in the two most wanted features :
S&T, good for everyone
and for radeon_hd drivers
You take a code that was left behind by all, then you give a try, polished and released
but I notice a lot of regressions in the nightlies that don’t was there in Alpha 01, like:
– Terminal glitches,
– In terminal, strange caracters appears when search for used commands
– NTFS drives don’t mount when you have done a cold boot
– Interface layout inconsistencies
– Mimetypes in NTFS is not recognized anymore
– ACPI problems don’t let the system starts
Let’s double check the code before upstream folks..
Edited 2010-09-05 05:10 UTC
2010-09-05 4:24 pmanevilyak
but I notice a lot of regressions in the nightlies that don’t was there in Alpha 01, like:
They’re nightlies and not releases for a reason. If you don’t want any regressions/bugs to ever occur, then you may as well stop using any software at all, because they’re simply a part of life in the development process. No one person can test every last thing, and the things that break with some changes simply don’t appear on all machines. End of story.
2010-09-05 11:45 pmMichael Oliveira
Don’t was there in Alpha01,but was introduced in Alpha02
If not, let’s see:
– Terminal glitches (In nightlies)
– In terminal, strange caracters appears when search for used commands (not in A1, but present in A2)
– NTFS drives don’t mount when you have done a cold boot (in nightlies)
– Interface layout inconsistencies (not in A1, but present in A2)
– Mimetypes in NTFS is not recognized anymore (not in A1, but present in A2)
– ACPI problems don’t let the system starts (not in A1, but present in A2)
Realize that this is not a negative criticism, but the findings of those who use the system daily and needs the new features, and the alpha2 is already obsolete
Edited 2010-09-05 23:56 UTC
2010-09-06 2:18 pmanevilyak
Yes, I saw your list of complaints the first time. However, my point, which you completely missed, is that that’s simply going to be life with nightly builds. That’s just how software development works, like it or not. If there were no new features going in, then you might have a case, but pretty much every single thing in your list is due to new features or trying to improve other things.
2010-09-06 6:53 pmAndrewZ
“However, my point, which you completely missed, is that that’s simply going to be life with nightly builds.”
Michael’s point is that these bugs should be identified, discussed, and fixed. Not justified.
Just because it is Alpha does not mean it has to be inferior. There are now many important features in the nightlies that are not available in Alpha 2. We need some level of stability to work on our own development. So please be kind to your other Haiku developers and keep fixing bugs 🙂
2010-09-06 11:00 pmkoki
Alpha software is incomplete and buggy by definition. That being said, it seems the testing & bug squashing period for R1A2 was too short, and it probably shows that the released was rushed out the door.
2010-09-07 4:34 pmTQH !
I find your post rather ignorant and do take personal offence by your post.
ACPI wasn’t ENABLED at all until Alpha 2. The level of testing I DID before even enabling it was enormous. To really test and debug ACPI I had to reboot thousands of times, I had to track down and solve all critical issues reported by others. On top of that some ordinary users seems to think it is ACPI no matter what real problem is.
So, as you seem to know so much better what should be done, why don’t you do it?
2010-09-07 6:44 pmMichael Oliveira
TQH please do not take it personally. You did a brilliant job! Believe me! Fortunately, the problem of ACPI does not affect my computer, but hundreds of others who appear every day looking for help on IRC.
Again, I applaud your work and ask to continue making the Haiku a powerful system.
I’m a haiku user, I use Haiku * EVERY DAY * and these small problems affect the productivity.
2010-09-07 7:13 pmTQH !
When you are talking ignorant bullshit about what the devs do wrong I do take it personal. Now you are adding even more stating IRC is full of ppl with ACPI problems?
Care to make a list from the IRC logs with all those problems? Or are you just making stuff up?
There are currently four open problems that are related to ACPI and hardware, please try to increase that list since you know about so much more.
Seriously if you don’t know what you are talking about maybe you should get a clue instead.
2010-09-08 2:08 amaugiedoggie
I appreciate your work on this. It is one of the things that other developers avoid working on for one reason or another.
I look forward to having ACPI and irq routing for more hardware because bug #5 is one of the things preventing me from using Haiku properly.
2010-09-05 4:54 pmumccullough
but I notice a lot of regressions in the nightlies that don’t was there in Alpha 01
Which is exactly what you would expect from alpha releases.
“Alpha” generally indicates that a piece of software is “incomplete” – meaning that there are still pieces being developed. These developments are always likely to create regressions and stability problems.
When software reaches the “Beta” stage, that is generally when software reaches a “feature freeze”, and only bug fixes are being worked on.
It is not uncommon for 2nd or 3rd alpha releases to have more bugs than before – usually because you are nearing a “feature complete” state and developers tend to be rushing to add the missing bits so that bug fixing and polishing can begin ASAP. I can only hope that’s what is happening here
This is the first time I have used SAT, and I like it! Great work.
I do not mean to offend you, maybe for my bad English you have misunderstood. I said: “My system has shown some flaws that were not there at alpha01, but post alpha02. They gave the solution: “use the alpha02”
Regarding the problem of ACPI, here are the logs you requested:
and has much more, as I said, people appear daily with the same problem, such as Megaf from our #haiku-br.
This discussion is totally meaningless, since that the release notes of alpha2 show that there are known problems in the ACPI.
You even corrected some flaws post Alpha2, like ticket#4623
What I mean is: be more careful before posting anything, because there are people who use every day what you’re doing. If I, for example, do not do a good patch, scottmc will never send it upstream at Haikuports.
2010-09-08 6:53 amTQH !
First one isn’t a ACPI problem, its interrupt routing, Second one is merely a suggestion to test without ACPI.
Third one, alpha 2 hadn’t even been released.
Was this your list of ‘hundreds of others who appear every day’.
I know about the release notes, it was just enabled and we wanted people to know that they are testing alpha software.
I’m done talking to you, wading thru lies and bullshit is not that much fun.
This is one of my favouite windows apps, I almost rely on it at work to stop me going mad manually resizing with multiple windows. It gives me much more options than Win7 AeroSnap. Although I do think the S&T idea is very good and it works well with Haiku’s move-able window tags I might still get annoyed with manually resizing windows.
I think the ultimate would be a combination of a heuristic auto-sizing algorithm that makes full use of the screen to display windows and a nice tabbing of stacked windows would be ace. Actually, it might just start to look a bit like an IDE like eclipse… There is probably something that windowing systems could learn from IDEs too…
Sorry enough rambling from me
2010-09-08 9:07 pmv_bobok
Seconded. S&T + WinSplit functionality with window arrangement and also thing when maximizied window does not cover the deskbar (kinda what happens in Windows and other GUI OSes) would be much appreciated as additional Optional features.
That’s not the “development mailing list”… but anyhow.
I do find it intriguing that the Haiku app_server has been made flexible enough that such a radical window-management change can potentially be affected by dropping a binary into an “add-ons” folder…
I’d be interested to see what other radical “decorator” concepts use this in the future…