Tracker: Disallow background image on Desktop windows.

Custom background image is disallowed on the Desktop folder and Root
aka "Disks" folder. However, you may use a default background image.

We store the background image on the node, Desktop window and the
actual Desktop share the same node so we have to explicitly disallow
background images from showing on Desktop windows.

Make UpdateBackgroundImage() protected.

Remove unused BDeskWindow::UpdateDesktopBackgroundImages();

Handle all background image code in ContainerWindow. BPoseView calls
its window if targetted to update its background image.

Fixes Desktop background portion of #19947.

Change-Id: I4b104340b5a69807961b99bde7b0455d7d58065a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/10392
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
This commit is contained in:
John Scipione
2026-02-28 13:20:52 +00:00
committed by waddlesplash
parent 0c6100feb2
commit 1d20c1fb5c
7 changed files with 27 additions and 56 deletions
+2 -6
View File
@@ -2263,7 +2263,8 @@ BPoseView::MessageReceived(BMessage* message)
break;
case kRestoreBackgroundImage:
ContainerWindow()->UpdateBackgroundImage();
if (ContainerWindow() != NULL)
ContainerWindow()->MessageReceived(message);
break;
case B_META_MIME_CHANGED:
@@ -8525,11 +8526,6 @@ BPoseView::SwitchDir(const entry_ref* newDirRef, AttributeStreamNode* node)
AdoptSystemColors();
if (!IsDesktopView()) {
if (ContainerWindow() != NULL)
ContainerWindow()->UpdateBackgroundImage();
}
Invalidate();
fLastKeyTime = 0;