1
mirror of https://invent.kde.org/network/falkon.git synced 2024-09-23 02:32:10 +02:00
Commit Graph

77 Commits

Author SHA1 Message Date
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
f16580dc05 AdBlockPlugin: Change into real internal plugin 2018-01-11 19:51:47 +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
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
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
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
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
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
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
3ec6ffa5c9 WebPage: Remove no longer used m_adjustingScheduled 2017-05-29 17:05:28 +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
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
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
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
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
8664dd8c7e Don't use border image in internal pages
Also cleanup unused pages
2016-12-31 15:08:47 +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
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
c0907885b9 Implement QWebEnginePage::createWindow(WebBrowserBackgroundTab) 2016-10-24 21:31:24 +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
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
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
236eea97f0 WebPage: Check view() for nullptr in windowCloseRequested
Closes #1944
2016-04-14 17:22:33 +02:00
David Rosca
d8682ff51d WebHitTestResult: Map position to page viewport coords
Closes #1927
2016-04-06 17:22:44 +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
e487e4c1f6 Add option to open popup windows in tabs
Closes #1796
2016-02-14 10:37:28 +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
97ce417798 Fix use of QList::first() 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
0fade63d86 WebPage: Add page to display when render process crashes 2015-10-14 16:19:54 +02:00
David Rosca
b6b7edd187 Use shorter code for QString().arg(int) 2015-10-09 20:42:25 +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
83db3c1988 WebPage: Always grant MouseLock permission in fullscreen 2015-10-06 10:58:17 +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