diff --git a/demos/combustion_demo/src/desktop_navigation_behavior.cpp b/demos/combustion_demo/src/desktop_navigation_behavior.cpp
index 55e1a74e1f34b81e60c0fdcfc287fd152368a95f..661c7d9d83a10fcce334e40daec8f91e1f23fefb 100644
--- a/demos/combustion_demo/src/desktop_navigation_behavior.cpp
+++ b/demos/combustion_demo/src/desktop_navigation_behavior.cpp
@@ -75,25 +75,15 @@ void DesktopNavigationBehavior::OnMouseMove(int x, int y) {
 
 void DesktopNavigationBehavior::OnMouseButton(phx::Mouse::ButtonId id,
                                               phx::Mouse::ButtonEvent event) {
-  if (event == phx::Mouse::BUTTON_PRESSED) {
-    if (id == phx::Mouse::LEFT_BUTTON) {
-      rotation_mode_ = true;
-    }
-    if (id == phx::Mouse::MIDDLE_BUTTON) {
-      strafe_mode_ = true;
-    }
-    if (id == phx::Mouse::RIGHT_BUTTON) {
-      translation_mode_ = true;
-    }
-  } else {
-    if (id == phx::Mouse::LEFT_BUTTON) {
-      rotation_mode_ = false;
-    }
-    if (id == phx::Mouse::MIDDLE_BUTTON) {
-      strafe_mode_ = false;
-    }
-    if (id == phx::Mouse::RIGHT_BUTTON) {
-      translation_mode_ = false;
-    }
+  bool value_to_set = (event == phx::Mouse::BUTTON_PRESSED);
+
+  if (id == phx::Mouse::LEFT_BUTTON) {
+    rotation_mode_ = value_to_set;
+  }
+  if (id == phx::Mouse::MIDDLE_BUTTON) {
+    strafe_mode_ = value_to_set;
+  }
+  if (id == phx::Mouse::RIGHT_BUTTON) {
+    translation_mode_ = value_to_set;
   }
 }