Thu, 15 Jan 2015 15:59:08 +0100
Implement a real Private Browsing Mode condition by changing the API/ABI;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
1 <!--
2 Any copyright is dedicated to the Public Domain.
3 http://creativecommons.org/publicdomain/zero/1.0/
4 -->
5 <!DOCTYPE svg [
6 <!-- entities etc. here -->
7 <!ENTITY dataURI
8 "data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'><g id='empty'/><mask id='mask' maskContentUnits='userSpaceOnUse'><rect width='50' height='50' fill='white'/></mask></svg>">
9 ]>
10 <svg xmlns="http://www.w3.org/2000/svg"
11 xmlns:xlink="http://www.w3.org/1999/xlink">
12 <title>
13 Testcase for bug 686013: CSS mask targeting a fragment in a data URI
14 </title>
15 <style type="text/css">
16 .masked {
17 mask: url("&dataURI;#mask");
18 }
19 </style>
21 <!-- use an empty g to force resource document to load before onload -->
22 <use xlink:href="&dataURI;#empty"/>
24 <!-- giant lime background -->
25 <rect width="100%" height="100%" fill="lime"/>
27 <!-- Masked red rect, covered by lime rect
28 (to make sure mask doesn't let too much through) -->
29 <rect width="75" height="75" fill="red" class="masked"/>
30 <rect width="50" height="50" fill="lime"/>
32 <!-- Masked lime rect, covering red rect
33 (to make sure mask lets enough through) -->
34 <g transform="translate(0, 100)">
35 <rect width="50" height="50" fill="red"/>
36 <rect width="75" height="75" fill="lime" class="masked"/>
37 </g>
38 </svg>