[keyboard] Captured key input should not be dispatched.

This change prevents captured key input by shells to be
delivered to current view in focus. Keyboard capture
is a critical need of shells (session or story) to
provide keyboard based shell functionality.

Testing: manual
Change-Id: I04edd772aa33365789b28dd24d1bc7ee233d2c02
diff --git a/garnet/bin/ui/root_presenter/presentation1.cc b/garnet/bin/ui/root_presenter/presentation1.cc
index 9d72ddd..2a16b54 100644
--- a/garnet/bin/ui/root_presenter/presentation1.cc
+++ b/garnet/bin/ui/root_presenter/presentation1.cc
@@ -682,6 +682,7 @@
             fuchsia::ui::input::KeyboardEvent clone;
             fidl::Clone(kbd, &clone);
             captured_keybindings_[i].listener->OnEvent(std::move(clone));
+            dispatch_event = false;
           }
         }
       }
diff --git a/garnet/bin/ui/root_presenter/presentation2.cc b/garnet/bin/ui/root_presenter/presentation2.cc
index 647a137..215d195 100644
--- a/garnet/bin/ui/root_presenter/presentation2.cc
+++ b/garnet/bin/ui/root_presenter/presentation2.cc
@@ -652,6 +652,7 @@
             fuchsia::ui::input::KeyboardEvent clone;
             fidl::Clone(kbd, &clone);
             captured_keybindings_[i].listener->OnEvent(std::move(clone));
+            dispatch_event = false;
           }
         }
       }