summaryrefslogtreecommitdiffstats
path: root/chrome/browser/autocomplete
Commit message (Collapse)AuthorAgeFilesLines
* Stop exposing manually_selected_match_ outside the AutocompletePopupModel. ↵pkasting@chromium.org2008-09-1911-362/+222
| | | | | | | | | | | | | | | | | | | The main goal of this is to be a first step towards divorcing the popup and the edit from each other. To do this, I changed the behavior of manual selections. They now do not persist once the user types more characters, hits esc, etc. Our old behavior, which Brett and I designed long ago, turns out to have been a mistake; users who arrowed to an item and then typed more weren't expecting "stickiness" on their previous choice, and it led to user mistakes. This also required changing how we do the "keyword UI" persistence in the case where the user switches into keyword UI, but then deletes all his text. Previously, we used manually_selected_match_ with a provider affinity to the keyword provider in order to accomplish this. Now we stick another flag on the AutocompleteInput, which, when set, biases the keyword provider to return the best results. The user-visible effect of this is that when in keyword UI mode with no query string, the selected entry in the popup will be the first, rather than third, entry. This is a small win. While here I fixed the bug where editing a string and transforming it into a keyword search would avoid switching into keyword UI (as expected), but also delete the keyword off the visible string (oops). I also made us lock the popup once the user changes the manually_selected_match_, in order to give a little more stability to it. I'm sorry this makes so many behavioral changes at once. All this code is tangled together and untangling it is hard :( The keyword-related variables in the AutocompleteEditModel seem a mess. They are probably worse now than before this change; I think I need a followup change at some point to make them all more sane. It seems like we have three variables and complex conditionals where two, and simpler ones, would do. BUG=997976,1201974,1204173 Review URL: http://codereview.chromium.org/3172 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2426 0039d316-1c4b-4281-b951-d872f2087c98
* Renames BoomarkBarModel to BookmarkModel.sky@google.com2008-09-116-25/+23
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/1912 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2057 0039d316-1c4b-4281-b951-d872f2087c98
* First pass at splitting the AutocompleteEdit into Model and View. This was ↵pkasting@chromium.org2008-09-106-1250/+1524
| | | | | | | | | noticeably harder than with the Popup and I'm not at all sure I've made the right decisions :(. The View code is about 3x larger than the model. BUG=1343512 Review URL: http://codereview.chromium.org/1872 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2004 0039d316-1c4b-4281-b951-d872f2087c98
* Don't send queries when URL is like:darin@chromium.org2008-09-104-16/+52
| | | | | | | | | | | | | | | - starts with http:// or https:// and includes username (e.g. http://me@test.com/) - starts with http:// or https:// and includes query (e.g. http://test.com/?q=x) - starts with https:// and includes path component (e.g. https://test.com/path) so as not to leak user data to the suggest server. Patch by takayoshi.kochi@gmail.com BUG=1647 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1978 0039d316-1c4b-4281-b951-d872f2087c98
* Moves bookmark related classes into bookmarks directory. There are nosky@google.com2008-09-094-4/+4
| | | | | | | | | | | | code changes here (other than converting to COPY_AND_BLAH_BLAH and updating include guards). BUG=none TEST=none Review URL: http://codereview.chromium.org/1868 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1944 0039d316-1c4b-4281-b951-d872f2087c98
* Change the external protocol handler to look at thensylvain@google.com2008-09-081-3/+3
| | | | | | | | | | | command that will be run before warning the user. If the command is empty, there is no reason to warn. I removed a dcheck. This dcheck is good, but unfortunately we can't use g_browser_process in the io_thread. Review URL: http://codereview.chromium.org/1632 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1871 0039d316-1c4b-4281-b951-d872f2087c98
* Minor cleanup to OneShotTimer and RepeatingTimer: moves more of the member ↵darin@google.com2008-09-034-28/+22
| | | | | | | | | | | variables into the Task subclass. Also included in this change: deprecate MessageLoop::timer_manager(), and change consumers over to use OneShotTimer or RepeatingTimer. R=beng BUG=1346553 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1684 0039d316-1c4b-4281-b951-d872f2087c98
* Makes the HistoryContentsProvider query bookmark titles. I nuked asky@google.com2008-08-293-63/+127
| | | | | | | | | | | couple of fields that I felt were redundant. I'm pretty sure I got the same logic, but you better stare at this to convince yourself. BUG=1256202 TEST=covered by unit tests git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1545 0039d316-1c4b-4281-b951-d872f2087c98
* Split the AutocompletePopup into model and view classes, step 1.pkasting@google.com2008-08-285-821/+791
| | | | | | | | | | | | The just adds "Model" and "View" to the end of the current classname, leaves everything in the same files, and doesn't really change or remove any functionality, creation order, ownership semantics, etc. In other words, it's basically just moving some code around to get things split into two classes, and the harder work comes later. Also removes/trims some overly long comments, fixes a couple comment errors I noticed, and trims one or two bits of logic to be shorter. What really needs review the most is the high-level decisions about how to split data and functionality between the two classes. BUG=1343512 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1492 0039d316-1c4b-4281-b951-d872f2087c98
* Fix header guardnsylvain@google.com2008-08-271-3/+3
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1444 0039d316-1c4b-4281-b951-d872f2087c98
* Fix header guardnsylvain@google.com2008-08-271-3/+3
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1440 0039d316-1c4b-4281-b951-d872f2087c98
* Makes deleting history no longer delete starred urls. Thiseffectively ↵sky@google.com2008-08-272-2/+2
| | | | | | reenables the code in ExpireHistoryBackend. I also madethe code consistent so that when we delete visits as the result ofhistory deletion we don't change the typed/visit count of theunderlying url.BUG=1214201 1256202TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1423 0039d316-1c4b-4281-b951-d872f2087c98
* Chrome changes corresponding to my message_loop_type CL.darin@google.com2008-08-263-0/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1363 0039d316-1c4b-4281-b951-d872f2087c98
* Use a more compact license header in source files.license.bot2008-08-2420-562/+80
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes up the autocomplete providers to correctly update starredsky@google.com2008-08-216-85/+38
| | | | | | | | | | | state. I broke this in order to land my last mongo patch. HistoryContentsProvider is still lacking in one area. BUG=1256202 TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1181 0039d316-1c4b-4281-b951-d872f2087c98
* Moves bookmarks out of history into its own file (JSON).sky@google.com2008-08-214-37/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Interesting points: . Migration was a bit atypical. Here is the approach I took: . If the URL db contains bookmarks it writes the bookmarks to a temporary file. . When the bookmark bar model is loaded it assumes bookmarks are stored in a file. If the bookmarks file doesn't exist it then attempts to load from history, after waiting for history to finish processing tasks. . I've broken having the omnibox query for starred only. This patch was already too ginormous for me to contemplate this too. I'll return to it after I land this. . Similarly the history page isn't searching for starred titles now. As we discussed with Glen, that is probably fine for now. . I've converted NOTIFY_STARRED_FAVICON_CHANGED to NOTIFY_FAVICON_CHANGED and it is notified ANY time a favicon changes. I'm mildly concerned about the extra notifications, but without having history know about starred it's the best I can do for now. . Autocomplete (specifically URLDatabase::AutocompleteForPrefix) previously sorted by starred. It can no longer do this. I don't think I can get this functionality back:( Luckily it only mattered if you had a starred and non-starred URL with the same type count that matched a query. Probably pretty rare. What's left: . Fix up HistoryContentsProvider to query for starred entries titles. . Clean up the delete all case. I basically just made it compile; it can be greatly simplified. . Rename BookmarkBarModel to BookmarksModel. BUG=1256202 TEST=this is a huge change to bookmarks. Thanfully it's pretty well covered by tests, none-the-less make sure you exercise bookmarks pretty heavily to make sure nothing is busted. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1153 0039d316-1c4b-4281-b951-d872f2087c98
* Large patch set (159 files total) to cleanup the includes.maruel@google.com2008-08-152-13/+26
| | | | | | | | | | - Slightly reduce the size of the generated .lib files ~3%. - Reduce the number of implicit and explicit atl and windows includes. hooray! - Help incremental build by reducing the number of unnecessary included files. - Split some template class in two, one base class for the common code and the specialization that inherits from the base class. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@937 0039d316-1c4b-4281-b951-d872f2087c98
* Makes the toolbar/location bar look nice in popup windows.beng@google.com2008-08-131-2/+3
| | | | | | | | Rather than creating a frankenstein separate window type for popups, this just uses BrowserView2, and the regular BrowserToolbarView, but hides all the irrelevant controls. B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@770 0039d316-1c4b-4281-b951-d872f2087c98
* Allow trailing commas in JSON responses from suggestion services. Various ↵pkasting@google.com2008-08-011-0/+1
| | | | | | | | real-world servers return responses like this and there's no obvious reason to disallow it, even though technically it violates the JSON spec. BUG=1295216 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217 0039d316-1c4b-4281-b951-d872f2087c98
* Move more net classes into the net namespace. Also remove the net_util ↵darin@google.com2008-07-311-2/+2
| | | | | | | | namespace in favor of the net namespace. This is a purely mechanical change. There should be no logic changes. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome to the repository.initial.commit2008-07-2620-0/+10677
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15 0039d316-1c4b-4281-b951-d872f2087c98