Tuesday, October 7, 2008

New Binaries with Qt 4.5 snapshots

We have two new binaries bundles for people to play around with.

Windows: Arora Snapshot (10-7-2008) Installer.exe
OS X: Arora-intel-qt4.5.dmg

Both binaries use the Qt 4.5 snapshot so you will get the faster javascript and plugin support. The previous Windows binary which was a little old now and had been up there for two month had been downloaded over 20K times. It is fantastic the number of people who have downloaded and checked out Arora. The new OS X package was made using the new macdeployqt which is include in Qt 4.5 and makes creating an application bundle with Qt much easier.

Thursday, October 2, 2008

QtWebKit trunk is now in Qt snapshots

Up until now if you wanted to enjoy YouTube you had to link Arora to a hand compiled version of QtWebKit, aka QtWebKit trunk. This was an extra annoying step that many people have done. But no more! QtWebKit trunk has been merged into Qt main (what will be Qt 4.5) so to enjoy all of the latest QtWebKit features such as flash and the new javascript engine all you have to do is compile Arora against a Qt snapshot. When upgrading to qt-snapshot you will also get disk cache, a new tabbar and other improvements. For your convenience here are links to the correct spot to report issues you find:

Bugs for Arora Dialogs, bookmarks, download manager, i.e. everything , but rendering.
Bug for QtWebKit Webpage rendering issues
Bugs for Qt Qt specific bugs or Qt compile issues.

Wednesday, October 1, 2008

0.4!

Reaching the end of the month and so Arora 0.4 has been tagged. No major features this time, just consistent improvements and polish (there was some downtime as I moved back to the states this past month). You can download the Arora 0.4 source or head over to the Arora project page where binaries for your favorite distro are be uploaded (and if it is missing feel free to contribute one!).

0.4
Interface
- New source viewer with search and syntax highlighting.
- Make middle click on bookmarks menus open the user in a new tab.
- Added the ability to change the language from the Help menu.
- Double left click location bar selects all of the text.
- Incorporate Jens Explorer style into Arora on Window for a better look and feel on XP and Vista. http://labs.trolltech.com/blogs/2007/06/08/explorer-style-toolbars/
- Change the "icon" on the next/prev search for RTL desktops: next points to the right, and previous points to the right
- Various RightToLeft fixes for for Mozilla's bug https://bugzilla.mozilla.org/show_bug.cgi?id=219070
- When the url scheme is https make the location bar background turn yellow.
- When the history is cleared also clear the recently closed tabs list
- Always populate the location bar with the completer
- Only shrink the toolbar icons on OS X.
- Only offset the search widget text when using Qt 4.5
- When clicking on a bookmark in a folder in the toolbar emit the proper signals to the url is opened.
- When dropping text on the webpage load the url
- When the location bar has focus don't change the text.

A big thanks to everyone new who contributed to this release.

AUTHORS
Benjamin C Meyer ben@meyerhome.net
Diego Iastrubni elcuco@kde.org
Jason A. Donenfeld Jason@zx2c4.com
Jakub Lužný limoto94@gmail.com
Christian Franke cfchris6@ts2server.com
Matvey Kozhev sikon@ubuntu.com
Ariya Hidayat ariya.hidayat@trolltech.com
Josef Kufner jk@myserver.cz
Adam Treat treat@kde.org
Daniel Albuschat d.albuschat@gmail.com
cfchris6 cfchris6@buster.xtense.dyndns.org
Vincenzo Reale smart2128@baslug.org
Tor Arne Vestbø tavestbo@trolltech.com
John Schember john@nachtimwald.com
Chris Lee clee@mg8.org
ABuus amb@lafnet.dk
Zack Rusin zack@kde.org
Simon Hausmann simon@lst.de
Marius Bugge Monsen mariusbu@pvv.org
Gergely Nagy gergely.nagy@interware.co.hu
Chris Hills chaz@chaz6.com
Carlos Júnior carlos@milk-it.net

Things are looking up for the future releases. Beyond what is planned for Arora, WebKit trunk has been merged into the Qt snapshots which will bring lots of goodies from SquirlFish Extreame to OGG video.

Tuesday, August 26, 2008

100 on Acid3

Zecke has posted a blog entry showing off some patches to QtWebKit that brings QtWebKit Acid3 test to 100/100. Head over and give him thank for taking the time to track down the edge cases.

Wednesday, August 13, 2008

Windows and Vista style upgrade

A little over a year ago one of Trolltech's developers, Jens (the same guy who made our awesome logo) posted a blog entry on labs.trolltech.com with some style code that takes the normal Qt XP style and adds Microsoft Explorer style tool bars on XP and Vista. I have integrated the code into Arora for a new upgrade in our look.


Wednesday, August 6, 2008

Screenshots

After the announcement of Mozilla's Aurora project the Arora homepage has gotten a number of new visiters, many of them probably looking for screenshots. I have hastily put together a wiki page of screenshots that can show off some of the features in Arora.

http://code.google.com/p/arora/wiki/Screenshots

Monday, August 4, 2008

0.3!

I am happy to announce Arora 0.3. Many new features and improvements are in this release. Keeping the goals of the project the biggest feature was the addition of boring disk cache when using the Qt 4.5 snapshot. Cache is a fundimental feaure of a browser and to a simple browser without one isn't much of a browser. It is not just a feature for Arora, but something that is desired by anyone using QtWebkit or QNetworkAccessManager and I have worked hard the past two weeks getting the feature completed. More details can be found on trolltech labs. After the disk cache, the class the makes up the Location bar has been re-written. The new class is fundamentally much cleaner and designed to have the ability to add more widgets in the location bar. A feature that will hopefully be used by extensions in the future.

The complete list of changes:

0.3
- With Qt 4.5 use disk cache
- Created a new LineEdit that handles adding side widgets in a clean, simple and elegant way.
- With Qt 4.5 use movable tabs
- Add a way to set the minimum font size in the settings.
- When you ctrl-click on a bookmark item in the bookmark toolbar open it in a new tab
- Fix possible crash on startup; Initialize htmls resource
- When making the text larger or smaller, use predefined zoom levels.
- Mouse button 4 and 5 connected to action back and forward. like firefox and ie
- Clear history: Added confirm dialog
- Shortcuts in the Edit menu like in Firefox.
- Save the state of inspector across sessions.
- When only a hostname and port are entered in the url prepend http://
- Base the width of the tab on a font rather then a hard coded value
- Tweak the main window look better on OS X and less out of place
- Add support for javascript bookmarklets
- Add option to automatically restore the session on startup.
- Fix segfault caused by the clear private data dialog.
- Save the location of the toolbars
- Improve a number of the strings (feedback from MentalMaelstrom)
- Tweak action accelerators (the same ones were being used)

Build system
- Allow building Arora with both Debug/Release of WebKit trunk
- Only include the sha1 and change number in the version when using git.
- Create utils directory to contain non-Arora specific classes
- Run desktop file through desktop-file-validate and correct the errors

Autotests
- Add QTRY_COMPARE and QTRY_VERIFY for the autotests to use.
- add AUTOTESTS define when running autotests to prevent accessing running arora's and sending url's to it
- Fix autotest failures (test related, not arora)
- Detect which version of qmake to use when building the autotests
- Give a 1 second punishment if there is no autotest for the source file that was changed
- Emit a warning of a file doesn't have a matching autotest
- Update modeltest code to match Trolltech's svn

And the full list of the authors, now even longer!

Jason A. Donenfeld
Jakub Lužný
Matvey Kozhev
Ariya Hidayat
Josef Kufner
Daniel Albuschat
Adam Treat
Tor Arne Vestbø
John Schember
Chris Lee
smart2128
Vincenzo Reale
Simon Hausmann
Marius Bugge Monsen
Gergely Nagy
Chris Hills
ABuus

P.S. For those of you using WebKit trunk on Windows I have been informed that flash support is in/done and to please report any issues you notice.

Tuesday, July 8, 2008

A new Location Bar

This past weekend I have been hacking on a replacement for one of the classes in Arora. ExLineEdit was the the base class for the location bar and the search widgets and was a big hack that only allowed for one widget on either side of the text. The new class is cleaner in every way and allows for any number of widgets on either side.

The location bar, search widget, and toolbar search were based on ExLineEdit. Unfortunately when first creating this classes I couldn't find a good solution to add side widgets and ended up with a solution that worked, but it was a hack where I put a QLineEdit inside of a widget and did a lot of painting and event handling myself. When originally developing the demo browser I tried to not have any hacks. If Qt didn't support a feature I didn't either. This made life a lot easier and the code cleaner. The one place I didn't follow that was with the Location Bar because a web browser absolutely must have the website icon in the location bar. Unable to find a good solution I ended up writing a class that was inflexible, had a horrible API, plays badly with new styles and I have been unhappy with it ever sense.

Now that things have settled down I took another look at the problem and was able to find an elegant solution for Qt 4.4 and made a patch for QLineEdit for an even cleaner solution in 4.5. Beyond the technical solution to the bug I made a new subclass of QLineEdit called LineEdit that added a few functions to put widgets inside of the line edit on the left or right hand side. This new class is the base class for the new LocationBar class and search widgets. The side widgets are automatically handled by a layout so they can be shown and hidden whenever you want.

Before merging this class into Arora I wrote autotests and a manualtest. Below is the manual test for the line edit class where you can see multiple widgets on either side of the line edit.


From the users perspective the only thing that should be different is that the completer will now line up under the location bar rather then slightly offset as it has been, but under the covers the code is much cleaner and more maintainable.

Having the ability to add widgets and show/hide them on the fly in a clean way will be very useful for Arora in the future. There are many extensions that people have talked about writing such as the FireFox3 bookmark star, a Go! button, rss feeds, and more. With the ability to add widget easily all of these features will be easy to make. With a good set of core classes Arora should do well.

The new LineEdit, LocationBar, updated search widgets, manualtests and autotests have been merged into Arora this evening. Enjoy!

Wednesday, July 2, 2008

A better tab bar

The past six weeks or so I have hacking on the QTabWidget and QTabBar classes in Qt. One of the first feature requests in Arora was the ability to have the close buttons on the tabs. Qt didn't allow this without a bunch of work and hacks. Knowing that a lot of other people wanted this same feature in Qt I took some time to implement it and other features (the two classes were not being very actively feature maintained). These went into Qt main (what will be 4.5).

From the user perspective when running against the Qt main snapshot you will see the following

  • Close buttons are now placed on each tabs

  • The buttons to the left and right of the tabs (new and close) are gone

  • The 2px useless frame on the left/bottom/right side of the webpage is now gone. When maximized and your mouse is on the far right it actually scrolls as you would expect.

  • Rather then clicking and dragging (a dnd box) and dropping it where you want a tab to go and then having all the tabs suddenly re-arrange you can now actually drag a tab to where you want it to go and it actually moves with your mouse and the other tabs automatically slide out of your way.

  • In OS X the tabs use the same styling as Safari, Terminal and other tab based applications.




For the more technical details and a video of the animation check out my labs.trolltech.com Some QTabBar & QTabWidget Love blog entry.

Beyond just that tab bar I have put in some time to make Arora feel more at home in OS X. The combination of that work finally makes Arora look not half bad in OS X.

Tuesday, June 24, 2008

Arora 0.2

This evening I tagged Arora 0.2.

Most of the changes have to do with bug fixes and improvements all through Arora. Further fixes have gone into Qt's Networking code and QtWebKit and will be part of Qt 4.4.1 (and later Qt 4.5).

Here are just a few of the changes that are part of 0.2:
- Improved tabs
- Add make install on unix
- Translations
- New reset dialog
- New about dialog
- Add search banner
- Rename to Arora and a new application icon
- Project specific git hooks
- Branch from the Qt demo browser with new autotests and manualtests.

Although most of these "bigger" features are not exactly exciting this release has really been about polishing Arora which is where all the smaller patches went. More and more Arora is able to be a primary browser and is very stable for day to day use.

We have gotten a number of new devs who have contributed patches to Arora. A big thanks to all the devs for their patches:

Jason A. Donenfeld
Jakub Lužný
Matvey Kozhev
Daniel Albuschat
Ariya Hidayat
Adam Treat
Tor Arne Vestbø
John Schember
Chris Lee
Marius Bugge Monsen
Chris Hills

Continue reporting your bugs and feature requests to http://code.google.com/p/arora/issues/list

Onto 0.3!

Monday, June 2, 2008

QtWebKit projects

Ran across another QtWebKit project this weekeend: wkhtml A simple shell utility to convert html to pdf using the webkit rendering engine, and Qt. There will no doubt be many usefull applications that use QtWebKit, do you know of any others that have been released already?

Thursday, May 22, 2008

Windows Binary


Jason Donenfeld has built a nice windows installer of the current version of Arora with Qt 4.4.0 so all the Windows users to give Arora a whirl without having to compile anything.


Lots of little improvements have been going in and we got a new dialog to reset Arora today. If you noticed a memory leak before, upgrading should fix that for you.

Wednesday, May 21, 2008

arora-browser.org

This evening I picked up the domain http://www.arora-browser.org/. It just points to arora.googlecode.com for now, but at least I own it so we can use it in the future if we want v.s. some spammer who will come along eventually.

Tuesday, May 20, 2008

YouTube and more developers

Although not new news I figured you all would enjoy seeing youtube working in Arora with webkit trunk and what you can look forward to in Qt 4.5. (disclaimer: webkit trunk is a bit broken sometimes and really for development, not users) This screenshot was taken in KDE4, notice the Oxygen style bugs, most notably with the scrollbars, hopefully those guys will fix that soon.


After returning from my vacation and with the release of Qt 4.4 there has been a lot of interest in helping out with Arora. A number of people have joined the irc room and contributed patches too. There are two new wiki pages, the first one is a getting started page to help people build Arora that are curious and the second is a contributing page with one way you can contribute patches to Arora. Others have begun reporting bugs and feature requests. Very exciting!

Sunday, May 4, 2008

New Application Icon

Thanks to Jens Bache Arora has a new icon. It has been pushed into the repository and put up on the website. Now we need a name for our sleeping mascot.

Saturday, April 19, 2008

Hello World

After forking from the demo browser in Qt I wanted to add at least one new feature before announcing Arora and that feature turned out to be the search banner. When the search box is shown an animation drops it down from the top of the webpage. The cool part is that as it does this the webpage is scrolled the same amount that the widget is moved down causing the page to not view from the viewers perspective.