aboutsummaryrefslogtreecommitdiffstats
path: root/notifications/NotificationBalloon.qml
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-09-15 18:13:53 +0200
committerDanilo M. <danix@danix.xyz>2026-09-15 18:13:53 +0200
commitea2c64c9a6fbc22bffbac4e2e57ce0762f5e03ad (patch)
tree7364a91efae5e335cf3d4d48ef4847315ee163ff /notifications/NotificationBalloon.qml
parent15dc51d86a964cc38aff23f0d47b80734a5356a8 (diff)
downloadquickshell-ea2c64c9a6fbc22bffbac4e2e57ce0762f5e03ad.tar.gz
quickshell-ea2c64c9a6fbc22bffbac4e2e57ce0762f5e03ad.zip
feat(notifications): strip remote inline image sources
A notification is untrusted input. Inline <img> now renders only for local sources; an http(s) source is removed before the RichText body is shown, so a remote sender cannot make the shell fetch a URL. The row and the balloon share the one sanitizer in the Notify singleton.
Diffstat (limited to 'notifications/NotificationBalloon.qml')
-rw-r--r--notifications/NotificationBalloon.qml2
1 files changed, 1 insertions, 1 deletions
diff --git a/notifications/NotificationBalloon.qml b/notifications/NotificationBalloon.qml
index b77ca2a..bfccda3 100644
--- a/notifications/NotificationBalloon.qml
+++ b/notifications/NotificationBalloon.qml
@@ -123,7 +123,7 @@ Rectangle {
Text {
width: parent.width
visible: text !== ""
- text: b.notification.body || ""
+ text: Notify.sanitize(b.notification.body)
textFormat: Text.RichText
wrapMode: Text.WordWrap
maximumLineCount: 3