Smoke_Tetsu, on 16 May 2010 - 09:13 PM, said:
BTW, cross platform plain text files doesn't mean much when it comes to how it's rendered or written. Many games use that but as well. The window handling is more than just how it resizes too.. it also doesn't scroll as well as other apps. No smooth scrolling.. unlike how a standard web browser would act.
Okay, let me try to explain how the Steam window appears to work, which explains why I don't expect to see much actual Macification of the GUI. I admit this is somewhat puzzled together and in parts conjectural, but from different clues it appears to make sense.
Basically, the only thing from the Steam windows that you see which stems from the OS is the rectangular area: that's a borderless window filled with – as it seems – a WebKit renderer. A borderless window has no controls at all, neither resizing controls, nor close button, nor scroll bars. Everything that resembles these has been written from the scratch by the guys at Valve – which is an odd design decision, but it is a decision
. That explains why these things in some cases don't work as you would expect (and why there have been resources for the Mac OS X style close and resize window buttons in the Windows Steam beta). All this of course also applies to the Windows version. Scrollbars won't also work smoother there.
Anyway, all this means that even when there will be a skin that makes Steam look more Mac-like, it will only look
like this, but still not behave like any other proper Mac application.
I guess, the rationalisation behind this "reinventing the wheel" approach is to reduce the effort of platform independent development. Valve is in good company with that (Cinema 4D did this a long time (I think they still do but I'm not sure), Adobe has begun to do this since CS4, Firefox did it to a large extent up to FF2 and still does it in parts now, Opera does this, many open source applications do it). Do I think that this is good from a user experience point of view? Certainly not. It's the scourge of cross-platform development.