Tracker: BPoseView handles "size" and "last_modified" with B_STAT_UPDATE.

Fixes #19916.
This commit is contained in:
Augustin Cavalier
2026-01-28 22:30:32 -05:00
parent d1cbd0b1e3
commit 83da6699df
2 changed files with 20 additions and 0 deletions
+19
View File
@@ -363,6 +363,25 @@ BQueryPoseView::WatchNewNodeMask()
}
bool
BQueryPoseView::AttributeChanged(const BMessage* message)
{
BMessage alteredMessage;
const char* attrName;
if (message->FindString("attr", &attrName) == B_OK) {
if (strcmp(attrName, "last_modified") == 0 || strcmp(attrName, "size") == 0) {
// BPoseView handles changes to these under B_STAT_UPDATE,
// so make this message look like that one.
alteredMessage = *message;
alteredMessage.RemoveName("attr");
message = &alteredMessage;
}
}
return BPoseView::AttributeChanged(message);
}
const char*
BQueryPoseView::SearchForType() const
{
+1
View File
@@ -79,6 +79,7 @@ protected:
virtual EntryListBase* InitDirentIterator(const entry_ref*);
virtual void ReturnDirentIterator(EntryListBase* iterator);
virtual uint32 WatchNewNodeMask();
virtual bool AttributeChanged(const BMessage*);
virtual void AddPosesCompleted();
private: