       ad-do-it)))
 
 (defadvice switch-to-buffer (around smartwin-switch-to-buffer)
-  "When a bffer should be show in smart window, chage window to smart window."
+  "When a bffer should be shown in smart window, chage window to smart window."
   (let ((buffer-or-name (ad-get-arg 0)))
     (if (smartwin-match-buffer buffer-or-name)
         (let ((smart-win (smartwin-get-smart-win)))
           (with-selected-window smart-win
             ad-do-it)
-          (select-window smart-win)
-          (smartwin-enlarge-window smart-win))
+          (select-window smart-win))
       (let ((window (selected-window)))
         (if (smartwin-smart-window-p window)
-            (progn
-              (switch-to-buffer-other-window buffer-or-name)
-              (minimize-window window))
+            (switch-to-buffer-other-window buffer-or-name)
           ad-do-it)))))
 
 (defadvice switch-to-buffer-other-window

;; 2. add exceptions config
;; 3. process wrong scroll when enlarge smart window
;; 4. window-text-change-functions

;;; Code:


              (ad-activate 'delete-other-windows)
              (ad-activate 'balance-windows)
              (ad-activate 'select-window)
              (smartwin-show))
          (setq display-buffer-alist (delete pair display-buffer-alist))
          (ad-deactivate 'switch-to-buffer)
          (ad-deactivate 'switch-to-buffer-other-window)
          ;;(ad-deactivate 'windmove-do-window-select)
          ;;(ad-deactivate 'evil-window-move-very-top)
          ;;(ad-deactivate 'evil-window-move-far-left)
