Saturday, December 8, 2012

Default browser in Windows and Switch to tab feature

Once again, I'd like to highlight some new features that were pushed into git recently.

This issue #349 was now finally resolved thanks to



New switch to tab feature



Friday, September 28, 2012

QupZilla 1.3.5 for Windows available!

After 2 weeks, I finally managed to build 1.3.5 release for Windows.
I had some issues with MSVC 2008 and also had lack of free time, so sorry about the delay.

Download: Windows Installer | Portable Edition

Windows version is now shipped with latest version of Qt (4.8.3) and QtWebKit (2.2.3).

Sunday, September 16, 2012

QupZilla 1.3.5 released!


New version is finaly here!
  • new Persian translation
  • option to remove web search bar
  • added shortcut for Clear private data
  • new options in AdBlock menu to disable it for domain and for single page
  • added option to disable search suggestions in search bar
  • added option to choose what to suggest in address bar
  • possibility to choose to use external download manager on every download
  • remember last section in preferences
  • much more tabs now fits into tabbar without overflowing into tab buttons
  • smarter address bar completer will show better search results
  • support for bookmarks manager and sidebar drag&drop managing bookmarks
  • new User Agent manager lets you set User Agent per site
  • new restore session page lets you choose which tabs you want to restore
  • new scheme handler for file protocol allows browsing through directories
  • new option to show loading progress in address bar
  • new option to start new instance with --no-remote option
  • X11: restore windows on correct virtual desktops
  • MouseGestures: added 2 new gestures for switching tabs
  • fixed gui with RTL languages
  • fixed issue with infinite opening mailto links
  • fixed issue with showing warning after creating new profile
  • fixed occasional crashes when closing tab while it is still loading
Full changelog can be found on here.

As usual, I'd like to thank to all contributors, translators, bug reporters and users!

Special thanks goes to Franz Fellner for a lot of various patches (urlbar progressbar, smarter urlbar completion, ...) and to Seyyed Razi Alavizadeh for his work on supporting RTL languages.

Download: source code
Update: All builds are now available (including Windows)

Friday, August 24, 2012

New features coming in 1.3.5 version

Holidays are almost over and new version of QupZilla is coming.
So what are those new features you may be looking for?

Directory listing
You can now list any directory on your hard disk directly in browser. Clicking on files will give you option to open or save the selected file.

Showing QupZilla source directory

New approach to session restore after crash
QupZilla may crash because of a QtWebKit issue on some specific site. When trying to restore last session, you will probably get the crash again if you are not fast enough to close the problematic tab.
You can now choose which tabs and windows you want to restore.
Big thanks goes to Franz Fellner.

You can choose what to restore or just start fresh new session

Loading progress inside address bar
Another contribution by Franz Fellner. This popular feature you might like from Safari is now available in QupZilla too. However, if you don't like it, you can of course disable it.

Progress color will always adapt to address bar background

New release will have 1.3.5 version number and string freeze will be announced next week.

Tuesday, August 21, 2012

Support for RTL languages

There is another update on development!

In recent commits, Seyyed Razi Alavizadeh (srazi), fixed QupZilla GUI for RTL languages. He also fixed some Windows related bugs and translated application into Persian.

Images of how QupZilla looked in RTL mode before and now will be the best for showing it:

Navigation Bar before 

Address Bar popup before

Navigation Bar after

Address Bar popup after

Thanks a lot for his work!

From other new things that are in git now, I'd like to mention support for setting per-site User Agent (ISSUE-399) and also option to disable AdBlock on page or server from menu.

All these improvements are going to be in upcoming release 1.3.2.

Monday, July 16, 2012

QupZilla 1.3.1 released!

Don't expect anything new, it is just bugfix release.

  • new packages for Quantal in Ubuntu PPA
  • Ctrl+= shortcut for + zoom in webview
  • Ctrl+Enter shortcut in PIM plugin now also works with enter on numpad
  • don't append QupZilla string to changed user agent
  • fixed ' and " chars in speed dial's input fields
  • fixed zooming with Ctrl+Wheel for some users
  • fixed issues with cookies filtering
  • fixed $subdocument matching in AdBlock
  • fixed $third-party in AdBlock rules when Referer header is empty
  • fixed issue with notifications settings always reverting to osd notifications
  • fixed downloading UTF-8 subscriptions in AdBlock (eg. Ru Adlist)

Download: source code

Binary packages are being built right now.

Wednesday, July 11, 2012

QupZilla 1.3.0 released!

As I promised in last post, new version is here!

I won't be writing about all new features in this release because you could already find it out in my previous posts. The main things in this release are tab previews, new address bar popup completion, big improvements to AdBlock and at last, 2 new plugins (GreaseMonkey adds support for userscripts).

This version has been in development for a really long time (nearly 4 months) and it will also bring major improvements and a lot of new features. See more in this shortlog:
  • possibility to change icon of bookmarks
  • ssl manager now can import own certificate
  • private browsing is now opened in new window and new process
  • popup windows now have loading animation in urlbar
  • new gif for loading animation (spinner)
  • possibility to add RSS feed into external reader
  • option to specify preferred behaviour when opening new tab
  • better support for Content-Disposition header (downloads)
  • Linux: middle clicking on add tab button will open new tab with global mouse selection's contents
  • Linux: generating backtrace and saving it into file upon application crash
  • Windows: fixed theme loading delay (showing ugly interface for a second when starting app)
  • fixed all issues with saving password (i hope so)
  • fixed excessive ssl warnings when rejecting untrusted certificate
  • fixed handling special characters when searching with shortcuts in urlbar
  • fixed "hide when there is only one tab" option in preferences
  • fixed "close other tabs" action in tabbar context menu
  • fixed animations occasionally stop working without any reason
Full changelog can be found on here.

As usual, I'd like to thank to all contributors, translators, bug reporters and users! Special thanks goes to Mladen Pejaković for writing PIM plugin and Alexander Samilov for work on tab previews.

Download: source code

I hope you will like this version and I think that long time spent on development was totally paid off.

Monday, July 9, 2012

GreaseMonkey plugin adds support for userscripts!

In the last days, there has been a lot of commits to qupzilla-plugins repository. As you can see, two new plugins have been added.

The first one is Personal Information Manager (PIM) plugin written by Mladen Pejaković. This plugin basically mimics Opera's ability to autofill forms with your stored personal information. If you enable this plugin and save eg. your name in it, you will see on webpages yellow-bordered inputs. These inputs can be auto-filled with PIM as simply as pressing Ctrl+Enter.
Personal Information Manager's settings dialog
Facebook register form can now be autofilled with Ctrl+Enter


The second plugin is GreaseMonkey, and as some of you already know, this plugin adds support for userscripts to QupZilla!
GreaseMonkey in QupZilla supports installing userscripts with clicking Install button on userscripts.org site (that means, if you click on any link that ends with user.js, you will be asked if you want to install it to GreaseMonkey).

There are, unfortunately, some restrictions due to QtWebKit engine. Userscripts cannot make cross-origin XMLHttpRequest (eg. they can only make same-origin request). Also some GM_ functions does not work, mainly script resources and persistent settings. Those functions are present as empty functions (they do nothing), so at least they won't interrupt script execution.

But besides of this, everything should work as expected.



These new plugins will be part of upcoming 1.3.0 release that is going to be released very soon. I hope it won't take longer than 2-3 days.

Monday, June 25, 2012

AdBlock now supports 3rd party subscriptions!

For those waiting for new release I have a great news!
As you may notice, there has been a very little activity in development in last months. But this is no longer true.

Apart from some small bugfixes, the main thing I want to write about in this post is improved AdBlock.

One of the very desired feature in QupZilla asked by users was support for 3rd party subscriptions in AdBlock:
  • Issue #266 - New Adblock subscriptions
  • Issue #391 - RuAdList support in QupZilla

AdBlock has been almost completely refactored. One thing you will notice almost immediately is, already mentioned, support for adding/removing additional subscriptions. You have option to add new subscription manually from AdBlock dialog or by clicking on abp: links (eg. here).

New AdBlock dialog (with displayed options menu)
More important thing than support for new subscriptions is optimized performance and support for more types of rules. Actually, all rule types except few options ($ char in rule) are currently supported.

The old implementation of rules matching algorithm was using regular expressions (regexps) for every rule. Regexp matching is obviously slower than simple string matching.
If you look at list of rules in subscription, you will see that a big part makes very simple rules (without wildcars (*) or anything else).
Those simple rules, like &adurl=, can use simple string matching and thus gains performance benefit.
Because of that, string matching is now used as often as possible.

But please remember, even with improved performance, you shouldn't add too many subscriptions!

Last thing I'd like to mention is support for CSS element hiding rules including support for domain restrictions.

Improving AdBlock was last big thing before releasing new version 1.3.0.
I have created milestone on github to help you track blocking issues before release.
I hope new version will be ready really soon, I'll keep you informed.

Saturday, May 5, 2012

New address bar popup completion!

As some of you already noticed, source code repository was moved under QupZilla Organization at github. With this move, I have also created new repostiory qupzilla-plugins for any plugins that don't belong to main repository.

The first thing you may notice when you compile git version is brand new address bar popup completion. It now looks overall much better and also has some new features. For example, you can delete selected entry with Del key. It can also show completions from bookmarks and it will also show star icon in that case.

Popup completion showing most visited sites

Another thing is improved performance of history manager and sidebar. It can now use the same model as backend and thus also use less memory. In history manager, you can now optionally see date of last visit and visit count of every history entry.

And at last, good news for Ukrainian users. QupZilla is now translated into Ukrainian language, thanks to Stanislav Kuznietsov.

Also, there probably won't be very much activity this month as I have a lot of work to school, so please excuse it :-)

Monday, April 9, 2012

Tab previews in git

Shortly before 1.2.0 release, Alexander Samilov sent me his patch adding tab previews into QupZilla.
His first patch implemented only basic tab previews (as you may see in other browsers). But I thought we can do better! I told him, I want to make it really beautiful before merging it into repository.
So he started working again with animations in mind and my other needs.

Yesterday, he sent me his work. I really liked it, however I missed resizing and fade in/out animations. Today, I commit it into github.

You can see how it looks on this video:


Thanks again to Alexander Samilov and I hope you like it.

Thursday, April 5, 2012

QupZilla 1.2.0 released!

I am happy to announce new release again :-)
There has been over 300 commits since last version.

This release is in the name of Plugins. In this version, you will get 2 plugins (MouseGestures and AccessKeysNavigation). But it is not the only new feature, there has been also a lot of small improvements and fixes including several possible crashes.

I'd like to highlight option don't load tabs until selected, that you probably may know from Firefox. It greatly speed up restoring sessions with a lot of opened tabs.

At the beginning of this month, Adobe released new version of Flash 11.2. You are encouraged to update your Flash installation as this version greatly improves stability of all QtWebKit based browsers.

Note: On Windows, middle mouse click in webview automatically turns on auto scroll feature and I don't know yet how to ignore this behaviour. So MouseGestures might have some issues there.

See more info in this changelog:
  • Brazilian Portuguese, Indonesian, Georgian, Japanese and Romanian translation
  • added information about configuration page qupzilla:config
  • added option to show only icons in bookmarks toolbar
  • added alt+d shortcut for focusing locationbar
  • added possibility to import bookmarks folder structure on html import
  • added option to create search engine from <input> element on page
  • added "don't load tabs until selected" option when restoring session
  • added option to separate http and https proxy configuration
  • added new page into site info: databases
  • added command line option to open url in current tab
  • support for utf-8 filenames in Content-Disposition header (downloads)
  • support for whitelisting/blacklisting cookies
  • improved source viewer, it now shows line numbers
  • improved html import - support for importing folders
  • improved performance of bookmarks import and deleting
  • sending referer header when opening new tab from webview
  • user agent workaround for google sites
  • fixed history of frames not saving
  • fixed loading unicode urls from command line
  • fixed removing local certificates
  • fixed dark color of text in locationbar when using dark theme
  • fixed garbled rendering of desktop notifications
  • fixed text in locationbar on https sites when using dark theme
  • fixed not saving cookies on crash
  • fixed option not to send Referer header to servers
  • fixed showing bad total + downloaded size when starting download
  • fixed toggling WebInspector

As usual, I want to thank to everyone who reported bugs, sent patches, sent translations and also to all QupZilla users!

Download here: source code  (prebuilt binaries available here)

Packages for other Linux distributions may be available later, so please wait.


Tuesday, March 27, 2012

Wanted: Help from Windows developer!

Hi again,
as some of you already know, I am currently making last changes before new release 1.2.0 (going to be released in a week).

Recently, new issue has been opened on github regarding setting QupZilla as a default browser on Windows. Unfortunately, I have very little experiences with Windows API and with modifying register.

So I am looking for someone with Windows knowledge willing to help me with this task.
Basically, these following tasks should be done:

  • offer "Make as default browser" in Windows Installer
  • in preferences, check whether QupZilla is default browser, and if not, offer to make it
  • register QupZilla as a http and https protocol handler

It's not that much work for someone skilled with Windows developing. I would really appreciate your help.

That's all for now, stay tuned for upcoming release :-) It will bring for example support for plugins or option not to load tabs until selected when restoring session.

Sunday, March 4, 2012

Mouse Gestures and Access Keys Navigation

Hello again,
for anyone who is wondering what is happening in QupZilla development, there is usual update.

Besides some small changes, fixes and improvements, there has been a lot of work in QupZilla Plugins.
QupZilla Plugins are dynamically loaded shared libraries (*.so on Unix, *.dll on Windows) that can extend application in almost any way.

List of available plugins

You probably noticed the "Plugins" tab in Preferences. It has been there for a long time, but until recent changes in building, plugin's power has been very limited.

QupZilla is now built as a shared library, so plugins can be linked against it and use all functions and classes.

So what will you get now if you decide to build QupZilla by yourself?
  • main QupZilla binary (qupzilla)
  • shared library (libqupzilla.so)
  • Mouse Gestures plugin (libMouseGestures.so)
  • Access Keys Navigation plugin (libAccessKeysNavigation.so)
  • Example plugin (libExamplePlugin.so) if you make debug build

Now you are probably curious what exactly those new plugins do.

Mouse Gestures
It is classic mouse gestures implementation. Mouse gestures are created with holding middle mouse button.
There is 7 predefined gestures.

Mouse gestures in QupZilla


Access Keys Navigation
This plugin helps you navigate through webpages without need to use a mouse.

As they say, one picture is worth a thousand words, so take a look.

All available shortcuts are shown upon pressing defined key
(double pressing Ctrl is set by default)

I am currently planning to create another plugin, if i find some time, for smooth scrolling. And I will also try to extend Plugin API a little.

I hope you are enjoying those new features, and if you don't want to build by yourself, keep looking forward to next release :-)

Tuesday, February 14, 2012

QupZilla 1.1.8 released!

I am happy to announce new release again, version 1.1.8!

This release mainly brings support for popup windows. It is quite a big deal, in previous versions, new tab was opened instead of popup window.
Where can you benefit from this feature? For example, on gmail you can chat with friends in separate windows.
AdBlock can, of course, handle blocking advertisement windows, so don't worry.

Another feature that might interest you is option to use external download manager. Although the integrated one is quite good, you may want to use your favourite manager. Probably KDE users will prefer using KGet, so from this version, it is not problem anymore.

Note: Because of change in icons storage in database, all bookmarks and history entries from older version will be with blank icon. You have to save your bookmarks again.

You can see full list of changes here:
  • added Swedish, Serbian and Traditional Chinese translation
  • added option to set Minimum font size in web pages
  • added option to edit bookmark from bookmarks toolbar context menu
  • added option to enable/disable HTML5 local storage (and to clear it)
  • added option not to send Referer header to servers
  • added option to use external download manager
  • added option to add/remove page in speed dial from bookmark star icon
  • added option to import/export passwords into xml file
  • added option to change user agent
  • added global shortcuts for loading sites in speed dial (Ctrl+1,2,...9)
  • added global shortcuts for switch to tabs (Alt+1,2,3...9)
  • added possibility to create new rss feeds in rss manager
  • added alt+left/right click shortcuts to navigate in page history
  • restoring / saving pinned tabs only on first window
  • Paste & Go option in locationbar and websearchbar
  • support for JavaScript Popup windows
  • improved History menu -> added Most visited menu here
  • don't saving icons in private mode
  • improved and refactored context menu on page
  • little improvements in speed dial
  • using global QSettings object, should save some writed to disk
  • remember last folder when saving new bookmarks
  • disabling adblock on local schemes
  • showing size of file going to be downloaded
  • improved browser responsibility when loading a lot of cookies/history
  • possibility to change background in Speed Dial
  • possibility to change number of dials in row in Speed Dial
  • possibility to change maximum number of dials in a row in Speed Dial
  • using QImages to store icons in database now - older icons won't work!
  • fixed showing file type when download file
  • fixed saving usernames with spaces in password manager
  • fixed loading of some rss feeds
  • fixed loading incomplete urls in speed dial
  • fixed all crashes/issues with web inspector
  • fixed memory leak when canceling download
  • fixed open new tab after active option
  • fixed saving of sidebar width
  • fixed occasional fails to restore session
  • fixed occasional crash when closing tabs/windows
  • fixed wrong tab focus order
  • fixed loss of speed dial settings
  • fixed cancelled downloads now no longer leak memory
  • fixed showing of "Are you sure to close x tabs?" question
  • fixed searching strings with special characters
  • fixed sending report in Report Bug page

As usual, I want to thank to everyone who reported bugs, sent patches, sent translations and also to all QupZilla users :-)

With this release, I'd like to highlight work by Mladen Pejaković. He is the one to thank (or blame :-D) for Speed Dial improvements!

Download here: www.qupzilla.com
We have already reached 10 000 downloads coming from homepage.

Packages for other Linux distributions may be available later, so please wait.

Friday, January 27, 2012

Popup windows support and improved speed dial

A lot of things have happened in Git, so I'd like to sum it up for you.

Speed Dial
Thanks to Mladen Pejakovic's work, it is now possible to change background image, number of dials in row and also width of dials. It can be now personalized to look great on every monitor size.

Background in Speed Dial

Popup windows
QupZilla now supports opening popup windows from javascript window.open method. After Konqueror with KWebKitPart, QupZilla is the second QtWebKit browser that currently supports it (correct me if I am wrong).
So what does this means to user? Instead of opening new tab, new popup window will be opened when the site requests it.
You can, for example, open chat window with your friends from Google's Gmail.
Popup windows in Gmail

Improved icon
Thanks to Sergio Cipolla's work, QupZilla's icon has now rounded corners and relief. I think it really looks better than the older one :-)


Next version, containing all these goodies, will be probably released in February.

Saturday, January 14, 2012

IRC channel on freenode.net

New IRC channel for everyone involved in QupZilla can be found at
#qupzilla at irc.freenode.net
You can discuss there development, ask for features, get help or just talk about QupZilla.
Thanks for creating this channel goes to Mariusz Fik.

Saturday, January 7, 2012

QupZilla 1.1.5 released!

I am happy to announce release of new version, 1.1.5!

  • added Portuguese translation
  • added French translation
  • added Greek translation
  • support for loading long locale named qt translations, allowing multiple translations for one language (more dialects)
  • support for printing page through javascript window.print()
  • context menu in webview now handles also frames
  • using own CA certificates database instead of system one (+ automatic updates)
  • improved commandline options, possibility to use multiple options at once
  • hiding new tab while moving tabs
  • new project domain qupzilla.com
  • using bigger icons in Linux default theme
  • opens all bookmarks from folder on middle click
  • Ctrl+Enter in locationbar now appends .com & start loading
  • opening links in new tab now opens new tab next to current tab
  • drag&drop site icon on bookmarks toolbar creates bookmark
  • improved performance of deleting history entries -> moved into separate thread
  • fixed loading of local files from menu file -> open file...
  • fixed showing rss feeds without title
  • fixed searching on page when highlight is enabled + added shortcuts
  • fixed Click2Flash plugin and enables it by default again
  • fixed crash when closing WebInspector with QtWebKit 2.2
  • fixed crash in Click2Flash plugin when element is not found
  • fixed "hide tabs when there is only one tab" option
  • fixed cookies loss when closing browser with private browsing
  • fixed overflowing bookmarks toolbar when there is a lot of bookmarks
  • fixed going to history items in history back/forward menu in new tab
  • fixed showing custom rules in AdBlock
  • fixed problem with downloading with right click -> download link
  • fixed suggestions for google and youtube

As you can see from changelog, this version mainly improved and fixes a lot of features. I tried to implement as much your suggestions as possible.

I must also say, that this version brings basic support for Mac OS X, although it is available only through MacPorts (link here).
As usual, big thanks to contributors, translators and bug reporters.

Download here: www.qupzilla.com

Note: I have to study for a very important exam at the beginning of February, so please excuse little inactivity in development. I probably won't be able to push commits everyday.
Thanks for understanding.