       @dispatchVisibilitychangedEvent()
 
 
+    event = "focus"
+    eventHandlerId = ++Events.eventCounter;
+
     steroids.nativeBridge.nativeCall
       method: "addEventListener"
       parameters:
-        event: "focus"
+        event: event
+        eventHandlerId: "#{event}_#{eventHandlerId}"
       successCallbacks: [focusAdded,callbacks.onSuccess]
-      recurringCallbacks: [becomeVisibleEvent, callbacks.onFailure]+      recurringCallbacks: [becomeVisibleEvent, callbacks.onFailure]

      steroids.debug
        msg: "focus added"

      steroids.nativeBridge.nativeCall
        method: "addEventListener"
        parameters:
          event: "lostFocus"
        successCallbacks: [lostFocusAdded,callbacks.onSuccess]
        recurringCallbacks: [becomeHiddenEvent, callbacks.onFailure]




class Events

  @eventCounter = Date.now()

  @dispatchVisibilitychangedEvent: (options={}) =>
    steroids.debug
