NSWindowStyles icon indicating copy to clipboard operation
NSWindowStyles copied to clipboard

don't see control

Open thierryH91200 opened this issue 6 years ago • 4 comments

why I don' see the nstableview

I forgot something ?

// 4 let visualEffect = NSVisualEffectView() visualEffect.blendingMode = .behindWindow visualEffect.state = .active visualEffect.material = .dark window?.contentView = visualEffect // window?.titlebarAppearsTransparent = true window?.styleMask.insert(.fullSizeContentView)

capture d ecran 2018-03-28 09 05 22

thierryH91200 avatar Mar 28 '18 07:03 thierryH91200

Did you ever solved this problem? I'm currently having the same issue and I'm not finding how to fix it

PedroCavaleiro avatar Jun 12 '20 02:06 PedroCavaleiro

not resolved i don't know what to do

thierryH91200 avatar Jun 12 '20 05:06 thierryH91200

doesn't seem like it, any element is rendered behind the window. I tried it with a button that's supposed to open a file dialog, no button visible only it's tab-selector border, as you can see in this image: Schermafbeelding 2020-10-02 om 22 20 41

^this is my awesome one button app. which as the name suggests is an icon tester, the file dialog, in the previous app, not based on the new window style, would let you select an icns file and it would update itself with that on the fly.... but alas, the button can be selected, but not seen nor clicked.

DaveFlashNL avatar Oct 02 '20 20:10 DaveFlashNL

I've been checking example 5 (that is what I needed for my app) and indeed whenever I put something on the view controller's view - its not visible.

here is the code I came up with to make ViewController's content visible:

//    5
    let visualEffect = NSVisualEffectView()
    visualEffect.translatesAutoresizingMaskIntoConstraints = false
    visualEffect.blendingMode = .behindWindow
    visualEffect.state = .active
    visualEffect.material = .dark
    window?.contentView?.addSubview(visualEffect, positioned: .below, relativeTo: window?.contentView?.subviews.first)

    guard let constraints = window?.contentView else {
      return
    }
    
    visualEffect.leadingAnchor.constraint(equalTo: constraints.leadingAnchor).isActive = true
    visualEffect.trailingAnchor.constraint(equalTo: constraints.trailingAnchor).isActive = true
    visualEffect.topAnchor.constraint(equalTo: constraints.topAnchor).isActive = true
    visualEffect.bottomAnchor.constraint(equalTo: constraints.bottomAnchor).isActive = true

    window?.styleMask.remove(.titled)
    window?.isMovableByWindowBackground = true

and that's how it looks: image

The key here is this line: window?.contentView?.addSubview(visualEffect, positioned: .below, relativeTo: window?.contentView?.subviews.first)

Hopefully that can help you guys solve you problems.

iSapozhnik avatar Aug 18 '21 12:08 iSapozhnik