1
mirror of https://invent.kde.org/network/falkon.git synced 2024-12-20 10:46:35 +01:00
Go to file
Kevin Kofler b9bd2338e4 Add initial printing support with QtWebEngine >= 5.7.0 (#2068)
* Add initial printing support with QtWebEngine >= 5.7.0

This works by printing to PDF first, then sending the PDF to a printer
if printing to a physical printer was requested.

On *nix (including Mac OS X), we use the lpr command, which is typically
provided by CUPS nowadays. Currently, no options beyond the printer name
are passed, there is room for improvement there. (Okular has a
FilePrinter class that handles this in a more sophisticated way.)

On Windows, we use ShellExecuteW with the "printto" verb. In that case,
the printer name is unfortunately the only thing that can be passed. The
user experience may also be suboptimal depending on the PDF viewer
installed on the system. (E.g., Adobe Reader is reported to ignore
SW_HIDE.) And if there is no PDF viewer installed at all, it will of
course not work at all. But it is the best we can do without bundling
something like GhostScript (or requiring the user to install it).

* Printing: Let lpr autoremove the temporary file instead of QTemporaryFile

Only lpr knows for sure when it is safe to delete the temporary file.

* Printing: Use the callback version of printToPdf instead of the file one

The file version is also asynchronous and does not report when it is
done.

* Printing: Use async QProcess API instead of QProcess::execute to run lpr

This also required making tempFile a QTemporaryFile * instead of a
QTemporaryFile on the stack, because QTemporaryFile is a QObject and
cannot be copied.

* Printing: Adapt the FilePrinter from Okular to pass correct lpr args

The license of those files is GPLv2+, which is compatible with
QupZilla's GPLv3+ licensing.
2016-09-14 14:07:07 +02:00
.tx [Transifex] Added .tx/config 2014-04-26 12:44:26 +02:00
bin Merge branch 'v2.0' 2016-06-20 18:23:54 +02:00
git_hooks Use rev-parse instead of show-ref (#1958) 2016-04-25 12:53:03 +02:00
haiku Version 2.0.1 2016-06-08 16:24:44 +02:00
linux Fix completions according to new options (#2043) 2016-08-15 14:24:18 +02:00
mac Brute crush all pngs 2016-05-12 12:47:46 -06:00
other Brute crush all pngs 2016-05-12 12:47:46 -06:00
scripts Use rev-parse instead of show-ref (#1958) 2016-04-25 12:53:03 +02:00
src Add initial printing support with QtWebEngine >= 5.7.0 (#2068) 2016-09-14 14:07:07 +02:00
tests Fix autotests 2016-01-16 21:42:11 +01:00
translations Pull translations from transifex 2016-08-23 09:10:32 +02:00
windows Merge branch 'v2.0' 2016-06-19 11:46:07 +02:00
.gitignore Add *.stash to .gitignore 2016-06-14 10:24:56 +02:00
.travis.yml Travis: Update PPAs to Qt 5.6.1 and 5.7.0 2016-06-19 11:51:59 +02:00
AUTHORS New logo 2015-11-08 23:39:12 +01:00
BUILDING.md Mac: Repair current OpenSSL undefined reference from homebrew to dynamic (#1971) 2016-05-27 15:57:31 +02:00
CHANGELOG Fix typo in CHANGELOG 2016-06-08 20:51:47 +02:00
COPYRIGHT Update COPYRIGHT (#1990) 2016-06-01 11:45:32 +02:00
FAQ Closing last tab on second window will always close the window. 2012-04-17 14:00:32 +02:00
GPLv3 Initial commit 2011-03-02 16:57:41 +01:00
QupZilla.pro Require Qt 5.6 2015-11-05 23:46:29 +01:00
README.md Merge branch 'v2.0' 2016-06-08 16:25:36 +02:00

QupZilla Web Browser

Build Status
Homepage: http://www.qupzilla.com
Blog: http://blog.qupzilla.com
IRC: #qupzilla at irc.freenode.net
Translations: https://www.transifex.com

About QupZilla

QupZilla is a new and very fast QtWebEngine browser. It aims to be a lightweight web browser available through all major platforms. This project has been originally started only for educational purposes. But from its start, QupZilla has grown into a feature-rich browser.

QupZilla has all standard functions you expect from a web browser. It includes bookmarks, history (both also in sidebar) and tabs. Above that, it has by default enabled blocking ads with a built-in AdBlock plugin.

History

The very first version of QupZilla has been released in December 2010 and it was written in Python with PyQt4 bindings. After a few versions, QupZilla has been completely rewritten in C++ with the Qt Framework. The Windows version of QupZilla was compiled using MinGW, but due to a huge problem with Flash, it is now compiled with Microsoft Visual C++ Compiler 2008. First public release was 1.0.0-b4.

Until version 2.0, QupZilla was using QtWebKit. QtWebKit is now deprecated and new versions are using QtWebEngine.

Compiling

Before you start compiling, make sure that you have installed the Qt (>= 5.6) development libraries and you have read the BUILDING.md information.

Linux

  • OpenSSL (libcrypto) is required
  • xcb libraries when building without NO_X11

Windows

  • OpenSSL (libeay32) is required

Then you can start compiling by running this commands:

$ qmake
$ make

After a successful compilation the executable binary can be found in the bin/ directory. On Fedora and possibly other Linux distributions you need to replace qmake with qmake-qt5.

On Linux/Unix: To install QupZilla, run this command: (it may be necessary to run it as root)

$ make install

On Mac OS X: To deploy QupZilla in dmg image, run this command:

$ ./mac/macdeploy.sh full-path-to-macdeployqt

You need to specify path to macdeployqt only if it is not in PATH.

Current version

The current stable version of QupZilla is 2.0.1. You can download precompiled packages and the sources from the download section at homepage. However, if you want the latest revision, just take the latest code snapshot either by downloading a tarball or running:

$ git clone git://github.com/QupZilla/qupzilla.git

FAQ and Changelog

If you are experiencing some sort of problem, please read the FAQ before you open an issue.

FAQ | Changelog | Bug Reports