mirror of
				https://github.com/RetroShare/RetroShare.git
				synced 2025-10-31 14:49:14 -04:00 
			
		
		
		
	fixed filtering for channels when loading items on the fly
This commit is contained in:
		
							parent
							
								
									08faa3f5d5
								
							
						
					
					
						commit
						1e98de76a1
					
				
					 3 changed files with 22 additions and 14 deletions
				
			
		|  | @ -49,6 +49,18 @@ | |||
| 
 | ||||
| GxsChannelPostItem::GxsChannelPostItem(FeedHolder *feedHolder, uint32_t feedId, const RsGxsGroupId &groupId, const RsGxsMessageId &messageId, bool isHome, bool autoUpdate,const std::set<RsGxsMessageId>& older_versions) : | ||||
|     GxsFeedItem(feedHolder, feedId, groupId, messageId, isHome, rsGxsChannels, autoUpdate) | ||||
| { | ||||
| 	init(messageId,older_versions) ; | ||||
| } | ||||
| 
 | ||||
| GxsChannelPostItem::GxsChannelPostItem(FeedHolder *feedHolder, uint32_t feedId, const RsGxsChannelPost& post, bool isHome, bool autoUpdate,const std::set<RsGxsMessageId>& older_versions) : | ||||
|     GxsFeedItem(feedHolder, feedId, post.mMeta.mGroupId, post.mMeta.mMsgId, isHome, rsGxsChannels, autoUpdate) | ||||
| { | ||||
| 	init(post.mMeta.mMsgId,older_versions) ; | ||||
| 	mPost = post ; | ||||
| } | ||||
| 
 | ||||
| void GxsChannelPostItem::init(const RsGxsMessageId& messageId,const std::set<RsGxsMessageId>& older_versions) | ||||
| { | ||||
| 	QVector<RsGxsMessageId> v; | ||||
|     bool self = false; | ||||
|  |  | |||
|  | @ -47,6 +47,11 @@ public: | |||
| 
 | ||||
| 	GxsChannelPostItem(FeedHolder *feedHolder, uint32_t feedId, const RsGxsGroupId &groupId, const RsGxsMessageId &messageId, bool isHome, bool autoUpdate, const std::set<RsGxsMessageId>& older_versions = std::set<RsGxsMessageId>()); | ||||
| 
 | ||||
| 	// This method can be called when additional information is known about the post. In this case, the widget will be initialized with some
 | ||||
| 	// minimap information from the post and completed when the use displays it, which shouldn't cost anything more.
 | ||||
| 
 | ||||
| 	GxsChannelPostItem(FeedHolder *feedHolder, uint32_t feedId, const RsGxsChannelPost& post, bool isHome, bool autoUpdate, const std::set<RsGxsMessageId>& older_versions = std::set<RsGxsMessageId>()); | ||||
| 
 | ||||
| 	//GxsChannelPostItem(FeedHolder *feedHolder, uint32_t feedId, const RsGxsChannelGroup &group, const RsGxsChannelPost &post, bool isHome, bool autoUpdate);
 | ||||
| 	//GxsChannelPostItem(FeedHolder *feedHolder, uint32_t feedId, const RsGxsChannelPost &post, bool isHome, bool autoUpdate);
 | ||||
| 	virtual ~GxsChannelPostItem(); | ||||
|  | @ -63,6 +68,8 @@ public: | |||
|     bool isUnread() const ; | ||||
| 
 | ||||
| protected: | ||||
| 	void init(const RsGxsMessageId& messageId,const std::set<RsGxsMessageId>& older_versions); | ||||
| 
 | ||||
| 	/* FeedItem */ | ||||
| 	virtual void doExpand(bool open); | ||||
| 	virtual void expandFill(bool first); | ||||
|  |  | |||
|  | @ -395,7 +395,7 @@ void GxsChannelPostsWidget::filterChanged(int filter) | |||
| 	return bVisible; | ||||
| } | ||||
| 
 | ||||
| void GxsChannelPostsWidget::createPostItem(const RsGxsChannelPost &post, bool related) | ||||
| void GxsChannelPostsWidget::createPostItem(const RsGxsChannelPost& post, bool related) | ||||
| { | ||||
| 	GxsChannelPostItem *item = NULL; | ||||
| 
 | ||||
|  | @ -407,12 +407,8 @@ void GxsChannelPostsWidget::createPostItem(const RsGxsChannelPost &post, bool re | |||
|         if(item) | ||||
| 		{ | ||||
| 			ui->feedWidget->removeFeedItem(item) ; | ||||
| 			//RsGxsChannelGroup dummyGroup;
 | ||||
| 			//dummyGroup.mMeta.mGroupId = groupId();
 | ||||
| 			//dummyGroup.mMeta.mSubscribeFlags = 0xffffffff;
 | ||||
| 			//GxsChannelPostItem *item = new GxsChannelPostItem(this, 0, dummyGroup, post, true, false);
 | ||||
| 
 | ||||
| 			GxsChannelPostItem *item = new GxsChannelPostItem(this, 0, post.mMeta.mGroupId, post.mMeta.mMsgId, true, false,post.mOlderVersions); | ||||
| 			GxsChannelPostItem *item = new GxsChannelPostItem(this, 0, post, true, false,post.mOlderVersions); | ||||
| 			ui->feedWidget->addFeedItem(item, ROLE_PUBLISH, QDateTime::fromTime_t(post.mMeta.mPublishTs)); | ||||
| 
 | ||||
| 			return ; | ||||
|  | @ -428,14 +424,7 @@ void GxsChannelPostsWidget::createPostItem(const RsGxsChannelPost &post, bool re | |||
| 		item->setPost(post); | ||||
| 		ui->feedWidget->setSort(item, ROLE_PUBLISH, QDateTime::fromTime_t(post.mMeta.mPublishTs)); | ||||
| 	} else { | ||||
| 		/* Group is not always available because of the TokenQueue */ | ||||
| 
 | ||||
| 		//RsGxsChannelGroup dummyGroup;
 | ||||
| 		//dummyGroup.mMeta.mGroupId = groupId();
 | ||||
| 		//dummyGroup.mMeta.mSubscribeFlags = 0xffffffff;
 | ||||
| 		//GxsChannelPostItem *item = new GxsChannelPostItem(this, 0, dummyGroup, post, true, false);
 | ||||
| 
 | ||||
| 		GxsChannelPostItem *item = new GxsChannelPostItem(this, 0, post.mMeta.mGroupId, post.mMeta.mMsgId, true, false,post.mOlderVersions); | ||||
| 		GxsChannelPostItem *item = new GxsChannelPostItem(this, 0, post, true, false,post.mOlderVersions); | ||||
| 		ui->feedWidget->addFeedItem(item, ROLE_PUBLISH, QDateTime::fromTime_t(post.mMeta.mPublishTs)); | ||||
| 	} | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 csoler
						csoler