Add online and federated properties to PurpleConversation

Review Request #2609 — Created Sept. 5, 2023 and submitted

Information

pidgin/pidgin
default

Reviewers

This will allow user interfaces to more gracefully handle conversations with
disconnected accounts and offline conversations.

I didn't create a purple_conversation_new_federated as we don't have a purple_conversation_new yet. I'm waiting on both of those until PurpleConversation is a final type.

Compiled and ran the unit tests only. Writing unit tests for this right now would require a custom PurpleProtocol as well as a custom PurpleConnection and maybe more. So I skipped for the time being as this is pretty straight forward.

Summary ID
Add online and federated properties to PurpleConversation
This will allow user interfaces to more gracefully hand conversations with disconnected accounts and offline conversations.
56e3c432c30b843144a98708181e80031863cc2e
Description From Last Updated

s/can not/cannot/

QuLogicQuLogic

s/protocol/protocol,/ s/. Which/, which/

QuLogicQuLogic

No disconnecting from the old account? Or should this property be construct-only now?

QuLogicQuLogic

if(!connected) {

QuLogicQuLogic

s/one/on/

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

    s/can not/cannot/

  3. libpurple/purpleconversation.h (Diff revision 1)
     
     
    Show all issues

    s/protocol/protocol,/
    s/. Which/, which/

  4. libpurple/purpleconversation.c (Diff revision 1)
     
     
    Show all issues

    No disconnecting from the old account? Or should this property be construct-only now?

    1. You mean disconnecting the signal. I thought you meant handling when the account went offline :-D

    2. That said, we'll just make it construct only as nothing else should be setting this and if you're removing an account, it should remove all of the open conversations too.

  5. libpurple/purpleconversation.c (Diff revision 1)
     
     
    Show all issues

    if(!connected) {

  6. libpurple/purpleconversation.c (Diff revision 1)
     
     
    Show all issues

    s/one/on/

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