1. Aug 21, 2014
  2. Aug 20, 2014
    • Jocelyn Turcotte's avatar
      Propagate the page's screen coordinates when the top-level window moved · 7717f941
      Jocelyn Turcotte authored
      
      This fixes a regression after the 37 upgrade where the select popups
      would have the wrong position. Adjust to the new behavior and also
      avoid doing a mapToGlobal of the position received in InitAsPopup.
      
      RWHV::SetBounds has been giving us screen coordinates since the
      Chromium 33 update, but popup locations somehow managed to work
      properly through some side-effect sorcery.
      
      This also fixes the value of window.screen[XY] in JavaScript which
      wasn't updated when the window was moved.
      
      Change-Id: I544499bafedccfb7d389b4abc48f1386c398473f
      Reviewed-by: default avatarPierre Rossi <pierre.rossi@gmail.com>
      7717f941
  3. Aug 19, 2014
    • Michael Brüning's avatar
      Tell ANGLE to enable multithread protection. · 33b4d6f1
      Michael Brüning authored
      
      This is done on initialization of the Web Engine as this should
      happen before any contexts and Direct 3D devices are created.
      
      It makes D3D9 create a device with the D3DCREATE_MULTITHREADED
      flag and makes D3D11 enable multithread protection using the
      ID3D10Multithread interface.
      
      Depends on the appropriate counterpart in QtANGLE.
      
      Change-Id: I8204de2f8ebe993273ff9f11af55caacb1290e4e
      Reviewed-by: default avatarAllan Sandfeld Jensen <allan.jensen@digia.com>
      33b4d6f1
  4. Aug 09, 2014
    • Pierre Rossi's avatar
      Ground work for Settings/Preferences · 37fcb151
      Pierre Rossi authored
      
      Core interface to expose toggling some of the WebPreferences
      for now and most probably some of the WebRuntimeFeatures soon.
      
      The whole dummy settings business is meant to keep things
      from breaking too much when bisecting, because it is assumed
      that there are always valid settings for a given adapterClient.
      
      Change-Id: Ic0a62bcb5af8c0254436dc770b43cde5016c3bbd
      Reviewed-by: default avatarAllan Sandfeld Jensen <allan.jensen@digia.com>
      37fcb151
  5. Aug 07, 2014
  6. Aug 06, 2014
  7. Aug 04, 2014
    • Pierre Rossi's avatar
      Expose better error information in loadRequest. · 7d90b441
      Pierre Rossi authored
      
      Use the chromium localized error strings for that purpose, otherwise the
      error description is always empty.
      
      While we're at it, let's tap into the chromium error pages, which should
      hopefully make sense for most errors, and add some static asserts to
      check that the qt quick enum and the core one are in sync.
      
      Change-Id: Icf8fa7c3bf4a674c60a10950422135fb6930447a
      Reviewed-by: default avatarAndras Becsi <andras.becsi@digia.com>
      7d90b441
    • Pierre Rossi's avatar
      s/QWebEngine/QtWebEngine/g · 35d66ce4
      Pierre Rossi authored
      
      and make it a namespace
      
      Change-Id: I15c1af8c7d0d8ab213cdf7945109263fe461d2ac
      Reviewed-by: default avatarAndras Becsi <andras.becsi@digia.com>
      35d66ce4
    • Jocelyn Turcotte's avatar
      Don't inherit from Qt private types · 1c2a4da1
      Jocelyn Turcotte authored
      
      Do the d_ptr magic ourselves to avoid having to include private
      headers from qtcore, qtgui and qtdeclarative.
      
      It is hackish to hide QObject's d_ptr member to have the macros
      working in a public class, but if anything goes wrong we just
      need to replace the private macro convenience while maintaining
      the binary compatibility of the stored extra opaque pointer.
      
      Change-Id: Idb92f4f902826bef9068a5c2ef6ea31fc3fa15b2
      Reviewed-by: default avatarAndras Becsi <andras.becsi@digia.com>
      1c2a4da1
  8. Aug 01, 2014
  9. Jul 26, 2014
  10. Jul 09, 2014
    • Frederik Gladhorn's avatar
      Add core accessibility · a9853701
      Frederik Gladhorn authored
      
      This commit adds the basics to bridge the blink
      accessibility classes to QAccessibleInterfaces.
      
      Note that it needs two follow up commits to implement the bridging from
      the QWidget/Qt Quick worlds.
      
      [ChangeLog][Accessibility] QtWebEngine now has accessibility
      support, enabling assistive technology such as screen readers to work
      with it.
      
      Change-Id: Ied1d97e61a024115ac7a9245331211f6d9fac1b4
      Reviewed-by: default avatarZeno Albisser <zeno.albisser@digia.com>
      Reviewed-by: default avatarAndras Becsi <andras.becsi@digia.com>
      a9853701
  11. Jul 07, 2014
    • Frederik Gladhorn's avatar
      Fix requests for audio and video permissions · 02cbb1d1
      Frederik Gladhorn authored
      
      Requesting MediaAudioCapture would unconditionally ask for
      QQuickWebEngineViewExperimental::MediaAudioVideoDevices instead of
      MediaAudioDevices since the if wrongly tested for the same condition
      twice.
      
      In addition fix a warning: variable 'feature' is used uninitialized whenever 'if' condition is false
      
      api/qquickwebengineview.cpp:369:13: warning: variable 'feature' is used uninitialized whenever 'if' condition is false
            [-Wsometimes-uninitialized]
         else if (requestFlags.testFlag(WebContentsAdapterClient::MediaVideoCapture))
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      api/qquickwebengineview.cpp:371:57: note: uninitialized use occurs here
         Q_EMIT e->featurePermissionRequested(securityOrigin, feature);
                                                              ^~~~~~~
      api/qquickwebengineview.cpp:369:9: note: remove the 'if' if its condition is always true
         else if (requestFlags.testFlag(WebContentsAdapterClient::MediaVideoCapture))
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      api/qquickwebengineview.cpp:364:4: note: variable 'feature' is declared here
         QQuickWebEngineViewExperimental::Feature feature;
         ^
      
      Change-Id: If63fbb5a59a71dede1d1829695f66c22849a4dcd
      Reviewed-by: default avatarMichael Bruning <michael.bruning@digia.com>
      02cbb1d1
  12. May 12, 2014
  13. May 09, 2014
  14. May 08, 2014
  15. May 05, 2014
  16. Apr 29, 2014
  17. Apr 25, 2014
  18. Apr 15, 2014
    • Jocelyn Turcotte's avatar
      Fix how NewPopupDisposition is exposed in QQuickWebEngineView · 4d1d3302
      Jocelyn Turcotte authored
      
      I initially misintepreted the meaning of the enum, assuming that it
      meant that the window should possibly be blocked. The user_gesture
      parameter in WebContentsDelegate::AddNewContents is actually doing
      this, while the popup disposition means that JavaScript requested
      the window to be opened without one of the standard decoration (i.e.
      status bar, menu bar, tool bar, etc.).
      
      Update the QtQuick API to reflect this, renaming the "isPopup"
      parameter to a more familiar "isUserInitiated".
      
      The popup disposition is named "dialog" to match the previous
      QWebPage::WebModalDialog enum.
      
      Change-Id: Ib0c4bc53671fcf0dd9499aa1be2bbc8c494ba49e
      Reviewed-by: default avatarMichael Bruning <michael.bruning@digia.com>
      4d1d3302
  19. Apr 14, 2014
  20. Apr 08, 2014
  21. Apr 03, 2014
  22. 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
  23. 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
  24. Mar 28, 2014