//
//  UIWindowScene+Swizzle.swift
//  react-native-firework-sdk
//
//  Created by linjie jiang on 3/22/24.
//

import UIKit
import FireworkVideo

extension UIWindowScene {
    static func swizzleMethods() {
        #if DEBUG
        FWSSwizzle.swizzleSelector(
            cls: self,
            originalSelector: #selector(getter: UIWindowScene.windows),
            customSelector: #selector(UIWindowScene.fw_windows)
        )
        #endif
    }

    @objc func fw_windows() -> [UIWindow] {
        let windowList = self.fw_windows().filter { window in
            let typeName = String(describing: type(of: window))
            if typeName == "SKHiddenWindow" {
                return false
            }
            return true
        }

        return windowList
    }
}
