Fixed bug where searchable menus kept keyboard focus after closing.
Fixed focus stealing problems apparent in Viewer and NodeGraph.

GadgetWidget still steals focus on mouse enter, but won't steal it from widgets which are specifically for text input and nothing else (QLineEdit and QPlainTextEdit). This fixes problems users were having where their mouse would slip and lose focus before the typed.

NodeGraph also makes sure it takes focus back when the NodeMenu is closed.

Fixes #555. Fixes #439.
Merge pull request #598 from johnhaddon/focusFixes

Focus fixes