Create PurpleAuthorizationRequest and use it for notifications.

Review Request #1613 — Created Aug. 21, 2022 and submitted

Information

pidgin/pidgin
default

Reviewers

This replaces the old internal representation of authorization requests as well
as the UI's implementation of their own objects. Everything is now controlled
via PurpleAuthorizationRequest and the UI's display the notification for
interaction.

Verified the notification and actions work in both finch and pidgin.

Summary ID
Create PurpleAuthorizationRequest and use it for notifications.
This replaces the old internal representation of authorization requests as well as the UI's implementation of their own objects. Everything is now controlled via PurpleAuthorizationRequest and the UI's display the notification for interaction.
4d84dcc4316008256e8d8411b10c5a3508167a61
Description From Last Updated

s/the //

QuLogicQuLogic

Fits in one line?

QuLogicQuLogic

Not sure we need G_PARAM_CONSTRUCT for this and the remaining properties, as we don't use the constructed vfunc.

QuLogicQuLogic

So formerly, you could hit the X on the minidialog to ignore requests, and they'd just come back the next …

QuLogicQuLogic

Doesn't look like you ref'd authorization_request in here, so it should be marked as a transfer full argument (or should …

QuLogicQuLogic

destroy

QuLogicQuLogic

But message is not NULL?

QuLogicQuLogic

Align

QuLogicQuLogic
grim
QuLogic
  1. 
      
  2. libpurple/purpleauthorizationrequest.h (Diff revision 2)
     
     
    Show all issues

    s/the //

  3. libpurple/purpleauthorizationrequest.c (Diff revision 2)
     
     
     
    Show all issues

    Fits in one line?

  4. libpurple/purpleauthorizationrequest.c (Diff revision 2)
     
     
    Show all issues

    Not sure we need G_PARAM_CONSTRUCT for this and the remaining properties, as we don't use the constructed vfunc.

  5. libpurple/purplenotification.c (Diff revision 2)
     
     
    Show all issues

    So formerly, you could hit the X on the minidialog to ignore requests, and they'd just come back the next time you'd login.

    I'm not sure if we want to keep that behaviour or not. It's certainly going to be easier to look at notifications now in this dialog that you probably won't accidentally close instead of hitting left or right.

    1. Yeah I wasn't sure which way to go, but I figured if a user x'd it out they didn't want to see it anymore in this use case.

    2. Just wondering if maybe people are wanting an ignore-for-now sort of effect, or maybe don't want to notify the other person they even reacted to their request (e.g., for spam or harassment avoidance purposes). But maybe some of that could be protocol-specific changes, and we can design that later.

    3. yeah or we could make a preference too? But the question is, what do we want to do here, remove or leave it?

    4. Let's keep the signal, but drop the deny, just to keep things working the same as before.

    5. sounds good!

  6. libpurple/purplenotification.c (Diff revision 2)
     
     
     
     
    Show all issues

    Doesn't look like you ref'd authorization_request in here, so it should be marked as a transfer full argument (or should be ref'd (and then unref'd in all callers)).

  7. Show all issues

    destroy

  8. Show all issues

    But message is not NULL?

  9. Show all issues

    Align

  10. 
      
grim
grim
QuLogic
  1. Ship It!
  2. 
      
grim
Review request changed
Status:
Completed