1
mirror of https://invent.kde.org/network/falkon.git synced 2024-12-23 04:06:35 +01:00
Commit Graph

4467 Commits

Author SHA1 Message Date
David Rosca
b17af37230
Also skip scripts in src/Messages.sh 2018-03-09 09:13:10 +01:00
David Rosca
d26fc63a5c
Fix DuckDuckGo t parameter value on start page 2018-03-09 09:10:32 +01:00
l10n daemon script
e83caaf467 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-03-07 05:17:30 +01:00
l10n daemon script
f838f02db1 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-03-06 05:24:12 +01:00
l10n daemon script
d04e0091a7 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-03-05 05:17:05 +01:00
l10n daemon script
1acade4133 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-03-04 05:19:42 +01:00
David Rosca
fff386c3d7
Merge branch 'Falkon/3.0' 2018-03-03 14:32:45 +01:00
Anmol Gautam
e4c4fd10fc
Clear mouseover state after closing menu in bookmarks toolbar
The button was underMouse() after closing the context menu

Differential Revision: https://phabricator.kde.org/D10894
2018-03-03 14:32:12 +01:00
David Rosca
30b2ba41cd
Scripts: Send change event when changing input value in completeFormData
Fixes incorrectly completing form data on some sites.

CCBUG: 391327
2018-03-03 14:28:57 +01:00
David Rosca
a649186a93
RunAction: Rename mpv action to "Open with mpv" 2018-03-03 13:33:43 +01:00
David Rosca
d0e924db51
Remove ImageFinder plugin 2018-03-03 12:57:28 +01:00
David Rosca
0495b46d16
Add RunAction extension
Allows to run actions on sites. Actions are specified in desktop
files and allow to either load url or run command depending on defined
conditions.

This extension is a generic replacement for ImageFinder and Videoner plugins.
2018-03-03 12:57:28 +01:00
David Rosca
63cf3dbade
PluginListDelegate: Don't show version of plugin
It is still displayed in tooltip.
2018-03-03 12:57:28 +01:00
David Rosca
72b4cf55ff
DesktopFile: Add tryExec 2018-03-03 12:57:28 +01:00
David Rosca
d3159348b4
PyFalkon: Remove WebPage::javaScriptPrompt 2018-03-03 12:57:28 +01:00
l10n daemon script
5da8d90528 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-03-03 05:29:43 +01:00
David Rosca
d5b83d8a1f
Merge branch 'Falkon/3.0' 2018-03-02 16:45:45 +01:00
David Rosca
288585f91a
Fix installing translations
When there are mixed gettext and qt translations, they get downloaded
to separate po and poqm folders, so it is no longer needed to handle
it manually.
2018-03-02 16:43:31 +01:00
David Rosca
71615c675f
Plugins: Allow to specify icon path relative to metadata directory 2018-03-02 16:34:59 +01:00
David Rosca
3bb56fb47d
ThemeManager: Fix showing duplicated themes 2018-03-02 10:48:55 +01:00
l10n daemon script
e88f022bb7 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-03-02 05:23:51 +01:00
David Rosca
fd2c7960c5
PluginListDelegate: Remove line with author info
One plugin in list now takes only two rows, allowing
to show more plugins without scrolling.
2018-03-01 21:03:36 +01:00
David Rosca
ea0497be55
Plugins: Don't print error twice when failed to load plugin 2018-03-01 20:49:47 +01:00
David Rosca
db66ea91df
PyFalkon: Export Menu and Action classes + fix warnings 2018-03-01 20:38:43 +01:00
David Rosca
e427f14445
PyFalkon: Rename pyfalkon.xml -> typesystem_pyfalkon.xml 2018-03-01 19:42:56 +01:00
David Rosca
89dd68f1dd
Remove ButtonBox, Widget and ResizableFrame classes 2018-03-01 19:37:42 +01:00
David Rosca
43f69d8f34
Remove Frame class 2018-03-01 19:33:24 +01:00
David Rosca
3945cb76bb
Remove unused EmptyNetworkReply 2018-03-01 19:10:23 +01:00
David Rosca
2ab2e80630
MainApplication: Move connections from postLaunch to constructor
Also set m_isClosing in destructor
2018-03-01 19:01:33 +01:00
David Rosca
b8b43f9732
Merge branch 'Falkon/3.0' 2018-03-01 16:48:01 +01:00
David Rosca
d87cffd5db
Bookmarks: Remove default bookmarks
Also don't show bookmarks toolbar by default as there
is nothing to show now.
2018-03-01 16:47:12 +01:00
David Rosca
7308b64df6
SpeedDial: Remove default sites 2018-03-01 16:45:17 +01:00
David Rosca
cdbc64eb6d
ProfileManager: Don't copy data when profile is from development version
Allows to jumping from stable version to development version
without it always backing up settings, browsedata and session.
2018-03-01 16:41:45 +01:00
David Rosca
18d009c325
BrowserWindow: Give focus to webview before loading url in loadAddress
BrowserWindow::loadAddress() always gets called from user interaction,
so it should always update text in location bar (it wouldn't be updated
if location bar is focused).
2018-03-01 16:27:16 +01:00
David Rosca
1c01936932
Always allow to open uknown schemes with QtWebEngine 5.11
This makes unknown schemes like magnet: correctly open in external
applications.
2018-03-01 16:02:41 +01:00
David Rosca
6f67987ab5
Cookies: Enable 3rd party cookies filtering with QtWebEngine 5.11 2018-03-01 16:02:21 +01:00
David Rosca
48ca42d645
WebInspector: Don't require remote debugging with QtWebEngine 5.11 2018-03-01 15:53:02 +01:00
David Rosca
ce3f4ed1e8
Preferences: Add new options in QtWebEngine 5.11
- Disable automatic playing of videos
- Prevent WebRTC from leaking local IP address
2018-03-01 14:43:58 +01:00
David Rosca
e4c58424f0
JsOptions: Add new options in QtWebEngine 5.10 and 5.11 2018-03-01 14:40:56 +01:00
l10n daemon script
d61b117959 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-03-01 05:29:40 +01:00
Jonathan Riddell
05acda3da3 Merge branch 'Falkon/3.0' 2018-02-28 17:00:08 +00:00
David Rosca
84dd402de5
WebView: Don't clear history when navigatin from speed dial
QWebEngineView loses focus when clearing history, so when opening
new tab with speed dial and navigating to other page from location bar
it would give focus back to location bar.

BUG: 391228
FIXED-IN: 3.0.1
2018-02-28 16:04:04 +01:00
David Rosca
18f109c079
Fix showing git revision in version string 2018-02-28 16:03:31 +01:00
Jonathan Riddell
46a0c1ecdb add source alongside minified javascript for freedom 2018-02-28 14:59:49 +00:00
Jonathan Riddell
fb88da17d6 add source alongside minified javascript for freedom 2018-02-28 14:59:33 +00:00
David Rosca
5d4333a3e4
WebView: Remove translate, dictionary and validate actions
They should be moved into extension instead.

BUG: 391204
FIXED-IN: 3.1.0
2018-02-28 10:41:25 +01:00
David Rosca
a796842dff
Bump version to 3.0.99 2018-02-28 10:38:59 +01:00
l10n daemon script
1f0443532f SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-02-28 05:21:18 +01:00
David Rosca
0118c0cb96
Version 3.0.0 2018-02-27 14:42:16 +01:00
David Rosca
332b7a8e0a
Support loading translations for Python extensions 2018-02-27 12:18:26 +01:00
David Rosca
c991df30f4
Extract and install Python translations 2018-02-27 11:32:29 +01:00
David Rosca
0d51e0ce32
PluginInterface: Remove getTranslator 2018-02-27 11:31:34 +01:00
l10n daemon script
3ba386de42 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-02-27 05:18:36 +01:00
David Rosca
d8cdee1cce
DataPaths: Remove Translations path 2018-02-26 22:04:14 +01:00
David Rosca
4d2f02ac45
Remove option to change language on per-profile basis
System locale is now always used.
2018-02-26 21:52:39 +01:00
David Rosca
27506e3ba1
PyFalkon: Add __version__ and __version_info__ 2018-02-26 20:29:13 +01:00
David Rosca
abd30880a5
SideBarManager: Remove interfaces by pointer not id 2018-02-26 20:28:34 +01:00
David Rosca
791c9f6b1d
Don't install Python extensions when Python support is disabled 2018-02-26 18:28:58 +01:00
David Rosca
43e886a1b0
Add example hellopython Python extension 2018-02-26 18:18:56 +01:00
David Rosca
228e672254
PyFalkon: Suppress workarounded warnings 2018-02-26 16:59:54 +01:00
David Rosca
32a31142a6
AbstractButtonInterface: Add call methods to ClickController
Workaround for Python bindings
2018-02-26 16:58:39 +01:00
David Rosca
190635db1b
PyFalkon: Export rest of the classes 2018-02-26 16:40:42 +01:00
David Rosca
2fb0da5547
Fix various issues when generating Python bindings 2018-02-26 13:56:43 +01:00
David Rosca
ec1e30314c
DataPaths: Only load plugins from first path in portable build 2018-02-26 11:14:12 +01:00
David Rosca
2873cf45a9
PyFalkon: Install into standard plugin path 2018-02-26 11:14:12 +01:00
David Rosca
ee84b87d20
PyFalkon: Fix build system
It is now enabled when PySide2, Shiboken2 and PythonLibs are found.
2018-02-26 11:14:12 +01:00
David Rosca
3f1d37ab69
PyFalkon: Wrap more classes 2018-02-26 11:14:12 +01:00
David Rosca
6dff236e07
Fix exporting QtSingleApplication 2018-02-26 11:14:11 +01:00
David Rosca
5e1635bffa
PluginProxy: Don't pass enum as constref 2018-02-26 11:14:11 +01:00
David Rosca
532af04848
DesktopNotificationsFactory: Don't include config.h in header 2018-02-26 11:14:11 +01:00
David Rosca
13c9025c40
PluginInterface: Don't pass enum as constref 2018-02-26 11:14:11 +01:00
David Rosca
1cf47bfdb5
PyFalkon: Remove PythonPluginObject
Instead just export global registerPlugin function.
2018-02-26 11:14:11 +01:00
l10n daemon script
b9cedf45a1 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-02-26 05:15:20 +01:00
David Rosca
2e377390b5
Add experimental support for Python extensions
Disabled by default until the build system is sorted out.

As it is now, Python extensions are loaded from "python"
subdirectory in standard plugin paths. Extensions can be loaded
and unloaded same way as C++ plugins.

Currently there are only wrappers needed to get PluginInterface
working from Python, other Falkon classes are inaccessible.
2018-02-25 18:51:31 +01:00
David Rosca
d3ebe40e8f
Replace signals/slots with Q_SIGNALS/Q_SLOTS 2018-02-25 13:33:07 +01:00
Luigi Toscano
c36a113219 gettext translations: extract them and use ECM to load them
Summary:
Extract the strings: one main catalog and a catalog for each plugin.
Also use the ECM macro to install the translations.

Ref T6858

Reviewers: #falkon, drosca

Reviewed By: #falkon, drosca

Subscribers: drosca

Tags: #falkon

Maniphest Tasks: T6858

Differential Revision: https://phabricator.kde.org/D8049
2018-02-25 00:27:41 +01:00
David Rosca
a89a9a8ddc
WebView: Add support for changing default background color
BUG: 390316
2018-02-24 18:00:53 +01:00
David Rosca
49f48bdd1a
BrowserWindow: Don't resend Ctrl+Tab key press events
If the event is not accepted by TabWidget, it will be sent
back to BrowserWindow and end up in infinite recursion.
2018-02-24 16:42:15 +01:00
David Rosca
929851095a
Plugins: Rework to allow more plugin types
This should make it possible to add more plugin types (such as
JavaScript/Python/..) in the future.
Added InternalPlugin type which makes the AdBlock plugin visible
and (un)loadable in Extensions tab in Preferences.
2018-02-24 14:23:46 +01:00
David Rosca
a4c246ab0e
GreaseMonkey: Fix removing statusbar icon when unloading plugin 2018-02-24 14:19:06 +01:00
David Rosca
b86b385d98
AdBlockPlugin: Support unloading plugin 2018-02-24 14:16:28 +01:00
David Rosca
3984beda67
AdBlockPlugin: Add proper metadata 2018-02-24 14:11:25 +01:00
David Rosca
79297f54a2
DataPaths: Allow to override Plugins path with FALKON_PLUGIN_PATH env variable 2018-02-24 12:07:09 +01:00
David Rosca
f80287b2d8
Save HighDPI version of default favicons in browsedata.sql 2018-02-24 11:46:15 +01:00
David Rosca
4bd8de6a50
AboutDialog: Replace QTextBrowser with QLabel 2018-02-24 10:03:41 +01:00
David Rosca
a2731ef393
Use Falkon icons in about dialog and internal pages 2018-02-24 09:21:13 +01:00
David Rosca
72f9c4eb7b
DataPaths: Add locate function 2018-02-23 19:47:46 +01:00
David Rosca
f27bc89019
Plugins: Save only filename of loaded plugins
Instead of saving full plugin library path in non-portable mode.
2018-02-23 19:36:08 +01:00
David Rosca
86d3ebebc7
Add new Falkon icon 2018-02-23 12:58:04 +01:00
David Rosca
c6aefbbed3
Scripts: Element.tagName can be lowercase
Closes #2616
2018-02-22 16:21:23 +01:00
David Rosca
97a1765b6c
Emit webPageDeleted only from WebView
Closes #2582
2018-02-21 18:56:34 +01:00
David Rosca
5453308571
TabContextMenu: Correctly re-enable RestoreClosedTab action 2018-02-21 18:55:53 +01:00
David Rosca
dd30a1bc72
WebView: Disable setForceContextMenuOnMouseRelease on Windows
Windows open context menu on mouse release by default.
2018-02-21 18:55:45 +01:00
l10n daemon script
b4eaa10c10 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-02-19 05:02:21 +01:00
l10n daemon script
00f337b82c SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-02-18 04:59:49 +01:00
David Rosca
e5a599ee23
VerticalTabs: Disable scrollbars in other direction 2018-02-17 17:11:54 +01:00
l10n daemon script
dd3c570c41 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-02-17 05:04:26 +01:00
David Rosca
5e88ea7949
Add Falkon UserBase Wiki links 2018-02-16 15:24:49 +01:00
David Rosca
99bdca9944
Replaced another qupzilla urls 2018-02-16 15:00:40 +01:00
David Rosca
d2d0594c63
FalkonSchemeHandler: Redirect falkon:reportbug to KDE bugzilla 2018-02-16 14:44:32 +01:00
David Rosca
4360ed982f
SpeedDial: Change default pages to KDE/Falkon 2018-02-16 14:40:37 +01:00
David Rosca
0706cd1997
QzCommon: Move bookmarksVersion to Bookmarks 2018-02-16 14:32:06 +01:00
David Rosca
cf7d077e3a
QzCommon: Add BUGSADDRESS
Also remove WIKIADDRESS and change urls to KDE/Falkon
2018-02-16 14:30:44 +01:00
David Rosca
2cd4e8a74b
Change default bookmarks to KDE/Falkon urls 2018-02-16 14:24:01 +01:00
David Rosca
78cb4f6509
WebView: Immediately delete old page in setPage 2018-02-16 12:38:52 +01:00
David Rosca
c83f7e3c01
Remove any remaining Oxygen style workarounds 2018-02-16 12:04:46 +01:00
David Rosca
bce5ef9a2e
ComboTabBar: Implement sizeHint for CloseButton
CloseButton code is now identical to original QTabBar CloseButton.
Should help with #2328
2018-02-16 12:04:40 +01:00
David Rosca
e4c2194177
ComboTabBar: Force close button on right side
This mainly applies to macOS where close buttons are normally on left side,
but native macOS tabbar doesn't use icons and it looks wrong with icons.
2018-02-16 12:04:29 +01:00
David Rosca
ec84df81e0
WebPage: Return early from acceptNavigationRequest when closing app
QtWebEngine is calling this method from qAddPostRoutine function
and it sometimes crashes there in tests on exit.
2018-02-16 11:06:57 +01:00
Anmol Gautam
5152e514a0
Printing to PDF with the page title 2018-02-16 11:06:38 +01:00
David Rosca
9e3423ff9e
WebPage: Make the loadFinished workaround for all Qt 5.10 versions
See #2479
2018-02-16 11:05:53 +01:00
David Rosca
a3409d2e8f
AdBlockSubscription: Ignore empty lines in list 2018-02-14 09:14:47 +01:00
David Rosca
709568ff36
AdBlock: Add NoCoin List as default list with EasyList 2018-02-14 09:14:47 +01:00
l10n daemon script
adf24d7f94 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-02-14 04:57:58 +01:00
l10n daemon script
3de958a3ed SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-02-13 05:17:37 +01:00
Anmol Gautam
c67a32a845
fixed drop url over unrestored tabs (#2604) 2018-02-12 22:13:19 +01:00
David Rosca
502ba9284f
TabWidget: Don't emit tabMoved twice in moveTab when (un)pinning tabs 2018-02-12 17:49:27 +01:00
David Rosca
b07d9cc976
TabBar: Support drop moving tabs from the same tabbar
Closes #2602
2018-02-12 16:33:10 +01:00
David Rosca
eb90925a32
TabWidget: Add moveTab() method that supports moving tabs between both tabbars 2018-02-12 16:33:06 +01:00
David Rosca
802e447c0c
VerticalTabs: Show detach tab action in context menu
It's not possible to detach tabs by dragging them to empty space
as with main tabbar.
2018-02-12 09:52:14 +01:00
David Rosca
06e4ef4a58
FalkonSchemeHandler: Remove contributors list from about page 2018-02-12 09:00:38 +01:00
David Rosca
0890ac33bd
AboutDialog: Remove authors/contributors page
The list of names is really outdated and doesn't reflect current state anymore.
2018-02-12 08:54:33 +01:00
David Rosca
28d78cdcca
Fix missing override warnings 2018-02-11 20:36:06 +01:00
Anmol Gautam
56513dddc2
removed unnecessary cursor:pointer from the body of speeddial (#2599) 2018-02-11 16:21:17 +01:00
David Rosca
512a19e528
VerticalTabs: Draw background activity indicator 2018-02-11 16:21:08 +01:00
David Rosca
315218db9d
TabModel: Add BackgroundActivityRole 2018-02-11 16:20:57 +01:00
David Rosca
cd4f94574a
DesktopFile: Set UTF-8 codec 2018-02-11 14:38:06 +01:00
David Rosca
7c013f5342
Plugins: Port plugin spec to standard desktop file
Makes it translatable
2018-02-11 14:38:01 +01:00
David Rosca
683854f502
AdBlockPlugin: Set correct interface metadata 2018-02-11 11:51:08 +01:00
David Rosca
3333b61650
Unregister scheme handler / extra js objects by pointer not name 2018-02-11 11:50:05 +01:00
David Rosca
9db6745ee5
Port theme metadata to standard desktop file
This makes it possible to translate it.
2018-02-11 11:42:37 +01:00
David Rosca
4a1d807fec
Remove QzRegExp
Port directly to QRegularExpression everywhere
2018-02-11 10:54:59 +01:00
David Rosca
f1c7c2beaf
Remove NetworkProxyFactory 2018-02-11 10:24:55 +01:00
David Rosca
881615a629
Remove AccessKeysNavigation plugin 2018-02-11 10:09:39 +01:00
David Rosca
22c88c4261
Bump minimum Qt version to 5.9.0
Also remove remaining Qt4 code.
2018-02-11 10:08:18 +01:00
David Rosca
c90e0fefd7
Make it possible to override FALKON_PLUGIN_PATH from cache 2018-02-11 09:03:46 +01:00
David Rosca
3e1e49f3d3
TabIcon: Don't resize to lower height than minimumHeight
Fixes tabs height changing when there are no buttons on tabs visible
in main tabbar (eg. selected tab is pinned and all tabs have icon hidden)
with Fusion style.
2018-02-10 09:17:42 +01:00
David Rosca
3e2e4fa2ce
ComboTabBar: Fix height when starting with only pinned tabs 2018-02-10 09:17:37 +01:00
Anmol Gautam
582fb72115
fixed toolTip on pinning/unpinning (#2598) 2018-02-10 09:17:33 +01:00
David Rosca
31e4d5fd5f
TabWidget: Fix saving last closed tab with "no quit on closing last tab" option
Closes #2596
2018-02-09 18:14:35 +01:00
David Rosca
d363d58014
SiteInfo: Change to QDialog 2018-02-09 18:14:25 +01:00
David Rosca
f5390ed619
CookieManager: Change to QDialog 2018-02-09 18:14:00 +01:00
David Rosca
6f880b43cf
AdBlockDialog: Change to QDialog 2018-02-09 18:13:25 +01:00
David Rosca
68bee4ba8f
Preferences: Change to QDialog 2018-02-09 18:12:52 +01:00
David Rosca
7670c7df90
VerticalTabs: Scroll to current tab when opening new selected tab 2018-02-09 18:12:13 +01:00
Razi Alavizadeh
4705581689
Windows, Download Manager: Fix Open Folder action when file is downloading.
Fixes #2590
2018-02-09 18:12:07 +01:00
Anmol Gautam
d9638d41be
Bookmarks ToolBar refresh fix (#2594) 2018-02-09 18:11:55 +01:00
David Rosca
d8174fb079
More overrides 2018-02-07 12:04:02 +01:00
David Rosca
75b072ec88
Fix missing override warnings 2018-02-07 11:55:46 +01:00
David Rosca
fd759ded62
PluginProxy: Set MainApplication as parent 2018-02-07 11:24:29 +01:00
David Rosca
f7e64e2353
Scripts: Install webchannel bridge in main world also on extension scheme 2018-02-07 11:24:06 +01:00
David Rosca
1ff43ec6d8
WebTab: Raise notifications instead of clearing parent 2018-02-07 11:23:32 +01:00
David Rosca
7bd3b3d5af
WebPage: Workaround changing webchannel world not sometimes working
Closes #2577
2018-02-07 11:23:20 +01:00
David Rosca
4caab39269
Fix building password backend plugins 2018-02-06 17:53:21 +01:00
David Rosca
41b6ae21cd
WebTab: Return requestedUrl when url is empty 2018-02-06 17:40:35 +01:00
David Rosca
2283b41fdc
TabBar: Fix calculating pinned tab width
It takes into account cornerWidth and calculates correct value with RTL.

For the last time now hopefully.
2018-02-06 17:40:31 +01:00
David Rosca
c506283534
ComboTabBar: Disable tab drag bounds with RTL 2018-02-06 17:40:27 +01:00
David Rosca
977b45505c
PluginProxy: Remove QZ_REGISTER_* macros 2018-02-06 17:40:14 +01:00
David Rosca
43fa19121a
VerticalTabs: Make it possible to change height of pinned tab view
Same as TabTreeView, TabListView uses font metrics to calculate height.
Themes can change it with "font-size" property.
2018-02-06 17:39:52 +01:00
David Rosca
6c94d40187
BrowserWindow: Make Ctrl+PgUp/Down shortcuts use tab bar order 2018-02-06 17:39:47 +01:00
David Rosca
beeb68f7a6
TabMruModel: Ignore moving already first index 2018-02-06 17:39:42 +01:00
David Rosca
71f5d72a65
Move last tab tracking from TabWidget to TabBar 2018-02-06 17:39:37 +01:00
David Rosca
0f2728e49e
BrowserWindow: Always create tab models in initialization 2018-02-06 17:39:33 +01:00
David Rosca
94e6b98450
TabModel: Check return value of beginMoveRows 2018-02-06 17:39:26 +01:00
David Rosca
b933e87c99
Add TabMruModel
Sorts tabs in most recently used order.
2018-02-06 17:39:05 +01:00
David Rosca
6aee383a9c
VerticalTabs: Add Tab Tree context menu with tree actions
With Close Tree + Expand/Collapse all actions.
2018-02-05 16:49:38 +01:00
David Rosca
67e82e8923
TabTreeModel: Fix reordering tabs in the same tree with drag&drop 2018-02-05 16:49:31 +01:00
David Rosca
5e2af2ff66
VerticalTabs: Add support for creating groups
Long press on New Tab button will show menu with existing groups
and clicking on group will open new tab inside this group.
2018-02-05 16:49:24 +01:00
David Rosca
e74f18e8e8
History: Only save whitelisted schemes 2018-02-05 16:48:19 +01:00
David Rosca
e28b2048df
NetworkManager: Add support for "extension://" scheme 2018-02-05 16:47:46 +01:00
David Rosca
ea432a7de7
TabContextMenu: Add Options flags 2018-02-05 16:44:44 +01:00
David Rosca
825ee7ea96
Revert "TabContextMenu: Require only WebTab in constructor"
This broke context menu on empty tab bar space.

This reverts commit e791e77045b572af02d27f7a15ae082a4a13814c.
2018-02-05 16:44:39 +01:00
David Rosca
408b2ffad6
TabWidget: Add public webTab method
Also cleanup tabbedwebview.h includes.
2018-02-05 16:44:23 +01:00
David Rosca
fbbe3c6385
TabTreeModel: Ignore dropping child on its parent 2018-02-04 17:23:52 +01:00
David Rosca
aa332a4ed2
VerticalTabs: Reject drop on last row in pinned tabs model
It seems like a weird behavior in Qt because source model receives
drop on last index (in filter model) as drop on last index in source
model instead of filter model and it can't make a right decision.

Source model:
| 1 | 2 | 3 | 4 | 5 | 6 |
Filter model:
| 1 | 2 | 3 | 4 |
                ^
Dropping here propagates to source model as drop on index 7, not 5.

Let's just ignore this case to workaround it.
2018-02-04 17:23:46 +01:00
David Rosca
9eccf4fae3
TabModel: Rework drag&drop logic
Use QMimeData subclass to safely pass pointers.
Only allow to drop one tab at a time and disable drop action
when not possible. Allow to move tabs to other windows, with the
exception of tabs with children.
2018-02-04 17:23:06 +01:00
David Rosca
ca15006145
TabWidget: Track last WebTab instead of only index 2018-02-04 17:22:05 +01:00
David Rosca
dbd4e75941
VerticalTabs: Save expanded state in session 2018-02-04 17:22:00 +01:00
David Rosca
095e0ff517
WebTab: Add sessionData property 2018-02-04 17:21:57 +01:00
David Rosca
62264501e2
VerticalTabs: Switch tabs with mouse wheel
But only when there is no scrollbar in normal tabs view.
2018-02-04 17:21:54 +01:00
David Rosca
bbbe136346
VerticalTabs: Handle Ctrl+Tab switching tabs in tree order 2018-02-04 17:21:50 +01:00
David Rosca
ee2e1e9f78
TabWidget: Add BrowserWindow accessor 2018-02-04 17:21:47 +01:00
David Rosca
0bf881c168
Plugins: Hook key events in TabWidget 2018-02-04 17:21:42 +01:00
David Rosca
25d70e557a
VerticalTabs: Add Simple theme 2018-02-04 17:21:38 +01:00
David Rosca
7bb2b5dfed
VerticalTabs: Cleanups in Windows theme 2018-02-04 17:21:34 +01:00
David Rosca
b24041cb8e
LocationCompleterDelegate: Don't use selected icon mode for favicons
Same reason as previous commit
2018-02-04 17:21:31 +01:00
David Rosca
ca60f9a300
VerticalTabs: Don't use selected icon mode for favicons
On some styles (particularly QStyleSheetStyle) it returns pixmap
drawn onto background color.
2018-02-04 17:21:26 +01:00
David Rosca
4db34d4645
VerticalTabs: Remove custom properties for colors 2018-02-04 17:21:23 +01:00
David Rosca
06621a6f8a
VerticalTabs: Add windows theme 2018-02-04 17:21:15 +01:00
David Rosca
2c731111d7
VerticalTabs: Add support for changing themes 2018-02-04 17:21:12 +01:00
David Rosca
2c60d8bcfb
VerticalTabs: Add option to append/prepend new child tabs 2018-02-04 17:21:08 +01:00
David Rosca
e981f638de
VerticalTabs: Hide pinned tabs view when empty 2018-02-04 17:21:04 +01:00
David Rosca
f3d5f27cdf
VerticalTabs: Set Qt::NoFocus policy
Fixes some styles painting unwanted focus indicator.
2018-02-04 17:21:01 +01:00
David Rosca
8c96660852
VerticalTabs: Add new tab button 2018-02-04 17:20:56 +01:00
David Rosca
faec2d2b20
VerticalTabs: Fix object names for close button 2018-02-04 17:20:52 +01:00
David Rosca
ac9830381d
VerticalTabs: Add option to indentate background of items 2018-02-04 17:20:49 +01:00
David Rosca
e5a55a6c69
VerticalTabs: Fix rendering negative margins when updating single index 2018-02-04 17:20:44 +01:00
David Rosca
79d116d07c
TabTreeDelegate: Make it stylable on which items to show close button 2018-02-04 17:20:40 +01:00
David Rosca
36eb1f5523
VerticalTabs: Fix QSS styling issues
It is now possible to replicate tabbar from Windows theme.
2018-02-04 17:20:28 +01:00
David Rosca
ad387fe712
TabTreeView: Draw real tabbar close button and make it stylable 2018-02-04 17:20:17 +01:00
David Rosca
6985a8567a
RestoreManager: Validate all elements in session file
Session file can be corrupted or have data from unsupported version
inside the file.
2018-02-04 17:20:10 +01:00
David Rosca
e6b220a87a
WebTab: Add option to prepend child tabs instead of appending 2018-02-04 17:20:00 +01:00
David Rosca
81e86d4a3c
BookmarksToolbar: Fix setting correct minimum height
Closes #2588
2018-02-04 17:19:39 +01:00
David Rosca
4ad6d6cda1
TabTreeModel: Only sync top-level tabs when closing window
Otherwise reordering tabs is too distracting when tabbar is visible.
2018-02-04 17:18:39 +01:00
David Rosca
ae4d971d1a
BrowserWindow: Add aboutToClose signal 2018-02-04 17:18:35 +01:00
David Rosca
05bb94adfe
VerticalTabs: Correctly delete models when switching view type 2018-02-04 17:18:31 +01:00
David Rosca
68c30781bb
VerticalTabs: Show tooltips for tabs 2018-02-04 17:18:27 +01:00
David Rosca
e9f3679bb1
TabTreeModel: Sync top-level tabs with main tabbar
This way the order of top-level tabs is also preserved in session.
2018-02-04 17:18:23 +01:00
David Rosca
a1101c129c
VerticalTabs: Move scrollbar to the left 2018-02-04 17:18:19 +01:00
David Rosca
805c23ddb9
VerticalTabs: Expand subtree when new tab is inserted 2018-02-04 17:18:13 +01:00
David Rosca
072d3c28ee
VerticalTabs: Show pinned tabs in horizontal list above normal tabs 2018-02-04 17:18:01 +01:00
David Rosca
801c1845b5
Cleanups in TabTreeView 2018-02-04 17:16:19 +01:00
David Rosca
fc9f88ae67
VerticalTabs: Set scrolling per pixel 2018-02-04 17:15:57 +01:00
David Rosca
ebd2b6da51
VerticalTabs: Automatically scroll to current tab 2018-02-04 17:15:50 +01:00
David Rosca
66023d2dba
Add VerticalTabs plugin 2018-02-04 17:15:23 +01:00
David Rosca
af95dd14e2
WebTab: Fix updating isCurrentTab in attach 2018-02-04 16:59:23 +01:00
David Rosca
16c7af63b6
BrowserWindow: Add accessor for TabModel 2018-02-04 16:58:43 +01:00
David Rosca
9f4ac24cf8
TabBar: Initialize pinned tab width from real tab
Calculates the padding between tab border and icon from tabRect
instead of using style pixel metric which was oftentimes incorrect.

Pinned tabs should now have correct size and icon be perfectly centered
with all possible widget and qss styles.
2018-02-04 16:58:35 +01:00
David Rosca
01c5397fef
WebTab: Don't set "Loading..." tab text
Instead improve page title from url when title is empty
2018-02-04 16:58:18 +01:00
David Rosca
0c7245fa9f
TabContextMenu: Require only WebTab in constructor 2018-02-04 16:58:08 +01:00
David Rosca
29735b24c8
WebTab: Add makeCurrentTab and closeTab methods 2018-02-04 16:58:01 +01:00
David Rosca
349f6b9c32
TabWidget: Fix emitting tabMoved when pinning tabs 2018-02-04 16:57:49 +01:00
David Rosca
188082b690
TabModel: Add AudioPlayingRole and AudioMutedRole 2018-02-04 16:56:04 +01:00
David Rosca
47be65f903
TabIcon: Make static image data public 2018-02-04 16:47:25 +01:00
David Rosca
59dbfc1f48
TabTreeModel: Reset model when source resets 2018-01-31 21:06:33 +01:00
David Rosca
ebaab19f88
TabWidget: Correctly emit tabRemoved when detaching tab 2018-01-31 21:05:56 +01:00
David Rosca
43e472e50e
TabBar: Disallow detaching tab when there is only one tab in the only window
Otherwise it would close the last window which would quit the app.
2018-01-31 21:05:48 +01:00
David Rosca
dc8ddb03c1
TabTreeModel: Don't allow to move pinned tabs 2018-01-31 21:05:41 +01:00
David Rosca
85def54d3c
WebTab: Preserve order of child tabs in session file 2018-01-31 21:05:30 +01:00
David Rosca
4bb75de25c
WebTab: Fix removing from existing parent in addChildTab 2018-01-31 21:05:21 +01:00
David Rosca
1c7288204c
ProfileManager: Never allow to use session from newer profile version
Always make a backup instead of possibly corrupting it.
2018-01-31 21:04:54 +01:00
David Rosca
fa19d97dc4
WebTab: Don't add pinned tabs to tab tree 2018-01-31 21:03:11 +01:00
David Rosca
e57fb65c95
Add TabTreeModel
This model orders tabs in "Tree Style Tabs" fashion.
2018-01-31 21:03:06 +01:00
David Rosca
57b605e4e0
TabModel: add CurrentTabRole and LoadingRole 2018-01-31 21:01:36 +01:00
David Rosca
a8bda61f3e
TabModel: Remove ParentTabRole and ChildTabsRole 2018-01-31 21:00:20 +01:00
David Rosca
2b994920ad
WebTab: Fix detaching completer and site icon
Fixes crash when detaching tab and closing the originating window.
2018-01-31 20:59:32 +01:00
David Rosca
67973d704d
WebTab: Add addChildTab method
Also fix detaching from parent/child tabs and add autotest.
2018-01-31 20:58:36 +01:00
David Rosca
1b473ac580
Detach WebTab when removing tab
That way tab is removed from parent and children before
it is removed from tabbar.
2018-01-31 20:56:48 +01:00
David Rosca
72c4b605a5
TabModel: Implement drag&drop 2018-01-31 20:56:39 +01:00
David Rosca
8fe53f1c2c
WebTab: Correctly reparent children in destructor 2018-01-31 20:55:52 +01:00
David Rosca
33b2f0f908
WebView: Try requestedUrl when url is empty in title() 2018-01-31 20:55:44 +01:00
David Rosca
61299c89b6
WebTab: Save parent tab index in session file 2018-01-31 20:55:35 +01:00
David Rosca
5b7653188b
Track parent tab for WebTab when opening new tabs 2018-01-31 20:55:25 +01:00
David Rosca
e44877d4c7
WebTab: Add parentTab and childTabs properties 2018-01-31 20:54:59 +01:00
David Rosca
2377503517
Add TabModel 2018-01-31 20:54:50 +01:00
David Rosca
f8531ac632
MainMenu: Fix null session manager warnings in test mode 2018-01-31 20:45:32 +01:00
David Rosca
0d71069122
LocationBar: Don't suggest to search for javascript: scheme 2018-01-31 20:45:17 +01:00
David Rosca
a89fcf9002
GM_Manager: Remove no longer needed doDownloadScript helper
downloadScript is now always called from main thread again.
2018-01-31 20:45:07 +01:00
David Rosca
f9feab7d9d
GM_Script: Download icon and display it in settings 2018-01-31 20:44:33 +01:00
David Rosca
4283260504
GM_Script: Fix support for @noframes 2018-01-31 20:44:09 +01:00
David Rosca
b5b77e7932
GM_Script: Add iconUrl property 2018-01-31 20:43:57 +01:00
David Rosca
1c4937b64c
LocationBar: Fix transforming text to url when searching is disabled
Closes #2578
2018-01-31 20:43:28 +01:00
David Rosca
056d5ec3aa
Autotests: Clean test profile directory before each test 2018-01-29 00:24:09 +01:00
David Rosca
069c10c1f1
BrowserWindow: Don't show window in test mode 2018-01-29 00:21:49 +01:00
David Rosca
662f935f68
Fix build with older GCC 2018-01-29 00:21:31 +01:00
David Rosca
f36799a8da
WebView: Correctly transfer loading signals when changing page 2018-01-29 00:21:11 +01:00
David Rosca
1fe7f0c232
Correctly handle possibility that page changes in WebView 2018-01-28 22:41:08 +01:00
David Rosca
b5d872f64e
TabContextMenu: Add Load Tab action 2018-01-28 22:40:46 +01:00
David Rosca
13e81d0b21
LocationBar: Don't allow to load url when tab is not restored
This can currently happen only when unloading tab
2018-01-28 22:40:30 +01:00
David Rosca
2d01a6d092
WebTab: Set new WebPage when unloading tab
This way it is not needed to have special handling for unloading
in WebTab and it also kills the QtWebEngineProcess entirely.
2018-01-28 22:40:17 +01:00
David Rosca
9b3f56093e
TabbedWebView: Rename setWebPage -> setPage
Fixes hovered links not being shown in statusbar for target=_blank
tabs as WebPage is setting new page of webview with setPage.
2018-01-28 22:40:04 +01:00
David Rosca
deca7f7399
LocationBar: Also whitelist data: scheme for loading urls 2018-01-28 15:50:24 +01:00
David Rosca
ae3aebc06c
Preferences: Always show Password Manager options
Show Password Manager options even when storing passwords on sites
is disabled as Password Manager still works (it will complete already
saved passwords).
2018-01-28 15:48:31 +01:00
David Rosca
89f3b18df3
AutoFill: Add option to disable auto complete on sites
This is particularly useful with Encrypted backend as it will
only prompt for password when you actually want to fill passwords.
2018-01-28 15:47:57 +01:00
David Rosca
e719a959d4
AutoFill: completePage now returns only list of usernames 2018-01-28 15:47:10 +01:00
David Rosca
fa8fe079cb
SqlDatabase: Correctly create new connections for threads
In Qt 5.11 QSqlDatabase can be accessed only from thread where
it was created, so it is no longer possible to clone it from other
threads.
2018-01-28 12:56:32 +01:00
David Rosca
2a22f61dec
AutoFill: Make it possible to request only usernames from backend 2018-01-28 12:53:59 +01:00
David Rosca
c2d7e1eb48
SiteIcon: Set Qt::NoFocus focus policy 2018-01-28 12:53:03 +01:00
David Rosca
310f3cfde7
ButtonWithMenu: Fix down state handling 2018-01-28 12:52:46 +01:00
David Rosca
00e2af4164
WebSearchBar: Fix typo "comobobox" -> "combobox" 2018-01-28 12:52:37 +01:00
David Rosca
723aee6a33
MainApplication: Load private.css style from theme in private browsing
Closes #2575
2018-01-28 12:52:21 +01:00
David Rosca
d20d491e52
Filter duplicated plugins in falkon:config page
Also show plugin filename
2018-01-28 12:52:13 +01:00
David Rosca
e6edae7d63
Show all data paths in falkon:config page
Also show Extensions paths.
2018-01-28 12:52:00 +01:00
David Rosca
53568d4f3f
Set bigger maximum width for falkon:about and falkon:config pages 2018-01-28 12:51:47 +01:00
David Rosca
5bcffae242
LocationCompleter: Show bookmark as first suggestion when found with keyword 2018-01-27 17:36:13 +01:00
David Rosca
e23edd7420
WebPage: Improve createWindow focus issue workaround 2018-01-27 17:36:08 +01:00
David Rosca
538299116f
LocationCompleterDelegate: Only show Visit action on hovered/active items 2018-01-27 17:36:04 +01:00
David Rosca
0cf48359f9
LocationCompleterDelegate: Draw search engine icon for search shortcuts 2018-01-27 17:36:00 +01:00
David Rosca
8208d7ceda
LocationBar: Fix setting search engine for Search action 2018-01-27 17:35:55 +01:00
David Rosca
51b4a39399
LocationCompleter: Allow to force loading typed text with Shift+Enter
Allow to ignore the suggested search action and instead just
try to load the typed text as url.
2018-01-27 17:35:43 +01:00
David Rosca
eae11b9a9a
LocationBar: Only allow whitelisted schemes to be loaded as url 2018-01-27 17:35:27 +01:00
David Rosca
958fc63f01
LocationBar: Only allow spaces in url query
Fixes correctly searching for "site:website.com searchterm"

BUG: 389491
2018-01-27 11:16:33 +01:00
David Rosca
2e7436c741
LocationBar: Handle url/search resolution in loadAction instead of WebView::load 2018-01-27 11:15:45 +01:00
David Rosca
0af95e3b1f
MainApplication: Add support for starting in test mode 2018-01-27 10:56:02 +01:00
David Rosca
c2a730e9f4
LocationCompleter: Fix removing search shortcut from search string
Closes #2573
2018-01-27 10:52:41 +01:00
David Rosca
b3d2bd1f5f
DownloadItem: Fix calculating remaining time
It is still not correct as it uses QTime which can only represent
24 hour timeframe.
2018-01-27 10:52:32 +01:00
David Rosca
d9c494b8f7
IconProvider: Replace favicon entry in cache if already exists 2018-01-27 10:52:17 +01:00
David Rosca
486b6b9463
LocationCompleterView: Make PageUp/Down skip over 5 entries
Instead of default behavior (one screen = 12 entries) which is too much.
2018-01-27 10:52:12 +01:00
David Rosca
a0472177c2
LocationCompleterView: Make the search button area into QFrame 2018-01-27 10:52:07 +01:00
Jimi Huotari
addbb21c77
Fix build against Qt 5.11 2018-01-26 12:59:03 +01:00
David Rosca
8d06eee009
LocationCompleterView: Fix incorrect resize in some cases 2018-01-26 12:58:12 +01:00
David Rosca
5ee0623d32
LocationCompleter: Fix popup opening with suggestions after it was closed 2018-01-26 12:58:08 +01:00
David Rosca
b9294e02bb
LocationBar: Don't show favicon in site icon
Most of the sites are https nowadays, for which favicon is not
displayed, so there is no more a reason to show favicon in site
icon in locationbar.
Favicon is still displayed in tab icon.

Closes #918
2018-01-26 12:58:04 +01:00
David Rosca
948e623f9e
LocationBar: Show search icon as site icon when completion popup is open 2018-01-26 12:57:59 +01:00
David Rosca
4ad5900604
LocationCompleter: Call closePopup+clearCompletion also in indexActivated 2018-01-26 12:57:53 +01:00
David Rosca
3469d5b114
LocationCompleterView: Always resize on first adjustSize after show 2018-01-26 12:57:48 +01:00
David Rosca
3ec4d96f74
LocationCompleter: Properly close popup when showing search engines dialog 2018-01-26 12:57:44 +01:00
David Rosca
52076009e0
LocationComplterRefreshJob: Set HistoryRole for most visited completions
Closes #2570
2018-01-26 12:57:39 +01:00
David Rosca
99ceda4324
LocationCompleterView: Delay resizing popup to reduce flicker 2018-01-26 12:57:34 +01:00
David Rosca
09ee6007e9
LocationCompleter: Handle creating LoadRequest
Instead of just passing string that LocationBar should somehow
parse and decide what to do (which may not correspond to what was
indicated in completion entry), make the LocationCompleter create
it with all needed info and pass it to LocationBar to load.

This fixes issue where search completions may have been loaded
with different search engine when suggestion starts with search
engine shortcut (which would also get cut in the search).

This also removes the possibility to open new window from completer
with activating entry with Shift key.
2018-01-26 12:57:30 +01:00
David Rosca
8d45c910bf
LocationBar: Add LoadAction
It represents action to be taken after submitting text in LocationBar.
Use it from LocationCompleterDelegate instead of duplicating the logic.

This fixes showing incorrect indication when typing bookmark keyword
and when search suggestions begins with search engine shortcut.
2018-01-26 12:57:22 +01:00
David Rosca
4140aae6d2
LocationCompleterView: Add buttons with all search engines 2018-01-26 12:56:50 +01:00
David Rosca
fe8eb7f122
LocationCompleterView: No need to use QPointer for SearchEnginesDialog 2018-01-26 12:55:57 +01:00
David Rosca
b618323a5e
LocationCompleterView: Add button to open search engine settings
Closes #2568
2018-01-26 12:55:52 +01:00
David Rosca
d443a69d8f
LocationCompleterView: Fix Shift+Tab handling 2018-01-26 12:55:46 +01:00
David Rosca
11e2ff168e
LocationCompleterView: Change into QWidget 2018-01-26 12:55:29 +01:00
David Rosca
bb76281174
LocationCompleterDelegate: Don't make link color lighter 2018-01-26 12:54:52 +01:00
David Rosca
b0c2a09f94
LocationCompleterDelegate: Use smaller font for link text
Instead of using bigger font for title, use normal font size
for title and smaller font for link.
2018-01-26 12:54:47 +01:00
l10n daemon script
7b0d1abdc9 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-01-25 05:05:01 +01:00
David Rosca
4b5bae697a NavigationBar: Show AdBlock icon in toolbar by default 2018-01-24 20:46:40 +01:00
David Rosca
32e7ec1826 TabManager: Port icon to AbstractButtonInterface
It is now available from both NavigationBar and StatusBar
2018-01-24 20:37:21 +01:00
David Rosca
cc55c0ad02 FlashCookieManager: Port icon to AbstractButtonInterface
It is now available from both NavigationBar and StatusBar
2018-01-24 20:37:15 +01:00
David Rosca
7265c30aa8 Add Downloads, AdBlock and GreaseMonkey buttons to statusbar 2018-01-24 20:37:10 +01:00
David Rosca
24fa384d23 StatusBar: Add support for adding new buttons 2018-01-24 20:37:04 +01:00
David Rosca
444884bee9 Rename StatusBarMessage -> StatusBar 2018-01-24 20:36:34 +01:00
Razi Alavizadeh
77cb017e1d TabManager: Remove redundant condition 2018-01-24 20:34:40 +01:00
David Rosca
19bb93a4c5 MainApplication: Load UserAgentManager settings before NetworkManager
NetworkManager depends on UserAgentManager being loaded.

Fixes user agent settings not being applied on startup.
2018-01-24 20:34:34 +01:00
David Rosca
41775c3a20 Replace some QupZilla leftovers with Falkon 2018-01-24 17:15:26 +01:00
David Rosca
f315b0e3dc Remove old translations 2018-01-24 17:10:36 +01:00
David Rosca
bdd18ced1e SpeedDial no longer uses Faenza icons 2018-01-24 15:41:45 +01:00
4292ecd465 TabManager: Add Unload checked tabs action (#2566) 2018-01-24 15:15:09 +01:00
David Rosca
ba75905134 TabContextMenu: Add Unload Tab action
Closes #2563
2018-01-24 15:15:03 +01:00
David Rosca
4e39cad310 SBI_JavaScriptIcon: Fix temporarily enabling/disabling JavaScript
Closes #2560
2018-01-24 15:14:50 +01:00
David Rosca
b0117c799b WebPage: Add navigationRequestAccepted signal 2018-01-24 15:14:13 +01:00
David Rosca
81d7917ade SessionManager: Use completeBaseName for session names 2018-01-24 15:14:06 +01:00
David Rosca
7b0aa61975 ProfileManager: Avoid losing session when loading profile from newer app version
Backup session in session manager named "backup-$version".

See #2520
2018-01-24 15:13:43 +01:00
David Rosca
825fc88c40 BookmarksToolBarButton: Don't change height in sizeHint 2018-01-24 15:13:10 +01:00
David Rosca
76116f636c BookmarksToolbar: Don't set fixed height for toolbar
Closes #2561
2018-01-24 15:12:47 +01:00
David Rosca
6f20d5e511 Move build config options to config.h
Also remove NO_SYSTEM_DATAPATH and DISABLE_UPDATES_CHECK
2018-01-24 14:26:13 +01:00
David Rosca
d1502ba68e Use lowercase f in reverse domain name 2018-01-24 11:56:25 +01:00
l10n daemon script
20bc412317 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-01-23 05:11:58 +01:00
l10n daemon script
fc38215e2b SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-01-21 04:59:16 +01:00
David Rosca
fdeb350746 Plugins: Remove option to disable loading extensions
It can now only be globally disabled with --no-extensions switch.
It is still possible to manually disable all extensions, only the
global option to disable all extensions were removed.
2018-01-20 12:24:35 +01:00
David Rosca
d5608d823b Enable plugins by default also in portable mode
AdBlock now needs plugins enabled to be loaded.
2018-01-20 12:24:35 +01:00
l10n daemon script
f1a3b7643e SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-01-20 04:54:01 +01:00
David Rosca
f7cbab1562 LocationCompleter: Don't highligh search string in visit/search item 2018-01-16 12:52:04 +01:00
David Rosca
7ba18669a2 LocationCompleter: Update original text also without inline completions enabled
Closes #2550
2018-01-16 12:51:39 +01:00
David Rosca
087c98343e Remove compatibility code with Qt older than 5.9 2018-01-14 09:30:15 +01:00
David Rosca
ba88aa67a1 WebPage: Remove workaround for crash in setHtml 2018-01-14 09:29:00 +01:00
David Rosca
4d58781c13 WebPage: Add workaround for broken load signals in QtWebEngine 5.10
Closes #2479
2018-01-14 09:28:53 +01:00
Konstantin Savun
1daa0b93e6 SpeedDial (#2543) 2018-01-13 16:43:04 +01:00
David Rosca
0b1d9e0b16 TabIcon: Don't resize to (0,0) when hiding
ComboTabBar depends on tab button position for calculating
drag offset and it breaks with some themes that returns invalid
subElementRect for buttons with (0,0) size.
2018-01-13 16:42:54 +01:00
David Rosca
cf5831d1db ComboTabBar: Ignore buttons that returns invalid element rect in dragOffset
Closes #2546
2018-01-13 16:42:35 +01:00
David Rosca
b21e2634bc ComboTabBar: Only reset dragInProgress on left mouse button release 2018-01-13 16:42:30 +01:00
David Rosca
54bad20590 ComboTabBar: Fix division by zero when icon pixmap is null 2018-01-13 16:42:24 +01:00
David Rosca
4f0c30c5c7 Add support for window.print()
Closes #2509
2018-01-13 16:42:03 +01:00
David Rosca
e73bf22aa9 WebView: Call acceptNavigationRequest before loading urls
Closes #2544
2018-01-13 10:15:30 +01:00
David Rosca
a8dcf176cf Fix merge issues 2018-01-11 20:51:34 +01:00
David Rosca
c3b2a9c6a7 SpeedDial: Fix updating background after selecting image 2018-01-11 20:51:34 +01:00
David Rosca
d7c4560f21 Fix indentation in speeddial.html 2018-01-11 20:51:34 +01:00
Konstantin Savun
5b45baf630 Style Update [SpeedDial+SpeedDial:Icons] (#2539)
SpeedDial: Style update
2018-01-11 20:51:21 +01:00
David Rosca
692d55fff7 AdBlock: Move remaining code to adblock subdir 2018-01-11 20:03:14 +01:00
David Rosca
3608b48f6e BrowserWindow: Simplify fullscreen handling 2018-01-11 19:58:13 +01:00
David Rosca
76e0400dd1 AboutDialog: Remove special handling for Windows 2018-01-11 19:57:30 +01:00
David Rosca
3833447767 BrowserWindow: Fix restoring maximized state after leaving fullscreen 2018-01-11 19:57:17 +01:00
David Rosca
e0e62c6e81 SearchEngines: Add back support for window.external.AddSearchProvider 2018-01-11 19:57:10 +01:00
David Rosca
6ecc9f616f ExternalJsObject: Don't export search engine functions
Our window.external is no longer available to web pages so it has no effect.
2018-01-11 19:56:31 +01:00
David Rosca
195d3f2b93 TabWidget: Reset zoom when resetting tab when closing last tab
Closes #2540
2018-01-11 19:56:19 +01:00
David Rosca
d0587e9f6c DesktopNotification: Don't change window opacity 2018-01-11 19:56:04 +01:00
David Rosca
059889ecfe BrowserWindow: Don't show "Empty Page" in window title 2018-01-11 19:55:44 +01:00
David Rosca
7dfce692d7 WebPage: Don't force enable JavaScript on file: scheme 2018-01-11 19:55:07 +01:00
David Rosca
4bf85ee3cb WebPage: Register QWebChannel on isolated ApplicationWorld
This way scripts on pages don't have access to it.
Exception is qupzilla: scheme as internal pages requires the bridge.

GreaseMonkey userscripts now runs on ApplicationWorld too. This fixes
userscript that depend on script world being isolated from main page world.
Tested with 4ChanX + OneeChan.
2018-01-11 19:55:01 +01:00
David Rosca
b291c27d4e AdBlockDialog: Fix icon path in Options button 2018-01-11 19:54:24 +01:00
David Rosca
c3e4d80010 AdBlock: Load blocked page as data url instead of qupzilla:adblock
AdBlock is now completely separate main app code.
2018-01-11 19:52:29 +01:00
David Rosca
f16580dc05 AdBlockPlugin: Change into real internal plugin 2018-01-11 19:51:47 +01:00
David Rosca
9bff0f1b5c Plugins: Remove no longer used Click2Flash settings 2018-01-11 19:51:20 +01:00
David Rosca
7143e1130c Update themes
- use window background instead of white for AboutDialog background
- use new style for desktop notifications
- set pinned tab width in Windows theme
- remove styling of Download Manager
2018-01-11 19:50:58 +01:00
David Rosca
da9e873d2c AboutDialog: Remove frame from QTextBrowser 2018-01-11 19:50:46 +01:00
David Rosca
5cd580d284 ComboTabBar: Update moving tab contents during drag
Unlike QTabBar, ComboTabBar now redraws contents of moving tab.
2018-01-11 19:50:31 +01:00
David Rosca
d7146519b4 ComboTabBar: Fix draggedTabRect returning rect of current instead of pressed index 2018-01-11 19:50:26 +01:00
David Rosca
b2de2a00f4 ComboTabBar: Fix tabPixmap with high-dpi 2018-01-11 19:50:23 +01:00
David Rosca
675bc0514f WebPage: Force enable JavaScript for all non http/https urls 2018-01-11 19:50:18 +01:00
David Rosca
287631d37b WebPage: Remove setJavaScriptEnabled method 2018-01-11 19:50:13 +01:00
David Rosca
6b90851d8c DesktopNotifications: Set app icon to preview notification
Closes #1859
2018-01-11 19:49:57 +01:00
David Rosca
80eb072bb1 NavigationBarToolButton: Prevent down state flickering when showing popup 2018-01-11 19:49:17 +01:00
David Rosca
516bd92089 TabBar: Allow to change width of tabs using style sheets
It can be set in themes or in userChrome.css as in example.

/* userChrome.css */
TabBarTabMetrics
{
    qproperty-normalMaxWidth: 250;
    qproperty-normalMinWidth: 150;
    qproperty-activeMinWidth: 150;
    qproperty-overflowedWidth: 150;
    qproperty-pinnedWidth: 35;
}
2018-01-11 19:49:12 +01:00
David Rosca
bfc3b0bf4a Load userChrome.css Qt style sheet from profile directory
Allows to fine-tune interface without directly modifying themes.
2018-01-11 19:49:07 +01:00
David Rosca
95921692be ComboTabBar: Apply padding adjustment to all tabs 2018-01-11 19:49:03 +01:00
David Rosca
e21e147bbb NavigationBarConfigDialog: Fix restore to defaults action 2018-01-11 19:48:59 +01:00
David Rosca
21bd073482 TabBar: Increase drag start distance to not disturb tab moving
Also remove no longer needed timer to show add tab button.
2018-01-11 19:48:55 +01:00
David Rosca
23f84abc3b NavigationBar: Correctly filter invalid layout ids 2018-01-11 19:48:50 +01:00
David Rosca
1f9599aac7 Add DownloadsButton to navigation toolbar
It is visible only when there are items in download manager and shows
number of active downloads in badge text.
2018-01-11 19:48:43 +01:00
David Rosca
0e41fd0785 AbstractButtonInterface: Add support for hiding tool button 2018-01-11 19:48:06 +01:00
David Rosca
238a06874d AbstractButtonInterface: Allow delayed hide of popup 2018-01-11 19:48:01 +01:00
David Rosca
1595587945 ThemeManager: Set proper icon size for QListWidget 2018-01-11 19:46:56 +01:00
David Rosca
df632c7ced NavigationBar: Only reload layout when settings changes 2018-01-11 19:46:51 +01:00
David Rosca
e33174100e NavigationBar: Bring back exit fullscreen button
This time it is configurable and hidden by default.
2018-01-11 19:46:44 +01:00
David Rosca
50d1bb6d96 ComboTabBar: Add possibility to change base color from stylesheets 2018-01-11 19:46:33 +01:00
David Rosca
49ebfa3f5d TabBar: Don't hide add tab button when moving tabs 2018-01-11 19:46:06 +01:00
David Rosca
68ed91c909 ComboTabBar: Block moving tabs outside of tabbar 2018-01-11 19:46:03 +01:00
David Rosca
26a2b55c24 ComboTabBar: Don't call QTabBar paintEvent implementation during drag
Implement udpating geometry of moving tab.
2018-01-11 19:45:58 +01:00
David Rosca
8ea8b56f27 ComboTabBar: Add draggedTabRect method 2018-01-11 19:45:46 +01:00
David Rosca
84c4f0ff4d TabBar: Don't show context menu when dragging tab
Otherwise it breaks tabbar state.
2018-01-11 19:45:41 +01:00
David Rosca
78383c007e TabBar: Always send mouse events to ComboTabBar
It needs every event to correctly update dragInProgress property.
2018-01-11 19:45:36 +01:00
David Rosca
4e988ac8f2 ComboTabBar: Fixes in drawing tabs with drag offset
m_dragInProgress is now only true when dragging tab, not during
the tab sliding to target position animation.
2018-01-11 19:45:32 +01:00
David Rosca
6a48f4d862 TabBar: Disable greying out not restored tabs
It doesn't really work with some themes and there doesn't seem
to be easy way to make the text always clearly visible.
2018-01-11 19:45:27 +01:00
David Rosca
7adda247dc NavigationBar: Make sure search bar doesn't have null size in splitter 2018-01-11 19:45:23 +01:00
David Rosca
670e06cbc6 Change back "Sidebars" -> "Sidebar" 2018-01-11 19:44:59 +01:00
David Rosca
4c7eaf0f9f ComboTabBar: Add support for tabPadding property
Workarounds bug where tabs have zero padding when styled using style
sheets.
2018-01-11 19:44:50 +01:00
David Rosca
e617f3f6ec ComboTabBar: Fix drop indicator position on last tab 2018-01-11 19:44:45 +01:00
David Rosca
679a5f0136 ComboTabBar: Also use our TabBarHelper drawing code when drag is in progress 2018-01-11 19:44:40 +01:00
David Rosca
5dfe6d862c NavigationBar: Clear current webview for all tool buttons
Fixes another crash similar to #2537
2018-01-11 19:44:35 +01:00
David Rosca
4dd67cfce6 LocationCompleter: Set BrowserWindow as transient parent 2018-01-11 19:44:30 +01:00
David Rosca
47ee7bfbca TabWidget: Set outside-tabbar property to both add tab buttons
It is now possible to exclusively distinguish both buttons.
2018-01-11 19:43:38 +01:00
David Rosca
7e8b2a103b ComboTabBar: Draw tab as only one in tabbar in tabPixmap 2018-01-11 19:43:33 +01:00
David Rosca
848a61440c TabWidget: Hide closed tabs button when there are no closed tabs 2018-01-11 19:42:46 +01:00
David Rosca
6806fa5405 AbstractButtonInterface: Use WebView property instead of WebPage
WebView of a tab will not change while WebPage may.

This also fixes crash when WebPage of WebView is changed. It can happen
eg. when opening new tab from page with target=_blank.

Closes #2537
2018-01-11 19:42:38 +01:00
David Rosca
f87c6897a0 WebPage: Always build nonblock js dialogs support
Can be enabled with QUPZILLA_ENABLE_JS_NONBLOCK_DIALOGS environment variable.
2018-01-11 19:41:49 +01:00
David Rosca
642d835d55 WebPage: Disable writing JavaScript warnings on stderr
Can be enabled with QUPZILLA_ENABLE_JS_OUTPUT environment variable.
2018-01-11 19:40:43 +01:00
David Rosca
ad3780e8df MainApplication: Sync settings after writing isRunning value
Fixes correctly detecting crashes during session restore.
2018-01-11 19:40:38 +01:00
David Rosca
e41b0edf0a Make qupzilla:restore working also with disabled JavaScript
Instead of temporarily enabling JavaScript, make the page functional
without it.
2018-01-11 19:40:31 +01:00
David Rosca
7ebd4039f8 AdBlock: Clear blocked requests for url when webpage is deleted 2018-01-11 19:38:37 +01:00
David Rosca
2f8c12ff1c WebTab: Fix tab with empty url but not empty history treating as invalid
Fixes possibility to lose tabs on session restore when closing window
right after it started to restore session (right after it was opened).
2018-01-11 19:38:23 +01:00
David Rosca
a45dbdc883 AdBlock: Track blocked requests on page
AdBlock icon now indicates number of blocked requests in badge text.
2018-01-11 19:38:14 +01:00
David Rosca
ba2ea9cb09 AbstractButtonInterface: Rename badgeLabelText -> badgeText 2018-01-11 19:36:54 +01:00
David Rosca
15a2afb4b6 NavigationBar: Add support for badge text in tool buttons 2018-01-11 19:36:49 +01:00
David Rosca
8827b1fb90 NetworkUrlInterceptor: Also guard adding/removing other interceptors 2018-01-11 19:36:44 +01:00
David Rosca
ee02d7716a AdBlockIcon: Remove unused popupBlocked 2018-01-11 19:36:39 +01:00
David Rosca
ff1171abf0 AdBlock: Make it as self-contained as possible
It could be easy now to turn it into real loadable plugin.
2018-01-11 19:36:32 +01:00
David Rosca
401e600821 AdBlock: Remove action from Tools menu 2018-01-11 19:34:52 +01:00
David Rosca
9c17277dd5 NetworkUrlInterceptor: Add proper locking 2018-01-11 19:34:45 +01:00
David Rosca
394221c5c0 AdBlockManager: Disable blocking on view-source scheme 2018-01-11 19:33:51 +01:00
David Rosca
0ff1ebc584 Fix build 2018-01-11 19:33:22 +01:00
David Rosca
3d171275d2 AdBlockIcon: Indicate AdBlock state on current page with icon state
Icon is inactive when AdBlock is disabled or can't run on current page.
2018-01-11 19:33:17 +01:00
David Rosca
74f45f6028 NavigationBarToolButton: Add support for inactive state 2018-01-11 19:33:13 +01:00
David Rosca
7f00b51fea Preferences: Remove last Navigation Toolbar option
It is now configurable directly from navigation toolbar.
2018-01-11 19:33:06 +01:00
David Rosca
2d698edd21 BrowserWindow: Fix crash when restoring geometry of fullscreen window 2018-01-11 19:32:59 +01:00
David Rosca
4a4d5b72ad Add NavigationBarConfigDialog
Allows to change layout of navigation bar and hide/show search bar.
2018-01-11 19:32:54 +01:00
David Rosca
4c494ebfb0 ComboTabBar: Improve drop indicator drawing
Code was taken and modified from KFilePlacesView
2018-01-11 19:31:41 +01:00
David Rosca
546e777c7c NavigationContainer: Also add bottom margin with tabs on top 2018-01-11 19:31:33 +01:00
David Rosca
8cbaa19dd1 Use correct margins from style in NavigationBar and BookmarksToolbar 2018-01-11 19:31:17 +01:00
David Rosca
09d2a2017d ButtonWithMenu: Don't show menu on right click 2018-01-11 19:31:00 +01:00
David Rosca
c5b59d1011 ToolButton: Disable showing button menu on right click by default 2018-01-11 19:30:05 +01:00
David Rosca
23279f6e10 GreaseMonkey: Move icon from statusbar to navigationbar as tool button 2018-01-11 19:29:35 +01:00
David Rosca
0cbbd197ca AdBlockIcon: Move from statusbar to navigationbar as tool button 2018-01-11 19:29:09 +01:00
David Rosca
6824ea17f2 NavigationBar: Add support for adding additional tool buttons 2018-01-11 19:28:32 +01:00
David Rosca
c0ac5ce0a2 BrowserWindow: Use QActionGroup for encoding menu 2018-01-11 19:26:06 +01:00
David Rosca
8eeba9e1df SideBarManager: Use QActionGroup for sidebars menu 2018-01-11 19:26:00 +01:00
David Rosca
0b8a693bca NavigationBar: Add Tools button
It now contains toolbars and sidebars menus and configure
action that doesn't work yet.
2018-01-11 19:25:54 +01:00
David Rosca
65d1493f0a Fix closing tabs - regression from last commits
Closes #2534
2018-01-11 19:25:48 +01:00
David Rosca
d380d54ef8 NavigationBar: Add support for loading layout from config
There is no ui to configure it for now.
2018-01-11 19:25:41 +01:00
David Rosca
2e7a77a6b4 NavigationBar: Remove exit fullscreen button 2018-01-11 19:24:58 +01:00
David Rosca
54282af88f ClosedWindowsManager: Only save last 3 windows in session file
Prevents growing session file indefinitely.
2018-01-11 19:24:07 +01:00
David Rosca
d1d99e3b71 PopupWindow: Add margins around locationbar and line between webview 2018-01-11 19:24:00 +01:00
David Rosca
fa4fba5f49 BrowserWindow: Add tabCount() method 2018-01-11 19:23:43 +01:00
David Rosca
5cc41d219e Always open new window when restoring session after crash
Also remove special handling for qupzilla:restore tabs.
2018-01-11 19:23:36 +01:00
David Rosca
679268dbd1 ClosedTabsManager: Move check for saving restore tab from TabWidget 2018-01-11 19:22:43 +01:00
David Rosca
3f60c554ee ClosedWindowsManager: Save closed windows into session file 2018-01-11 19:21:59 +01:00
David Rosca
0b6c555c62 Only show restore page when crashing during session restore
If app crashes during one minute after restoring crashed session,
show the restore page with options to the user next time instead
of showing restore page after every crash.
2018-01-11 19:21:54 +01:00
David Rosca
c85d33e92a MainApplication: Completely remove isRestoring state
Restoring session should not be any different from simply opening
regular session.
2018-01-11 19:21:47 +01:00
David Rosca
f2002892aa Save previous crashed session that were not restored to session file
Closes #2331
2018-01-11 19:21:17 +01:00
David Rosca
d1becc23e9 And fix build on all platforms ... 2018-01-11 19:20:30 +01:00
David Rosca
e512cc7433 Fix build on Windows - export ExternalJsObject 2018-01-11 19:20:25 +01:00
David Rosca
139a8dc8f1 LocationCompleter: Only allow to delete bookmarks and history items 2018-01-11 19:20:16 +01:00
David Rosca
89aa7259f9 LocationCompleter: Only update original text when first item is selected
Fixes issue where search/visit item would be incorrectly updated after
deleting item from completions.
2018-01-11 19:19:28 +01:00
David Rosca
c97d077f67 TabBar: Make updatePinnedTabCloseButton private
It is no longer needed to call it after changing tab pinned state.
2018-01-11 19:19:04 +01:00
David Rosca
ebed38e1c4 GreaseMonkey: Don't export wrappedJSObject
It seems to confuse some userscripts thinking that this is Firefox.

This, along with recent values changes should fix compatibility issues
with large portion of userscripts.
Tested with 4chanX as one of the very complex userscript.
2018-01-11 19:18:57 +01:00
David Rosca
30bad61eea GreaseMonkey: Rewrite values bridge to pass values as QString
Passing QVariant/QJsonValue is broken in QWebChannel (QtWebEngine?)
2018-01-11 19:18:31 +01:00
David Rosca
b8f9c7e15d KWalletPasswords: Pass window id to Wallet::openWallet
Closes #2441
2018-01-11 19:15:30 +01:00
David Rosca
8a6547b39c Use window._qupzilla_external property to check if web channel is connected
Instead of checking for window.external as that is now defined with
at least QtWebEngine 5.10.
2018-01-11 19:15:02 +01:00
David Rosca
7ce93354c8 GreaseMonkey: Add support for GreaseMonkey 4.0 API
Properly implement values functions in 4.0 API version.

Closes #2355
2018-01-11 19:12:53 +01:00
David Rosca
6a5b7d30e3 ExternalJsObject: Add support for registering extra objects
Extra objects will be available as window.external.extra.objectName
2018-01-11 19:11:02 +01:00
David Rosca
87527762f8 IconProvider: Use encodeUrl also when searching for existing icon
As suggested by @srazi
2018-01-11 19:10:14 +01:00
David Rosca
482f446712 RestoreManager: Make RestoreData into a struct with stream operators
This makes it possible to extend it while keeping backwards compatibility.
2018-01-11 19:09:44 +01:00
David Rosca
150c576661 Bookmarks: Don't try to write to file if open failed 2018-01-11 19:09:25 +01:00
David Rosca
0141a2e621 SessionManager: Fix fallback to default session if session file is invalid
Creating available sessions metadata is now also faster as it doesn't
need to parse the entire session file, only check for validity.

See #2331
2018-01-11 19:08:18 +01:00
Luís Pereira
0096801556 Don't call non-const member functions on temporaries
They can detach if the container is shared. Even if they are not shared,
using const method when possible is good practice.

Differential Revision: https://phabricator.kde.org/D9730
2018-01-11 19:05:56 +01:00
l10n daemon script
362740bbfd SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-01-04 04:51:59 +01:00
David Rosca
ee62ad0215 Use correct web settings in private browsing mode
Closes #2427
2018-01-02 22:59:17 +01:00
David Rosca
4e0e4b0d35 ClosedWindowsManager: Fix crash when saving window without any tabs 2018-01-02 22:57:34 +01:00
David Rosca
5013053811 TabBar: Reject drags from other app instances 2018-01-02 22:57:26 +01:00
David Rosca
a8763bee06 SessionManager: Use relative paths for session files in settings
See #2331
2018-01-02 22:57:19 +01:00
David Rosca
da3e16d7c4 Preferences: Enable "Don't load tabs until selected" also for Select session 2018-01-02 22:57:11 +01:00
David Rosca
72c6a73e29 MainApplication: Fix opening session with SelectSession after launch action 2018-01-02 22:56:49 +01:00
David Rosca
1aa4b41151 BrowserWindow: Save sidebar for each window
Allows to have different sidebar on each window.
2018-01-02 22:56:41 +01:00
David Rosca
1de32182c1 BrowserWindow: Don't restore first app window from postLaunch slot
Instead restore it immediately after creation from MainApplication
as all other window types.
2018-01-02 22:55:58 +01:00
David Rosca
6b08e17dcd BrowserWindow: Save ui state separately for each window 2018-01-02 22:55:50 +01:00
David Rosca
423e06c7d6 BrowserWindow: Always save/restore window geometry 2018-01-02 22:55:19 +01:00
David Rosca
ed39aefdad Change structure of session file + also save window geometry
Bump session file version to 4.

Added support for old version to RestoreManager to prevent losing
old saved sessions.
2018-01-02 22:55:09 +01:00
David Rosca
25b1583770 Fix merge issues 2018-01-02 15:22:35 +01:00
David Rosca
a578314e8e MainMenu: Remove all aboutToHide menu handling
Instead create conflicting shortcuts with Qt::WidgetShortcut context.
2018-01-02 15:15:20 +01:00
David Rosca
f80d827e59 QzTools: Use correct screen for widget in centerWidgetOnScreen
BUG: 384543
2018-01-02 15:03:50 +01:00
David Rosca
7b6b69c35f TabBar: Fix dropping text/url to tabs 2018-01-02 15:03:27 +01:00
David Rosca
ef06ed567a Add ClosedWindowsManager allowing to restore closed windows
Closes #2306
2018-01-02 15:03:11 +01:00
David Rosca
b3bd08c5e4 BrowserWindow: Add SavedWindow struct and use it for saving/restoring 2018-01-02 15:01:16 +01:00
David Rosca
16fcae4202 ClosedTabsManager: Rewrite to use WebTab::SavedTab 2018-01-02 14:59:06 +01:00
David Rosca
200e602d01 DownloadManager: Add app name to download finished notification
BUG: 386376
2018-01-01 18:11:01 +01:00
David Rosca
8749c05854 WebView: Search using default engine instead of active in actions
BUG: 386377
2018-01-01 18:09:39 +01:00
David Rosca
90153e280e Fix build 2018-01-01 17:10:44 +01:00
David Rosca
f3b7be2b5e LocationBar: Fix correctly loading "localhost" instead of launching search
Closes #2028
2018-01-01 17:02:12 +01:00
David Rosca
f0488c33c3 WebTab: Correctly remove itself from TabWidget 2018-01-01 17:01:48 +01:00
David Rosca
8817493c68 Tabs: Allow to detach tab from window with only one tab
Window will be closed after detaching this tab.
2018-01-01 17:01:41 +01:00
David Rosca
3eac8bd161 TabContextMenu: Remove detach tab action
Tabs can now be detached with drag&drop
2018-01-01 17:01:19 +01:00
David Rosca
38bfd49d4f TabBar: Change mimetype to falkon 2018-01-01 17:00:42 +01:00
David Rosca
fb652ff6cd Tabs: Make the code work better with zero tabs 2018-01-01 16:59:52 +01:00
David Rosca
4b33364516 Update copyright year to 2018 2018-01-01 16:59:46 +01:00
David Rosca
21ca9adf6b TabBar: Add support for drag&drop tabs to other windows
Also it is possible to detach tab by dragging it outside of tabbar.

BUG: 386672
2018-01-01 16:58:47 +01:00
David Rosca
fe396e64ff ComboTabBar: Add tabPixmap method to render single tab 2018-01-01 16:58:16 +01:00
David Rosca
08c0b480c1 ComboTabBar: Fix clearing drop marker when moving from main to pinned tabbar 2018-01-01 16:58:09 +01:00
David Rosca
f5ad4424aa TabWidget: Add insertView method for WebTab 2018-01-01 16:58:02 +01:00
David Rosca
0e25eb2e92 SuperMenu: Remove session manager actions in private mode 2018-01-01 16:57:09 +01:00
David Rosca
c679fdf397 TabBar: Add support for droping text/url inside tabbar to insert new tab 2018-01-01 16:57:03 +01:00
David Rosca
246adbfb0b ComboTabBar: Add support for drawing drop indicator
It's just a solid line now, should be improved later.
2018-01-01 16:56:58 +01:00
David Rosca
4fb73f3840 ComboTabBar: Fix edge case in tabAt
Right corner of pinned tabbar would incorrectly return tabs from main tabbar.
Also make it work on close button.
2018-01-01 16:56:52 +01:00
David Rosca
8100020b41 TabBar: Support dropping text on tabs
It will be searched for using default search engine
2018-01-01 16:56:47 +01:00
David Rosca
c7d58017d2 AddTabButton: Remove handling of drop events
It is handeld by the TabBar itself.
2018-01-01 16:56:39 +01:00
David Rosca
ca04e9d967 TabBar: Support adding new tabs with text drop data
Urls are loaded directly and text is searched for using default search
engine.
2018-01-01 16:56:32 +01:00
David Rosca
373df431a7 TabWidget: Switch to newly created tab when duplicating tab 2018-01-01 16:56:26 +01:00
David Rosca
b6dd2a829d LocationCompleter: Fix showing old suggestions for one char search string
When typing a search string and then deleting it up to last character,
old suggestions for 2-character search string would be displayed.
2018-01-01 16:56:03 +01:00
David Rosca
eb92250003 LocationCompleter: Enable suggestions from 2 and more characters 2018-01-01 16:55:57 +01:00
Laurent Cimon
635cb1085c Add an option to disable search suggestions from the address bar.
Differential Revision: https://phabricator.kde.org/D9539
2017-12-31 16:44:02 +01:00
David Rosca
925e3496d9 LocationCompleterModel: Don't set tab position to view/search item 2017-12-30 18:06:26 +01:00
David Rosca
56b28bfa1f WebTab: Make sure to not call slotRestore multiple times
It can happen when switching sessions and results in current tab
being empty tab.
2017-12-30 18:06:19 +01:00
David Rosca
3aa629ceac BrowserWindow: Make sure window is shown before restoring session
Same reasoning as 639ecf3626dc5fa667acb17fa35bc398bdaf4712
2017-12-30 18:06:14 +01:00
David Rosca
5ecf3d8b98 Remove leftover references to no longer used pinnedtabs.dat file 2017-12-30 18:06:06 +01:00
David Rosca
397e2f714e Set default button for all CheckBoxDialogs
Default button is now focused instead of checkbox.
2017-12-30 18:05:47 +01:00
David Rosca
01b66a0f48 WebInspector: Set focus back to webview when inspector closes 2017-12-30 18:04:59 +01:00
David Rosca
a5e35bac75 WebInspector: Fix showing close button with Qt 5.10
It's not tested with Qt 5.9 but it should work there too.
2017-12-30 18:04:51 +01:00
David Rosca
53f6ef91ac Temporarily enable JavaScript when loading qupzilla:restore page 2017-12-30 18:04:43 +01:00
David Rosca
736e3121bc BrowserWindow: Show window before creating web views
Otherwise QWebEngineView first creates its underlying view with very
small size which then gets resized to correct size on first show event.

Also remove all calls to setUpdatesEnabled on window during session restore,
it doesn't seem to have any effect anymore.
2017-12-30 18:04:11 +01:00
David Rosca
c906e0d168 SpeedDial: Show warning message when JavaScript is disabled 2017-12-30 18:04:05 +01:00
David Rosca
7cd86e144b WebInspector: Don't show inspector actions when JavaScript is disabled
WebInspector doesn't work without JavaScript.
2017-12-30 18:03:58 +01:00
David Rosca
1ea0c570c4 SqlDatabase: Remove exec and execAsync methods 2017-12-23 18:34:46 +01:00
l10n daemon script
7faf9e2e8d SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2017-12-21 04:50:47 +01:00
David Rosca
edce3dd0d0 Preferences: Show dots instead of chars in proxy password input
Closes #2526
2017-12-19 15:15:19 +01:00
David Rosca
82fe9d33c9 Preferences: Fix default proxy type
Closes #2527
2017-12-19 15:09:24 +01:00
David Rosca
c1c168aae9 Create every QSqlQuery with correct database for current thread
Queries are now always executed on correct database instance.
Databases are also stored in thread local storage instead of in hash
table with mutex.

Closes #2498
2017-12-18 13:06:42 +01:00
David Rosca
fba7b3d9fc Fix saving window state when closing app with Ctrl+Q shortcut
Closes #2444
2017-12-05 13:51:29 +01:00
David Rosca
d739692523 AutoScroll: Don't force detected scroll direction
As the detection of available scroll direction is not perfect,
don't enforce it.

Closes #2503
2017-12-03 19:11:09 +01:00
David Rosca
8c99f22240 AdBlockTreeWidget: Fix restoring item font and color for normal rules 2017-12-03 19:10:56 +01:00
David Rosca
7463c692f7 AdBlockRule: Add support for "font" option
Closes #2445
2017-12-03 19:10:50 +01:00
David Rosca
d8b3a071bc UserAgentDialog: Update available user agent strings
Also match Chrome version in Chrome user agent with QtWebEngine version.

Closes #2475
2017-12-03 19:10:43 +01:00
David Rosca
ee5a11ae72 Fix initial focus when opening new browser window
Web page is now correctly focused when opening browser window
or opening/restoring sessions.

This is still not absolutely reliable solution as it uses delay
to change focus to webview, because QWebEngineView doesn't accept
focus until after it is initialized.
2017-12-03 19:10:34 +01:00
David Rosca
b03c5f3cb0 MainApplication: Don't call processEvents when restoring session
It seems to help with QtWebEngine crashes during session restore
2017-12-03 19:10:18 +01:00
David Rosca
687f797f27 Fix switching focus when loading url with BrowserWindow::loadAddress
Also accept key events when handled

Closes #2504
2017-12-03 19:10:10 +01:00
David Rosca
ca2b5f22be SearchToolbar: Don't set shortcuts from UI file
Fixes build with Qt 5.10

Closes #2515
2017-12-03 19:10:01 +01:00
David Rosca
52918db06a Fix using system proxy configuration
See #2404
2017-12-03 19:08:17 +01:00
David Rosca
44999080eb History: Also clear QtWebEngine Visited Links in clearHistory 2017-12-03 19:08:07 +01:00
l10n daemon script
4f8b1f57e7 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2017-11-27 05:03:51 +01:00
David Rosca
fd1b8ca16f IconProvider: Save icon urls as QString instead of QByteArray
Saving it as QByteArray results in sqlite treating it as binary data
and breaks the index search.

Closes #1474
2017-11-13 13:28:28 +01:00
David Rosca
0049c2b7ac ProfileManager: Create database structure from SQL
Instead of copying pre-made binary database, create tables from SQL.
2017-11-13 13:25:30 +01:00
David Rosca
ff6de32d3d LocationCompleterModel: Order domain completion result by date
Fixes showing irrelevant (first match) domain completions

Closes #2471
2017-11-08 15:59:24 +01:00
David Rosca
e8807fd901 Fix build on macOS < 10.12
Closes #2473
2017-11-08 15:59:17 +01:00
David Rosca
033f701784 LocationCompleter: Fix possibility to be opened at wrong position/time 2017-11-01 17:38:24 +01:00
David Rosca
dcf1cfd96e LineEdit: Don't query clipboard when its contents changes
Apparently it can hang in QXcbClipboard

Closes #1945
2017-11-01 17:38:18 +01:00
David Rosca
845d59e5d7 LocationCompleter: Ignore canceled refresh jobs
Skip updating completion model with invalid data from canceled jobs,
which could result in attempt to resize the completer popup to invalid
size (0 height) and when the popup is resized again to valid size kwin
may actually fail to show it with compositing enabled.

Should help with #2480
2017-11-01 17:38:11 +01:00
David Rosca
cca6b0189f Don't use QPrinter when printing to PDF
QWebEnginePage::printToPdf produces scalable PDF with clickable
links while QWebEnginePage::print will create PDF containing low quality
image of page.

Closes #2477
2017-11-01 17:37:45 +01:00
David Rosca
fe82dde871 IconProvider: Use SqlDatabase to exec query on correct database in imageForDomain
Fixes crash when being called from multiple threads with Qt 5.10

Closes #2491
2017-11-01 17:36:51 +01:00
Jose Rios
f011761a50 Clearing correct local storage directory
Qt uses a 'Local Storage' directory to store web contents
whereas QupZilla tries to delete 'LocalStorage' directory
when the 'Delete locally stored content' option is set.

Closes #2472
2017-11-01 17:36:13 +01:00
David Rosca
b6288358ef Don't create temporary dir in $HOME
BUG: 386235
2017-10-27 14:22:39 +02:00