Skip to content

[semantics, ios] long text html losses focus for headings in voiceover mode #1472

@mentz-nmi

Description

@mentz-nmi

First of all thank you for the great package. It recognises the html almost perfectly and works so good with semantics.
However we have some issues regarding heading to heading jump on ios after manipulating the html with custom widget.

Steps to Reproduce

  1. add htmlWidget in a column with 2 other elements and the add a SingleChildScrollable over everything and a navigation bar
  2. choose heading to heading jump in the voice over mode
  3. slide down fast until you get to around this text: "legal foundations for the processing of personal data"
  4. when you do it fast the elements bellow are no longer recognised and it will announce that no more heading exists

I tried with the html from this website and removed the footer and header and some elements to fit it here. you can just get the full HTML from the website

HTML
<!DOCTYPE html>
<html lang="en">
<body id="top" class="standard">
    <div id="wrapper">
        <div id="stage">
            <div class="inside ">
                <!-- indexer::stop -->
                <nav class="mod_breadcrumb container block" aria-label="Breadcrumb">
                    <ul>
                        <li><a href="/en/homepage" title="Engagement Global english">Home</a></li>
                        <li class="active" aria-current="page">Privacy Policy</li>
                    </ul>
                </nav>
                <!-- indexer::continue -->
                <div class="mod_article container block stage-container">
                    <h1 class="content-headline">Privacy Policy</h1>
                </div>
            </div>
        </div>
        <div id="container">
            <div class="main">
                <div class="mod_article standard  block" id="article-1004">
                    <div class="inside container">
                        <div class="content-text text-intro">
                            <div class="rte">
                                <p>We believe it is important to protect your privacy. Please therefore take the time to
                                    read this privacy policy.</p>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="mod_article standard  block" id="article-1005">
                    <div class="inside container">
                        <div class="content-text standard">
                            <div class="rte">
                                <p>It provides you with information on how we process your personal data. It applies to
                                    all pages accessible at our address engagement-global.de including their sub-pages
                                    and web applications (hereinafter referred to collectively as &#39;website&#39;).
                                    The legal foundations for data processing are contained in the General Data
                                    Protection Regulation (GDPR) and the German Federal Data Protection Act (BDSG).</p>
                                <p>The provider of this website in the legal sense is Engagement Global <abbr lang="de"
                                        title="gemeinnützige Gesellschaft mit beschränkter Haftung">gGmbH</abbr> –
                                    Service for Development Initiatives, represented by the Management, <abbr lang="de"
                                        title="Doktor">Dr.</abbr> Jens Kreuter and Ingrid Arenz, Friedrich-Ebert-Allee
                                    40, 53113 Bonn, Germany (hereinafter referred to as &#39;Engagement Global&#39;,
                                    &#39;we&#39; or &#39;us&#39;).</p>
                                <p>Ziar Kabir, lawyer of SCO:CON-SULT <abbr lang="de"
                                        title="Gesellschaft mit beschränkter Haftung">GmbH</abbr>, Hauptstraße 27, 53604
                                    Bad Honnef, Germany, has been appointed Data Protection Officer.</p>
                            </div>
                        </div>
                        <div class="content-text standard">
                            <h2>Definition of terms</h2>
                            <div class="rte">
                                <p>This privacy policy is based on terms used by the European legislator for the
                                    adoption of the General Data Protection Regulation (GDPR). For your information the
                                    terms used are explained below.</p>
                                <h3>Data subject</h3>
                                <p>Any identified or identifiable natural person whose personal data are processed by
                                    the controller.</p>
                                <h3>Processing</h3>
                                <p>Any operation or set of operations which is performed on personal data or on sets of
                                    personal data, whether or not by automated means, such as collection, recording,
                                    organisation, structuring, storage, adaptation or alteration, retrieval,
                                    consultation, use, disclosure by transmission, dissemination or otherwise making
                                    available, alignment or combination, restriction, erasure or destruction.</p>
                                <h3>Restriction of processing</h3>
                                <p>The marking of stored personal data with the aim of limiting their processing in the
                                    future.</p>
                                <h3>Pseudonymisation</h3>
                                <p>The processing of personal data in such a manner that the personal data can no longer
                                    be attributed to a specific data subject without the use of additional information,
                                    provided that such additional information is kept separately and is subject to
                                    technical and organisational measures to ensure that the personal data are not
                                    attributed to an identified or identified natural person.</p>
                                <h3>Controller</h3>
                                <p>The natural or legal person, public authority, agency or other body which, alone or
                                    jointly with others, determines the purposes and means of the processing of personal
                                    data.</p>
                                <h3>Processor</h3>
                                <p>A natural or legal person, public authority, agency or other body which processes
                                    personal data on behalf of the controller.</p>
                                <h3>Recipient</h3>
                                <p>A natural or legal person, public authority, agency or another body, to which the
                                    personal data are disclosed, whether a third party or not. However, public
                                    authorities which may receive personal data in the framework of a particular inquiry
                                    in accordance with Union or Member State law shall not be regarded as recipients.
                                </p>
                                <h3>Third party</h3>
                                <p>A natural or legal person, public authority, agency or body other than the data
                                    subject, controller, processor and persons who, under the direct authority of the
                                    controller or processor, are authorised to process personal data.</p>
                                <h3>Consent</h3>
                                <p>Consent of the data subject means any freely given, specific, informed and
                                    unambiguous indication of the data subject&#39;s wishes by which he or she, by a
                                    statement or by a clear affirmative action, signifies agreement to the processing of
                                    personal data relating to him or her.</p>
                            </div>
                        </div>
                        <div class="content-text text-list">
                            <h2>Information on data processing</h2>
                            <div class="rte">
                                <p>We are glad to supply you with information on the processing of your personal data by
                                    Engagement Global and your rights under data protection law.</p>
                                <h3>Purpose and scope of the processing of personal data</h3>
                                <p>Our website users&#39; personal data may only be used to the extent necessary to
                                    secure and operate a functioning website, to enable us to deliver the services we
                                    offer, to optimise our service offering and to fulfil the intended purpose.</p>
                                <h3>Legal foundations for the processing of personal data</h3>
                                <p>We process personal data of data subjects on the basis of these standards of
                                    authorisation:</p>
                                <ul>
                                    <li>Consent (Article 6 paragraph 1 (a) of the GDPR)</li>
                                    <li>Performance of a contract or steps prior to entering into a contract (Article 6
                                        paragraph 1 (b) of the GDPR)</li>
                                    <li>Legal obligation (Article 6 paragraph 1 (c) of the GDPR)</li>
                                    <li>Pursuit of a legitimate interest by us or by a third party, except where said
                                        interests are overridden by the interests or fundamental rights and freedoms of
                                        the data subject (Article 6 paragraph 1 (f) of the GDPR).</li>
                                </ul>
                                <h3>Data erasure and personal data retention period</h3>
                                <p>The personal data of the data subject will automatically be erased or restricted once
                                    the purpose for which they were stored no longer applies. Data may continue to be
                                    retained beyond this time when the data controller is required under European or
                                    national legislation, regulations or other legal instruments to do so. Data may also
                                    be restricted or erased when a retention period set under one of the above named
                                    provisions expires, except where further retention of the data is necessary in order
                                    to conclude or fulfil a contract.</p>
                                <h3>Recipients of personal data</h3>
                                <p>In principle the only recipients of data subjects&#39; personal data are the
                                    controller and the processor employed by the controller in accordance with data
                                    protection law. Data may be shared with third parties if the controller is
                                    authorised to do so by a permissive rule or is legally required to do so.</p>
                                <h3>Transfer of data to third countries</h3>
                                <p>Should data subjects&#39; personal data be transferred to countries outside the
                                    European Union (EU) or outside the European Economic Area (EEA), this will take
                                    place only in the presence of an adequate level of protection (Article 45 of the
                                    GDPR) or appropriate safeguards (Article 46 of the GDPR) or under the conditions of
                                    Article 49 of the GDPR for derogations for specific situations.</p>
                                <h3>Existence of automated decision-making</h3>
                                <p>As a responsible company we do not have automated decision-making or profiling.</p>
                            </div>
                        </div>
                        <div class="content-text standard">
                            <h2>Hosting</h2>
                            <div class="rte">
                                <p>As part of our outsourcing of data processing we commission a professional external
                                    service provider to make our website available. The service provider is required to
                                    comply with the legal regulations on data protection to the same extent as we are,
                                    and guarantee the reliable and secure management of the data associated with our
                                    online services. Data subjects&#39; personal data collected through the website are
                                    stored on the servers of the Hetzner Online <abbr lang="de"
                                        title="Aktiengesellschaft">AG</abbr> company in Gunzenhausen, Germany. The data
                                    are stored separately from other applications. The processor processes personal data
                                    only in accordance with the controller&#39;s instructions, and to the extent
                                    necessary in order to meet their obligations to provide services.</p>
                            </div>
                        </div>
                        <div class="content-text text-list">
                            <h2>Access data</h2>
                            <div class="rte">
                                <p>Each time our website is accessed, our system automatically records information from
                                    the accessing computer’s system. The following data are gathered:</p>
                                <ul>
                                    <li>the browser type and version used</li>
                                    <li>the user&#39;s operating system</li>
                                    <li>the user&#39;s Internet service provider</li>
                                    <li>the user’s <abbr lang="en" title="Internet Protocol">IP</abbr> address</li>
                                    <li>the data and time of access</li>
                                    <li>websites from which the user&#39;s system arrives at our website</li>
                                    <li>websites accessed by the user&#39;s system via our website.</li>
                                </ul>
                                <p>Access data are processed on the basis of our legitimate interest in transferring the
                                    content of the website and pursuant to Article 6 paragraph 1 (f) of the GPDR.
                                    Temporary processing of the user’s IP address by our system is required in order to
                                    deliver the website to the user’s computer. We may store the data for analytical and
                                    maintenance purposes. In that case, however, the accessing system&#39;s IP address
                                    is anonymised. Since these data are absolutely necessary in order to operate the
                                    website, as a user you are not able to object to their processing.</p>
                            </div>
                        </div>
                        <div class="content-text standard">
                            <h2>Cookies and similar technologies</h2>
                            <div class="rte">
                                <p>Our website uses cookies. Cookies are text files generated when the browser views
                                    pages, in order to store data on the browser during and after a website visit.
                                    Unique character strings are then regularly stored in the cookie, by means of which
                                    a server can recognise a browser. Cookies can be stored by the website visited
                                    (first party) or by third parties whose services are embedded in the website
                                    visited.</p>
                                <p>If a third-party service is embedded in several websites, the third party can store
                                    information on user activities in cookies and track these across several sites. In
                                    the cookie the website domain from which the cookie originates is stored, and access
                                    is restricted to this domain. Cookies are valid either for the duration of a browser
                                    session (session cookies) or until a date contained within the cookie (persistent
                                    cookies).</p>
                                <p>Expired cookies are no longer loaded by the browser when visiting the site, and
                                    depending on the browser are immediately either deleted or overwritten. You can
                                    configure your browser such that no cookies are stored. However, it may then be that
                                    you are not able to use all the functions of our website in full.</p>
                                <p>To find out more about your browser&#39;s cookie settings click on &#39;help&#39; in
                                    your browser or use these links:</p>
                                <p><a href="https://support.google.com/accounts/answer/61416?hl=de" target="_blank"
                                        rel="noopener">Google Chrome</a> <br><a
                                        href="https://support.mozilla.org/de/kb/cookies-loeschen-daten-von-websites-entfernen"
                                        target="_blank" rel="noopener">Mozilla Firefox</a> <br><a
                                        href="https://support.apple.com/kb/PH17191?locale=de_DE&amp;viewlocale=de_DE"
                                        target="_blank" rel="noopener">Safari</a> <br><a
                                        href="https://support.microsoft.com/de-de/help/17442/windows-internet-explorer-delete-manage-cookies"
                                        target="_blank" rel="noopener">Internet Explorer</a> <br><a
                                        href="http://www.opera.com/de/help" target="_blank" rel="noopener">Opera</a></p>
                                <p>Data may be also kept for the same purposes in your browser&#39;s local storage or
                                    local session storage.</p>
                                <p>When you visit our website the following data may be stored on your device:</p>
                            </div>
                        </div>
                        <div class="content-table standard">
                            <div class="table-container">
                                <table>
                                    <thead>
                                        <tr>
                                            <th>Name</th>
                                            <th>Service</th>
                                            <th>Domain</th>
                                            <th>Type</th>
                                            <th>Validity</th>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        <tr>
                                            <td>PHPSESSID</td>
                                            <td>Website</td>
                                            <td>engagement-global.de</td>
                                            <td>First-Party HTTP-Cookie</td>
                                            <td>session</td>
                                        </tr>
                                        <tr>
                                            <td>_ga</td>
                                            <td>Google Analytics</td>
                                            <td>engagement-global.de</td>
                                            <td>First-Party HTTP-Cookie</td>
                                            <td>2 years</td>
                                        </tr>
                                        <tr>
                                            <td>_gid</td>
                                            <td>Google Analytics</td>
                                            <td>engagement-global.de</td>
                                            <td>First-Party HTTP-Cookie</td>
                                            <td>24 hours</td>
                                        </tr>
                                        <tr>
                                            <td>_gat</td>
                                            <td>Google Analytics</td>
                                            <td>engagement-global.de</td>
                                            <td>First-Party HTTP-Cookie</td>
                                            <td>1 minute</td>
                                        </tr>
                                        <tr>
                                            <td>yt-player-bandwith</td>
                                            <td>YouTube</td>
                                            <td>youtube-nocookie.com</td>
                                            <td>HTML Local Storage</td>
                                            <td>permanent</td>
                                        </tr>
                                        <tr>
                                            <td>yt-player-headers-readable</td>
                                            <td>YouTube</td>
                                            <td>youtube-nocookie.com</td>
                                            <td>HTML Local Storage</td>
                                            <td>permanent</td>
                                        </tr>
                                        <tr>
                                            <td>yt-remote-connected-devices</td>
                                            <td>YouTube</td>
                                            <td>youtube-nocookie.com</td>
                                            <td>HTML Local Storage</td>
                                            <td>permanent</td>
                                        </tr>
                                        <tr>
                                            <td>yt-remote-device-id</td>
                                            <td>YouTube</td>
                                            <td>youtube-nocookie.com</td>
                                            <td>HTML Local Storage</td>
                                            <td>permanent</td>
                                        </tr>
                                        <tr>
                                            <td>yt-remote-fast-check-period</td>
                                            <td>YouTube</td>
                                            <td>youtube-nocookie.com</td>
                                            <td>HTML Session Storage</td>
                                            <td>session</td>
                                        </tr>
                                        <tr>
                                            <td>yt-remote-session-app</td>
                                            <td>YouTube</td>
                                            <td>youtube-nocookie.com</td>
                                            <td>HTML Session Storage</td>
                                            <td>session</td>
                                        </tr>
                                        <tr>
                                            <td>yt-remote-session-name</td>
                                            <td>YouTube</td>
                                            <td>youtube-nocookie.com</td>
                                            <td>HTML Session Storage</td>
                                            <td>session</td>
                                        </tr>
                                    </tbody>
                                </table>
                            </div>
                        </div>
                        <div class="content-text standard">
                            <h2>Session management</h2>
                            <div class="rte">
                                <p>When you visit our website our system automatically stores a session cookie with an
                                    anonymous identifier in your browser (a &#39;session <abbr lang="en"
                                        title="Identifier">ID</abbr> cookie&#39;). This identifier enables our system to
                                    assign page views to a browser session. This is necessary in order to provide our
                                    services and keep logged in users logged in, due to the stateless Hypertext Transfer
                                    Protocol (HTTP). No personal data are stored in the session ID cookie.</p>
                            </div>
                        </div>
                        <div class="content-text standard">
                            <h2>Google services</h2>
                            <div class="rte">
                                <p>Various services of Google <abbr lang="en"
                                        title="Limited Liability Company">LLC</abbr>, 1600 Amphitheatre Parkway,
                                    Mountain View, <abbr lang="en" title="California">CA</abbr> 94043, USA
                                    (&#39;Google&#39;) are embedded in our website. To find out more please refer to the
                                    section headed &#39;Further information&#39; below.</p>
                                <h3>Google web fonts</h3>
                                <p>When a user visits our website a connection is established with Google servers in
                                    order to load the required fonts. The visitor&#39;s IP address is transmitted to a
                                    Google server in the <abbr lang="en" title="United States of America">USA</abbr>. As
                                    far as we are aware Google does not store the IP address of the accessing device
                                    required for data transmission, or amalgamate it with other Google services.</p>
                                <p>Our use of Google web fonts is based on a legitimate interest pursuant to Article 6,
                                    paragraph 1 (f) of the GPDR. We use the Google web fonts to present our content
                                    accurately and in a graphically appealing way on all browsers. This also constitutes
                                    our legitimate interest in processing personal data.</p>
                                <h3>Google Tag Manager</h3>
                                <p>We use Google Tag Manager to configure and manage other tracking services on which we
                                    provide information in this privacy policy.</p>
                                <p>When a user visits our website a connection is established with Google servers in
                                    order to load the script required for Google Tag Manager. The visitor&#39;s IP
                                    address is transmitted to a Google server in the USA. As far as we are aware Google
                                    does not store the IP address of the accessing device required for data
                                    transmission, or amalgamate it with other Google services. When Google Tag Manager
                                    itself is used no personal data are processed.</p>
                                <p>The legal foundation for using Google Tag Manager and transferring the IP address is
                                    Article 6 paragraph 1 (f) of the GDPR. We use the Google Tag Manager service to
                                    configure and manage other services we use based on our legitimate interest in order
                                    to analyse and optimise the use of this website. These purposes also constitute our
                                    legitimate interest in processing personal data.</p>
                                <h3>Google Analytics</h3>
                                <p>This website uses the web analysis service Google Analytics. When a user visits our
                                    website a connection is established with Google servers in order to load the script
                                    required for Google Analytics. The visitor&#39;s IP address is transmitted to a
                                    Google server in the USA. As far as we are aware Google does not store the IP
                                    address of the accessing device required for data transmission, or amalgamate it
                                    with other Google services.</p>
                                <p>Using Google Analytics means that when you visit our website cookies are stored on
                                    your computer that enable us to analyse how you use our website (see above). As a
                                    rule, the information on your use of this website generated by the cookie are
                                    transferred to a Google server in the USA and stored there. On our behalf Google
                                    will use this information to analyse the use of our website by users, compile
                                    results on website activity, and provide us with further services in connection with
                                    use of the website and Internet use.</p>
                                <p>This website anonymises IP addresses (a process referred to as &#39;IP masking&#39;).
                                    This means that within member states of the European Union or countries that have
                                    signed the Agreement on the European Economic Area, Google abbreviates user IP
                                    addresses. This abbreviation anonymises your IP address.</p>
                                <p>The legal foundation for using Google Analytics is Article 6 paragraph 1 (f) of the
                                    GDPR. We task Google LLC to perform these analytical services on the basis of our
                                    interests in analysing and optimising the use of this website. These purposes also
                                    constitute our legitimate interest in processing personal data.</p>
                                <p>The data are automatically erased on a routine basis. Data whose retention period has
                                    expired are automatically erased once a month.</p>
                                <p>You can object to the collection of your data by Google Analytics by storing an
                                    opt-out cookie. Opt-out cookies prevent the future collection of your data when you
                                    visit this website. To prevent the collection of your data by Google Analytics, you
                                    must complete the opt-out procedure on all the devices/browsers that you use.</p>
                                <p><a href="/datenschutz.html#!">Please click on this link to deactivate tracking.</a>
                                </p>
                                <p>Please note that your decision applies only to this browser. However, should you
                                    intentionally or unintentionally delete this cookie, your objection to the storage
                                    and analysis will be invalidated. You can renew it via the aforementioned link. You
                                    can also prevent the storage of cookies by adjusting your browser settings
                                    accordingly, or by downloading and installing the relevant browser add-on from
                                    Google.</p>
                                <h3>YouTube videos</h3>
                                <p>This website uses plugins from YouTube LLC, 901 Cherry Ave., San Bruno, CA 94066, USA
                                    (&#39;YouTube&#39;), a subsidiary of Google. Video content from the platform
                                    youtube.com is shown using inline frames. The controller has no control over the
                                    delivery of the videos or the processing associated therewith.</p>
                                <p>When you visit one of our pages that embeds YouTube videos your browser connects with
                                    YouTube servers in the USA in order to load the video component/previews. When this
                                    happens the visitor&#39;s IP address and technical access data are transferred.</p>
                                <p>Furthermore, data are stored on the user&#39;s device (see above) that enable YouTube
                                    to recognise the browser used, and to aggregate data on the user&#39;s behaviour and
                                    recognise video views across several pages. YouTube can recognise that you have
                                    visited our website, possibly store this information in your personal YouTube
                                    account, and use collected data on your user behaviour for its own business
                                    purposes. YouTube videos are embedded on our website in extended data protection
                                    mode. This prevents the storage of cookies on your device.</p>
                                <p>The legal foundation for using YouTube plugins is Article 6 paragraph 1 (f) of the
                                    GDPR. We aim to provide interested visitors with information on our activities and
                                    services through videos. The service we use provides the necessary storage capacity,
                                    the needed bandwidth and the technical infrastructure for this.</p>
                                <h3>Google reCAPTCHA</h3>
                                <p>We use Google&#39;s reCAPTCHA service to determine whether a human individual or a
                                    computer is inputting data on our contact or newsletter forms. Google uses the
                                    following data to check whether you are a human user or a computer: IP address of
                                    the terminal used; the website of ours that you are visiting and in which reCAPTCHA
                                    is embedded; data and duration of visit; identification data of the browser used and
                                    type of operating system; Google account, if you are logged into Google; mouse
                                    movements on the reCAPTCHA interfaces, and tasks where you are required to identify
                                    images. The legal foundation for the data processing described is Article 6
                                    paragraph 1 (f) of the GPDR. We have a legitimate interest in this processing in
                                    order to guarantee the security of our website and protect ourselves against
                                    automated input (attacks).</p>
                            </div>
                        </div>
                        <div class="content-text text-list">
                            <h2>Further information</h2>
                            <div class="rte">
                                <p><a href="https://www.privacyshield.gov/participant?id=a2zt000000001L5AAI"
                                        target="_blank" rel="noopener">Google Privacy Shield certificate on the Privacy
                                        Shield Framework website</a></p>
                                <p><a href="https://www.google.com/analytics/terms/tag-manager/" target="_blank"
                                        rel="noopener">Google Tag Managers Terms of Service</a></p>
                                <p><a href="https://marketingplatform.google.com/about/analytics/terms/de/"
                                        target="_blank" rel="noopener">Google Analytics Terms of Service</a></p>
                                <p><a href="https://tools.google.com/dlpage/gaoptout?hl=en" target="_blank"
                                        rel="noopener">More information on the Google Analytics Opt-out Browser
                                        Add-on</a></p>
                                <p><a href="https://policies.google.com/?hl=de" target="_blank" rel="noopener">Google
                                        Privacy Policy and Terms of Service</a></p>
                                <p><a href="https://policies.google.com/technologies/retention?hl=de" target="_blank"
                                        rel="noopener">Information on the criteria for retention of collected data</a>
                                </p>
                            </div>
                        </div>
                        <div class="content-text standard">
                            <h2>Contact</h2>
                            <div class="rte">
                                <p>Our website specifies contact details such as addresses, telephone numbers and email
                                    addresses that enable you to get in touch with us quickly and communicate directly
                                    with us and our designated contact persons. A contact form is also provided on our
                                    website. When you contact us we will process the personal data you share with us,
                                    depending on the means of communication you select. This may include your full name,
                                    your address, the telephone number you use, the email address you use, and other
                                    personal data that you share with us in the course of communication. When you use
                                    the contact form we will also store your IP address as well as the date and time of
                                    submission.</p>
                                <p>The legal foundation for processing personal data in the course of communication is
                                    Article 6 paragraph 1 (f) of the GDPR. If you contact us with the aim of entering
                                    into a contract, an additional legal foundation for processing your data is Article
                                    6 paragraph 1 (f) of the GDPR.</p>
                                <p>We process your data solely for purposes of contacting you, communicating with you
                                    and tracking communication that has taken place. When you submit the contact form we
                                    store your IP address for maintenance purposes and to protect against misuse. These
                                    purposes also constitute our legitimate interest in processing your data.</p>
                                <p>The data are erased or restricted once the purpose for which they were stored no
                                    longer applies. The general provisions on the retention period also apply.</p>
                                <p>Data subjects may object to the processing of their personal data. To contact us in
                                    this regard please use the specified contact details.</p>
                            </div>
                        </div>
                        <div class="content-text text-list">
                            <h2>Subscription of press and event information</h2>
                            <div class="rte">
                                <p>On our website you can subscribe to press and event information by email. Under an
                                    outsourced data processing arrangement, the CleverReach GmbH &amp; Co. KG company,
                                    Schafjückenweg 2, 26180 Rastede, Germany acts as our service provider for sending
                                    and managing our email notifications.</p>
                                <p>When you register for press and event information, we collect the following data:</p>
                                <ul>
                                    <li>title</li>
                                    <li>first (given) name</li>
                                    <li>family name</li>
                                    <li>email address (required)</li>
                                    <li>media/institution</li>
                                </ul>
                                <p>These data are used first of all to send you a confirmation email (double opt-in
                                    procedure). You will not be included on the newsletter distribution list until you
                                    reconfirm. The newsletter contains technologies that enable us to see whether a
                                    newsletter has been opened, and how newsletters are used. When you open the
                                    newsletter information is automatically sent to us. This enables us to identify
                                    trends and improve our content. Your data are used exclusively for these purposes
                                    and are not shared with third parties.</p>
                                <p>When you register for the newsletter we will obtain your consent and draw your
                                    attention to this privacy policy. The legal foundation for processing the data you
                                    input and for analysing your user behaviour is Article 6 paragraph 1 (a) of the
                                    GDPR. You can cancel the subscription or revoke your consent at any time using the
                                    cancel option in the newsletter or by email, without stating reasons.</p>
                            </div>
                        </div>
                        <div class="content-text text-list">
                            <h2>Registration for events</h2>
                            <div class="rte">
                                <p>Interested persons can register for events via our website. For this purpose we
                                    provide a registration form on the event page. What personal data we collect varies
                                    depending on the type of event, and each form requests particular details. The
                                    minimum we require in order to be able to send you a confirmation email (double
                                    opt-in procedure) is your first name, family name and email address. In addition,
                                    your IP address is saved by the system when you send the form. We will use the data
                                    we collect solely for purposes of processing your registration and organising the
                                    event. Your data will automatically be deleted after use, unless a legal retention
                                    period precludes their deletion.</p>
                                <p>When you register for events we will obtain your consent and draw your attention to
                                    this privacy policy. The legal foundation for processing the data you input is
                                    Article 6 paragraph 1 (a) of the GDPR. You may revoke your consent at any time by
                                    email without stating reasons.</p>
                            </div>
                        </div>
                        <div class="content-text text-list">
                            <h2>Integration of content from social media platforms</h2>
                            <div class="rte">
                                <p>This website integrates content from servers of social media platforms. When you call
                                    up a page on our website where such content is embedded, your browser connects to
                                    the social media provider&#39;s server to load the embedded content. In doing so,
                                    your IP address and the page called up is transmitted to the server of the social
                                    media provider. A further processing of personal data is not known to us. On our
                                    website, content can be loaded from the following external sources:</p>
                                <p><a href="https://external.xx.fbcdn.net/" target="_blank" rel="noopener">Facebook
                                        Content Distribution Network </a><br><a href="https://pbs.twimg.com/"
                                        target="_blank" rel="noopener">Twitter Content Distribution Network</a> <br><a
                                        href="https://farm2.staticflickr.com/" target="_blank" rel="noopener">Flickr
                                        Content Distribution Network</a></p>
                                <p>In order to protect our legitimate interest in the presentation of appealing content
                                    and to avoid potential copyright conflicts, the content is loaded directly from
                                    servers of the aforementioned providers. The processing of your IP address required
                                    for establishing the connection is carried out for these purposes on the basis of
                                    <abbr lang="en" title="Article">Art.</abbr> 6 <abbr lang="en"
                                        title="Paragraph">Para.</abbr> 1 <abbr lang="en" title="littera">lit.</abbr> f
                                    DSGVO.</p>
                            </div>
                        </div>
                        <div class="content-text text-list">
                            <h2>Social media plug-ins</h2>
                            <div class="rte">
                                <p>On our website we only use links to platforms of social media providers. Some of
                                    these links contain parameters that, depending on the platform, pass information to
                                    use interactive functions. Currently, our website contains interactive links to the
                                    platforms Facebook and Twitter.</p>
                                <p>When you click on a button labeled &#34;share&#34;, your browser connects to servers
                                    at Facebook <abbr lang="en" title="Incorporation">Inc.</abbr>, 1601 S California
                                    Ave, Palo Alto, California 94304, USA (&#34;Facebook&#34;).</p>
                                <p>If you click on a button labeled &#34;tweet&#34;, your browser connects to servers at
                                    Twitter Inc., 1355 Market St, Suite 900, San Francisco, California 94103, USA
                                    (&#34;Twitter&#34;).</p>
                                <p>Facebook or Twitter will then receive information that you have visited the
                                    appropriate subpage of our website, regardless of whether you are registered with or
                                    logged in to the service provider. If you are logged in with the respective service
                                    provider at the time of access, this information is assigned to your user account
                                    and, if applicable, displayed publicly. Furthermore, the service provider will
                                    process your IP address and may store cookies on your device. We have no influence
                                    on the type and scope of processing of personal data on the service provider&#39;s
                                    pages and only link to their offer.</p>
                                <p>You can find more information about the data protection regulations of the service
                                    providers here:</p>
                                <p><a href="https://de-de.facebook.com/about/privacy/update" target="_blank"
                                        rel="noopener">Facebook</a> <br><a href="https://twitter.com/de/privacy"
                                        target="_blank" rel="noopener">Twitter</a> <br><a
                                        href="https://www.flickr.com/help/privacy" target="_blank"
                                        rel="noopener">Flickr</a></p>
                            </div>
                        </div>
                        <div class="content-text text-list">
                            <h2>Rights of data subjects</h2>
                            <div class="rte">
                                <p>Data subjects have the following rights vis-à-vis controllers:</p>
                                <ul>
                                    <li>You can demand information as to what personal data concerning you from what
                                        source have been retained, and for what purpose. You must also be notified if
                                        your data are passed on to third parties. In this case you must be informed of
                                        the identity of the recipient or of the categories of recipient.</li>
                                    <li>If your personal data are incorrect or incomplete, you may demand that they be
                                        rectified or supplemented.</li>
                                    <li>You can object to the processing of your personal data for advertising purposes.
                                        For these purposes your data must then be restricted.</li>
                                    <li>You have the right to restrict processing if: you contest the correctness of the
                                        your personal data for a period that enables the controller to review the
                                        correctness of the personal data; the processing is unlawful and you object to
                                        the erasure of the personal data and instead demand restriction of the use of
                                        the personal data; the controller no longer requires the personal data for
                                        processing purposes, but you do require them in order to establish, exercise or
                                        defend legal claims, or if you have objected to the processing pursuant to
                                        Article 21 paragraph 1 of the GDPR and it has not yet been determined whether
                                        the controller&#39;s legitimate grounds override your reasons.</li>
                                    <li>You may demand that your data be erased. This is possible when the legal
                                        foundation for processing your data is lacking or has ceased to apply. It is
                                        also the case when the purpose of the data processing no longer applies either
                                        due to the passage of time or for other reasons. Please note that an erasure may
                                        be overridden by an existing retention period or other legitimate interest of
                                        our company. We would be glad to advise you of this upon request. If we have
                                        made your data public, we are then obliged to notify all recipients that you
                                        have requested the erasure of all links to these data or copies of these
                                        personal data. Should you wish to make use of this right, please send an email
                                        to:</li>
                                </ul>
                                <p><a
                                        href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#105;&#x6E;&#102;&#x6F;&#64;&#x65;&#110;&#x67;&#97;&#x67;&#101;&#x6D;&#101;&#x6E;&#116;&#x2D;&#103;&#x6C;&#111;&#x62;&#97;&#x6C;&#46;&#x64;&#101;">&#105;&#x6E;&#102;&#x6F;&#64;&#x65;&#110;&#x67;&#97;&#x67;&#101;&#x6D;&#101;&#x6E;&#116;&#x2D;&#103;&#x6C;&#111;&#x62;&#97;&#x6C;&#46;&#x64;&#101;</a>
                                </p>
                                <ul>
                                    <li>You also have a right to object if your legitimate interest due to a personal
                                        situation overrides our interest in processing. This does not apply if we are
                                        obliged to perform processing due to a legal regulation.</li>
                                    <li>Without prejudice to any other administrative or judicial remedy, you have the
                                        right to complain to a supervisory authority if you take the view that the
                                        processing of your personal data violates privacy.</li>
                                    <li>You have the right to obtain your personal data that you have provided to the
                                        controller in a structured, common and machine-readable format.</li>
                                </ul>
                            </div>
                        </div>
                        <div class="content-text standard">
                            <h2>Amendment of this privacy policy</h2>
                            <div class="rte">
                                <p>We reserve the right to amend this privacy policy so that it complies at all times
                                    with the current legal requirements, or to reflect changes in our services in the
                                    privacy policy. The new privacy policy will then apply the next time you visit our
                                    site.</p>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        
    </div>
    <script src="/build/app.js"></script>
    <!-- Google Tag Manager -->
    <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-N88JQL" height="0" width="0"
            style="display:none;visibility:hidden"></iframe></noscript>
    <script>(function (w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = !0; j.src = '//www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f) })(window, document, 'script', 'dataLayer', 'GTM-N88JQL')</script>
    <!-- End Google Tag Manager -->
    <!-- Matomo -->
    <script
        type="text/javascript">var _paq = window._paq || []; _paq.push(["setDocumentTitle", document.domain + "/" + document.title]); _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function () { var u = "//track.engagement-global.de/"; _paq.push(['setTrackerUrl', u + 'matomo.php']); _paq.push(['setSiteId', '1']); var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0]; g.type = 'text/javascript'; g.async = !0; g.defer = !0; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s) })()</script>
    <noscript>
        <p><img src="//track.engagement-global.de/matomo.php?idsite=1[&]rec=1" style="border:0;" alt="" /></p>
    </noscript>
    <!-- End Matomo Code -->
    <script type="application/ld+json">
{
    "@context": "https:\/\/schema.org",
    "@graph": [
        {
            "@type": "WebPage"
        },
        {
            "@type": "BreadcrumbList",
            "itemListElement": [
                {
                    "@type": "ListItem",
                    "item": {
                        "@id": "\/en\/homepage",
                        "name": "Home"
                    },
                    "position": 1
                },
                {
                    "@type": "ListItem",
                    "item": {
                        "@id": "en\/privacy-policy",
                        "name": "Privacy Policy"
                    },
                    "position": 2
                }
            ]
        }
    ]
}
</script>
    <script type="application/ld+json">
{
    "@context": "https:\/\/schema.contao.org",
    "@graph": [
        {
            "@type": "Page",
            "fePreview": false,
            "groups": [],
            "noSearch": false,
            "pageId": 237,
            "protected": false,
            "title": "Privacy Policy"
        }
    ]
}
</script>
</body>

</html>
`HtmlWidget` configuration
HtmlWidget(
            htmlText,
            onTapUrl: (url) async => widget.handleLinkClicked(url),
            onLoadingBuilder: (context, element, loadingProgress) => CircularProgressIndicator(),
            customWidgetBuilder: (element) {
              if (element.outerHtml.contains('</h') || element.outerHtml.contains('<strong>')) {
                // this part is necessary for correct marking:
                if (element.innerHtml.contains('</h') || element.outerHtml.contains('<strong>')) return null;
                return Semantics(
                    header: true, child: HtmlWidget(element.outerHtml));
              }
              return null;
            },
          )
Tesing environment

[✓] Flutter (Channel stable, 3.29.3, on macOS 15.5 24F74 darwin-arm64, locale en-DE) [1,367ms]
    • Flutter version 3.29.3 on channel stable at /Users/xxx/fvm/versions/3.29.3
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ea121f8859 (2 months ago), 2025-04-11 19:10:07 +0000
    • Engine revision cf56914b32
    • Dart version 3.7.2
    • DevTools version 2.42.3

[✓] Android toolchain - develop for Android devices (Android SDK version 35.0.0-rc4) [2.6s]
    • Android SDK at /Users/xxx/Library/Android/sdk
    • Platform android-35, build-tools 35.0.0-rc4
    • ANDROID_HOME = /Users/xxx/Library/Android/sdk
    • ANDROID_SDK_ROOT = /Users/xxx/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
      This is the JDK bundled with the latest Android Studio installation on this machine.
      To manually set the JDK path, use: `flutter config --jdk-dir="path/to/jdk"`.
    • Java version OpenJDK Runtime Environment (build 21.0.6+-13368085-b895.109)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 16.4) [1,456ms]
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 16F6
    • CocoaPods version 1.16.2

[✗] Chrome - develop for the web (Cannot find Chrome executable at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome) [12ms]
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Android Studio (version 2024.3) [12ms]
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 21.0.6+-13368085-b895.109)

[✓] VS Code (version 1.101.0) [9ms]
    • VS Code at /Users/xxx/Desktop/Visual Studio Code.app/Contents
    • Flutter extension version 3.112.0

[✓] Connected device (4 available) [6.5s]
    • M2101K9G (mobile)               • 78638998                  • android-arm64 • Android 13 (API 33)
    • iPhone Xs (mobile)  • 00008020-001905A00C82002E • ios           • iOS 18.5 22F76
    • macOS (desktop)                 • macos                     • darwin-arm64  • macOS 15.5 24F74 darwin-arm64
    • Mac Designed for iPad (desktop) • mac-designed-for-ipad     • darwin        • macOS 15.5 24F74 darwin-arm64
    ! Error: Browsing on the local area network for iPhone. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code -27)

[✓] Network resources [258ms]
    • All expected network resources are available.

! Doctor found issues in 1 category.

Expected results

we expect the whole html to be recognised and be able to jump of necessary
I also noticed if I avoid this part:

 // this part is necessary for correct marking:
                if (element.innerHtml.contains('</h') || element.outerHtml.contains('<strong>')) return null;

the HTML does not even go to next element and immediately jumps to navigation bar, which is wrong.
it should be able to continue if there is more text beneath

As for suggestion, the HTML widget should be able to handle the titles itself since it's an important part of the accessibility specially in the EU

Actual results

As mentioned in the steps to reproduce when we reach at certain point in text the next heading is not recognised and does not jump down

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions