Hi Tony,
No, you shouldn't have to check if you can run webView.Dispose() or not; we should attempt to fix that on our side, it sounds like the only sensible solution in my eyes. However, as you probably already know, we try to focus as much as possible on CefSharp3 to get it to production quality. That means that CefSharp1 won't get as much love from me as would otherwise be the case.
I think someone (perhaps you? :) should try to dig a bit deeper into the issue and see why the Dispose() method raises an exception before stuff is completely loaded. It probably has to do with the events (CEF or CefSharp) for "page load complete" or similar getting fired *after* stuff has been deallocated. So perhaps it's a matter of making sure all code on the CefSharp side don't access CEF stuff after CEF.Shutdown() has been called or similar.
Feel free to make a GitHub issue out of this, where we can discuss it a bit further. Thanks a lot for your help.
Best regards,
Per