Fix an assertion in MediaCaptureDevicesDispatcher

Change-Id: I169f142e867ed1bda52dff7f5f66fb88ed802c01
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
Properly cleanup the old page when attaching a new one

This patch fixes two issues:
- The RWHV delegate of the old page would not be detached from the view
  when attaching a new page to that view. Call reattachRWHV as we do on
  the new page to make sure that the delegate gets unparented from the
  view.
- QtWebKit documents that a page having the view as its QObject parent
  should be deleted when setPage is called with a new page. This would
  cause QupZilla to leak the page when opening a new window through a
  link.

This also adds a workaround to avoid a crash when unparenting the
delegate where QOpenGLWidget would try to call paintGL without a valid
QSurface.

Change-Id: Icd2659f441d2220c26dc175d66424e6c26125861
Reviewed-by: Andras Becsi <andras.becsi@digia.com>