mirror of
https://github.com/chatmail/core.git
synced 2026-04-17 21:46:35 +03:00
address some of flubs comments
This commit is contained in:
@@ -2845,6 +2845,10 @@ char* dc_chat_get_profile_image (const dc_chat_t* chat);
|
|||||||
uint32_t dc_chat_get_color (const dc_chat_t* chat);
|
uint32_t dc_chat_get_color (const dc_chat_t* chat);
|
||||||
|
|
||||||
|
|
||||||
|
#define DC_CHAT_ARCHIVE_STATE_NORMAL 0
|
||||||
|
#define DC_CHAT_ARCHIVE_STATE_ARCHIVED 1
|
||||||
|
#define DC_CHAT_ARCHIVE_STATE_PINNED 2
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get archived state.
|
* Get archived state.
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -1203,7 +1203,7 @@ pub unsafe extern "C" fn dc_archive_chat(
|
|||||||
1 => ArchiveState::Archived,
|
1 => ArchiveState::Archived,
|
||||||
2 => ArchiveState::Pinned,
|
2 => ArchiveState::Pinned,
|
||||||
_ => {
|
_ => {
|
||||||
eprintln!("ignoring careless call to dc_archive_chat(): unknown archived state");
|
ffi_context.warning("ignoring careless call to dc_archive_chat(): unknown archived state");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -423,28 +423,28 @@ class Chat(object):
|
|||||||
"""return True if this chat is archived.
|
"""return True if this chat is archived.
|
||||||
:returns: True if archived.
|
:returns: True if archived.
|
||||||
"""
|
"""
|
||||||
return lib.dc_chat_get_archived(self._dc_chat) == 1
|
return lib.dc_chat_get_archived(self._dc_chat) == const.DC_CHAT_ARCHIVE_STATE_ARCHIVED
|
||||||
|
|
||||||
def is_pinned(self):
|
def is_pinned(self):
|
||||||
"""return True if this chat is pinned.
|
"""return True if this chat is pinned.
|
||||||
:returns: True if pinned.
|
:returns: True if pinned.
|
||||||
"""
|
"""
|
||||||
return lib.dc_chat_get_archived(self._dc_chat) == 2
|
return lib.dc_chat_get_archived(self._dc_chat) == const.DC_CHAT_ARCHIVE_STATE_PINNED
|
||||||
|
|
||||||
def archive(self):
|
def archive(self):
|
||||||
"""archive the chat.
|
"""archive the chat.
|
||||||
"""
|
"""
|
||||||
lib.dc_archive_chat(self._dc_context, self.id, 1)
|
lib.dc_archive_chat(self._dc_context, self.id, const.DC_CHAT_ARCHIVE_STATE_ARCHIVED)
|
||||||
|
|
||||||
def unarchive(self):
|
def unarchive(self):
|
||||||
"""unarchive the chat.
|
"""unarchive the chat.
|
||||||
"""
|
"""
|
||||||
lib.dc_archive_chat(self._dc_context, self.id, 0)
|
lib.dc_archive_chat(self._dc_context, self.id, const.DC_CHAT_ARCHIVE_STATE_NORMAL)
|
||||||
|
|
||||||
def pin(self):
|
def pin(self):
|
||||||
"""pin the chat.
|
"""pin the chat.
|
||||||
"""
|
"""
|
||||||
lib.dc_archive_chat(self._dc_context, self.id, 2)
|
lib.dc_archive_chat(self._dc_context, self.id, const.DC_CHAT_ARCHIVE_STATE_PINNED)
|
||||||
|
|
||||||
def unpin(self):
|
def unpin(self):
|
||||||
"""unpin the chat. (same as unarchive)
|
"""unpin the chat. (same as unarchive)
|
||||||
|
|||||||
@@ -33,6 +33,9 @@ DC_CHAT_TYPE_UNDEFINED = 0
|
|||||||
DC_CHAT_TYPE_SINGLE = 100
|
DC_CHAT_TYPE_SINGLE = 100
|
||||||
DC_CHAT_TYPE_GROUP = 120
|
DC_CHAT_TYPE_GROUP = 120
|
||||||
DC_CHAT_TYPE_VERIFIED_GROUP = 130
|
DC_CHAT_TYPE_VERIFIED_GROUP = 130
|
||||||
|
DC_CHAT_ARCHIVE_STATE_NORMAL = 0
|
||||||
|
DC_CHAT_ARCHIVE_STATE_ARCHIVED = 1
|
||||||
|
DC_CHAT_ARCHIVE_STATE_PINNED = 2
|
||||||
DC_MSG_ID_MARKER1 = 1
|
DC_MSG_ID_MARKER1 = 1
|
||||||
DC_MSG_ID_DAYMARKER = 9
|
DC_MSG_ID_DAYMARKER = 9
|
||||||
DC_MSG_ID_LAST_SPECIAL = 9
|
DC_MSG_ID_LAST_SPECIAL = 9
|
||||||
|
|||||||
18
src/chat.rs
18
src/chat.rs
@@ -961,17 +961,15 @@ impl rusqlite::types::ToSql for ArchiveState {
|
|||||||
impl rusqlite::types::FromSql for ArchiveState {
|
impl rusqlite::types::FromSql for ArchiveState {
|
||||||
fn column_result(value: rusqlite::types::ValueRef) -> rusqlite::types::FromSqlResult<Self> {
|
fn column_result(value: rusqlite::types::ValueRef) -> rusqlite::types::FromSqlResult<Self> {
|
||||||
i64::column_result(value).and_then(|val| {
|
i64::column_result(value).and_then(|val| {
|
||||||
Ok({
|
match val {
|
||||||
match val {
|
2 => Ok(ArchiveState::Pinned),
|
||||||
2 => ArchiveState::Pinned,
|
1 => Ok(ArchiveState::Archived),
|
||||||
1 => ArchiveState::Archived,
|
0 => Ok(ArchiveState::Normal),
|
||||||
0 => ArchiveState::Normal,
|
n => {
|
||||||
_ => {
|
// unknown archived state, falling back to normal state (was this db opened with a newer deltachat version?)
|
||||||
println!("unknown archived state, falling back to normal state (was this db opened with a newer deltachat version?)");
|
Err(rusqlite::types::FromSqlError::OutOfRange(n))
|
||||||
ArchiveState::Normal
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
})
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user