Skip to content

Implement tox_group_self_set_typing/tox_group_peer_get_typing/etc. for NGC #3070

Description

@Monsterovich

Why not add this just like we do for individual peers?

/* Errors related to setting the local user's typing status in a group. */
typedef enum Tox_Err_Group_Set_Typing {
    TOX_ERR_GROUP_SET_TYPING_OK = 0,
    TOX_ERR_GROUP_SET_TYPING_MALLOC,
    TOX_ERR_GROUP_SET_TYPING_GROUP_NOT_FOUND,
    TOX_ERR_GROUP_SET_TYPING_NOT_CONNECTED,
} Tox_Err_Group_Set_Typing;

const char *tox_err_group_set_typing_to_string(Tox_Err_Group_Set_Typing error);

/**
 * Sets the local user's typing status in a group.
 *
 * @param tox          The Tox instance.
 * @param group_number The group number of the group.
 * @param is_typing    Whether the user is typing.
 * @param error        The error code on failure.
 *
 * @return true on success, false on failure.
 */
bool tox_group_self_set_typing(Tox *tox, uint32_t group_number, bool is_typing,
                                Tox_Err_Group_Set_Typing *error);

/* Reuses the existing group peer query error enum. */
bool tox_group_peer_get_typing(const Tox *tox, uint32_t group_number, uint32_t peer_id,
                                bool *is_typing, Tox_Err_Group_Peer_Query *error);

/* Callback fired when a peer's typing status in a group changes. */
typedef void tox_group_peer_typing_cb(Tox *tox, uint32_t group_number, uint32_t peer_id,
                                       bool is_typing, void *user_data);

void tox_callback_group_peer_typing(Tox *tox, tox_group_peer_typing_cb *callback);

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions