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

288 Commits

Author SHA1 Message Date
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
efff69b7b2 Continue with Falkon renaming 2017-08-25 17:55:52 +02:00
David Rosca
d00e769749 Initial rename to Falkon 2017-08-25 17:32:32 +02:00
David Rosca
6f08f94e0f Workaround wrong focus when opening new tab from createWindow() 2017-07-19 13:57:37 +02:00
David Rosca
f0b8ac2daa Use QWebEngineHttpRequest with Qt 5.9 2017-06-06 17:40:47 +02:00
David Rosca
16f9b2fde9 Rework the zoom bug workaround
Qt 5.9 is affected too

Closes #2289
2017-05-29 17:11:48 +02:00
David Rosca
3ec6ffa5c9 WebPage: Remove no longer used m_adjustingScheduled 2017-05-29 17:05:28 +02:00
David Rosca
bd9a33d6f9 Fix crash when opening target __blank links
Regression from 92b49be0c2

Closes #2335
2017-05-19 09:02:38 +02:00
Anthony Fieroni
92b49be0c2 Don't leak web page
Signed-off-by: Anthony Fieroni <bvbfan@abv.bg>
2017-05-12 20:50:24 +02:00
Anthony Fieroni
db33b8d860 Workaround Qt5.8 zoom factor bug
Signed-off-by: Anthony Fieroni <bvbfan@abv.bg>
2017-05-12 20:50:24 +02:00
David Rosca
eb0cf5065d WebView: Exit fullscreen on hide
Closes #2294
2017-04-09 10:33:57 +02:00
David Rosca
8e16efc1bf Fix crash when restoring history of internal pages with QtWebEngine 5.8
Closes #2302
2017-04-08 16:44:41 +02:00
srazi
2654081912 Fix 2178 (#2292)
* CheckBoxDialog: Rewritten to inherit from QMessageBox

-  QMessageBox supports showing checkbox for Qt >= 5.2

* Add option to disable warning message when closing tabs from tabbar context menu.

- Closes #2178
2017-04-05 10:27:03 +02:00
David Rosca
44cd68e3d9 Merge branch 'v2.1' 2017-03-18 16:11:34 +01:00
David Rosca
b61b4aca67 WebView: Don't change m_progress when loading finished
QtWebEngine may emit loadProgress signal even after loadFinished
was already emitted.

Closes #2222
2017-03-18 16:00:57 +01:00
David Rosca
f20d421113 Merge branch 'v2.1' 2017-03-15 13:29:24 +01:00
David Rosca
486b8f4c7d Workaround QWebEnginePage not scrolling to anchors when opened in background tab
Closes #2242
2017-03-15 13:11:27 +01:00
David Rosca
bfef9e2c03 Merge branch 'v2.1' 2017-03-15 10:53:44 +01:00
David Rosca
9211a8eceb Disable native scrollbars by default
See #2246
2017-03-15 10:49:27 +01:00
José Rios
85832642db Fixed new tab not opening on mouse mid button click (#2244)
Whenever the user pressed the middle button the mouse press handler
in WebPage issued an 'execJavaScript' which has its own event loop
causing the mouse release handler to be called before the field
'm_clickedUrl' get the url in the first handler. Since this field
is used to guard the logic in the second handler the new tab wasn't
opening.

Closes #2238
2017-03-13 09:05:36 +01:00
José Rios
e49ea20f33 Fixed new tab not opening on mouse mid button click (#2244)
Whenever the user pressed the middle button the mouse press handler
in WebPage issued an 'execJavaScript' which has its own event loop
causing the mouse release handler to be called before the field
'm_clickedUrl' get the url in the first handler. Since this field
is used to guard the logic in the second handler the new tab wasn't
opening.

Closes #2238
2017-03-12 17:57:19 +01:00
David Rosca
e832a3418c Merge branch 'v2.1' 2017-02-21 10:29:15 +01:00
David Rosca
71f0737511 WebScrollBarManager: Use scrollbars as lambda context
Instead of manually disconnecting the lambdas, use scrollbar
as context.
2017-02-21 10:28:24 +01:00
David Rosca
071c4fbe52 Merge branch 'v2.1' 2017-02-13 21:35:56 +01:00
David Rosca
fe0ae53653 WebScrollBar: Make sure not to accidentally scroll
Closes #2211
2017-02-13 21:13:30 +01:00
David Rosca
8a942e2e73 WebView: Remove QWebChannel resetting workaround
It was fixed while ago in Qt
2017-02-06 20:45:28 +01:00
David Rosca
5f0f520a45 WebPage: Remove now unused scheduleAdjustPage 2017-02-06 20:44:27 +01:00
David Rosca
6b39dc9cf0 WebPage: Remove no longer needed copies of runJavaScript functions 2017-02-06 20:43:40 +01:00
David Rosca
8fa9db9f65 Show print preview dialog when printing page
Print directly to QPrinter instead of using intermediate pdf file.
2017-02-06 20:40:40 +01:00
David Rosca
13cba7a069 Bump minimum Qt to 5.8 2017-02-06 18:39:59 +01:00
David Rosca
534eb14432 WebScrollBar: Add workaround for Breeze style 2017-01-31 22:06:48 +01:00
David Rosca
e10294db6d WebScrollBarCornerWidget: Draw using QStyle::PE_PanelScrollAreaCorner 2017-01-26 21:13:57 +01:00
David Rosca
e656e92eaf WebScrollBarManager: Fix height of vertical scrollbar when horizontal is visible
Also fix warnings in console when trying to access null document.documentElement
2017-01-26 20:57:12 +01:00
David Rosca
f9a0d202de WebScrollBarManager: Guard against ScrollBarData being deleted 2017-01-26 20:45:38 +01:00
David Rosca
c785e09bdf WebScrollBarManager: Improve viewportSize() with knowledge from javascript 2017-01-26 17:59:45 +01:00
David Rosca
7096d3eb88 WebScrollBarManager: Correctly update visibility with javascript
Closes #2182
2017-01-26 17:27:02 +01:00
David Rosca
1ed1059c42 WebHitTestResult: Only update with contextmenu data with same position 2017-01-23 08:21:24 +01:00
David Rosca
635cc8e5eb WebInspector: Remember separately docked/undocked sizes 2017-01-22 14:50:15 +01:00
David Rosca
4878265ff6 Fix crash when render process crashes
Tab crash page is now correctly loaded and offers user to reload the
page.
2017-01-22 10:23:14 +01:00
David Rosca
45f37a3a64 WebView: Fix send text by mail action 2017-01-22 10:05:21 +01:00
David Rosca
060011e466 Use qMax and qAbs instead of std functions
Closes #2169
2017-01-21 21:23:36 +01:00
David Rosca
224207b8d6 WebInspector: Remember height 2017-01-21 17:59:54 +01:00
David Rosca
5cc7dd080e Fix scrolling with high resolution mouse/touchpads
Use helper class to accumulate "common steps" of 120 angle delta.
2017-01-21 12:23:53 +01:00
David Rosca
a6988ee8f1 TabIcon: Draw small dot in corner when there is activity in pinned tab 2017-01-20 15:09:57 +01:00
David Rosca
614ac46174 WebView: Hide reload/stop actions when not available 2017-01-03 16:21:16 +01:00
David Rosca
8664dd8c7e Don't use border image in internal pages
Also cleanup unused pages
2016-12-31 15:08:47 +01:00
David Rosca
68e0425bde Hide tab icon when page icon is null
Completely hide the tab icon instead of showing generic webpage icon
when page icon is null.
2016-12-30 17:16:30 +01:00
David Rosca
e21636c661 Add more HighDPI ready icons in data/icons/menu 2016-12-29 15:07:34 +01:00
David Rosca
a4d284fa71 WebView: Support QApplication::wheelScrollLines 2016-12-27 21:53:43 +01:00
David Rosca
cb771352da WebInspector: Initialize m_inspectElement
Fixes crash after opening inspector

Closes #2132
2016-12-27 20:17:44 +01:00
David Rosca
6514aed3a7 Fix skipping internal pages when showing source code with Qt 5.8 2016-12-27 19:05:01 +01:00
David Rosca
95603f652d Fix some warnings in js scripts 2016-12-27 16:51:19 +01:00
David Rosca
0a0eb2a038 WebScrollBar: HighDPI fixes 2016-12-27 13:41:30 +01:00
David Rosca
f651b42e23 WebScrollBar: Fix scrollbar values when page is zoomed 2016-12-27 13:12:10 +01:00
David Rosca
08af25f4f7 WebScrollBar: Don't update value while slider is down
Makes the scrolling smoother
2016-12-27 12:20:16 +01:00
David Rosca
0ca133bfaf Always use QPointF for positions on webpage
Also take zoom into account when setting scroll position
2016-12-27 11:58:29 +01:00
David Rosca
9beee941f6 Adjust position of status bar message widget according to scrollbars 2016-12-26 20:17:53 +01:00
David Rosca
1a110c3641 WebHitTestResult: Use data from QWebEngineContextMenuData
Fixes handling context menus in iframes.

Closes #2126
2016-12-26 17:26:39 +01:00
David Rosca
4d51b4c00c Use WebPage::SaveJsWorld for executing scripts
QWebChannel must still be registered on MainWorld
2016-12-26 16:45:47 +01:00
David Rosca
64b48f6899 Use native scrollbars for main scrollbars
Use native widgets to render main scrollbars (scrollbars of the
main webview widget, not iframes etc).

It makes the scrollbars on body element invisible and instead draws
native widgets on the space for scrollbars.

Comes with possibility to disable it, enabled by default.
2016-12-26 12:39:36 +01:00
David Rosca
c9797f5600 WebView: Make sure to return non-null inputWidget() 2016-12-24 16:57:10 +01:00
David Rosca
2ad5e82ce2 WebView: Fix finding rwhvqt with Qt 5.8 2016-12-24 16:46:03 +01:00
David Rosca
96202a6fe0 WebView: Remove custom drag&drop handling
QtWebEngine drag&drop now works
2016-12-24 12:24:12 +01:00
David Rosca
3a9e0501df Fix saving new icons in database
Regression from 38bf9d2b4a
2016-12-20 12:33:43 +01:00
David Rosca
d932fcb004 WebView: Implement adding spellcheck suggestions to context menu 2016-10-25 20:22:20 +02:00
David Rosca
7c4345775c WebView: Add Ctrl+M shortcut to toggle mute 2016-10-25 19:18:14 +02:00
David Rosca
b9a7c773f1 WebView: Fix handling of key events
Unhandled key events are sent to parent of QWebEngineView.
Hack with event filter on RenderWidgetHostViewQtDelegateWidget no longer
works for key events, so we need to install event filter on view
parent and handle key events there.
Downside is, that we can now only handle events that are not handled by
page itself.
2016-10-25 19:16:10 +02:00
David Rosca
c0907885b9 Implement QWebEnginePage::createWindow(WebBrowserBackgroundTab) 2016-10-24 21:31:24 +02:00
David Rosca
1eec6ac87a Use ViewSource page action with Qt 5.8 2016-10-24 21:24:33 +02:00
David Rosca
38bf9d2b4a Use QWebEngineView::icon() instead of custom icon downloading 2016-10-24 21:19:27 +02:00
David Rosca
e1c97e1a6d Use runtime Qt version instead of define where appropriate 2016-10-24 21:10:15 +02:00
David Rosca
cf3fa88942 Require Qt 5.7 2016-10-24 20:11:50 +02:00
David Rosca
ce9d3983a0 Bring back Save Page action
Only with Qt >= 5.7

Closes #2083
2016-09-18 12:09:38 +02:00
David Rosca
3da4150fcb Merge branch 'v2.0' 2016-08-23 19:48:45 +02:00
David Rosca
8206dea201 Workaround crash on drop with Qt 5.7.0
Closes #2060
2016-08-23 19:48:22 +02:00
Vlad
81aab60023 Add copy image option in context menu (#2058) 2016-08-16 12:57:11 +02:00
David Rosca
f0e2b938ba Don't use QWebEngineScript::ApplicationWorld with Qt 5.7
It doesn't work because js on qupzilla: pages runs in MainWorld.

Closes #2015
2016-06-27 12:58:26 +02:00
David Rosca
1273c13be8 Merge branch 'v2.0' 2016-06-21 21:47:04 +02:00
David Rosca
d168efae9e WebHitTestResult: Use baseURI for resolving link url
Fixes resolving link urls when there is set base href.

Closes #2010
2016-06-21 21:45:24 +02:00
David Rosca
d1f266cc49 AdBlock: Apply all css rules in WebPage::cleanBlockedObjects 2016-05-27 15:58:21 +02:00
David Rosca
509c913cbe AdBlock: Apply all css rules in WebPage::cleanBlockedObjects 2016-05-27 15:55:30 +02:00
David Rosca
c004d52db1 Run js code in ApplicationWorld with QtWebEngine 5.7 2016-05-10 10:47:35 +02:00
David Rosca
838ec366de Fix parenting WebPage when created from WebPage::createWindow
Closes #1949
2016-04-17 09:08:03 +02:00
David Rosca
236eea97f0 WebPage: Check view() for nullptr in windowCloseRequested
Closes #1944
2016-04-14 17:22:33 +02:00
David Rosca
90e72aa88f Small cleanup in WebView 2016-04-06 17:24:15 +02:00
David Rosca
d8682ff51d WebHitTestResult: Map position to page viewport coords
Closes #1927
2016-04-06 17:22:44 +02:00
David Rosca
dfa04388c7 Fix build on Windows 2016-03-30 11:50:46 +02:00
David Rosca
71b6d922be WebView: Handle create WebBrowserWindow
Instead of custom handling of shift + mouse click, use
QWebEngineView::createWindow. It should fix the issue with
JavaScript catching the mouse click performing some action
and QupZilla trying to open new window.

Closes #1898
2016-03-30 09:10:57 +02:00
David Rosca
6eb0693e7d Remove FollowRedirectReply
QNetworkAccessManager now supports redirects, so there is
no need for it anymore.
2016-03-20 19:59:52 +01:00
David Rosca
3d5f45bfc5 Don't use custom script for toggle play/pause and mute 2016-02-28 18:25:30 +01:00
David Rosca
4a1b67ec2b WebInspector: Disable web inspector by default
It is now needed to manually set the QTWEBENGINE_REMOTE_DEBUGGING
environment variable.
2016-02-20 15:25:18 +01:00
David Rosca
e487e4c1f6 Add option to open popup windows in tabs
Closes #1796
2016-02-14 10:37:28 +01:00
Kevin Kofler
a570beb667 Do not call loadRequest on an invalid URL
I expected that error to be handled gracefully. It's actually not, it
crashes the whole browser, and saves a state that will make it crash
again on startup. So just ignore invalid URLs if searchFromAddressBar is
set to false.
2016-01-14 05:03:13 +01:00
Kevin Kofler
fcae1fd3f5 Make automatic searching from the address bar optional
Some users (like me) really don't like it when their typos get sent to a
search engine without asking.
2016-01-14 03:29:47 +01:00
David Rosca
caefbcfa02 Another fix for older GCC
Closes #1790
2015-12-08 11:55:00 +01:00
David Rosca
9ed3554835 Fix build with latest Qt 5.6 2015-12-08 11:27:06 +01:00
David Rosca
73d93e1e3c Don't assert when Shift+LeftClick on a link in frame 2015-12-07 12:41:07 +01:00
David Rosca
4144fc9827 Fix build with older GCC
Closes #1790
2015-12-06 16:09:04 +01:00
David Rosca
626bf8f4bb Fix searching for strings with special whitespaces from locationbar
This fixes eg. search terms with double byte space.

Closes #1622
2015-11-06 23:54:46 +01:00
David Rosca
27f0f9afac WebView: Don't try to load invalid one-word urls
And also save the host lookup in case of invalid url.
2015-11-06 23:46:22 +01:00
David Rosca
638c22486c WebView: Use correct check if the host lookup succeeds 2015-11-06 13:17:07 +01:00
David Rosca
bcf50f9343 WebView: Better HANDLE_EVENT macro 2015-11-06 12:47:27 +01:00
David Rosca
a6a6b33b09 WebView: Another take on forwarding events
Closes #1747
2015-11-06 00:06:03 +01:00
David Rosca
58d895e272 WebView: Always update site icon, even when icon is null 2015-10-23 12:26:27 +02:00
David Rosca
e052bda768 Remove remaining hunspell code 2015-10-23 12:26:27 +02:00
David Rosca
97ce417798 Fix use of QList::first() 2015-10-23 12:26:27 +02:00
David Rosca
8d312ad132 WebView: Accept drops with urls and open them
First dropped url is opened with current webview, the others are
opened in new tabs
2015-10-23 12:26:27 +02:00
David Rosca
de20021f10 Fix build with latest QtWebEngine 5.6 2015-10-22 14:44:41 +02:00
David Rosca
1af76cb2a9 WebInspector: Show close button only when docked 2015-10-15 17:22:23 +02:00
David Rosca
74fc271e25 WebInspector: Implement Inspect Element action 2015-10-15 17:19:16 +02:00
David Rosca
0fade63d86 WebPage: Add page to display when render process crashes 2015-10-14 16:19:54 +02:00
David Rosca
387aee12c2 SiteInfo: Only show on non-internal pages 2015-10-14 12:50:30 +02:00
David Rosca
36031c46e6 WebView: Store input widget as QWidget and not QObject 2015-10-14 12:12:25 +02:00
David Rosca
1a068e8c7d Use QWebEnginePage::RequestClose action to close tabs
It is no longer to use hacky onbeforeunload javascript handling when
closing tabs.
2015-10-12 12:07:01 +02:00
David Rosca
c0a7ef8d9e WebInspector: Add pointing hand cursor to close button 2015-10-11 10:29:09 +02:00
David Rosca
7e238f69b0 WebInspector: Fix close button with QtWebEngine 5.6 2015-10-10 00:12:14 +02:00
David Rosca
56e5237697 WebView: Don't save blank page / speed dial into view history 2015-10-09 21:33:07 +02:00
David Rosca
b6b7edd187 Use shorter code for QString().arg(int) 2015-10-09 20:42:25 +02:00
David Rosca
df487f0726 WebHitTestResult: Resolve image url 2015-10-09 15:57:35 +02:00
David Rosca
03399c7b2c Use acceptNavigationRequest to handle abp: urls
QtWebEngine now sends external urls through acceptNavigationRequest
so it is no longer needed to install scheme handler.
2015-10-08 22:39:27 +02:00
David Rosca
54f31237a5 Fix build 2015-10-08 11:49:22 +02:00
David Rosca
83db3c1988 WebPage: Always grant MouseLock permission in fullscreen 2015-10-06 10:58:17 +02:00
David Rosca
db058ff194 Remove use of QNetworkRequest in LoadRequest 2015-10-06 09:46:23 +02:00
David Rosca
3d8b09653f WebView: Clear icon when icon url changes 2015-10-05 22:08:31 +02:00
David Rosca
3050913d21 WebHitTestResult: Fix isContentSelected
Was returning always true on right click
2015-10-05 20:29:38 +02:00
David Rosca
150252aea9 Don't store blocked entries in WebPage
It is not possible in this way with QtWebEngine
2015-10-05 20:23:10 +02:00
David Rosca
949faa5856 Add support for HTML FullScreen
Esc is used to leave fullscreen
2015-10-05 18:08:14 +02:00
David Rosca
9cb66878ff Port to Qt 5.6 2015-10-05 17:20:53 +02:00
David Rosca
510f521074 Downloads: Bring back option to choose path / open downloads 2015-10-04 21:00:38 +02:00
David Rosca
e161e45c41 WebPage: Add Q_UNREACHABLE to createWindow(WebBrowserWindow) 2015-10-04 19:51:39 +02:00
David Rosca
6857270057 WebInspector: Fix searching with Ctrl+F in inspector
Don't eat key events so inspector's search function can be used.
2015-10-04 19:44:25 +02:00
David Rosca
102ee62d3d WebView: Enable download link/image/media actions with Qt 5.6 2015-10-04 19:35:02 +02:00
David Rosca
e60daf072b WebPage: Remove disabled form resubmitted warning
Looks like it won't come back in QtWebEngine and it wasn't
really that much useful feature.
2015-10-04 19:22:52 +02:00
David Rosca
7a512918f8 WebView: Prevent handling input events twice
This fixes site info being opened twice when pressing Ctrl+I while
having focus in webview.

This makes the input events handling code very fragile, so let's hope
this won't break anything .. and QtWebEngine won't change the behavior
in following releases.
2015-10-04 19:04:25 +02:00
David Rosca
6ac34f74c1 WebView: Fix loading favicons that are on different hosts than site 2015-10-02 17:05:42 +02:00
David Rosca
7f101700ca WebView: Check for m_clickedUrl.isEmpty() in mouseReleaseEvent 2015-10-02 15:50:29 +02:00
David Rosca
4d5808d915 Bring back AutoScroll plugin
This time implemented in C++ and not with userscript. There
is also no support for scrolling inside frames.
2015-10-02 15:36:07 +02:00
David Rosca
75fe50ca48 Bring back MouseGestures plugin 2015-10-02 11:14:10 +02:00
David Rosca
800cc14dcd Bring back support for searching one-word terms from locationbar 2015-10-01 19:25:55 +02:00
David Rosca
5f6cfdc62a Remove WebView::guessUrlFromString and use QUrl::fromUserInput instead
This also fixes setting homepage and new tab urls in preferences.

Closes #1710
2015-10-01 18:37:45 +02:00
David Rosca
8e39135920 WebView: Clear m_clickedUrl and m_clickedPos in mousePressEvent 2015-10-01 18:16:48 +02:00
David Rosca
aab8f1ea75 WebView: Shift + Left click now opens link in new window
Also handle left clicking on links in mouse release and not click
2015-10-01 17:48:32 +02:00
David Rosca
c68789c217 WebView: Remove unused openNewTab function 2015-10-01 17:37:56 +02:00
David Rosca
5e0ca7fed8 Preferences: Bring back external download manager option 2015-09-30 18:43:58 +02:00
David Rosca
abe13dd22d Cleanups 2015-09-30 15:28:44 +02:00
David Rosca
b24303c00b WebView: Bring back media context menu 2015-09-30 15:26:52 +02:00
David Rosca
d10c47a825 WebView: Don't cache form data when adding create search engine action 2015-09-30 15:05:28 +02:00
David Rosca
6a2579a22c Cleanups
Remove PAC proxy option as it is hardly to ever be supported
in QtWebEngine.
2015-09-30 15:02:10 +02:00
David Rosca
7050ffc9e6 SearchEngines: Bring back creating search engines from forms on page 2015-09-30 14:57:41 +02:00
David Rosca
878c0f93c1 WebHitTestResult: Fix isContentEditable for readonly inputs 2015-09-30 13:38:57 +02:00