         titleDragButton?.title = ""
  
         NSAnimationContext.runAnimationGroup({ (context) in
-            context.duration = 0.1
+            context.duration = mouseIdle ? 1.0 : 0.2
 
             panel.animator().titleVisibility = (autoHideTitlePreference != .never) ? mouseOver ? .visible : .hidden : .visible
             titleDragButton?.animator().layer?.backgroundColor = mouseOver ? NSColor(hex: 0x3399FF).cgColor : NSColor.clear.cgColor

        DispatchQueue.main.async {
            self.mouseOver = true
        }
        /*
        if self.autoHideTitlePreference == .outside {
            self.fadeTimer = Timer.scheduledTimer(withTimeInterval: 5.0, repeats: false, block: { (timer) in
                if self.mouseOver, timer.isValid {
                    timer.invalidate()
                    DispatchQueue.main.async {
                        self.mouseExited(with: theEvent)
                        Swift.print("mouseWasSet()")
                    }
                }
            })
            if let timer = self.fadeTimer { RunLoop.current.add(timer, forMode: .common) }
        }*/
    }
    
    override func mouseExited(with theEvent: NSEvent) {

    }

    // MARK:- Translucency, AutoHideTitle Bar
    dynamic var priorIdle: Bool = false
    dynamic var mouseIdle: Bool = false {
        didSet {
            mouseStateChanged()
        }
    }
    dynamic var priorOver: Bool = false
    dynamic var mouseOver: Bool = false {
        willSet {
            priorOver = mouseOver
        }
        didSet {
            mouseStateChanged()
        }
    }
    
    fileprivate func installTitleFader() {
        let mouseSeen = mouseOver && !mouseIdle

        if let timer = fadeTimer, timer.isValid { timer.invalidate() }
        self.fadeTimer = Timer.scheduledTimer(withTimeInterval: 5.0, repeats: false, block: { (timer) in
            if mouseSeen, timer.isValid {
                timer.invalidate()
                self.mouseIdle = true
            }
        })
        if let timer = self.fadeTimer { RunLoop.current.add(timer, forMode: .common) }
    }
    
    fileprivate func mouseStateChanged() {
        let stateChange = priorOver != mouseOver || priorIdle != mouseIdle
        
        updateTranslucency()
        
        //  view or title entered
        updateTitleBar(didChange: stateChange)
        
        if mouseOver && self.autoHideTitlePreference == .outside {
            installTitleFader()
        }
    }
    
