Skip to content

Bug 42154: empty clipboard content from private windows on exit

ma1 requested to merge ma1/tor-browser:bug42154 into tor-browser-115.4.0esr-13.5-1

Merge Info

Related Issues

Backporting

Timeline

  • Immediate: patchset needed as soon as possible
  • Next Minor Stable Release: patchset that needs to be verified in nightly before backport
  • Eventually: patchset that needs to be verified in alpha before backport
  • No Backport (preferred): patchset for the next major stable

(Optional) Justification

  • Emergency security update: patchset fixes CVEs, 0-days, etc
  • Censorship event: patchset enables censorship circumvention
  • Critical bug-fix: patchset fixes a bug in core-functionality
  • Consistency: patchset which would make development easier if it were in both the alpha and release branches; developer tools, build system changes, etc
  • Sponsor required: patchset required for sponsor
  • Other: please explain

Merging

  • Merge to tor-browser - !fixups to tor-browser-specific commits, new features, security backports
  • Merge to base-browser - !fixups to base-browser-specific commits, new features to be shared with mullvad-browser, and security backports
    • NOTE: if your changeset includes patches to both base-browser and tor-browser please clearly label in the change description which commits should be cherry-picked to base-browser after merging

Issue Tracking

Review

Request Reviewer

  • Request review from an applications developer depending on modified system:
    • NOTE: if the MR modifies multiple areas, please /cc all the relevant reviewers (since gitlab only allows 1 reviewer)
    • accessibility : henry
    • android : clairehurst, dan
    • build system : boklm
    • extensions : ma1
    • firefox internals (XUL/JS/XPCOM) : ma1
    • fonts : pierov
    • frontend (implementation) : henry
    • frontend (review) : donuts, richard
    • localization : henry, pierov
    • macos : clairehurst, dan
    • nightly builds : boklm
    • rebases/release-prep : dan, ma1, pierov, richard
    • security : ma1
    • signing : boklm, richard
    • updater : pierov
    • misc/other : pierov, richard

Change Description

Tracks clipboard content changes on windows activation/deactivation/closing as a cross-platform hack to check whether it gets populated from a private window, and empties the clipboard only if the content (the hash of its text/plain flavor, more exactly) matches, there's no private window open anymore and the new browser.privatebrowsing.preserveClipboard (exposed in about:config) is false (default value).

How Tested

Verified that the clipboard gets emptied only it matches the data most recently copied from a private window and the browser.privatebrowsing.preserveClipboard preference is set to false.

If PBM is not global, the "private" content gets emptied when the last private window gets closed, otherwise on quit.

Requesting review from @richard for timezone reasons, but /cc @pierov who was curious about the hack 😄

Edited by richard

Merge request reports