summaryrefslogtreecommitdiffstats
path: root/examples/widgets
Commit message (Collapse)AuthorAgeFilesLines
* Rename example directories to match the source install destinationJocelyn Turcotte2014-03-1976-14146/+0
| | | | | | | | | | | | | To match other modules example directory structures we should deploy our examples in a directory matching the module name, webengine and webenginewidgets in our case. qmake uses the relative directory of each example up to the upper "examples" directory to decide where they will be deployed when running the sources install target. Change-Id: I59ce7ff8a30f98fad20064c7eecf72b784f1d275 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Remove the widgetsnanobrowser exampleJocelyn Turcotte2014-03-194-266/+0
| | | | | | | | | This example hasn't been touched since we imported QtWebKit examples. If we need to have a more test-purpose widgets browser in the future, we can dig it back from the history. Change-Id: Icee9bd7f09827a97b33c6783b87311e331d963b1 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Add HTTP and proxy authentication signals directly to QWebEnginePageJocelyn Turcotte2014-02-284-56/+56
| | | | | | | | | | | | | | | | | | This allows handling calls that would be signaled by QNetworkAccessManager in QtWebKit. This pulls QtNetwork as a dependency of the QtWebEngineWidgets module to be able to use QAuthenticator, but isn't required otherwise. Only the request URL is available in the case of HTTP authentication (no access to HTTP request headers that the QNetworkReply would allow) and only the proxy host name in the case case of proxy authentication. This keeps the API synchronous the same way, as QtWebKit did, in favor of source compatibility at the cost of requiring a modal dialog, even though the implementation doesn't require it. Change-Id: I9e021def38e6107c9e66d2de8f86bd0328d543df Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* Implement QWebEnginePage::findTextJocelyn Turcotte2014-02-132-10/+8
| | | | | | | | | | | | | | | | | | | A few changes to the API: - Return the success result asynchronously. - FindWrapsAroundDocument and HighlightAllOccurrences are enabled by defaults and cannot be disabled. - Found text isn't updating the selection on the page like QtWebKit did, but triggers a separate state not available. A find count and current index could be exposed, but isn't in this case to keep the API delta lower. This also adds the possibility to pass bool results through the CallbackDirectory and add a new tst_QWebEnginePage::findTextResult test since the old test relied on the selection to be updated when the searched text is found. Change-Id: I8189b5aea8d832df183c6c1ae03e3f08198a9c45 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Update the invoke wrapper to allow bool argumentsJocelyn Turcotte2014-02-132-6/+6
| | | | | | | | Forcing that arguments to be const references isn't necessary and prevents base types to be passed by value. Change-Id: I53ace8cf731ecaeee0b997af72d37843ef54e38f Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Get rid of tr1/functionalJocelyn Turcotte2014-01-272-20/+32
| | | | | | | | | | This header requires rtti in libstdc++ on Mac, which we can't recommend since Qt itself is usually built without rtti. Replace its uses with simpler hand-made template functors. Change-Id: Ic020dcceaf262f77d92b31a8318a513fa200428d Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Implement QWebEnginePage::toHtml and toPlainTextJocelyn Turcotte2014-01-222-13/+25
| | | | | | | | | | | | | | | | Those methods are now made asynchronous and need to be given a callback to handle the result. Update the code in the browser and fancybrowser examples using std::bind when using C++11 or tr1::bind with C++03 (which should be available with compilers on platforms that we support). Add a (currently failing) earlyToHtml test to make sure that an empty page doesn't crash because of a possibly incomplete attachment of the QtRenderViewObserver. Change-Id: I3ab7cb6f25b91b584dd80df5e4e9ad1e3214348e Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Fix installation of most examplesSimon Hausmann2014-01-152-1/+3
| | | | | | | | | | * Make sure the example source code is installed * Make sure the installation path is consistent with the path within the module, to ensure that the sources end up next to the compiled binary. * Skip the widgets nano browser from the installation, as it's a developer tool. Change-Id: I35b421e12f8e6ddd3f2045e318b21543ff929cd8 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Disable currently unsupported features in browser example.Zeno Albisser2014-01-141-6/+24
| | | | | Change-Id: I09ce8ad0372a80a2f19b95a2ba0a6fa8635debea Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Disable viewSourceAction in fancybrowser for now.Zeno Albisser2014-01-141-0/+2
| | | | | | | | This should be enabled again as soon as we have toHtml() implemented. Change-Id: I843112aa2778c05bbac9ab51f5427850a862f247 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Remove the need for application to set an RPATH.Jocelyn Turcotte2013-11-183-3/+3
| | | | | | | | | | | | | The WebEngineWidgets module and the WebEngine QtQuick plugin libraries already have the RPATH set properly in their headers and the application won't need to link any symbol directly to the Core library. Remove the RPATH directive for examples and tests and fix the build issue by making sure that the link directive isn't passed to dependencies through the prl or pkgconfig file. Change-Id: Id1f5efb8c9823613e804e8e6356d711d561d72ec Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Make fancybrowser build and linkPierre Rossi2013-11-124-44/+45
| | | | | | | Also update references in the doc. Change-Id: Ica4d77cb1db040b466c739e4fc1bfd37df544589 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Import fancybrowser examplePierre Rossi2013-11-128-0/+522
| | | | | Change-Id: Ia61fbe3ef6b76c7530d10d4a3305d4208b3469ef Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Give the demo browser prettier popupsPierre Rossi2013-10-291-4/+56
| | | | | Change-Id: Ia8052bffc7be18c4d8f81c3a89ac4a64b1c589af Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Widgets: implement zoomFactorPierre Rossi2013-10-011-6/+0
| | | | | | Change-Id: I7ef26e4a2e6c9eb228bcf5542ad272b998f8c6a3 Reviewed-by: Michael Bruning <michael.bruning@digia.com> Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Add Qt namespace macros QtWebEngine classes.Michael BrĂ¼ning2013-09-172-1/+6
| | | | | | This should enable namespaced builds of Qt and QtWebEngine. Change-Id: I4c9d506d864b42a346026b980dcf3777b9680957 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Implement the basic parts of QWebEngineHistory.Jocelyn Turcotte2013-08-201-7/+0
| | | | | | | | | | | | | | Mark the remaining methods as not implemented to allow enabling most of the dependent code in the demo browser and in API tests. Add two new tests to cover cases that might be problematic with the index-based implementation. This also renames WebContentsAdapter::navigateHistory to navigateToOffset in order to avoid confusion with navigateToIndex. Change-Id: I7c5cb9f5f878e34206fdfe48334a2dc7d9d95a1d Reviewed-by: Zeno Albisser <zeno.albisser@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Implement QWebEnginePage::action for basic navigation.Jocelyn Turcotte2013-08-202-8/+0
| | | | | | | | This imports code from qwebpage.cpp and QWebPageAdapter.cpp of WebKit into qwebenginepage.cpp and thus also restrict the license accordingly. Change-Id: Ic5da8f2b469109cb10132cbe6585f2d941b14403 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Let the application sanitize the URL.Jocelyn Turcotte2013-08-201-1/+1
| | | | | | | | | | Do like the QtQuick example and let the Widgets example use urlFromUserInput to add a missing http scheme instead of letting QtWebEngine do it. This is the same behavior as QtWebKit does. Change-Id: Iac1570523253126e059afb00c3a2ff844e177ff1 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* demo browser: Make it link.Jocelyn Turcotte2013-08-2010-15/+111
| | | | | | | | The ifdefs should later be removed along with the feature implementations. Change-Id: If73f4c4c02c00e90d6cf54c6a08bb37f43fa95bc Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* demo browser: Fix the compilation with QtWebEngine.Jocelyn Turcotte2013-08-2015-126/+127
| | | | | | | | | | | This makes the demo compile, but not link since most of the methods aren't implemented yet. Also disable downloads and printing since they require a bit more work to instead use the page directly. Change-Id: I59adfe07fda077c6909f70f12800a4cfa6a6dad2 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Import the demo browser into widget examples.Jocelyn Turcotte2013-08-2068-0/+13450
| | | | | | | | | Import the sources as-is, without adding it to the build, to allow performing diffs later on the changes that were needed to port it to use QtWebEngine and manage source compatibility issues. Change-Id: Icf8a284881ce2153e9b5a1ba97dbe77096f1b88d Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Import QtWebKit public headers.Jocelyn Turcotte2013-08-201-2/+4
| | | | | | | | | | | | | | | | | | | This is the first step toward re-implementing part of the QWebView API on top of QtWebEngine. The plan is to import the complete headers to facilitate diffs and progress tracking. Changes squashed in this commit: - Use the QWebEngine prefix for class names - Strip out non-public members and directives - Allow building using those headers by disabling the Q_PROPERTY macros and by adding a dummy implementation for virtual methods directly in the header - Update the widgetsnanobrowser example to comply with the slight changes from the previous API Change-Id: Ia7efa5430f775d09b493544430a04856cc7928f6 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Change "Contents" to "Engine" in API class names.Jocelyn Turcotte2013-08-192-4/+4
| | | | | Change-Id: I58d83f4f33728f92e4bf13b6be30b15528fdd033 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Detach common.pri from the nano browser examples.Jocelyn Turcotte2013-08-192-2/+4
| | | | | | | | | | | | | | Move common.pri to the root directory to be able to use it with tests. Remove nano browser specific logic (util.h include and common resources) from this file and use relative paths in the examples instead. This also remove unnecessary directives: - lib doesn't have to be added to INCLUDEPATH since proper modules are used - util.h doesn't need to be added to HEADERS, moc doesn't need to go through it - MOC_DIR doesn't have to be adjusted anymore Change-Id: Id706e7f2ef7c9607bdcd0ba63afecf5b5854262b Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Prepare the directories to have more examples included.Jocelyn Turcotte2013-08-194-2/+2
| | | | | | | | | | | This also ajust the name to be consistent with other Qt examples. - Move nano browser one directory level down, also renaming them to match their target name - Remove the dashes from the target names - Rename the qtquick example directory to quick, matching the style in lib Change-Id: I4a5e31be0b919ae596eadbf731be52372ae61151 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* [Examples] Add Ctrl + L shortcut for testingPierre Rossi2013-07-311-0/+7
| | | | | | | It's quite convenient when one wants to test if navigating works. Change-Id: I89404df3a9a878701180fdd5b5144b46b3f68df5 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Split out the Widgets and QtQuick integrationPierre Rossi2013-07-311-1/+1
| | | | | | | | | | | | | | | This is the first step to making proper Qt Modules out of QtWebEngine. The Widgets integration becomes a proper C++ Qt Module while we make the QtQuick side a QML plugin for now (could probably be promoted if the need arises). Code-wise, this means the introduction of a WebContentsAdapterClient interface that is subclassed by the private implementation of our API classes for delegation of things that are UI specific. Functionality from WebContents and the like is exposed via the WebContentsAdapter. Change-Id: I4ca3395b9fe8502a24e36002cfd5af44067bb6e8 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Move the icons into common.Zeno Albisser2013-07-031-9/+5
| | | | | | | | Use the same icons for the widgets and qtquick example. Remove the styling as it does not work on all platforms anyway. Change-Id: Iff59455689619ae45823eb835768d7c4fc75bd93 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Disable the back/forward buttons when appropriate.Zeno Albisser2013-06-182-2/+6
|
* Startup URL from command line argsPierre Rossi2013-06-181-1/+3
|
* Add initial API layer for widgets.Zeno Albisser2013-06-182-1/+15
|
* cleaner content margins for the nested layoutsPierre Rossi2013-06-181-1/+5
| | | | also remove QQUICKWEBENGINE env var
* Split out the example into two distinct onesPierre Rossi2013-06-174-0/+231
Cleaner than deciding on startup with an env variable