         parent-focus-state (get-property [] :focus-state)
         parent-focused-child (:focused-child parent-focus-state)
         parent-mode (:mode parent-focus-state)
-        child-focus-state (get-property [:this :*] :focus-state)
-        child-mode (:mode child-focus-state)
-        child-throw-mode (:throw-mode child-focus-state)]
+        ;_ (println "FOCUS EVOLVER CALLED - " (:id component) " -- " reason)
+        ;_ (println " old-focus-state = " old-focus-state)
+        ]
     (cond
 
       (keyboard/key-event? component)

        :parent-of-focused (if (= parent-focused-child (:id component))
                             ;; My parent is ready to give me focus. If I have any child requesting focus then I
                             ;; give focus to it. Otherwise I leave focus with myself. (*1)
                             (if (= child-mode :requests-focus)
                               (focus-child child-id)
                               {:mode :has-focus
                                :focused-child nil})

        :throws-focus old-focus-state)

      (fgc/child-reason? reason)
      (let [child-id (nth reason 1)
            child-focus-state (get-property [:this child-id] :focus-state)
            child-mode (:mode child-focus-state)
            child-throw-mode (:throw-mode child-focus-state)]
        (case child-mode
          ;; Nothing to change in this case
          :none old-focus-state

          ;; If my child is the parent of focused component (or parent of parent ...)
          ;; then I'm :parent-of-focused as well
