Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Raven notifications/applets mismatch #31

Closed
ghost opened this issue Jan 9, 2022 · 6 comments · Fixed by #68
Closed

Raven notifications/applets mismatch #31

ghost opened this issue Jan 9, 2022 · 6 comments · Fixed by #68
Labels
bug Something isn't working

Comments

@ghost
Copy link

ghost commented Jan 9, 2022

When opening Raven for the first time in a session, it initially shows that the "Applets" section is opened, but what actually appears is "Notifications". Selecting the correct option seems to fix the bug for the remainder of the session, and it defaults back to opening the "notifications" screen from then on.
Screenshot from 2022-01-09 15-11-10

@EbonJaeger EbonJaeger added the bug Something isn't working label Jan 9, 2022
@guillotjulien
Copy link
Contributor

Hi @tyler4tado would it be possible to complete your bug report with details about the OS you are using and the Budgie version you are using?

@serebit
Copy link
Member

serebit commented Jan 10, 2022

I can confirm that this happens on Solus Budgie, as can @JoshStrobl. This has been known about for a while, but we haven't figured out a way to reliably reproduce it.

@EbonJaeger
Copy link
Member

The calling code for this is really simple. In the end, it's just calling main_stack.set_visible_child_name("notifications"); in Raven (main_view.vala), thus setting the visible child of the stack. According to the docs, the stack switcher (the Applets/Notifications buttons in Raven) should reflect the visible child on its own (and indeed, there are no methods to set the active stack switcher button). This is looking more like a GTK bug.

@ghost
Copy link

ghost commented Mar 8, 2022

I've come to realize this only occurs when launching Raven via the "notifications" (bell) applet, but it works as expected when launching it from the usual "Raven Trigger" (arrow in a box) applet.
Sorry for ghosting, I genuinely want to help because I have deep appreciation for Budgie, but have personal/mental issues, when I create accounts I have extreme anxiety. Maybe one day I'll overcome this and use my little Intro To IT degree I have and actually contribute to a project.
Good luck on your endeavors friends, all the best.

@fossfreedom
Copy link
Contributor

@EbonJaeger is the get/set visible stuff here relevant to this issue?

https://stackoverflow.com/questions/22178524/gtk-named-stack-childs

@EbonJaeger
Copy link
Member

@fossfreedom it looks to me like you just found the solution. The Notification View calls show_all() in the constructor, but show_all() is not called on the main applet view. Adding that call fixes the issue for me. I suspect this might also fix the case where sometimes the Raven trigger doesn't actually open Raven.

PR incoming!

EbonJaeger added a commit that referenced this issue Mar 8, 2022
Per the answer here (https://stackoverflow.com/questions/22178524/gtk-named-stack-childs), if a stack child is not visible, asking the stack to set the visible child will silently fail, apparently even if the child being shown *is* visible.

The NotificationView widget already calls show_all() in its constructor, so the call only had to be added to the applet window. This fixes the case where clicking the notification bell fails to open the correct page, and possibly also fixes where clicking the Raven trigger for the first time sometimes fails to open Raven (it is technically open, but the elements arent visible).

Ref #31

Signed-off-by: Evan Maddock <maddock.evan@vivaldi.net>
JoshStrobl pushed a commit that referenced this issue Mar 8, 2022
Per the answer here (https://stackoverflow.com/questions/22178524/gtk-named-stack-childs), if a stack child is not visible, asking the stack to set the visible child will silently fail, apparently even if the child being shown *is* visible.

The NotificationView widget already calls show_all() in its constructor, so the call only had to be added to the applet window. This fixes the case where clicking the notification bell fails to open the correct page, and possibly also fixes where clicking the Raven trigger for the first time sometimes fails to open Raven (it is technically open, but the elements arent visible).

Ref #31

Signed-off-by: Evan Maddock <maddock.evan@vivaldi.net>
serebit pushed a commit that referenced this issue Mar 29, 2022
Per the answer here (https://stackoverflow.com/questions/22178524/gtk-named-stack-childs), if a stack child is not visible, asking the stack to set the visible child will silently fail, apparently even if the child being shown *is* visible.

The NotificationView widget already calls show_all() in its constructor, so the call only had to be added to the applet window. This fixes the case where clicking the notification bell fails to open the correct page, and possibly also fixes where clicking the Raven trigger for the first time sometimes fails to open Raven (it is technically open, but the elements arent visible).

Ref #31

Signed-off-by: Evan Maddock <maddock.evan@vivaldi.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants