diff --git a/apps/system/js/value_selector/value_selector.js b/apps/system/js/value_selector/value_selector.js
index 3d9012e..98d86d6 100644
--- a/apps/system/js/value_selector/value_selector.js
+++ b/apps/system/js/value_selector/value_selector.js
@@ -1,4 +1,4 @@
-/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- /
+/* -*- Mode: js; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- /
 /* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */
 
 'use strict';
@@ -56,6 +56,7 @@ var ValueSelector = {
 
 
     this._element = document.getElementById('value-selector');
+    this._element.addEventListener('mousedown', this);
     this._containers['select'] =
       document.getElementById('value-selector-container');
     this._containers['select'].addEventListener('click', this);
@@ -63,6 +64,7 @@ var ValueSelector = {
 
     this._popups['select'] =
       document.getElementById('select-option-popup');
+    this._popups['select'].addEventListener('submit', this);
     this._popups['time'] =
       document.getElementById('time-picker-popup');
     this._popups['date'] =
@@ -80,9 +82,22 @@ var ValueSelector = {
     this._containers['time'] = document.getElementById('picker-bar');
     this._containers['date'] = document.getElementById('date-picker-container');
 
-
     ActiveEffectHelper.enableActive(this._buttons['select']);
     ActiveEffectHelper.enableActive(this._buttons['time']);
+    ActiveEffectHelper.enableActive(this._buttons['date']);
+
+    // Prevent focus being taken away by us for time picker
+    var mouseDownList = ['value-picker-hours', 'value-picker-minutes',
+                         'value-picker-hour24-state'];
+
+    function mouseDownHandler(evt) {
+      return false;
+    }
+
+    mouseDownList.forEach(function preventFocusChange(id) {
+      var element = document.getElementById(id);
+      element.onmousedown = mouseDownHandler;
+    });
 
     window.addEventListener('appopen', this);
     window.addEventListener('appwillclose', this);
@@ -115,6 +130,13 @@ var ValueSelector = {
         }
         break;
 
+      case 'submit':
+        // Prevent the form to submit.
+      case 'mousedown':
+        // Prevent focus being taken away by us.
+        evt.preventDefault();
+        break;
+
       default:
         this.debug('no event handler defined for' + evt.type);
         break;