Remove IME surface when window unbinds

Previous attempt to remove IME surface [1] works when IME animates out
within same app window. However, if IME doesn't animate or window hides
without hiding keyboard, surface would still be around in memory.
With this CL, IME surface will be hidden moment it unbinds from the
window.
[1] I6c2a13dd40b22d3fd62b4763ba369992e5ff1138

Bug: 150163310
Test: Manually:
      1. Open any app that has editor and tap on editor to show IME
          adb shell  dumpsys SurfaceFlinger | grep InputMethod
      2. Note down IME Buffer layers that consume memory
         using command in #1
      3. Hide IME and note down memory again.
         It should not have anything other than container layers
      4. Use 3 button navbar and retest by pressing home button
Change-Id: I629fa817eb57e8dd6f7e58c1a358487a16363ddb
1 file changed