Tracker: BPoseView handles "size" and "last_modified" with B_STAT_UPDATE.
Fixes #19916.
This commit is contained in:
@@ -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*
|
const char*
|
||||||
BQueryPoseView::SearchForType() const
|
BQueryPoseView::SearchForType() const
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -79,6 +79,7 @@ protected:
|
|||||||
virtual EntryListBase* InitDirentIterator(const entry_ref*);
|
virtual EntryListBase* InitDirentIterator(const entry_ref*);
|
||||||
virtual void ReturnDirentIterator(EntryListBase* iterator);
|
virtual void ReturnDirentIterator(EntryListBase* iterator);
|
||||||
virtual uint32 WatchNewNodeMask();
|
virtual uint32 WatchNewNodeMask();
|
||||||
|
virtual bool AttributeChanged(const BMessage*);
|
||||||
virtual void AddPosesCompleted();
|
virtual void AddPosesCompleted();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
Reference in New Issue
Block a user