1. Aug 13, 2014
    • Laszlo Agocs's avatar
      Add QQuickWidget::setClearColor() · 2b3de73d
      Laszlo Agocs authored
      
      And make qquickviewcomparison able to demonstrate how to create a
      partially transparent QQuickWidget.
      
      Avoid also recreating the QQuickView/QQuickWidget multiple times
      when switching between the radio buttons.
      
      [ChangeLog] Added QQuickWidget::setClearColor() in order to support
      semi-transparent QQuickWidgets.
      
      Change-Id: I319ad4afbe909530274d09f2a7fcff23730d6ebd
      Reviewed-by: default avatarJørgen Lind <jorgen.lind@digia.com>
      2b3de73d
  2. Aug 11, 2014
  3. Aug 08, 2014
    • Laszlo Agocs's avatar
      Invalidate the scenegraph properly in the rendercontrol · e823bb5a
      Laszlo Agocs authored
      Taking the persistent flags from the QQuickWindow was a bad idea. These
      are not applicable to the case when an application drives the scene via
      QQuickRenderControl. Once stop() is called, all resources must be
      released since the context itself will typically be destroyed afterwards.
      
      This is a backport of 0b0bb319
      
       in dev.
      
      On top of this, stop() becomes invalidate() since the original
      invalidate() function is never used by anyone. This naming is much cleaner
      and is consistent with QSGContext and friends.
      
      Task-number: QTBUG-40505
      Task-number: QTBUG-40435
      Change-Id: I398f1bda31f335c3508b238f0328305d3cd79ffd
      Reviewed-by: default avatarGunnar Sletta <gunnar.sletta@jollamobile.com>
      e823bb5a
  4. Aug 07, 2014
  5. Aug 06, 2014
    • Laszlo Agocs's avatar
      Fix fbo creation and resize logic in QQuickWidget · 14b4747b
      Laszlo Agocs authored
      
      This corrects two issues:
      
      1. Recreating the fbo twice when the widget is shown. Calling
      createFramebufferObject() is not necessary in this case since createContext()
      will trigger this anyhow due to scenegraphInitialized().
      
      2. Avoid recreating the fbo when the size is the same as before. Some platforms
      are keen on sending resize events with the same size. These should be ignored.
      What's worse, some platforms (cocoa) generate a resize on exitting (Cmd-Q)
      and not ignoring the resize at that stage is dangerous since the scenegraph
      is already invalidated.
      
      Task-number: QTBUG-40505
      Change-Id: I21ff418fde449aa15eef4d6593e7a518861fcde1
      Reviewed-by: default avatarGunnar Sletta <gunnar.sletta@jollamobile.com>
      14b4747b
  6. Aug 05, 2014
  7. Jul 07, 2014
  8. Jul 01, 2014
    • Laszlo Agocs's avatar
      Add grabFramebuffer() to QQuickWidget and use it in the autotest · 27bbd516
      Laszlo Agocs authored
      
      This introduces the need for a grab function in QQuickWidget.
      The render control has one already so there is no reason for not exposing
      this in QQuickWidget too.
      
      This also means that a relatively meaningful autotest can be now be added.
      
      [ChangeLog][QtQuick] Added QQuickWidget::grabFramebuffer() for capturing the content into a QImage.
      
      Task-number: QTBUG-37589
      Change-Id: I5ca8192c0ef8dab4f076a4db27b64aebe3359bb8
      Reviewed-by: default avatarGunnar Sletta <gunnar.sletta@jollamobile.com>
      27bbd516
  9. Jun 24, 2014
    • Laszlo Agocs's avatar
      Make QQuickRenderControl public · 745a7119
      Laszlo Agocs authored
      
      QQuickRenderControl allows rendering Qt Quick 2 scenes into framebuffer
      objects which can then be used in arbitrary ways in Qt-based or 3rd party
      OpenGL renderers.
      
      [ChangeLog][QtQuick] Introduced QQuickRenderControl as a public API.
      
      Task-number: QTBUG-37944
      Change-Id: I84262243b261b35cefdf67ec6bba8127a0f29275
      Reviewed-by: default avatarPaul Olav Tvete <paul.tvete@digia.com>
      745a7119
  10. Jun 13, 2014
    • Laszlo Agocs's avatar
      Set StrongFocus on QQuickWidget · 6bb3b941
      Laszlo Agocs authored
      
      Make text input functional out of the box.
      
      Both QGraphicsView and QDeclarativeView (QQuick1) do this so there
      is no reason to do this differently for QQuickWidget. For QQuickWindow
      and QQuickView the issue does not exist in the first place, they will
      accept the focus by default.
      
      Task-number: QTBUG-39605
      Change-Id: I74f01b85342df51aa3c0e80baf58ba1619c63438
      Reviewed-by: default avatarGunnar Sletta <gunnar.sletta@jollamobile.com>
      6bb3b941
  11. Jun 10, 2014
  12. Jun 06, 2014
    • Laszlo Agocs's avatar
      Add support for multisampling in QQuickWidget · 2e4a40a6
      Laszlo Agocs authored
      
      Use a multisampled fbo when the requested format has samples > 0.
      Resolving happens after each rendering of the scene.
      
      The blit to the temporary non-multisampled fbo could be avoided,
      in theory, by sending the fbo instead of the texture id down the
      stack and performing a blit directly to fbo #0. This however
      involves a number of potential issues, for example due to the
      non-sharability of FBOs between contexts. Hence it is left as a
      future exercise.
      
      Task-number: QTBUG-39187
      Change-Id: Iae98b969bcbc3bb57e6d73288496f5428913c826
      Reviewed-by: default avatarPaul Olav Tvete <paul.tvete@digia.com>
      Reviewed-by: default avatarGunnar Sletta <gunnar.sletta@jollamobile.com>
      2e4a40a6
  13. Jun 05, 2014
    • Laszlo Agocs's avatar
      Fix QQuickWidget offscreen surface format and creation order · 13be09c9
      Laszlo Agocs authored
      
      Create the QOffscreenSurface together with, and after, the QOpenGLContext.
      This is essential to get a surface that is compatible with the context and
      is in line with the QOffscreenSurface usage recommendation from the docs.
      
      Otherwise, if the offscreen surface gets created first, without
      knowing what _actual_ format (e.g. EGL configuration) the context
      will use, the result is an incompatible surface and context on
      systems that offer a different set of configurations for window and
      pbuffer surfaces.
      
      This fixes QQuickWidget on EGL implementations that offer both 16 and 24
      bit pbuffer configs, but only 24 (or 32) bit window configs.
      
      Task-number: QTBUG-39474
      Change-Id: I43925d2b25e28d26d172ce9d22651c25b281b832
      Reviewed-by: default avatarPaul Olav Tvete <paul.tvete@digia.com>
      13be09c9
    • Laszlo Agocs's avatar
      Detect and warn when using QQuickWidget as a native child · c9553ad7
      Laszlo Agocs authored
      
      This is not supported.
      
      Change-Id: I19ed485ee629baa4f3631770ab0c730e0ef6748e
      Reviewed-by: default avatarPaul Olav Tvete <paul.tvete@digia.com>
      c9553ad7
  14. Jun 03, 2014
  15. May 27, 2014
  16. May 23, 2014
  17. May 21, 2014
    • Paul Olav Tvete's avatar
      Don't crash on Android · a51822cb
      Paul Olav Tvete authored
      
      If the platform plugin does not support the features needed
      for QQuickWidget, then don't try to use it. This is a minimal
      change to stop applications from crashing: it does not give
      the application a way to find out if QQuickWidget is supported,
      since that would mean new API, which we can't do in a patch
      release.
      
      Task-number: QTBUG-38268
      Change-Id: I975a03b105b1d5c21a1d8ae440a5802ce8c1967b
      Reviewed-by: default avatarLaszlo Agocs <laszlo.agocs@digia.com>
      a51822cb
    • Paul Olav Tvete's avatar
      Focus event fix for QQuickWidget · 7c1ee572
      Paul Olav Tvete authored
      
      Relay focus in/out events to the offscreen QQuickWindow, and also
      make the offscreen window believe it has the focus when the
      render window has it.
      
      Task-number: QTBUG-39033
      Change-Id: Ib50b134e635833ad3813693ca272f04607c525b8
      Reviewed-by: default avatarLaszlo Agocs <laszlo.agocs@digia.com>
      7c1ee572
  18. Apr 25, 2014
  19. Apr 24, 2014
  20. Apr 04, 2014
  21. Mar 28, 2014
  22. Mar 24, 2014
  23. Mar 19, 2014
  24. Mar 18, 2014
  25. Mar 14, 2014
  26. Mar 13, 2014
  27. Mar 12, 2014
  28. Mar 11, 2014
  29. Mar 10, 2014
  30. Mar 07, 2014
  31. Feb 28, 2014
  32. Feb 25, 2014
  33. Feb 21, 2014