Open nigeshvenu opened 7 months ago
Same happens to me :(
But only if you show the banner on top and not always, if you show at bottom nothing happens :|
Flicks is related to this lines;
appWindow?.windowLevel = UIWindow.Level.normal
I have commented everything related to this window level and now is all good, but i dont know if this will have side effects.
It seems that adjusting the window level by setting it to UIWindow.Level.statusBar + 1 while showing the banner and then resetting it to UIWindow.Level.normal upon dismissal is causing the issue. I have commented out these lines for now to maintain the default window level. Hope an update will available in the near future.
Flicks is related to this lines;
appWindow?.windowLevel = UIWindow.Level.normal
I have commented everything related to this window level and now is all good, but i dont know if this will have side effects.
I commented it out in all three places in the BaseNotificationBanner.swift
class and everything seems to be working well now, thanks @nigeshvenu.
I didn't put in a PR because I'm not sure if this affects anything for other use cases other than how I'm using it on the top level.
For others experiencing this issue:
Lines 401, 406:
if let parentViewController = parentViewController, parentViewController.view != nil {
parentViewController.view.addSubview(self)
if statusBarShouldBeShown() {
//appWindow?.windowLevel = UIWindow.Level.normal
}
} else {
appWindow?.addSubview(self)
if statusBarShouldBeShown() && !(parentViewController == nil && bannerPosition == .top) {
//appWindow?.windowLevel = UIWindow.Level.normal
} else {
appWindow?.windowLevel = UIWindow.Level.statusBar + 1
}
}
Line 610:
self.bannerQueue.showNext(callback: { (isEmpty) in
if isEmpty || self.statusBarShouldBeShown() {
//self.appWindow?.windowLevel = UIWindow.Level.normal
}
})
Screen flickering after banner dismiss when there is keyboard in the viewcontroller