is mentioned to mention a contractid, including in identifiers. r=warren git-svn-id: svn://10.0.0.236/trunk@79036 18797224-902f-48f8-a5cc-f745e15eee43
137 lines
4.7 KiB
XML
137 lines
4.7 KiB
XML
<?xml-stylesheet href="chrome://messenger/skin/messenger.css" type="text/css"?>
|
|
|
|
<?xul-overlay href="chrome://global/content/globalOverlay.xul"?>
|
|
<?xul-overlay href="chrome://communicator/content/utilityOverlay.xul"?>
|
|
|
|
|
|
<window id="actest"
|
|
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
|
xmlns:html="http://www.w3.org/1999/xhtml"
|
|
xmlns:nc="http://home.netscape.com/NC-rdf#"
|
|
align="vertical"
|
|
width="750"
|
|
height="500"
|
|
onload="Initialize();"
|
|
>
|
|
|
|
<html:script language="JavaScript">
|
|
|
|
var AutoCompleteSession = {
|
|
onStartLookup: function(value, prevResult, listener)
|
|
{
|
|
dump("Search Session: onStartLookup\n");
|
|
|
|
var results = Components.classes["@mozilla.org/autocomplete/results;1"].createInstance();
|
|
results = results.QueryInterface(Components.interfaces.nsIAutoCompleteResults);
|
|
results.searchString = value;
|
|
results.defaultItemIndex = 0;
|
|
results.param = null;
|
|
|
|
var item = Components.classes["@mozilla.org/autocomplete/item;1"].createInstance();
|
|
item = item.QueryInterface(Components.interfaces.nsIAutoCompleteItem);
|
|
item.value = "Jean-Francois Ducarroz";
|
|
item.comment = "[put your comment here]";
|
|
item.className = "";
|
|
item.param = null;
|
|
|
|
results.items.AppendElement(item);
|
|
listener.onAutoComplete(results, Components.interfaces.nsIAutoCompleteStatus.matchFound);
|
|
},
|
|
|
|
onStopLookup: function()
|
|
{
|
|
dump("Search Session: onStopLookup\n");
|
|
},
|
|
|
|
onAutoComplete: function(value, prevResult, listener)
|
|
{
|
|
dump("Search Session: onAutoComplete, value =" + value + "\n");
|
|
|
|
var results = Components.classes["@mozilla.org/autocomplete/results;1"].createInstance();
|
|
results = results.QueryInterface(Components.interfaces.nsIAutoCompleteResults);
|
|
results.searchString = value;
|
|
results.defaultItemIndex = 0;
|
|
results.param = null;
|
|
|
|
var item = Components.classes["@mozilla.org/autocomplete/item;1"].createInstance();
|
|
item = item.QueryInterface(Components.interfaces.nsIAutoCompleteItem);
|
|
item.value = value + "@mozilla.org";
|
|
item.comment = "[put your comment here]";
|
|
item.className = "";
|
|
item.param = null;
|
|
|
|
results.items.AppendElement(item);
|
|
|
|
item = Components.classes["@mozilla.org/autocomplete/item;1"].createInstance();
|
|
item = item.QueryInterface(Components.interfaces.nsIAutoCompleteItem);
|
|
item.value = value + "@netscape.com";
|
|
item.comment = "[put your comment here]";
|
|
item.className = "";
|
|
item.param = null;
|
|
|
|
results.items.AppendElement(item);
|
|
|
|
listener.onAutoComplete(results, Components.interfaces.nsIAutoCompleteStatus.matchFound);
|
|
}
|
|
};
|
|
|
|
function function1()
|
|
{
|
|
var myAutoComplete = document.getElementById("test");
|
|
value = myAutoComplete.value;
|
|
match = "Jean-Francois Ducarroz";
|
|
|
|
lmatch = match.toLowerCase();
|
|
lvalue = value.toLowerCase();
|
|
|
|
dump("value = " + lvalue + ", match = " + lmatch + "\n");
|
|
|
|
if (lvalue == lmatch)
|
|
dump("exact match\n");
|
|
else
|
|
{
|
|
dump("substring = " + lmatch.substring(0, lvalue.length) + "\n");
|
|
if (lmatch.substring(0, lvalue.length) == lvalue)
|
|
{
|
|
dump("Ok, we can merge\n");
|
|
myAutoComplete.value = value + match.substring(value.length, match.length);
|
|
// myAutoComplete.anonymousContent[0].firstChild.anonymousContent[0].firstChild.setSelectionRange(value.length, match.length);
|
|
}
|
|
else
|
|
{
|
|
dump("oops, no match!\n");
|
|
myAutoComplete.value = value + " " + match;
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
function Initialize()
|
|
{
|
|
dump("Initialize!!\n");
|
|
var secondAutoComplete = document.getElementById("test2");
|
|
abSession = secondAutoComplete.autoCompleteSession.QueryInterface(Components.interfaces.nsIAbAutoCompleteSession)
|
|
dump("abSession = " + secondAutoComplete + ", abSession = " + secondAutoComplete.autoCompleteSession + "\n");
|
|
abSession.defaultDomain = "mozilla.org";
|
|
|
|
var myAutoComplete = document.getElementById("test");
|
|
dump("myAutoComplete = " + myAutoComplete + ", session = " + myAutoComplete.autoCompleteSession + "\n");
|
|
myAutoComplete.autoCompleteSession = AutoCompleteSession;
|
|
}
|
|
|
|
</html:script>
|
|
|
|
<!--autocomplete id="test" timeout="300" /-->
|
|
|
|
<autocomplete id="test2"
|
|
searchSessionType="addrbook"
|
|
timeout="300"
|
|
onkeypress="if (event.keyCode == 13) dump('Done, value=' + this.value + '\n');"
|
|
/>
|
|
|
|
<!--autocomplete
|
|
searchSessionClass="netscape%2Fmessenger%2Fautocomplete%26type%3Daddrbook"
|
|
timeout="300"
|
|
/-->
|
|
</window>
|