<?xml version="1.0" encoding="UTF-8" ?>
<!--

    Copyright (c) 2010, 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<Module id="foo">
    <ModulePrefs title="It really does read this." />
    <UserPref name="test" default_value="abc" />
    <Content type="html">
        <![CDATA[
            <span id="hello">Hello!</span>
            <form>
                <input type="text" id="name" onKeyUp="updateMessage(this.value);" />
            </form>
            <script type="text/javascript">
                var prefs = new gadgets.Prefs("myPrefs");
                function updateMessage(name) {
                    var hello = document.getElementById('hello');
                    hello.innerHTML = 'Hello ' + name + '!';
                    prefs.set('name', name);
                }
            </script>
        ]]>
    </Content>
</Module>
