1
mirror of https://invent.kde.org/network/falkon.git synced 2024-12-20 18:56:34 +01:00
Commit Graph

3952 Commits

Author SHA1 Message Date
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
David Rosca
9c3f38fa11 Fix installing and loading plugins 2017-10-27 14:14:40 +02:00
David Rosca
d3f4b59d66 Remove no longer working USE_LIBPATH build option 2017-10-27 13:33:45 +02:00
l10n daemon script
86ebe85aa7 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-10-25 08:45:55 +02:00
Razi Alavizadeh
8086e46ca4 ComboTabBar: Fix duplicate call to slotCurrentChanged() when closing tab.
- The issue occurred after 04b288b395
- See https://github.com/QupZilla/qupzilla/issues/2489
2017-10-22 20:00:06 +03:30
David Rosca
40d42f1230 LoadRequest: Replace isEmpty with isValid
Also test for QUrl being valid, not just not empty
2017-10-09 12:06:25 +02:00
David Rosca
71ef1cefd0 FirefoxImporter: Allow to import bookmarks with empty name
Url will be used as title in this case.

Closes #2431
2017-10-09 11:58:13 +02:00
David Rosca
48d18a3b35 HtmlImporter: Allow to import bookmarks with empty name
Url will be used as title in this case.

See #2431
2017-10-09 11:57:44 +02:00
David Rosca
e267b47fb1 LocationCompleter: Fix searching for text that is not valid QUrl
Closes #2457
2017-10-09 11:57:17 +02:00
David Rosca
657ed290e2 SearchEnginesManager: Change back DuckDuckGo search url 2017-10-09 11:56:47 +02:00
Razi Alavizadeh
991fb32cc3 Fix restoring state of current tab after restoring last session.
- After 04b288b3 WebTab does not restore its state on showEvent
- QupZilla issue: https://github.com/QupZilla/qupzilla/issues/2467
2017-10-06 19:35:54 +03:30
Razi Alavizadeh
4c827bee74 TabManager: Bump version to 0.8 2017-10-03 17:02:31 +03:30
Razi Alavizadeh
48c409fa76 TabManager: Support moving tabs between windows by drag & drop. 2017-10-03 17:02:30 +03:30
Razi Alavizadeh
bad3a76a2e TabManager: Don't repeat detaching tab code. 2017-10-03 17:02:30 +03:30
Razi Alavizadeh
33846b9523 TabManager: Use italic font and "disabled" style for non-loaded saved tab item. 2017-10-03 17:02:29 +03:30
Razi Alavizadeh
b9a9c24060 TabManager: Cleanup and fix. 2017-10-03 17:02:28 +03:30