    update: function(context, immediate)    {        var panel = context.chrome.getSelectedPanel();        if (!panel.searchable)            return;        var searchBox = context.chrome.$("fbSearchBox");        var panelNode = panel.panelNode;        var value = searchBox.value;        // This sucks, but the find service won't match nodes that are invisible, so we        // have to make sure to make them all visible unless the user is appending to the        // last string, in which case it's ok to just search the set of visible nodes        if (!panel.searchText || value.indexOf(panel.searchText) != 0)            removeClass(panelNode, "searching");        // Cancel the previous search to keep typing smooth        clearTimeout(panelNode.searchTimeout);        if (immediate)        {            var found = panel.search(value);            if (!found && value)                beep();                        panel.searchText = value;        }        else        {            // After a delay, perform the search            panelNode.searchTimeout = setTimeout(function()            {                if (value)                {                    // Hides all nodes that didn't pass the filter                    setClass(panelNode, "searching");                }                else                {                    // Makes all nodes visible again                    removeClass(panelNode, "searching");                }                var found = panel.search(value);                if (!found && value)                    beep();                panel.searchText = value;            }, searchDelay);        }    },
2454	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/2454/e1d42ad3fad63b72826a4e2ed0726866484c9ac3/search.js/buggy/extension/content/firebug/search.js