UNIX 10.50 (Evenes) work in progress
Tuesday, December 22, 2009 8:59:36 AM
Edit: Whilst, looking through the logs for this blog post I noticed that many of the forums linking to it comment that we are moving to GTK. This is not the case. To save you having to read through all the comments below, here is one of the key ones from one of our developers:
Originally posted by AVL:
Opera is not built with GTK, not now and not in the future. It uses its own toolkit (Quick). In Peregrine on Linux, that toolkit draws using Qt (but doesn't use it for a lot of other things); In Evenes, it only uses X11 drawing primitives.
However, if it's available, Evenes will load GTK and paint widget elements with it. Of course that doesn't make it a GTK application, and it still has to live within the rules of our toolkit. This is similar to how for example Firefox, OpenOffice and the Qt GTK skin engine work. Similarly, on Mac and Windows, we use their native toolkits to paint quick's widget elements.
Also to highlight one other key point, we are also working on KDE integration but we don't yet have a public build nor screen shots that we are happy to share yet. However, the idea is that if you run under KDE, the KDE native look will load, if you run it under other environments and the GTK libraries are available they will load and if neither GTK or Qt/KDE libraries are available Opera will still run using only its own toolkit. Hence there is no dependency on either GTK or Qt/KDE.
Original Blog post:
Yes, Opera 10.50 does exist (internally) but it needs a bit more work before we can release something for our users as stripping out Qt is not an easy thing.
However, it will bring some real benefits. Whilst you wait here are three screenshots.
Ok, you have seen this before but for reference here is the preferences dialog in 10.20:
(Click for full size image)Here is what it looks like in most of the internal Evenes builds:
(Click for full size image)Finally, here is what it looks like on the builds that have Gtk Native styling enabled:
(Click for full size image)














1 2 3 Next »
Anonymous # Tuesday, December 22, 2009 9:24:39 AM
Phaniphanikumarseelam # Tuesday, December 22, 2009 9:27:50 AM
Ruarí Ødegaardruario # Tuesday, December 22, 2009 9:40:24 AM
Originally posted by anonymous:
Yes it is definitely coming. Thanks for the reminder to mention it. I have updated the main blog post.
David Tsunamydavidtsunamy # Tuesday, December 22, 2009 9:43:43 AM
Patkos Csabapatkoscsaba # Tuesday, December 22, 2009 9:48:27 AM
tomassplatch # Tuesday, December 22, 2009 9:49:11 AM
I was putting my hopes to HW rendering through VEGA in Linux, because Opera's UI on Linux is not of the snappiest ones. Software rendering of VEGA is pretty damn fast on Windows, so I hope it will cut in Linux too. Any comments?
Henrik HelmersHelmers # Tuesday, December 22, 2009 9:50:39 AM
dzooky # Tuesday, December 22, 2009 9:54:58 AM
Ruarí Ødegaardruario # Tuesday, December 22, 2009 9:55:46 AM
Originally posted by patkoscsaba:
No sorry, but ASAP. Sorry I cannot commit to a date.Originally posted by tomassplatch:
It is much snappier. When you get it try holding 'Ctrl+t' for a few seconds and compare with Peregrine. I think you'll be really surprised (in a good way)!Originally posted by Helmers:
We home so!arghwashier # Tuesday, December 22, 2009 11:09:55 AM
Ruarí Ødegaardruario # Tuesday, December 22, 2009 11:15:50 AM
Not all of the internal builds have native Gtk styling enabled, so I had to go a few builds back to get a screen shot.
Anonymous # Tuesday, December 22, 2009 11:16:02 AM
Anonymous # Tuesday, December 22, 2009 11:24:01 AM
Ruarí Ødegaardruario # Tuesday, December 22, 2009 11:27:58 AM
Originally posted by anonymous:
Yes. That is the plan.Originally posted by anonymous:
I'm talking about internal builds. We are actually only planning one version of Opera that picks up the native style of the environment that you run under.This also greatly simplifies things. On Linux you will then be down to three packages, .rpm, .deb and generic (tar). Not the multitude of packages we have had in the past.
Robert MeijersRobert90 # Tuesday, December 22, 2009 12:07:58 PM
towolf # Tuesday, December 22, 2009 12:12:13 PM
In what way did you remove Qt again? Did you port their engine somehow?
BTW, what bugs me most, and I’m seriously tempted to switch to chromium because of this:
1. Can’t click in embedded Flash
2. Terrible scrolling speed on Intel graphics. Chromium is like butter (e.g. Gmail)
towolf # Tuesday, December 22, 2009 12:26:41 PM
Ruarí Ødegaardruario # Tuesday, December 22, 2009 12:34:55 PM
Originally posted by towolf:
Ummm ... care to clarify?Hopefully we'll have it out soon and you can try for yourself. I can also tell you that the system the screenshot was taken from has no Qt installed at all.
Originally posted by towolf:
It doesn't exist in any of our binaries and is not required to be on the system, i.e. we no longer use it. Can't be much clearer than that.
Originally posted by towolf:
Can happen in any browser. Glad you found the fix.
towolf # Tuesday, December 22, 2009 1:00:00 PM
Originally posted by ruario:
It looks like a faux GTK.
- GTK doesn’t allow that dotted focus box inside a dropdown box.
- The notebook line looks not like Clearlooks. The tabs are not overlapping like Clearlooks.
- The edit field is odd and not properly embedded. No RGBA or something?
- The default button with the outline looks like it has been drawn twice. Clearlooks looks different and nicer.
- Overall spacing is identical with the way Opera has done it with Quick for many years. This type of layout is not doable with GTK itself. (cf: normal GTK dialogs)
I would say this is somehow derived from Qgtkstyle. Because it looks just like Qt Native with "-style gtk".
towolf # Tuesday, December 22, 2009 1:00:31 PM
http://my.opera.com/community/customize/skins/info/?id=3465
I’m not exactly complaining that this will not give us actual GTK dialogs. I think I was just thrown off by your formulation “Gtk Native styling”. It’s an imitation and not native. The emperor just has a new skin. Err ... or so.
Arjan van LeeuwenAVL # Tuesday, December 22, 2009 1:14:53 PM
However, if it's available, Evenes will load GTK and paint widget elements with it. Of course that doesn't make it a GTK application, and it still has to live within the rules of our toolkit. This is similar to how for example Firefox, OpenOffice and the Qt GTK skin engine work. Similarly, on Mac and Windows, we use their native toolkits to paint quick's widget elements.
You should also know that the screenshot Ruari posted is a work in progress - one of the reasons that you don't have a Unix build yet - , and there are known issues at the moment. Those include the issues you mentioned (except for spacing, which will not change any time soon since it is currently a limitation of our toolkit).
And as to being an 'imitation': the elements are drawn with GTK, using GTK. There's no 'imitation' here, they are drawn natively by your native toolkit, be it GTK or Qt.
towolf # Tuesday, December 22, 2009 2:03:42 PM
Maybe it’s just me, but I’m not very fond of OpenOffice and Firefox either, for precisely the same reason. Actually OpenOffice I find so bad, I rarely use it. It seems hacky.
Luckily Opera has very many other strong points to make up for this and me stick around. Mostly the user interaction, keyboard controls, etc.
An EDIT. To end on a lighter note, I very much look forward to a spiffier experience. Cutting out the abstraction must do good things to performance. Take your time to do it right. But first of all enjoy the holidays.
Ken Rushiakrushia # Tuesday, December 22, 2009 2:24:34 PM
Sertse # Tuesday, December 22, 2009 2:33:07 PM
searchme # Tuesday, December 22, 2009 3:02:41 PM
Ruarí Ødegaardruario # Tuesday, December 22, 2009 3:07:01 PM
marcorion # Tuesday, December 22, 2009 3:14:23 PM
I'm more than a bit worried, as every attempt to do the cross-DE toolkit dealio has usually only succeeded on one DE or the other. Firefox and XULRunner for instance, does a great job faking GTk, but on KDE looks awful. OpenOffice does a slightly better job in KDE, but it don't look like a KDE/Qt app either.
searchme # Tuesday, December 22, 2009 3:48:05 PM
Originally posted by ruario:
Thanks, that's good to know.Шуйский Николай [krigstask, Ŝtérkrìg]Sterkrig # Tuesday, December 22, 2009 3:52:07 PM
Hope Opera would be able to pick up Qt4 (KDEless) themes.
Waiting for Linux build (-:E
Rianav AntaresKerenSkyy # Tuesday, December 22, 2009 4:24:22 PM
I'll try getting EDE up and running, in time for the *nix 10.5 release and see how Opera looks in it.
Cheers.
Anonymous # Tuesday, December 22, 2009 4:46:43 PM
Anonymous # Tuesday, December 22, 2009 4:53:45 PM
Anonymous # Tuesday, December 22, 2009 5:52:54 PM
Anonymous # Tuesday, December 22, 2009 5:54:38 PM
Anonymous # Tuesday, December 22, 2009 6:18:13 PM
Haegar15 # Tuesday, December 22, 2009 6:33:36 PM
Why did you guys make such a big effort to port Opera to Qt4 when dumping it anyway in the next version?
Or may that pain of porting be the reason for dumping Qt?
I would be very interested what the downsides of Qt are for a big software project like Opera with several million installations.
marcorion # Tuesday, December 22, 2009 6:41:29 PM
Originally posted by Haegar15:
My guess, is that part of it is that Qt release keep getting put out...and Opera no sooner gets ported to Qt4.x than Qt4.x+1 comes out...and Opera again looks unlike other apps. My Opera is using Qt4.5.3-and it still doesn't look like all the other Qt apps on my box.
Arjan van LeeuwenAVL # Tuesday, December 22, 2009 9:22:22 PM
Originally posted by Haegar15:
I think you are asking the wrong question; the reason we are dropping Qt is not that there are major downsides, but more that there are very few upsides to using it in our very specific corner of the software market.
The main advantages of Qt are its strength as a UI toolkit and the possibility of deploying the same code across multiple platforms.
But Opera already uses its own cross-platform UI toolkit, with underlying backends written for our different platforms, and our own cross-platform APIs for functionality needed by our browser core, such as networking, file writing/reading, etc. (this is the reason that Opera can use the same core code on basically any device it runs on).
For our Unix builds, the underlying backend implementation used to be implemented with Qt (Windows and Mac use Win32 and Cocoa, respectively). Since we don't use any of the UI toolkit functions of Qt, the usage was basically limited to being a glorified canvas for drawing primitives. This is a task that can very adequately be handled by X11.
Then there's native integration. Contrary to what one might think, integration with the main desktop environments and toolkits on *nix (Gnome/GTK and KDE/Qt) is easier for us without Qt than with.
For GTK integration this is kind of obvious. Qt only got in our way before, and now that it's gone, we have the possibility to integrate natively with GTK's widgets, some of its dialogs, and maybe other features in the future. This will help Opera fit in better in what is the default environment for most of the Linux users. It also means that Opera users don't have to download a library that they might otherwise have no use for.
For KDE/Qt integration, we don't miss anything by not relying on Qt directly. In fact, now that we have the possibility of doing everything without Qt, we also have more freedom in integrating with KDE. While GTK and its associated libraries provides a complete toolkit for 'gnome-like' applications, Qt doesn't quite fulfill the same role in KDE; there's kdelibs, the layer in between that all KDE applications use, and that we previously didn't want to depend on, since it would create even more dependencies for users who were not running KDE. Now that we have a base implementation that always can be used, we can use kdelibs to integrate with KDE where possible.
Having said all of this, this is in no way saying that if you start your own software project you should go the same way. The reason Opera is in this situation is that our core product, a cross-platform rendering engine for web sites and web applications, contains much of the functionality that a UI toolkit would otherwise provide. I wouldn't think it's a good idea to start implementing all of that yourself when starting any other software project, so you would be best off using an off-the-shelf solution, such as Qt or GTK. And in that case, I'd say Qt is certainly a very nice toolkit.
arghwashier # Tuesday, December 22, 2009 10:31:28 PM
Originally posted by AVL:
This is not quite true anymore since qt4.6 which can use some kde stuff (and even gtk stuff) when present, else fall back on qt but I do prefer Opera being drawn by one toolkit instead of two because I could never get Opera to look right in all parts, some bits of Opera always looked distinctly different from other parts of Opera...
@towolf,
dotted focus boxes should be banned period...they are so ugly and so 1990... (this goes even more so for gtk's even uglier disabled widget representation (although it looks good in some themes like murrine))
Anonymous # Tuesday, December 22, 2009 11:34:32 PM
Anonymous # Tuesday, December 22, 2009 11:41:34 PM
GreggCanadaGeek # Wednesday, December 23, 2009 4:09:23 AM
/me was one asking for a GTK version since 6.05
Jonathan Kottajpkotta # Wednesday, December 23, 2009 4:32:29 AM
What seems to happen on 10.10 is that the skin decides what just about all of the GUI widgets look like, which is great as far as I'm concerned.
nicoooo # Wednesday, December 23, 2009 5:41:50 AM
inandrei # Wednesday, December 23, 2009 8:00:11 AM
Arjan van LeeuwenAVL # Wednesday, December 23, 2009 8:07:09 AM
Originally posted by jpkotta:
Opera will try to load GTK by default in that case. There is a preference that you can use to force KDE/Qt or to force the 'bare' X11 look. You can always use a third-party skin (or Opera's own, older skin) if you don't like the elements to look native - it is up to the skin designer to decide which elements should be drawn natively and which ones should be skinned.
Шуйский Николай [krigstask, Ŝtérkrìg]Sterkrig # Wednesday, December 23, 2009 8:28:12 AM
Originally posted by AVL:
That's a news I am glad to hear!
Thank you, guys (-:E
pios # Wednesday, December 23, 2009 7:06:29 PM
I thought the windows version didn't have one
Robert MeijersRobert90 # Wednesday, December 23, 2009 7:10:38 PM
Originally posted by pios:
That's probably because it's getting a trend in Windows land to "remove" the title bar. MS started this by themself, by placing extra buttons in the title bar, Chrome took over by integrating the tab bar in the title bar, and now Opera does the same thing.
Anonymous # Wednesday, December 23, 2009 7:14:08 PM