@@ -1998,20 +1998,28 @@ Suppressing An Element's Contents Entirely: the 'content-visibility' property {#
19981998 All elements have a <dfn>currently relevant to the user</dfn> flag, initially false.
19991999 </div>
20002000
2001+ <div algorithm="update currently relevant to the user">
2002+ To <dfn>update currently relevant to the user</dfn> given an element <var> element</var> :
2003+
2004+ 1. Let <var> currentlyRelevant</var> be true if <var> element</var> is [=relevant to the user=] , otherwise false.
2005+ 1. If <var> element</var> 's [=currently relevant to the user=] flag is equal to <var> currentlyRelevant</var> , then return false.
2006+ 1. Set <var> element</var> 's [=currently relevant to the user=] flag to <var> currentlyRelevant</var> .
2007+ 1. return true.
2008+ </div>
2009+
20012010 <div algorithm="update content relevancy for a document">
20022011 To <dfn export>update content relevancy for a document</dfn> given a document <var> doc</var> , and a boolean <var> updateNonInitial</var> :
20032012
20042013 1. Let <var> changed</var> be false.
2005- 1. For each <var> element</var> [=connected=] to doc with ''auto'' used value of ''content-visibility''
2014+ 1. For each <var> element</var> [=connected=] to doc with ''auto'' used value of ''content-visibility'' :
2015+ 1. If <var> updateNonInitial</var> is true:
2016+ 1. If [=update currently relevant to the user=] for <var> element</var> returns true.
2017+ 1. Set <var> changed</var> to true.
20062018 1. Let <var> isInitialDetermination</var> be true if <var> element</var> 's [=proximity to the viewport=] is [=not determined=] , otherwise false.
20072019 1. Determine [=proximity to the viewport=] for <var> element</var> .
2008- 1. If <var> updateNonInitial</var> is false and <var> isInitialDetermination</var> is false, then [=continue=] .
2009- 1. If <var> element</var> is [=relevant to the user=] , then:
2010- 1. If <var> element</var> 's [=currently relevant to the user=] flag is false, set <var> changed</var> to true.
2011- 1. Set <var> element</var> 's [=currently relevant to the user=] flag to true.
2012- 1. Otherwise:
2013- 1. If <var> element</var> 's [=currently relevant to the user=] flag is true, set <var> changed</var> to true.
2014- 1. Set <var> element</var> 's [=currently relevant to the user=] flag to false.
2020+ 1. If <var> isInitialDetermination</var> is false, then [=continue=] .
2021+ 1. If [=update currently relevant to the user=] for <var> element</var> returns true.
2022+ 1. Set <var> changed</var> to true.
20152023 1. return <var> changed</var> .
20162024
20172025 <div class=note>
0 commit comments