DevTools: rework focus logic

Summary of changes:
- We actually have 3 places where GlassPanes are instantiated [Dialogs, Options
in Toolbar, DraggingElements (e.g. Colorpicker)]
- DefaultFocusedViewStack is not necessary and is removed.  Previously, it was
only used by Dialogs anyways.  Dialogs are the only GlassPanes that will save
the previously focused element and call .focus() when the dialog closes
- Showing a different tab (switching to a drawer panel) will now focus on the
new tab, if no previous focus was set
- DeviceMode's toolbar previously depended on .setSelectionRange() to keep focus
in its size input field while resizing.  Now, dragging the splitter won't steal
focus at all, so DeviceMode doesn't need to force focus on itself
- When using the Command Menu to open a panel/file, it will close the GlassPane
first (which may call .focus() on the previous element) before calling .show()
on the new panel/file, so that the new panel/file gets the final focus

BUG=604427, 609013, 612397

Review-Url: https://codereview.chromium.org/2016963002
Cr-Commit-Position: refs/heads/master@{#396955}
6 files changed