KWebView

Search for usage in LXR

#include <kwebview.h>

Inherits QWebView.

Properties

bool externalContentAllowed
 

Signals

void linkMiddleOrCtrlClicked (const QUrl &url)
 
void linkShiftClicked (const QUrl &url)
 
KDEWEBKIT_DEPRECATED void selectionClipboardUrlPasted (const QUrl &url)
 
void selectionClipboardUrlPasted (const QUrl &url, const QString &searchText)
 

Public Member Functions

 KWebView (QWidget *parent=nullptr, bool createCustomPage=true)
 
 ~KWebView ()
 
bool isExternalContentAllowed () const
 
void setAllowExternalContent (bool allow)
 

Protected Member Functions

void mousePressEvent (QMouseEvent *event) override
 
void mouseReleaseEvent (QMouseEvent *event) override
 
void wheelEvent (QWheelEvent *event) override
 

Detailed Description

A re-implementation of QWebView that provides integration with KDE frameworks.

This is a drop-in replacement for QWebView that provides full KDE frameworks integration through KWebPage as well as additional signals that capture middle, shift and ctrl mouse clicks on links and URL pasting from the selection clipboard.

The specific functionality provided by this class (over and above what would be acheived by using KWebPage with a QWebView) is that scrolling with the mouse wheel while holding down CTRL zooms the page (see QWebView::setZoomFactor) and several useful signals are emitted when the user performs certain actions.

See the signal documentation for more details.

Author
Urs Wolfer <uwolfer @ kde.org>
Dawit Alemayehu <adawit @ kde.org>
Since
4.4

Definition at line 57 of file kwebview.h.

Constructor & Destructor Documentation

KWebView::KWebView ( QWidget parent = nullptr,
bool  createCustomPage = true 
)
explicit

Constructs a KWebView object with parent parent.

Set createCustomPage to false to prevent the creation of a KWebPage object for KDE frameworks integration. Doing so allows you to avoid unnecessary object creation and deletion if you are going to use a subclass of KWebPage.

Parameters
parentthe parent object
createCustomPageif true, the view's page is set to an instance of KWebPage

Definition at line 33 of file kwebview.cpp.

KWebView::~KWebView ( )

Destroys the KWebView.

Definition at line 41 of file kwebview.cpp.

Member Function Documentation

bool KWebView::isExternalContentAllowed ( ) const

Returns true if access to remote content is allowed.

By default access to remote content is allowed.

See also
setAllowExternalContent()
KWebPage::isExternalContentAllowed()

Definition at line 46 of file kwebview.cpp.

void KWebView::linkMiddleOrCtrlClicked ( const QUrl url)
signal

Emitted when a link is clicked with the middle mouse button or clicked with the left mouse button while CTRL is held down.

Typically, the user would expect this to result in the URL being opened in a new tab or window.

Parameters
urlthe URL of the clicked link
void KWebView::linkShiftClicked ( const QUrl url)
signal

Emitted when a link is clicked with the left mouse button while SHIFT is held down.

A user of Plasma desktop would typically expect this to result in the triggering of a "save link as" action.

Parameters
urlthe URL of the clicked link
void KWebView::mousePressEvent ( QMouseEvent event)
overrideprotected
Reimplemented from superclass.

Reimplemented for internal reasons, the API is not affected.

See also
QWidget::mousePressEvent

Definition at line 65 of file kwebview.cpp.

void KWebView::mouseReleaseEvent ( QMouseEvent event)
overrideprotected
Reimplemented from superclass.

Reimplemented for internal reasons, the API is not affected.

See also
QWidget::mouseReleaseEvent

Definition at line 72 of file kwebview.cpp.

KDEWEBKIT_DEPRECATED void KWebView::selectionClipboardUrlPasted ( const QUrl url)
signal

Emitted when a URL from the selection clipboard is pasted on this view.

This is triggered when the user clicks on the page with the middle mouse button when there is something in the global mouse selection clipboard. This is typically only possible on X11.

Uri filters are applied to the selection clipboard to generate url.

If the content in the selection clipboard is not a valid url and a default search engine is configured, url will be set to a query to the default search engine.

Parameters
urlurl generated from the selection clipboard content
Deprecated:
use selectionClipboardUrlPasted(QUrl, bool) instead
See also
QClipboard
void KWebView::selectionClipboardUrlPasted ( const QUrl url,
const QString searchText 
)
signal

Emitted when a URL from the selection clipboard is pasted on this view.

This is triggered when the user clicks on the page with the middle mouse button when there is something in the global mouse selection clipboard. This is typically only possible on X11.

Uri filters are applied to the selection clipboard to generate url.

If the content in the selection clipboard is not a valid URL and a default search engine is configured, searchText will be set to the content of the clipboard (250 characters maximum) and url will be set to a query to the default search engine.

Parameters
urlthe URL generated from the selection clipboard content
searchTextcontent of the selection clipboard if it is not a valid URL
See also
KUriFilter
QClipboard
Since
4.6
void KWebView::setAllowExternalContent ( bool  allow)

Set allow to false if you want to prevent access to remote content.

If this function is set to false only resources on the local system can be accessed through this class. By default fetching external content is allowed.

See also
isExternalContentAllowed()
KWebPage::setAllowExternalContent(bool)

Definition at line 51 of file kwebview.cpp.

void KWebView::wheelEvent ( QWheelEvent event)
overrideprotected
Reimplemented from superclass.

Reimplemented for internal reasons, the API is not affected.

See also
QWidget::wheelEvent

Definition at line 56 of file kwebview.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Tue Mar 2 2021 02:09:11 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.