mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-07-22 14:10:54 -04:00
Fixed navigate to channel post when clicking a channel post link.
Fixed navigate to forum message when clicking a forum message link. Fixed copy of forum message link to clipboard git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7640 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
6c2cc75f2b
commit
cfd6a7b8b5
15 changed files with 129 additions and 45 deletions
|
@ -22,7 +22,6 @@
|
|||
#include <QApplication>
|
||||
|
||||
#include "GxsMessageFramePostWidget.h"
|
||||
#include "GxsFeedItem.h"
|
||||
#include "gui/common/UIStateHelper.h"
|
||||
|
||||
#include "retroshare/rsgxsifacehelper.h"
|
||||
|
@ -89,6 +88,22 @@ QString GxsMessageFramePostWidget::groupName(bool withUnreadCount)
|
|||
return name;
|
||||
}
|
||||
|
||||
bool GxsMessageFramePostWidget::navigate(const RsGxsMessageId &msgId)
|
||||
{
|
||||
if (msgId.isNull()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (mStateHelper->isLoading(mTokenTypePosts) || mStateHelper->isLoading(mTokenTypeRelatedPosts)) {
|
||||
mNavigatePendingMsgId = msgId;
|
||||
|
||||
/* No information if group is available */
|
||||
return true;
|
||||
}
|
||||
|
||||
return navigatePostItem(msgId);
|
||||
}
|
||||
|
||||
void GxsMessageFramePostWidget::updateDisplay(bool complete)
|
||||
{
|
||||
if (complete) {
|
||||
|
@ -151,6 +166,12 @@ void GxsMessageFramePostWidget::fillThreadFinished()
|
|||
|
||||
mStateHelper->setLoading(mTokenTypePosts, false);
|
||||
emit groupChanged(this);
|
||||
|
||||
if (!mNavigatePendingMsgId.isNull()) {
|
||||
navigate(mNavigatePendingMsgId);
|
||||
|
||||
mNavigatePendingMsgId.clear();
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef ENABLE_DEBUG
|
||||
|
@ -253,6 +274,8 @@ void GxsMessageFramePostWidget::requestPosts()
|
|||
std::cerr << std::endl;
|
||||
#endif
|
||||
|
||||
mNavigatePendingMsgId.clear();
|
||||
|
||||
/* Request all posts */
|
||||
|
||||
mTokenQueue->cancelActiveRequestTokens(mTokenTypePosts);
|
||||
|
@ -316,6 +339,12 @@ void GxsMessageFramePostWidget::loadPosts(const uint32_t &token)
|
|||
insertPosts(token, NULL);
|
||||
|
||||
mStateHelper->setLoading(mTokenTypePosts, false);
|
||||
|
||||
if (!mNavigatePendingMsgId.isNull()) {
|
||||
navigate(mNavigatePendingMsgId);
|
||||
|
||||
mNavigatePendingMsgId.clear();
|
||||
}
|
||||
}
|
||||
|
||||
emit groupChanged(this);
|
||||
|
@ -328,6 +357,8 @@ void GxsMessageFramePostWidget::requestRelatedPosts(const std::vector<RsGxsMessa
|
|||
std::cerr << std::endl;
|
||||
#endif
|
||||
|
||||
mNavigatePendingMsgId.clear();
|
||||
|
||||
mTokenQueue->cancelActiveRequestTokens(mTokenTypeRelatedPosts);
|
||||
|
||||
if (mGroupId.isNull()) {
|
||||
|
@ -370,6 +401,12 @@ void GxsMessageFramePostWidget::loadRelatedPosts(const uint32_t &token)
|
|||
|
||||
mStateHelper->setLoading(mTokenTypeRelatedPosts, false);
|
||||
emit groupChanged(this);
|
||||
|
||||
if (!mNavigatePendingMsgId.isNull()) {
|
||||
navigate(mNavigatePendingMsgId);
|
||||
|
||||
mNavigatePendingMsgId.clear();
|
||||
}
|
||||
}
|
||||
|
||||
void GxsMessageFramePostWidget::loadRequest(const TokenQueue *queue, const TokenRequest &req)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue