The workaround for this seems to cause a crash when running the unit tests if the window loses focus. I guess this will probably happen in the browser as well:
#0 0x00007fffc85eed25 in oxide::qt::RenderWidgetHostView::FocusedNodeChanged (this=0x10dedc0, is_editable_node=<optimised out>)
at ../../../../qt/core/browser/oxide_qt_render_widget_host_view.cc:823
#1 0x00007fffca8b8cba in content::RenderViewHostImpl::OnFocusedNodeChanged (this=this@entry=0x2692550, is_editable_node=false)
at ../../../../third_party/chromium/src/content/browser/renderer_host/render_view_host_impl.cc:1307
#2 0x00007fffca8c35a0 in DispatchToMethod<content::RenderViewHostImpl, void (content::RenderViewHostImpl::*)(bool), bool> (arg=..., method=
(void (content::RenderViewHostImpl::*)(content::RenderViewHostImpl * const, bool)) 0x7fffca8b8c90 <content::RenderViewHostImpl::OnFocusedNodeChanged(bool)>, obj=0x2692550)
at ../../../../third_party/chromium/src/base/tuple.h:548
#3 Dispatch<content::RenderViewHostImpl, content::RenderViewHostImpl, void, void (content::RenderViewHostImpl::*)(bool)> (sender=<optimised out>, parameter=0x0, func=
(void (content::RenderViewHostImpl::*)(content::RenderViewHostImpl * const, bool)) 0x7fffca8b8c90 <content::RenderViewHostImpl::OnFocusedNodeChanged(bool)>, obj=0x2692550, msg=
0x7fff8c06cc68) at ../../../../third_party/chromium/src/content/common/view_messages.h:1170
#4 content::RenderViewHostImpl::OnMessageReceived (this=0x2692550, msg=...) at ../../../../third_party/chromium/src/content/browser/renderer_host/render_view_host_impl.cc:998
#5 0x00007fffca8b17a1 in content::RenderProcessHostImpl::OnMessageReceived (this=0x2691e30, msg=...)
at ../../../../third_party/chromium/src/content/browser/renderer_host/render_process_host_impl.cc:1416
#6 0x00007fffc8c7c9e2 in IPC::ChannelProxy::Context::OnDispatchMessage (this=0x10e19a0, message=...) at ../../../../third_party/chromium/src/ipc/ipc_channel_proxy.cc:273
#7 0x00007fffc867dedb in Run (this=0x7fffffffabb8) at ../../../../third_party/chromium/src/base/callback.h:401
#8 base::MessageLoop::RunTask (this=this@entry=0xda2890, pending_task=...) at ../../../../third_party/chromium/src/base/message_loop/message_loop.cc:450
#9 0x00007fffc867e921 in base::MessageLoop::DeferOrRunPendingTask (this=this@entry=0xda2890, pending_task=...)
at ../../../../third_party/chromium/src/base/message_loop/message_loop.cc:462
#10 0x00007fffc8682185 in base::MessageLoop::DoWork (this=0xda2890) at ../../../../third_party/chromium/src/base/message_loop/message_loop.cc:576
#11 0x00007fffc85ee66a in oxide::qt::MessagePump::customEvent (this=0xd9e3f0, event=<optimised out>) at ../../../../qt/core/browser/oxide_qt_message_pump.cc:60
#12 0x00007ffff79c42ad in QObject::event (this=0xd9e3f0, e=<optimised out>) at kernel/qobject.cpp:1169
#13 0x00007ffff799befd in QCoreApplication::notify (this=<optimised out>, receiver=<optimised out>, event=<optimised out>) at kernel/qcoreapplication.cpp:943
#14 0x00007ffff799bc2d in QCoreApplication::notifyInternal (this=0x7fffffffd800, receiver=0xd9e3f0, event=event@entry=0x10f55e0) at kernel/qcoreapplication.cpp:881
#15 0x00007ffff799de07 in sendEvent (event=0x10f55e0, receiver=<optimised out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:232
#16 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x60f4d0) at kernel/qcoreapplication.cpp:1485
#17 0x00007ffff799e433 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1343
#18 0x00007ffff79e8cd3 in postEventSourceDispatch (s=0x6c08f0) at kernel/qeventdispatcher_glib.cpp:279
#19 0x00007ffff4fe3e04 in g_main_dispatch (context=0x7fffe4003000) at /build/buildd/glib2.0-2.40.0/./glib/gmain.c:3064
#20 g_main_context_dispatch (context=context@entry=0x7fffe4003000) at /build/buildd/glib2.0-2.40.0/./glib/gmain.c:3663
#21 0x00007ffff4fe4048 in g_main_context_iterate (context=context@entry=0x7fffe4003000, block=block@entry=0, dispatch=dispatch@entry=1, self=<optimised out>)
at /build/buildd/glib2.0-2.40.0/./glib/gmain.c:3734
#22 0x00007ffff4fe40ec in g_main_context_iteration (context=0x7fffe4003000, may_block=0) at /build/buildd/glib2.0-2.40.0/./glib/gmain.c:3795
#23 0x00007ffff79e898c in QEventDispatcherGlib::processEvents (this=0x6d17e0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#24 0x00007ffff799bffa in QCoreApplication::processEvents (flags=..., flags@entry=..., maxtime=maxtime@entry=50) at kernel/qcoreapplication.cpp:1079
#25 0x00007ffff69518e9 in qWait (ms=50) at /usr/include/qt5/QtTest/qtestsystem.h:66
#26 QuickTestResult::wait (this=<optimised out>, ms=50) at quicktestresult.cpp:570
#27 0x00007ffff6954fcb in QuickTestResult::qt_static_metacall (_o=_o@entry=0xdfd040, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=23, _a=_a@entry=0x7fffffffb270)
at .moc/moc_quicktestresult_p.cpp:286
#28 0x00007ffff6955327 in QuickTestResult::qt_metacall (this=0xdfd040, _c=QMetaObject::InvokeMetaMethod, _id=23, _a=0x7fffffffb270) at .moc/moc_quicktestresult_p.cpp:395
#29 0x00007ffff3f7e241 in CallMethod (object=object@entry=0xdfd040, index=<optimised out>, returnType=returnType@entry=43, argCount=<optimised out>, argTypes=<optimised out>,
engine=engine@entry=0xcfd150, callArgs=callArgs@entry=0x7fffd3801f28) at jsruntime/qv4qobjectwrapper.cpp:1115
#30 0x00007ffff3f81322 in CallPrecise (object=object@entry=0xdfd040, data=..., engine=engine@entry=0xcfd150, callArgs=callArgs@entry=0x7fffd3801f28)
at jsruntime/qv4qobjectwrapper.cpp:1362
#31 0x00007ffff3f81999 in QV4::QObjectMethod::callInternal (this=0x7fffd81fc4a0, callData=0x7fffd3801f28) at jsruntime/qv4qobjectwrapper.cpp:1837
#32 0x00007ffff3f076ca in call (callData=0x7fffd3801f28, this=<optimised out>) at jsruntime/qv4functionobject_p.h:133
#33 QV4::__qmljs_call_property (context=0x7fffffffb850, name=..., callData=...) at jsruntime/qv4runtime.cpp:915
#34 0x00007ffff7e3f5af in ?? ()
#35 0x0000000000cfd210 in ?? ()
#36 0x00007ffff7ed91a0 in ?? ()
#37 0x0003000000000002 in ?? ()
#38 0x00007ffff7eb3280 in ?? ()
#39 0x0000000000cfd210 in ?? ()
#40 0x0000000000cfd210 in ?? ()
#41 0x00007fffffffba20 in ?? ()
The workaround for this seems to cause a crash when running the unit tests if the window loses focus. I guess this will probably happen in the browser as well:
#0 0x00007fffc85eed25 in oxide:: qt::RenderWidge tHostView: :FocusedNodeCha nged (this=0x10dedc0, is_editable_ node=<optimised out>) ./../qt/ core/browser/ oxide_qt_ render_ widget_ host_view. cc:823 :RenderViewHost Impl::OnFocused NodeChanged (this=this@ entry=0x2692550 , is_editable_ node=false) ./../third_ party/chromium/ src/content/ browser/ renderer_ host/render_ view_host_ impl.cc: 1307 d<content: :RenderViewHost Impl, void (content: :RenderViewHost Impl::* )(bool) , bool> (arg=..., method= :RenderViewHost Impl::* )(content: :RenderViewHost Impl * const, bool)) 0x7fffca8b8c90 <content: :RenderViewHost Impl::OnFocused NodeChanged( bool)>, obj=0x2692550) ./../third_ party/chromium/ src/base/ tuple.h: 548 content: :RenderViewHost Impl, content: :RenderViewHost Impl, void, void (content: :RenderViewHost Impl::* )(bool) > (sender=<optimised out>, parameter=0x0, func= :RenderViewHost Impl::* )(content: :RenderViewHost Impl * const, bool)) 0x7fffca8b8c90 <content: :RenderViewHost Impl::OnFocused NodeChanged( bool)>, obj=0x2692550, msg= ./../third_ party/chromium/ src/content/ common/ view_messages. h:1170 :RenderViewHost Impl::OnMessage Received (this=0x2692550, msg=...) at ../../. ./../third_ party/chromium/ src/content/ browser/ renderer_ host/render_ view_host_ impl.cc: 998 :RenderProcessH ostImpl: :OnMessageRecei ved (this=0x2691e30, msg=...) ./../third_ party/chromium/ src/content/ browser/ renderer_ host/render_ process_ host_impl. cc:1416 xy::Context: :OnDispatchMess age (this=0x10e19a0, message=...) at ../../. ./../third_ party/chromium/ src/ipc/ ipc_channel_ proxy.cc: 273 fabb8) at ../../. ./../third_ party/chromium/ src/base/ callback. h:401 op::RunTask (this=this@ entry=0xda2890, pending_task=...) at ../../. ./../third_ party/chromium/ src/base/ message_ loop/message_ loop.cc: 450 op::DeferOrRunP endingTask (this=this@ entry=0xda2890, pending_task=...) ./../third_ party/chromium/ src/base/ message_ loop/message_ loop.cc: 462 op::DoWork (this=0xda2890) at ../../. ./../third_ party/chromium/ src/base/ message_ loop/message_ loop.cc: 576 qt::MessagePump ::customEvent (this=0xd9e3f0, event=<optimised out>) at ../../. ./../qt/ core/browser/ oxide_qt_ message_ pump.cc: 60 qobject. cpp:1169 n::notify (this=<optimised out>, receiver=<optimised out>, event=<optimised out>) at kernel/ qcoreapplicatio n.cpp:943 n::notifyIntern al (this=0x7ffffff fd800, receiver=0xd9e3f0, event=event@ entry=0x10f55e0 ) at kernel/ qcoreapplicatio n.cpp:881 QtCore/ ../../src/ corelib/ kernel/ qcoreapplicatio n.h:232 nPrivate: :sendPostedEven ts (receiver= receiver@ entry=0x0, event_type= event_type@ entry=0, data=0x60f4d0) at kernel/ qcoreapplicatio n.cpp:1485 n::sendPostedEv ents (receiver= receiver@ entry=0x0, event_type= event_type@ entry=0) at kernel/ qcoreapplicatio n.cpp:1343 Dispatch (s=0x6c08f0) at kernel/ qeventdispatche r_glib. cpp:279 0x7fffe4003000) at /build/ buildd/ glib2.0- 2.40.0/ ./glib/ gmain.c: 3064 context_ dispatch (context= context@ entry=0x7fffe40 03000) at /build/ buildd/ glib2.0- 2.40.0/ ./glib/ gmain.c: 3663 context_ iterate (context= context@ entry=0x7fffe40 03000, block=block@ entry=0, dispatch= dispatch@ entry=1, self=<optimised out>) buildd/ glib2.0- 2.40.0/ ./glib/ gmain.c: 3734 context_ iteration (context= 0x7fffe4003000, may_block=0) at /build/ buildd/ glib2.0- 2.40.0/ ./glib/ gmain.c: 3795 rGlib:: processEvents (this=0x6d17e0, flags=...) at kernel/ qeventdispatche r_glib. cpp:426 n::processEvent s (flags=..., flags@entry=..., maxtime= maxtime@ entry=50) at kernel/ qcoreapplicatio n.cpp:1079 qt5/QtTest/ qtestsystem. h:66 ::wait (this=<optimised out>, ms=50) at quicktestresult .cpp:570 ::qt_static_ metacall (_o=_o@ entry=0xdfd040, _c=_c@entry= QMetaObject: :InvokeMetaMeth od, _id=_id@entry=23, _a=_a@entry= 0x7fffffffb270) quicktestresult _p.cpp: 286 ::qt_metacall (this=0xdfd040, _c=QMetaObject: :InvokeMetaMeth od, _id=23, _a=0x7fffffffb270) at .moc/moc_ quicktestresult _p.cpp: 395 object@ entry=0xdfd040, index=<optimised out>, returnType= returnType@ entry=43, argCount=<optimised out>, argTypes=<optimised out>, engine@ entry=0xcfd150, callArgs= callArgs@ entry=0x7fffd38 01f28) at jsruntime/ qv4qobjectwrapp er.cpp: 1115 object@ entry=0xdfd040, data=..., engine= engine@ entry=0xcfd150, callArgs= callArgs@ entry=0x7fffd38 01f28) qv4qobjectwrapp er.cpp: 1362 hod::callIntern al (this=0x7fffd81 fc4a0, callData= 0x7fffd3801f28) at jsruntime/ qv4qobjectwrapp er.cpp: 1837 0x7fffd3801f28, this=<optimised out>) at jsruntime/ qv4functionobje ct_p.h: 133 qmljs_call_ property (context= 0x7fffffffb850, name=..., callData=...) at jsruntime/ qv4runtime. cpp:915
at ../../.
#1 0x00007fffca8b8cba in content:
at ../../.
#2 0x00007fffca8c35a0 in DispatchToMetho
(void (content:
at ../../.
#3 Dispatch<
(void (content:
0x7fff8c06cc68) at ../../.
#4 content:
#5 0x00007fffca8b17a1 in content:
at ../../.
#6 0x00007fffc8c7c9e2 in IPC::ChannelPro
#7 0x00007fffc867dedb in Run (this=0x7ffffff
#8 base::MessageLo
#9 0x00007fffc867e921 in base::MessageLo
at ../../.
#10 0x00007fffc8682185 in base::MessageLo
#11 0x00007fffc85ee66a in oxide::
#12 0x00007ffff79c42ad in QObject::event (this=0xd9e3f0, e=<optimised out>) at kernel/
#13 0x00007ffff799befd in QCoreApplicatio
#14 0x00007ffff799bc2d in QCoreApplicatio
#15 0x00007ffff799de07 in sendEvent (event=0x10f55e0, receiver=<optimised out>) at ../../include/
#16 QCoreApplicatio
#17 0x00007ffff799e433 in QCoreApplicatio
#18 0x00007ffff79e8cd3 in postEventSource
#19 0x00007ffff4fe3e04 in g_main_dispatch (context=
#20 g_main_
#21 0x00007ffff4fe4048 in g_main_
at /build/
#22 0x00007ffff4fe40ec in g_main_
#23 0x00007ffff79e898c in QEventDispatche
#24 0x00007ffff799bffa in QCoreApplicatio
#25 0x00007ffff69518e9 in qWait (ms=50) at /usr/include/
#26 QuickTestResult
#27 0x00007ffff6954fcb in QuickTestResult
at .moc/moc_
#28 0x00007ffff6955327 in QuickTestResult
#29 0x00007ffff3f7e241 in CallMethod (object=
engine=
#30 0x00007ffff3f81322 in CallPrecise (object=
at jsruntime/
#31 0x00007ffff3f81999 in QV4::QObjectMet
#32 0x00007ffff3f076ca in call (callData=
#33 QV4::__
#34 0x00007ffff7e3f5af in ?? ()
#35 0x0000000000cfd210 in ?? ()
#36 0x00007ffff7ed91a0 in ?? ()
#37 0x0003000000000002 in ?? ()
#38 0x00007ffff7eb3280 in ?? ()
#39 0x0000000000cfd210 in ?? ()
#40 0x0000000000cfd210 in ?? ()
#41 0x00007fffffffba20 in ?? ()