                           height: height).sdlAssert()
         
         texture.blendMode = .alpha
-        
-        surface = texture.withUnsafeMutableBytes { try! Cairo.Surface.Image.init(mutableBytes: $0.assumingMemoryBound(to: UInt8.self), format: .argb32, width: width, height: height, stride: $1) }
     }
     
     internal final func render(with renderer: Renderer, in rect: SDL_Rect) {

        
        // draw rect
        draw(bounds)
        surface.flush()
        
        UIGraphicsPopContext()
    }

    /// Cacao's equivalent of `UIView.layer` / `CALayer`.
    /// Instead of the CoreGraphics API you could draw directly to the texture's pixel data.
    private var texture: Texture!
    
    internal final var shouldRender: Bool { return isHidden == false && alpha > 0 }
    
