1
mirror of https://invent.kde.org/network/falkon.git synced 2024-11-15 03:22:11 +01:00
Commit Graph

166 Commits

Author SHA1 Message Date
David Rosca
8fa9db9f65 Show print preview dialog when printing page
Print directly to QPrinter instead of using intermediate pdf file.
2017-02-06 20:40:40 +01:00
David Rosca
a049f44757 Each tab now has its own SearchToolBar
Also disable show/hide animations.

SearchToolBar is now above Web Inspector (if visible).
2017-01-21 17:43:41 +01:00
David Rosca
3a612c07bd Fix Windows build 2017-01-20 11:14:41 +01:00
David Rosca
29bccf9984 Use Qt Windows Extras instead of custom QtWin 2017-01-20 09:58:13 +01:00
David Rosca
f15643b454 BrowserWindow: Restore window states last when leaving fullscreen 2017-01-20 09:37:00 +01:00
David Rosca
e9b226d477 Drop support for pinned tabs without saving session
Pinned tabs are saved alongside normal tabs in a session file.
If user don't have session restore enabled, pinned tabs are saved
and restored from a special pinnedtabs.dat file which uses different
codepath.
It has also another problem that it only saves pinned tabs for last
browser window, which sometimes may be confusing and lead to losing
the pinned tabs.
2016-12-27 18:40:20 +01:00
David Rosca
c25e6a99a6 BrowserWindow: Don't focus locationbar when starting with webpage 2016-12-26 14:35:08 +01:00
David Rosca
cf3fa88942 Require Qt 5.7 2016-10-24 20:11:50 +02:00
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
blaze
bc47a9aba5 Show Bookmark Toolbar when Location Bar gets focus
Optional behaviour providing quick access to bookmarks without
wasting the vertical space
2016-08-23 08:57:11 +02:00
David Rosca
cce94944f7 Don't hide supermenu button in fullscreen
Also make the supermenu button as last button in toolbar
2016-08-15 14:24:53 +02:00
Vlad
9ae6c12a3c Show navigation in new tab in fullscreen mode (#2055) 2016-08-15 14:24:35 +02:00
David Rosca
c12e473ab4 Use setWindowState to toggle fullscreen mode
Use setWindowState instead of showNormal() / showFullScreen()
as that may cause issues in some cases.
2016-07-10 17:26:07 +02:00
David Rosca
a1cf84572d Use platformName() to check for X11 platform 2016-06-14 11:58:38 +02:00
ravas
effda91f7c ensured the window geometry is remembered on OS X
* ensured the window geometry is remembered on OS X

It was always starting based on:
int windowWidth = desktop->availableGeometry().width() / 1.3;
int windowHeight = desktop->availableGeometry().height() / 1.3;

because quitApp isn’t called on OS X.

* ensured the window geometry is remembered on OS X (v2)

* tweaked coding style
2016-04-05 09:07:40 +02:00
David Rosca
a66e179b40 Misc fixes
Correctly initialize QJsonParserError
2016-03-30 11:53:41 +02:00
David Rosca
71b6d922be WebView: Handle create WebBrowserWindow
Instead of custom handling of shift + mouse click, use
QWebEngineView::createWindow. It should fix the issue with
JavaScript catching the mouse click performing some action
and QupZilla trying to open new window.

Closes #1898
2016-03-30 09:10:57 +02:00
trnkava1
89d565da6a Mac: Fixed opening Main Menu from button 2016-03-19 14:04:25 +01:00
David Rosca
be110d2d8f Don't focus locationbar of non-empty tab when restoring session 2016-02-25 18:47:46 +01:00
David Rosca
54f3e78396 Fix grammar "Are you sure to..." -> "Are you sure you want to..." 2016-02-15 09:58:14 +01:00
David Rosca
06b2414d80 Focus locationbar on startup if url of current tab is empty 2016-01-27 13:23:28 +01:00
David Rosca
59ac47b08c Hide statusbar and menubar by default 2016-01-24 16:29:46 +01:00
David Rosca
9f6ec040bb QzTools: Add actionShortcut function 2015-11-12 17:00:43 +01:00
David Rosca
ac3d9b0f9b Fix showing webview with Breeze style
Closes #1686
2015-11-12 16:38:39 +01:00
David Rosca
c0809dc0b3 Fix exiting HTML fullscreen with F11 2015-11-06 17:55:57 +01:00
David Rosca
96cc2d41e2 Remove non-working Work Offline option 2015-10-15 10:28:03 +02:00
David Rosca
1a068e8c7d Use QWebEnginePage::RequestClose action to close tabs
It is no longer to use hacky onbeforeunload javascript handling when
closing tabs.
2015-10-12 12:07:01 +02:00
David Rosca
54f31237a5 Fix build 2015-10-08 11:49:22 +02:00
David Rosca
db058ff194 Remove use of QNetworkRequest in LoadRequest 2015-10-06 09:46:23 +02:00
David Rosca
949faa5856 Add support for HTML FullScreen
Esc is used to leave fullscreen
2015-10-05 18:08:14 +02:00
David Rosca
9f36401be9 Use QWebEngineSettings::defaultSettings instead of globalSettings 2015-10-01 18:02:36 +02:00
David Rosca
942299e649 Remove Page Screen action from menus
Page screen functionality will hardly ever come back with QtWebEngine.
2015-09-30 13:28:18 +02:00
David Rosca
36929a45bf Another cleanups
Removed printPage() functions + removed SslManager
2015-09-29 23:41:08 +02:00
David Rosca
730577c0e4 BrowserWindow: showWebInspector -> toggleWebInspector
Using the Web Inspector action while inspector is already visible
will close it.
2015-09-29 23:35:16 +02:00
David Rosca
b0da5ba755 Bring back NetworkManager class 2015-09-29 11:45:39 +02:00
David Rosca
fcaa2b4559 EncodingMenu: Fix showing duplicate codecs in other menu
Also use alphanumeric sorting with QCollator
2015-09-29 11:14:20 +02:00
David Rosca
7adc31337b Make afterLaunch settings enum 2015-09-28 14:51:38 +02:00
David Rosca
6d37ab5ce4 Save pinned tabs per window if restoring session on start
No more pinned tabs restoring on wrong window. Also it is now possible
to have different pinned tabs on each window.
2015-09-27 18:54:19 +02:00
David Rosca
748e6ce020 Ported all X11 specific code to xcb
It now also runtime checks for X11 platform, so it should
work on Wayland without recompilation;
2015-09-25 22:08:09 +02:00
David Rosca
a115d91564 Remove Caret Browsing option
No longer available with QtWebEngine
2015-09-25 17:45:47 +02:00
David Rosca
02f5e032fc Bring back qupzilla:restore page
For now, it doesn't support selecting which windows/tabs not to
restore. It is only possible to start new session or restore previous.
2015-09-24 22:46:35 +02:00
David Rosca
cde3ed179b Always show restore page when starting after crash 2015-09-24 19:37:40 +02:00
David Rosca
ff28f1f211 Another cleanup
- bring back support for Speed Dial Ctrl shortcuts
 - bring back support for one key shortcuts
2015-08-31 22:14:45 +02:00
David Rosca
86a4f3d724 Remove support for transparent background 2015-08-31 21:40:08 +02:00
David Rosca
32a0db31b3 AutoFill: Initial port to QtWebEngine
There are still issues with completing forms in frames
2015-08-31 18:56:52 +02:00
David Rosca
758fd6c687 Fix all build warnings 2015-08-30 17:42:58 +02:00
David Rosca
1756c51546 Remove remaining RSS code 2015-08-30 10:40:45 +02:00
David Rosca
495ebc785e Don't link to unused Qt modules 2015-08-29 18:32:57 +02:00
David Rosca
7d9a07b379 Bring back show source support (using view-source: url) 2015-05-24 21:28:45 +02:00
David Rosca
8d7cfb0e2a Remove some Qt 4 specific code 2015-02-26 12:17:47 +01:00
David Rosca
226c721d57 BrowserWindow: Remove static WEBKITVERSION 2015-02-08 11:45:15 +01:00
David Rosca
f366dbd11f Encoding: Make character encoding menu working again 2015-02-08 11:42:01 +01:00
David Rosca
60b2386a6e Initial port to QtWebEngine
This is first quick port to QtWebEngine, most of advanced features
are not working yet. Please read README.

For now, it will use separate profile directory as well as browser
session, that means you can use both QtWebEngine and QtWebKit versions
at the same time.
2015-01-27 11:01:52 +01:00
S. Razi Alavizadeh
393009f4d1 Show navigation bar when calling openLocation() in full screen mode.
- Closes #1464
2014-12-25 00:10:30 +03:30
Eion Robb
f5606e9326 Fix for compiling Windows version with mingw 2014-11-24 09:28:12 +13:00
David Rosca
24ff9285f5 Use desktop availableGeometry for default window size calculation 2014-11-10 12:15:23 +01:00
David Rosca
03c875b229 Set default window size to be desktop size / 1.3 2014-11-10 11:50:53 +01:00
David Rosca
478b5ddb84 Use open() instead of exec() in all dialogs
Avoid blocking exec().

Closes #1515
2014-11-07 18:08:12 +01:00
David Rosca
21fb7bff31 Preferences: Don't crash when opening with null BrowserWindow
Closes #1488
2014-10-07 16:15:23 +02:00
David Rosca
6390eb215b Mac: Fix crash on startup due to invalid m_mainMenu pointer
Closes #1485
2014-10-07 11:10:31 +02:00
David Rosca
dc29f6bde5 QzTools: Add function to obtain url of QWebFrame
QWebFrame::url() may be empty, and in that case QWebFrame::baseUrl()
should be used

The issue with empty frame url caused AutoFill to not complete
such frames.

Closes #1465
2014-09-29 16:14:49 +02:00
David Rosca
eec67d1941 Fix building with Qt 4.7 2014-09-26 19:28:24 +02:00
David Rosca
35b2fb22b4 Remove unnecessary qDebugs 2014-09-26 09:53:45 +02:00
David Rosca
01b4fd971f MainMenu: Fix shortcuts for toggling sidebars 2014-09-25 17:36:51 +02:00
David Rosca
56dcdfe4a2 Mac: SuperMenu button is now available on Mac 2014-09-25 14:42:36 +02:00
David Rosca
e83d75f251 Mac: Re-enable system-wide menu menu bar 2014-09-25 14:27:25 +02:00
David Rosca
13b1614e11 Use std::sort instead of obsolete qSort 2014-09-25 14:13:26 +02:00
David Rosca
767e01fd22 Mac: Re-enable dock menu with New Tab, New Window and New Private Window actions 2014-09-25 14:09:26 +02:00
David Rosca
8c8789a05f BrowserWindow: Always set "private" property to browser window
Set this property also when private mode is disabled
2014-09-17 16:19:27 +02:00
David Rosca
de4f7115f8 Merge pull request #1431 from kdave/preferences-ctrl-q
[Preferences] add option to set Ctrl-Q behaviour (Quit or nothing)
2014-07-23 21:36:48 +02:00
Oleg Shparber
272c0c7807 Refactor encoding menu creation
* Use of codec MIBs instead of names significantly decreases
  number of iterations
* Remove duplicated codecs
* Fix memory leaks which were caused by wrong parenting and
  empty menus
* Do not add separator if menu is empty
2014-07-22 01:02:08 -07:00
David Sterba
ed9625ab5e [Preferences] add option to set Ctrl-Q behaviour (Quit or nothing)
Motivated by #695 which targets broader task, Ctrl-Q behaviour is one
that stands out. Accidentally pressing it instead of Ctrl-W can have
disasterous consequences or is annoying. Other browsers provide either
generic keyboard shortcuts configuration (Opera) or an extension/plugin
to disable the behaviour (FF).

For the record of the usability demand:
https://code.google.com/p/chromium/issues/detail?id=59621
https://bugzilla.mozilla.org/show_bug.cgi?id=550559
2014-07-17 23:05:38 +02:00
David Rosca
9ed63f6323 [CloseDialog] Change text - there will always be more than 1 tab opened 2014-07-08 19:27:17 +02:00
S. Razi Alavizadeh
4ea5974914 [Windows] Fixed some issue with the blur background effect,
- Also moved all of codes related to blur effect of tabbar to ComboTabBar.
2014-05-29 01:08:42 +04:30
Mladen Pejaković
0fc6a30933 Implement offline mode. Closes #1241 2014-05-20 18:35:49 +02:00
Mladen Pejaković
ce7ea04f4a Language strings fixes. Closes #1318 #1329 #1337 2014-05-14 18:29:20 +02:00
David Rosca
39430458b3 [WebInspector] Add F12 shortcuto to show Web Inspector 2014-05-11 14:25:57 +02:00
David Rosca
b3a9b99ac7 [ToolButton] Manually handle showing menu
ToolButtons now don't have menu indicators.
This fixes issue with Back/Forward buttons in Navigation Toolbar
being more wide than other buttons.
2014-04-19 13:12:04 +02:00
David Sterba
f7552e42aa [BrowserWindow] Add slash as a single key shortcut for search 2014-04-10 11:09:29 +02:00
David Sterba
683ec42736 [BrowserWindow] Enable single key shortcuts
Translate single keys to shortcuts:

1 - previous tab
2 - next tab
(basic Opera compatibility)

There are more to choose from, but 1 and 2 are probably the most used.
Full list:
http://help.opera.com/Windows/9.50/en/keyboard.html#single-key

Configurable in preferences/Keyboard shortcuts, off by default.

Closes #1172
2014-04-07 14:50:38 +02:00
S. Razi Alavizadeh
39c9fec3dd [Windows] Fixed compile issues after aa248893 and 7f3d8ee7 2014-04-06 17:38:36 +04:30
nowrep
aa248893c1 [TabWidget] Renamed getTabBar() to just tabBar() 2014-04-04 17:14:31 +02:00
nowrep
7469aced65 [Cleanup] Deleted unused ActionCopy class
Also added myself to ComboTabBar copyright
2014-04-02 20:42:29 +02:00
nowrep
98907c2055 [WebTab] Reworked tab attaching/detaching.
This also fixes crash on detach
2014-04-01 18:47:19 +02:00
nowrep
551ccd6e3c [BrowserWindow] Make sure window is created with at least one tab 2014-04-01 16:34:08 +02:00
nowrep
7369e86a0a [SearchAction] Don't block Ctrl+F shortcut from pages
It is now possible to search in WebInspector with Ctrl+F

[ci skip]
2014-03-31 18:03:35 +02:00
nowrep
2d9dfa9db7 [WebInspector] WebInspector is now displayed inside WebTab
It no longer uses QDockWidget. Instead, it is plain QWidget with
close button in top right corner.
2014-03-31 17:57:35 +02:00
nowrep
7f3d8ee786 [Cleanup] Split src/lib/webview into tabwidget, webkit and webtab folders 2014-03-31 14:54:08 +02:00
nowrep
5c8afde4d9 [Crash] Fixed crash in BrowserWindow::event
Closes #1273
2014-03-31 10:01:04 +02:00
nowrep
bfe08409b4 [PrivateBrowsing] Show PrivateBrowsing indicator as left corner widget in tabbar
Removed PrivateBrowsing icon in Status Bar
2014-03-31 09:50:54 +02:00
nowrep
b95da97904 [BrowserWindow] Move TabBar into NavigationContainer
Simplifies entering/leaving fullscreen, as it is only needed to
update visibility of the whole container.
2014-03-30 16:38:34 +02:00
nowrep
ab638a5525 [IconProvider] Use fallback oxygen icon theme (in oxygen-fallback.qrc)
Instead of manually setting fallback icons, use globally fallback theme.
2014-03-24 16:09:30 +01:00
korwru
d247fd9f74 Fix msvc compile issue m_navigationBar undeclared identifier 2014-03-19 15:38:14 +04:00
korwru
a1e849fd9a Fix msvc compile error m_usingTransparentBackground undeclared
identifier
2014-03-19 15:32:30 +04:00
nowrep
3d23f3eb02 [WebTab] Move more code into WebTab, instead of handling in TabWidget/TabBar
This also fixes showing tab icon after detaching tab
2014-03-18 20:00:34 +01:00
nowrep
96b6743ac6 [ClosedTabsButton] New button in the right corner of tabbar
Added icon for Linux theme.
But it needs a new icon for other themes...
2014-03-17 15:04:58 +01:00
nowrep
c395f19524 [BrowserWindow] Create shortcuts with QShortcut instead manually in keypress
This fixes eg. Ctrl+W writing W in locationbar
2014-03-15 19:58:19 +01:00
nowrep
a2de6e1627 [ShowStatusBar] Fixed settings to show/hide Status Bar
Closes #1259
2014-03-14 13:33:33 +01:00
nowrep
83bb7c757c [CodeCleanup] Don't use m_isStarting and m_isClosing in BrowserWindow 2014-03-13 17:06:08 +01:00
nowrep
b4d2ced60f [CodeCleanup] Cleanup Mac #ifdefs 2014-03-13 15:58:39 +01:00