1. Sep 19, 2017
  2. Aug 31, 2017
    • Peter Varga's avatar
      Add auto tests for MultipleMouseClickHelper · 656b7fdd
      Peter Varga authored
      
      Qt WebEngine implements a custom handler for multiple mouse clicks.
      These tests are intended to test whether the mouse click events are
      properly forwarded to the Chromium's RenderWidgetHost.
      Custom mouse click test functions have been also added for the custom
      mouse click handler.
      
      Change-Id: Ifdc7d09f5e0f0f76c37e137e5743482bf3fb8abb
      Reviewed-by: default avatarAllan Sandfeld Jensen <allan.jensen@qt.io>
      656b7fdd
  3. Jun 14, 2017
  4. Apr 27, 2017
    • Joerg Bornemann's avatar
      Make python2 usage more robust · e453be82
      Joerg Bornemann authored
      
      After configuring Qt there will be an error message if a suitable python
      version could not be found.
      
      Add python2 configure test that
        - first looks for python2 in PATH
        - then looks for python in PATH
        - checks the Python version
        - stores the result in QMAKE_PYTHON2
      
      Use $$QMAKE_PYTHON2 everywhere where we call python.
      
      Pass $$QMAKE_PYTHON2 to gn for its exec_script feature.
      
      Task-number: QTBUG-60164
      Change-Id: I33de1273cbd20a787b3c8889d35280784dbcd5ae
      Reviewed-by: default avatarOswald Buddenhagen <oswald.buddenhagen@qt.io>
      Reviewed-by: default avatarMichal Klocek <michal.klocek@qt.io>
      e453be82
  5. Jan 26, 2017
  6. Jan 16, 2017
  7. Nov 25, 2016
  8. Nov 14, 2016
  9. Oct 02, 2016
  10. Aug 31, 2016
    • Michal Klocek's avatar
      Add context menu request to qml api · 3f73e471
      Michal Klocek authored
      
      Introduce qml APIs to support custom context menus.
      
      [ChangeLog][QtWebEngine][QML] Added ability to show custom
      context menu.
      
      Task-number: QTBUG-52554
      Change-Id: Ief0cbbbf221f4c6849e16bbba7417dccee59ad61
      Reviewed-by: default avatarKai Koehne <kai.koehne@qt.io>
      3f73e471
    • Michal Klocek's avatar
      Add dialog requests to qml api · 3cbe59e2
      Michal Klocek authored
      
      Introduce qml APIs to support custom dialogs:
       * http and proxy authentication
       * javascript dialogs
       * file pickers
       * color pickers
       * form validation messages
      
      [ChangeLog][QtWebEngine][QML] Added ability to provide custom dialogs
      for HTTP and proxy authentication, JavaScript alerts, file and color
      picking, and form validation messages.
      
      Task-number: QTBUG-51190
      Change-Id: I559ca59264750feb36ba7d3dba0bf0647509306d
      Reviewed-by: default avatarKai Koehne <kai.koehne@qt.io>
      3cbe59e2
  11. Apr 20, 2016
  12. Apr 18, 2016
    • Michal Klocek's avatar
      Update spellchecker APIs · 7d172fcf
      Michal Klocek authored
      
      * marks new properties in QQuickWebEngineProfile as FINAL
      * removes QT_NO_SPELLCHECK from API headers
      * renames spellCheckLanguages() to availableDictionaries()
      * removes "togle spellcheck" methods and actions
      * use WEBENGINE_CONFIG instead of CONFIG for disable the feature at
      compile time: WEBENGINE_CONFIG+=no_spellcheck
      
      Done-With: Peter Varga <pvarga@inf.u-szeged.hu>
      Task-number: QTBUG-52371
      Change-Id: I8c8eff497b9e7afe0cec2edc97dec248151487f2
      Reviewed-by: default avatarMichael Brüning <michael.bruning@theqtcompany.com>
      7d172fcf
  13. Apr 09, 2016
  14. Feb 01, 2016
    • Michal Klocek's avatar
      Add spell checker support · 4713387c
      Michal Klocek authored
      
      Integrate chromium spell checker:
      * add spellchecker and dependencies to build
      * underline misspelled words in html text areas
      * right-click context menu shows up to 4 options to
        correct the misspelled word
      * toggle spell check from context menu
      * add new qml and widget api calls to qwebengineprofile
        to enable/disable spell check, select spell check language,
        get list of supported languages/dictionaries
      * register new qml spell check properties for QtWebEngine 1.3
      * CONFIG+="no_spellcheck" to remove spellcheck support
      
      Change-Id: Ie61434ab9493597d7759a6f33794f6859c4e3a4c
      Reviewed-by: default avatarAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>
      4713387c
  15. Dec 12, 2015
  16. Jun 08, 2015
    • Andras Becsi's avatar
      Add public QtWebEngineCore C++ API · bfef77e3
      Andras Becsi authored
      This patch introduces a new public C++ API layer in preparation to make
      it possible to integrate with lower level Chromium features related mostly
      to networking operations like accessing and blocking cookies, custom
      request headers, etc.
      This API layer can be used both by Qt Widgets and Qt Quick applications
      with a small C++ core. It should contatain API to access features that
      usually run on the IO thread to make it possible to perform heavy tasks
      that would otherwise require costly context switches to the UI thread.
      Furthermore for these features a QML API does either not make sense,
      since they are non-UI-related, or a QML API is simply not feasible,
      because the API is meant for advanced usecases like web browser
      development (i.e. custom protocol handlers, network traffic
      interception cookie syncing, etc.).
      In the long term this layer could also make it possible to reduce code
      duplication in the widgets and quick layers by moving common parts to
      the core layer.
      The new...
      bfef77e3
  17. Mar 06, 2015
  18. Feb 22, 2015
  19. Feb 05, 2015
  20. Feb 02, 2015
  21. Jan 12, 2015
    • Andras Becsi's avatar
      Add QML download API · e6a74159
      Andras Becsi authored
      
      This patch exposes downloadStarted and downloadFinished
      signals on the WebEngineProfile to notify about downloads.
      The WebEngineDownloadItem exposes a subset of Chromium's
      content::DownloadItem functionality.
      For now we expose minimal requirements to be able to control
      downloads in QML but this can be extended in the future.
      This patch also adds a DownloadView to quicktestbrowser
      to demonstrate the usage of the new API.
      
      [ChangeLog][QtWebEngineQML] Add QtQuick download API
      
      Change-Id: I8d8f0daf02c4e0151000427fc2a4b37d28b9db52
      Reviewed-by: default avatarJocelyn Turcotte <jocelyn.turcotte@digia.com>
      e6a74159
  22. Dec 12, 2014
  23. Nov 25, 2014
    • Jocelyn Turcotte's avatar
      Avoid relying on QOpenGL classes to handle RenderPasses · 3a7674a1
      Jocelyn Turcotte authored
      
      Use QSGLayer and get rid of RenderPassTexture so that we can render
      intermediate layers with the QtQuick 2D Renderer.
      This reintroduces the private dependency on QtQuick since the
      QSGLayer factory methods aren't available publically, and also that
      we need to use QSGImageNode instead of QSGSimpleTextureNode to use
      them.
      
      Since we can't subclass QSGLayer to hold a reference to SG objects
      directly in the nodes that use them, store them all in the wrapping
      DelegatedFrameNode in a SGObjects structs. This works assuming that
      the DelegatedFrameNode will always be at the root of our nodes,
      layers and textures; if the scene graph destroys the
      DelegatedFrameNode all child nodes will be destroyed with it.
      
      Change-Id: Iedeceb8f98eb54fd8228a677c366d6df9a270e11
      Reviewed-by: default avatarZeno Albisser <zeno.albisser@digia.com>
      3a7674a1
  24. Sep 11, 2014
  25. Sep 02, 2014
  26. Aug 06, 2014
    • Andras Becsi's avatar
      Add QQuick API for intercepting navigation requests · ca30d037
      Andras Becsi authored
      
      Add missing navigationRequested API to be able to intercept
      navigation requests. This is useful for ignoring requests
      for example in kiosk-like applications that want to restrinct
      navigation to a specific url or domain, or want to disable
      specific types of navigation requests (e.g. reloading, clicking
      links, form submissions).
      
      Change-Id: Ie375e635a3c3566527972d05f5d99b39489c5ca8
      Reviewed-by: default avatarJocelyn Turcotte <jocelyn.turcotte@digia.com>
      ca30d037
  27. Jul 07, 2014
    • Andras Becsi's avatar
      Fix the build with recent qtbase · bef6cc64
      Andras Becsi authored
      
      Since 3cd70c11bc7bbe3c5e9e4972d2273cf51bbdc30e in
      qtbase Qt modules require cmake tests to be present
      which makes QtWebEngine fail with "Missing CMake tests."
      We do not support building with cmake at this point,
      so disable these tests by setting CMAKE_MODULE_TESTS
      to '-' for module pro files.
      
      Change-Id: I777e6b2c7ce975ad021281800987f9d3ce173399
      Reviewed-by: default avatarJocelyn Turcotte <jocelyn.turcotte@digia.com>
      bef6cc64
  28. Apr 01, 2014
    • Pierre Rossi's avatar
      Make WebUI popups work with QtQuick · c5431da0
      Pierre Rossi authored
      
      This is used by popups for select elements and date pickers among
      other things. We can keep using the same RenderWidgetHostViewQtDelegate
      implementations for that purpose, and query QPA to decide if they
      should be wrapped into their own QQuickWindow.
      
      Longer term, we might want to optionally delegate that functionality
      to QML.
      
      Change-Id: I88540ca32a9a707d380dfbf486b7f7806b5b65ff
      Reviewed-by: default avatarJocelyn Turcotte <jocelyn.turcotte@digia.com>
      c5431da0
  29. Mar 31, 2014
    • Simon Hausmann's avatar
      Centralize OpenGL initialization · 3d6d6594
      Simon Hausmann authored
      
      We now require the user to use QWebEngine::initialize() in main (preferably) and
      print out an error message if this wasn't set up accordingly. This limits the use
      of private scene graph API to inside QWebEngine and offers public API for users
      of the API.
      
      Change-Id: I787c176a85ab7784dbc8787d9876960b4872959e
      Reviewed-by: default avatarJocelyn Turcotte <jocelyn.turcotte@digia.com>
      3d6d6594
    • Jocelyn Turcotte's avatar
      Rough port of the documentation to QtWebEngine · 484f2d8c
      Jocelyn Turcotte authored
      
      This is a gross mechanical modification of the documentation, along with build
      system bindings to allow it to generate. This should allow doing iterative
      improvements to the documentation from now on.
      
      This fixes project-related qdoc warnings but we still need to do some serious
      work to get the documentation better fitting QtWebEngine. All the documentation
      is ported to match the current state of our headers (without trying to adapt
      to modified APIs yet) and we should clear the part of the documentation that we
      don't need at the same time that we clean up our public headers.
      
      Change-Id: I6fb4e10e8b4c1c53be7bc7c581286248ac04d4da
      Reviewed-by: default avatarAndras Becsi <andras.becsi@digia.com>
      484f2d8c
  30. Mar 20, 2014
  31. Mar 07, 2014
    • Jocelyn Turcotte's avatar
      Deploy QtWebEngineCore as a Qt module · 7d371328
      Jocelyn Turcotte authored
      
      This delegates the linking step from ninja to qmake so that we can
      let qmake decide the destination of the target itself, easing the
      deployment and installation logic across platforms.
      
      The module is only deployed as a binary and no header are available
      outside of the source tree. This is only to make sure that the
      dependence of the QtWebEngine and QtWebEngineWidgets libraries on it
      is resolved at runtime exactly the same way as with other Qt modules,
      on all platforms.
      
      Ninja still takes care of the compilation and gyp lets qmake know how
      and what to link by dumping the list of flags and input files in a
      generated .pri file.
      
      This has to be done in a separate .pro file so that we can make sure
      that ninja is run inconditionally before make reaches the dependency
      check in core_module.pro, ensured by the parent Makefile.
      
      Note 1: This patch removes RPATH hacks that are no longer necessary
      
      Note 2: Other targets like ffmpegsumo are still linked by ninja. The
      same logic could be moved to a qmake file but this require some more
      work to make sure that some switches (e.g. -stdlib=libc++) are
      coordinated between gyp and qmake.
      
      Change-Id: If65968547bde5b9cf732e31e97931c17ae1921a7
      Reviewed-by: default avatarZoltan Arvai <zarvai@inf.u-szeged.hu>
      Reviewed-by: default avatarAndras Becsi <andras.becsi@digia.com>
      7d371328
  32. Feb 19, 2014
  33. Feb 14, 2014
  34. Feb 13, 2014
    • Jocelyn Turcotte's avatar
      QQuickWebEngineView new window API refactoring · b81a337a
      Jocelyn Turcotte authored
      
      Improve the code and API in a few ways:
      - Expose a more discoverable "request" argument in the signal.
      - Use the request as the carrier of the backend WebContentsAdapter
        and get rid of our handle.
      - Put the adoption method (renamed to openIn) on the request object
        and keep the view API clean of a context-specific adoptHandle method.
      - Use an enum instead of strings for the new view destination.
      - Do not let JavaScript own the request object since it won't be
        necessary until we want to support asynchronous view attachment.
        We can create the request object on the heap and let the JavaScript
        engine own the object once we want to support it.
      - Move the request class to its own header.
      - Replace tabs.currentView by currentWebView in the quicknanobrowser
        qml code since we now need this property on the root object anyway.
      
      Change-Id: I40d7d15255f516ead9f3e414dd587bf345e6ca4b
      Reviewed-by: default avatarSimon Hausmann <simon.hausmann@digia.com>
      b81a337a
  35. Jan 15, 2014
    • Pierre Rossi's avatar
      Pave the way for our UI delegation strategy. · e4688691
      Pierre Rossi authored
      
      Starting with the context Menus for QtQuick.
      Add default UI delegates as a subproject. We allow ourselves to use
      Qt Quick Controls there for in order to get a nice "out of the box"
      experience for things like context menus, dialogs, etc while leaving
      the door open for system embedders to override this.
      
      Opting out of the deployment of these QML files is still very primitive
      but can be done by passing WEBENGINE_CONFIG+=no_ui_delegates at qmake
      time.
      
      Customization of context menus could be done via a qml component, which
      is probably best kept in experimental for now while we address its
      shortcomings.
      
      Change-Id: I0705b20d5ddd3bb010f9371b65a181c6b02a03e1
      Reviewed-by: default avatarJocelyn Turcotte <jocelyn.turcotte@digia.com>
      e4688691
    • Adam Kallai's avatar
      Implement QQuickWebEngineLoadRequest class · e2382d30
      Adam Kallai authored
      
      It contains information about a requested load of a web page.
      
      Change-Id: Ie45706adb51ee5bce98e7af01252d9a8389db57d
      Reviewed-by: default avatarPierre Rossi <pierre.rossi@gmail.com>
      Reviewed-by: default avatarAndras Becsi <andras.becsi@digia.com>
      e2382d30
  36. Nov 28, 2013
    • Jocelyn Turcotte's avatar
      Moving sources to src part 2: Adjust paths. · 1c5e3092
      Jocelyn Turcotte authored
      
      NOTE: To build after this you should rerun init-repository.py or run
      $> git submodule sync
      $> git submodule update
      $> git config qtwebengine.chromiumsrcdir src/3rdparty
      
      This makes everything build by adjusting paths.
      
      Other mixed-in changes:
      - Rename qtwebengine_src variables in scripts to qtwebengine_root to
        avoid confusion.
      - Cleanup the release and debug extra targets that were in lib.pro.
        This file has also been split into src.pro and core.pro.
      
      Change-Id: Ieee9158a65f526b15244eaca59e779b7069d337e
      Reviewed-by: default avatarZeno Albisser <zeno.albisser@digia.com>
      Reviewed-by: default avatarPierre Rossi <pierre.rossi@gmail.com>
      1c5e3092