summaryrefslogtreecommitdiffstats
path: root/chrome/browser
Commit message (Collapse)AuthorAgeFilesLines
* Fix an issue with unregistering content script contexts.mpcomplete@chromium.org2009-07-221-3/+0
| | | | | | | | | | | Reenable content script messaging test. BUG=no TEST=no Review URL: http://codereview.chromium.org/155887 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21324 0039d316-1c4b-4281-b951-d872f2087c98
* Make UtilityProcessHost destructor virtual.mattm@chromium.org2009-07-221-1/+1
| | | | | | | | BUG=17129 Review URL: http://codereview.chromium.org/155946 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21323 0039d316-1c4b-4281-b951-d872f2087c98
* Try and improve result coalescing/display in the omnibox popup.pkasting@chromium.org2009-07-224-144/+66
| | | | | | | | | | | | | | | | | | | | | | | | This eliminates the delay timer in the popup view, and also eliminates the coalesce timer in the controller. Instead, we simply coalesce until we're done, we have at least as many results as we're already showing, or the "maximum delay timeout" (300 ms) fires, indicating we've gone too long without updating. Additionally, in order to be more responsive when typing rapidly, the controller updates observers immediately with the available results from a previous query if one is still running when a new query is started. While in theory this seems like it might produce flicker, in practice _not_ having it also results in flicker (just less-predictable flicker) since the 300 ms timeout starts kicking in at random times relative to when new keys are pressed. I also fixed a few small problems with leaving 1-pixel high white rows at the bottom of the popup during rapid typing (which weren't visible before this change since the popup would never shrink during rapid typing). After eliminating the timeout in the popup view, I was able to refactor the code to be shorter since a few members and helper functions could all be inlined. Then I added some long comments and made things not much shorter after all :/. I also changed two other (self-contained) unrelated spots in the popup to be shorter. Please patch this in locally and try how it feels. Things to test with this change vs. the old code vs. the old, old (original omnibox) code: * Type one letter at a time with long pauses in between; see how flickery the popup is * Type one letter (e.g. "a") and then type rapidly for a while; see how responsive the popup is * Type words like "amazon", "compusa" and "comcast" at various different speeds and observe the flicker vs. responsiveness tradeoff * Type or paste some long series of letters (that default to searching), then rapidly press and release the ctrl key My hope is that this hits a good balance (it's very difficult to be both flicker-free and responsive, I view the previous two sets of code as being off first one side of the scale and then the other). Possible tweaks include the animation tweening mechanism and timing (I experimented with various different speeds and linear tweening, nothing felt significantly better to me but my machine sucks w.r.t. animation quality) and tweaking the controller "max timeout" value and notification behavior upon starting a new query (I tried notifying only if two keys had been typed since the last notification, it didn't feel better). BUG=none TEST=see above Review URL: http://codereview.chromium.org/149659 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21322 0039d316-1c4b-4281-b951-d872f2087c98
* Nasty short-term hack to special case display of dialogaa@chromium.org2009-07-225-31/+65
| | | | | | | | | | | | | | | on theme installation. It should not be displayed if the theme was installed from our gallery URL. I intend to fix this very soon, but I wanted it to make this coming build, so I did this quick thing for now. Also, I found another bug in ExtensionsService install logic. There was a test, it was ensuring the wrong behavior :(. Review URL: http://codereview.chromium.org/155936 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21321 0039d316-1c4b-4281-b951-d872f2087c98
* gtk: Keep track of the tab bounds using the size-allocate signal. ↵jhawkins@chromium.org2009-07-222-7/+29
| | | | | | | | | | Previously we assumed that the tab was immediately sized as requested, which was not always happening. This fixes a problem seen in RTL layout where the close button would be incorrectly positioned. BUG=16756 TEST=Open the browser in a RTL language. Notice that the close buttons on tabs are positioned correctly. Review URL: http://codereview.chromium.org/155942 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21320 0039d316-1c4b-4281-b951-d872f2087c98
* Ignore errors about creating audio output streamhclam@chromium.org2009-07-221-4/+2
| | | | | | | | | | | | | | | Instead of failing the media playback pipeline completely, this change will ignores all errors reported by the browser about audio output streams. This is the first step towards handling audio hardware errors. TEST=MediaTest.VideoBearTheora Review URL: http://codereview.chromium.org/159205 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21318 0039d316-1c4b-4281-b951-d872f2087c98
* Remove 1px of grey at the bottom of the render view.phajdan.jr@chromium.org2009-07-221-2/+7
| | | | | | | | | | | It was a part of extension shelf not hiding fully. TEST=On Linux, open any website with links and mouse hover over any link. There should be no gap between the status bubble and the bottom of the window. http://crbug.com/17324 Review URL: http://codereview.chromium.org/155934 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21314 0039d316-1c4b-4281-b951-d872f2087c98
* This CL fixes issue 2780 -- RTL: Omnibar - message "Press Tab to search ↵xji@chromium.org2009-07-222-35/+38
| | | | | | | | | | | | | | | | | Google" doesn't show correctly in a "New Tab" for RTL locales Because of the bug in PosFromChar() (see bug report for detailed information), we actually calculate the width of the string ourselves using font.GetStringWidth(). BUG=http://crbug.com/2780 TEST= 1 Start Chrome with a *new user data directory* and make sure the UI language is Hebrew. 2 Type www.google.com in the omnibox and press Enter. 3 Close and re-open the browser. 4 Type character "h" in Ominibox 5 Message "Press Tab to search Google" should show correctly, not only "Tab" is displayed Review URL: http://codereview.chromium.org/155789 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21312 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: add support for tm_zone to localtime via the sandbox.agl@chromium.org2009-07-222-8/+21
| | | | | | | | | | | | | | | | Glibc adds a field to struct tm, tm_zone, which contains a pointer to a string for the current time zone. Since this makes struct tm a non-POD data type, it only works for the non-thread-safe localtime() call, not localtime_r(). However, V8 relies on it so this patch adds support for passing it through our sandbox. BUG=17458 http://codereview.chromium.org/159216 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21311 0039d316-1c4b-4281-b951-d872f2087c98
* [Mac] Don't handle up/down-arrow unless popup is visible.shess@chromium.org2009-07-222-8/+18
| | | | | | | | | | http://crbug.com/17013 TEST=Browse to www.google.com. Click in the field. Up-arrow should go to beginning of line, down-arrow to end. Review URL: http://codereview.chromium.org/155871 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21310 0039d316-1c4b-4281-b951-d872f2087c98
* Make double-clicking on the tab strip minimize (i.e., "miniaturize") thepinkerton@chromium.org2009-07-222-13/+49
| | | | | | | | window. Patch from viettrungluu@gmail.com (Viet-Trung Luu). BUG=12286 TEST=double-clicking tab strip and anything that may have regressed in bug 12505 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21308 0039d316-1c4b-4281-b951-d872f2087c98
* Gtk cookie manager part 1.mattm@chromium.org2009-07-226-228/+772
| | | | | | | | | | | | (Doesn't display cookie details, otherwise working.) BUG=11507 TEST=All cookie manager functions should work as expected, other than viewing the cookie details. Review URL: http://codereview.chromium.org/159187 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21307 0039d316-1c4b-4281-b951-d872f2087c98
* Load Mac download shelf icons asynchronously.paul@chromium.org2009-07-225-11/+61
| | | | | | | | | BUG=16226 (http://crbug.com/16226) TEST=none. Review URL: http://codereview.chromium.org/155831 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21305 0039d316-1c4b-4281-b951-d872f2087c98
* gtk: Only accept text/uri-list drops in the tab strip. We were accepting ↵jhawkins@chromium.org2009-07-221-4/+2
| | | | | | | | | | text/plain before, which was giving us the html for a dragged image instead of the url of the image. BUG=16165 TEST=Go to google.com. Drag the Google logo into the tabstrip. The image should open up in a new tab (or the current tab, depending on the drop). Review URL: http://codereview.chromium.org/159212 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21304 0039d316-1c4b-4281-b951-d872f2087c98
* Only check --lang and the app language pref on Windows. Theytc@google.com2009-07-221-6/+46
| | | | | | | | | | | | | | | | don't make sense on Linux/Mac so disable them. I think we don't want to have a app language option on Linux since the standard way to do this is to use LANG or LC_ALL. Update the locale ui test to set LC_ALL on Linux. BUG=15359 Review URL: http://codereview.chromium.org/155819 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21295 0039d316-1c4b-4281-b951-d872f2087c98
* Bookmark Bar Add Folder / Rename Folder dialog and controller.jrg@chromium.org2009-07-226-3/+216
| | | | | | | | | | | | TEST=Right click on bar --> Add Folder... Type a name and it shows up as a folder in the bookmark bar. (You can't do anything with it yet; sorry). Right click on folder name --> Edit... Make sure you can rename the folder. Review URL: http://codereview.chromium.org/159183 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21293 0039d316-1c4b-4281-b951-d872f2087c98
* The ExternalTabContainer object which implements the TabContentsDelegate ↵ananta@chromium.org2009-07-222-1/+27
| | | | | | | | | | | | | | interface now implements the ShowHtmlDialog function which is needed to support HTML dialog popups like those displayed by Gears.' Fixes http://b/issue?id=1963582 Bug=1963582 Review URL: http://codereview.chromium.org/159162 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21289 0039d316-1c4b-4281-b951-d872f2087c98
* Make DND use the anchor name.arv@google.com2009-07-221-1/+2
| | | | | | | | | | | | BUG=17408 TEST=Drag a thumbnail from the NNTP to your desktop of your bookmakrs bar. The title should be used. Review URL: http://codereview.chromium.org/159184 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21286 0039d316-1c4b-4281-b951-d872f2087c98
* gtk: Fix a regression from r20404 which keeps a drag into the tabstrip from ↵jhawkins@chromium.org2009-07-222-27/+34
| | | | | | | | | | working. Only destroy the container widget and not the drop info itself when the drag leaves the tab strip; otherwise, we'll lose the drop information used to open the link. BUG=none TEST=Drag a link into the tab strip. The drop arrow should appear and disappear as the mouse enters and leaves the tab strip. Drop the link into the tab strip. The link should be opened in the new tab (or the current tab). Review URL: http://codereview.chromium.org/159178 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21285 0039d316-1c4b-4281-b951-d872f2087c98
* Make scrollbars and other controls tint/untint upon main window gainingthakis@chromium.org2009-07-228-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | focus on Mac. This entails the following: - getting notifications that the main window has become or lost key window status (in BrowserWindowController) [new] - ... which tells the RenderWidgetHostView(Mac) to (de)activate [new] - ... which tells the RenderWidgetHost to (de)activate [new] - ... which sends a ViewMsg_SetActive message [new message] to the RenderView [new] - ... which tells the WebView(Impl) to (de)activate [new] - ... which tells its page()'s FocusController to (de)activate [new] - ... which is now in WebKit-land. N.B.: "Activate" is the nomenclature used in WebKit; "focus"/"blur" can sometimes (kind of) mean the same thing, but is ambiguous, since "focus" has a more specific meaning. Added a WebView unit test, which currently only tests to make sure that SetActive() (and IsActive() [also new]) work correctly. The changes to the other classes aren't very testable since they don't actually do anything (other than pass things along). BUG=12507 TEST=webkit/glue/webkit_unittest.cc Patch by viettrungluu@gmail.com (see http://codereview.chromium.org/159048 ), r=avi git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21284 0039d316-1c4b-4281-b951-d872f2087c98
* Add a custom subclass of GTMUILocalizer that skips the bundle work so we can ↵thomasvl@chromium.org2009-07-222-0/+53
| | | | | | | | | | | | directly use these from nib files without some extra overhead. Updated the generator to make things based off this subclass. TEST=none BUG=16764 Review URL: http://codereview.chromium.org/159197 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21280 0039d316-1c4b-4281-b951-d872f2087c98
* Kill popups when scrolling.avi@chromium.org2009-07-221-0/+16
| | | | | | | | | BUG=http://crbug.com/17376 TEST=as in bug Review URL: http://codereview.chromium.org/155875 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21273 0039d316-1c4b-4281-b951-d872f2087c98
* Starting mac l10n:thomasvl@chromium.org2009-07-228-60/+165
| | | | | | | | | | | | | | | | | | | Added a script to process a xib file and generate a localizer out of the resource constants it finds in the xib. Update the MainMenu.xib to use a generated localizer. Kill off the menu_localizer in favor of a generated one. ui_localizer is a helper so each "localizer" is as small as possible. Build some menus out of base strings and the product name like windows. Added the dir generated for the localizers so we can load the header to directly create them (menubar one). Enable the other 3 languages we were building to help test. Made the context menu code use the new code for handling window's accelerators and ellipsis. Added unittest for ui_localizer. Opened http://crbug.com/17380 to track the problem with the menu titles so I can move on to other parts of the UI for now. TEST=The main menu will have some items localized now (and more will be localizable in the TC). BUG=16764 Review URL: http://codereview.chromium.org/155774 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21272 0039d316-1c4b-4281-b951-d872f2087c98
* DevTools: Rename JavaScript console action into Developer Tools.pfeldman@chromium.org2009-07-224-7/+7
| | | | | | Review URL: http://codereview.chromium.org/155914 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21269 0039d316-1c4b-4281-b951-d872f2087c98
* o Modified the toolbar button handler so that the handler can revert its ↵yusukes@google.com2009-07-222-7/+12
| | | | | | | | | | | | | omnibox when the button pressed is RELOAD, FORWARD, or BACK. o Modified Browser::Reload(). Don't revert the bar when the user hit F5 or Ctrl-r. BUG=15464 TEST=see the comment #3 of issue 15464 Review URL: http://codereview.chromium.org/155908 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21267 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: use new xdg-settings "check" feature to determine whether we are the ↵mdm@chromium.org2009-07-221-17/+18
| | | | | | | | | | | default browser. BUG=17093 TEST=in GNOME, let Firefox set itself as the default after Chrome has set itself; Chrome should then detect that it is no longer the default Review URL: http://codereview.chromium.org/155889 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21260 0039d316-1c4b-4281-b951-d872f2087c98
* GTK: Center the tab text by its meanline, rather than halfway between its ↵estade@chromium.org2009-07-221-1/+3
| | | | | | | | | | | | ascent and descent. The tab text was previously one pixel too high. With this patch it matches Windows. I think before Evan's recent font size patch, this issue was hidden by favorable rounding. Review URL: http://codereview.chromium.org/159169 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21256 0039d316-1c4b-4281-b951-d872f2087c98
* When a web contents drag has a URL but no title, make up a title for it.estade@chromium.org2009-07-221-14/+30
| | | | | | | | | BUG=17393 TEST=drag nntp thumbnail to bookmark bar Review URL: http://codereview.chromium.org/155900 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21255 0039d316-1c4b-4281-b951-d872f2087c98
* Don't create new tabs for middle clicks on bookmark items when the user ↵estade@chromium.org2009-07-221-0/+6
| | | | | | | | | | | releases off the item. BUG=14518 TEST=see bug Review URL: http://codereview.chromium.org/155902 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21254 0039d316-1c4b-4281-b951-d872f2087c98
* Split NSSDecryptor out into platform specific files.willchan@chromium.org2009-07-2215-574/+810
| | | | | | | | | | This lets Linux not bother to initialize NSS in the same way as the rest, but instead use the NSS symbols linked into the library, thereby preventing the NSS_Shutdown related bugs. BUG=http://crbug.com/13929 TEST=Case 1: Start chrome. Use firefox import utility. Browse to some https site. Shouldn't crash. Case 2: Start chrome. Browse to some https site. Use firefox import utility. Continue browsing https sites. Shouldn't crash. Review URL: http://codereview.chromium.org/159165 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21251 0039d316-1c4b-4281-b951-d872f2087c98
* linux: add command-line flag to allow debugging of sandboxed processespiman@google.com2009-07-222-4/+15
| | | | | | | Review URL: http://codereview.chromium.org/159124 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21248 0039d316-1c4b-4281-b951-d872f2087c98
* Try again: Add proxy config (using gnome-network-preferences)mattm@chromium.org2009-07-221-1/+59
| | | | | | | | | BUG=11507 TEST=Open options, click change proxy, gnome-network-preferences should launch.  If gnome isn't installed or running, LinuxProxyConfig wiki page should load. Review URL: http://codereview.chromium.org/155792 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21246 0039d316-1c4b-4281-b951-d872f2087c98
* Addressing minor review comments in ExtensionProcessManager post-submit.finnur@chromium.org2009-07-221-0/+3
| | | | | | | | | BUG=None TEST=None (no significant changes) Review URL: http://codereview.chromium.org/159073 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21244 0039d316-1c4b-4281-b951-d872f2087c98
* Refactoring to share MockAudioOutputStream implementations across 3 platformshclam@google.com2009-07-221-6/+0
| | | | | | | | | | | | | Re-trying the previous CL. The last change got reverted because of valgrind failure. TBR=scherkus Original CL: http://codereview.chromium.org/155471 Review URL: http://codereview.chromium.org/159167 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21242 0039d316-1c4b-4281-b951-d872f2087c98
* Implement bookmark editor. No tree display or hierarchy movement, butjrg@chromium.org2009-07-216-27/+520
| | | | | | | | | | | | | | | | | | name/url editing works. Get to the edotir from a context menu (Edit, Add Page). Also Implement Open All Bookmarks menu item. BUG=http://crbug.com/8381, http://crbug.com/17006 TEST=Add some bookmarks. Right-click on a bookmark and pick Edit. Test editing the name and URL. Make sure you can't add a bogus URL. Right-click on a bookmark or the bar and Add Page. Fill in name and URL fields to add a new bookmark. Right-click Open All Bookmarks and make sure it hoses your machine. Review URL: http://codereview.chromium.org/155874 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21241 0039d316-1c4b-4281-b951-d872f2087c98
* Fix issue where error pages inserted HTML from a template but thearv@google.com2009-07-211-13/+20
| | | | | | | | | | | | | | | | | | string from the template was used with JST instead of the i18n template and therefore it did not get recursively processed. Also make sure we can support recursive handling of setting innerHTML with the i18n template engine. BUG=17377 TEST=Navigate to http://ponderer.org/tests/redirect-loop.py The error page should show: The webpage at http://ponderer.org/tests/redirect-loop.py has ... Review URL: http://codereview.chromium.org/155884 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21240 0039d316-1c4b-4281-b951-d872f2087c98
* Use a <button> that looks like a link to prevent right click and middle click.arv@google.com2009-07-211-2/+8
| | | | | | | | | | | BUG=9591 TEST=Go to the history page and make sure that "Delete history for this day" still works and that it does not allow opening the "link" in a new window. Review URL: http://codereview.chromium.org/155892 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21239 0039d316-1c4b-4281-b951-d872f2087c98
* GTK Themes: Fixes button state on pressed back/forward buttons and toolbar ↵erg@google.com2009-07-212-17/+25
| | | | | | | | | | | | | | | | | items. This patch fixes two related problems: 1) Holding down back/forward now stay pressed while the menu is shown. 2) Buttons on the "toolbar" now emulate GTK's toolbar behaviour of only showing the border on hover. http://crbug.com/17308 http://crbug.com/17340 Review URL: http://codereview.chromium.org/159154 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21233 0039d316-1c4b-4281-b951-d872f2087c98
* Sometimes it's possible for a DOMUI to request images that don't exist ↵glen@chromium.org2009-07-211-1/+5
| | | | | | | | | | | (theme provider could specify null, or no custom image is provided). Move DCHECK protection into real code. BUG=17257 TEST=Run purify as described in bug. Review URL: http://codereview.chromium.org/159146 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21232 0039d316-1c4b-4281-b951-d872f2087c98
* Fix context menu on download item.thakis@chromium.org2009-07-211-3/+3
| | | | | | | | | BUG=none TEST=Click arrow part of download item. A context menu should appear. Review URL: http://codereview.chromium.org/159174 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21231 0039d316-1c4b-4281-b951-d872f2087c98
* gtk: Two fixes for the tab leak:jhawkins@chromium.org2009-07-212-4/+4
| | | | | | | | | | | * The tab strip handles the lifetime of the tab widget, so don't try to increase the ref count in order to destroy the widget later. * Use DeleteSoon when deleting the dragged tab in order to give gtk a chance to clean up its ref counts added during the drag operation. BUG=12863 TEST=Extensive tab dragging. No crashes and the Linux UI valgrind bot should stay green. Review URL: http://codereview.chromium.org/159166 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21230 0039d316-1c4b-4281-b951-d872f2087c98
* gtk: Make GtkThemeProvider own the gtk label widget. The widget is not ↵jhawkins@chromium.org2009-07-212-5/+7
| | | | | | | | | | added to a container, so we don't have the convenience of having it destroyed by the container. BUG=none TEST=Watch the Linux UI valgrind bot get a little greener. Review URL: http://codereview.chromium.org/159157 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21228 0039d316-1c4b-4281-b951-d872f2087c98
* Make middle-clicking on GTK tabs not count for closing if you release off of ↵brettw@chromium.org2009-07-211-1/+6
| | | | | | | | | | the tab itself. BUG=none TEST=none Review URL: http://codereview.chromium.org/159158 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21221 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r21117 as it caused reliability failures.estade@chromium.org2009-07-211-8/+10
| | | | | | | | | | Also included in this revert: r21165, r21180, and a couple valgrind suppression edits TBR=huanr Review URL: http://codereview.chromium.org/155876 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21216 0039d316-1c4b-4281-b951-d872f2087c98
* NNTP: Merge the recent activities into one list and show more itemsarv@google.com2009-07-214-119/+184
| | | | | | | | | | | | | | | | | | when the section is larger. Make the window menu look and behave more like a tooltip. Return more recently closed windows and tabs when using the NNTP. BUG=16539, 16835, 14963 TEST=Hide and show the tips section. More items (if there are more items) should be shown. Hover over a closed window and the tooltip should look like a tooltip on Vista/Win7 Review URL: http://codereview.chromium.org/155865 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21214 0039d316-1c4b-4281-b951-d872f2087c98
* Make GTK file dialog box modal for parent window, instead of for the entireestade@chromium.org2009-07-215-7/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | application. This works by adding the top-level GtkWindow objects, such as BrowserWindowGtk and BookmarkManagerGtk, to their own unique window groups. Without this change, all top-level windows are added to a default application-wide window group. This ensures that all grabs created with gtk_grab_add(...) only affect the window group of the grabbed widget, as opposed to the entire application. Note that gtk_window_set_modal(...) is implemented with gtk_grab_add(...) and therefore is only modal to a specific window group. In order for this to work correctly, changes were also made to the info bubble and render widget popup (<select> tag) code. Since these widgets also call gtk_grab_add(...), they must be added to the top level window group to work correctly. Test 1: - Open two new chrome window: A and B - Open "Save file as..." dialog in window A - Verify that window A does not respond to keyboard or mouse events. - Verify that window B does responde to keyboard and mouse events. - Open "Save file as..." dialog in window B - Verify that window B does not respond to keyboard or mouse events. - Cancel dialog on window A. - Verify that window A starts responding to keyboard and mouse events. - Cancel dialog on window B. - Verify that window B starts responding to keyboard and mouse events. Test 2: - Verify that <select> tag allows for correct selection of items. Test 3: - Click bookmark star and verify that info bubble works correctly. BUG=8727 TEST=none patch by Mohit Muthanna Cheppudira <mohit.muthanna [at] gmail> original review url: <http://codereview.chromium.org/155852> Review URL: http://codereview.chromium.org/159147 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21207 0039d316-1c4b-4281-b951-d872f2087c98
* GTK: Popup notification is readable with dark themes in chrome theme mode.erg@google.com2009-07-212-2/+50
| | | | | | Review URL: http://codereview.chromium.org/155860 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21206 0039d316-1c4b-4281-b951-d872f2087c98
* Make download shelf themeable.thakis@chromium.org2009-07-211-45/+33
| | | | | | | | BUG=none TEST=Install a theme, notice that the download shelf now at least somewhat fits with the new theme. Review URL: http://codereview.chromium.org/159126 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21205 0039d316-1c4b-4281-b951-d872f2087c98
* This change list improves IME support on Linux. Many corner cases that were notestade@chromium.org2009-07-212-180/+594
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | handled in original code are addressed, for example the input method in password box case. The most important change in this CL is the change to key event processing flow. In old code, a key event will first be sent to webkit then dispatched to IME for filtering. With this CL, a key event will first be dispatched to IME for filtering, then how to send the event to webkit is decided by the filtering result. This CL tries to emulate the keyboard input behavior on Windows as much as possible. For example, if a keydown event is filtered by IME, then its virtual key code will be changed to VK_PROCESSKEY(0xE5) to prevent webkit from processing it again. This behavior can workaround bug 16281. To test this CL, you may cut and save following html code into a file and open it in chrome. ------------------8<----cut here----->8--------------------- <html><head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <script> function keyEventHandler(event) { var props = [ "type", "charCode", "keyCode", "altKey", "ctrlKey", "shiftKey", "metaKey" ]; var info = document.getElementById('info'); var s = ''; for (var i in props) { s += props[i] + ':' + event[props[i]] + ' '; } info.value += s + '\n'; } function textEventHandler(event) { info.value += "type:" + event['type'] + " data:" + event['data'] + '\n'; } function passwordChangeEventHandler(event) { var input2 = document.getElementById('input2'); info.value += "password:" + input2.value + '\n'; } function onLoad() { var input = document.getElementById('input'); input.addEventListener('keydown', keyEventHandler, false); input.addEventListener('keyup', keyEventHandler, false); input.addEventListener('keypress', keyEventHandler, false); input.addEventListener('textInput', textEventHandler, false); var input2 = document.getElementById('input2'); input2.addEventListener('change', passwordChangeEventHandler, false); } </script> </head><body onload="onLoad()"> <input id="input" size="20"> <input id="input2" type="password" size="20"> <p> <textarea id="info" rows="40" cols="150"></textarea> </p></body></html> ------------------8<----cut here----->8--------------------- This CL was confirmed to fix following issues: BUG=16281 "arrow keys and backspace/delete keys move/delete two characters at a time when xim immodule is used" BUG=16282 "Disable IMEs in a password input" BUG=16596 "fcitx (chinese input method) not working in ubuntu 9.04" BUG=16659 "Crash near RenderWidgetHostViewGtk::IMEUpdateStatus" BUG=16699 "Can't move cursor to omnibox and use input method if cursor is currently in a text input box in web page." BUG=16796 "Input method issue: When inputting text in a text box, if there is a composition string then pressing Backspace or Delete will cause the composition string be cleared and the text box refuses to accept any further input. All tests assume above html code is used. TEST=Start scim with "scim -d" and start chrome with GTK_IM_MODULE=xim and XMODIFIERS=@im=SCIM. Type something in input box, eg. "hello", then press backspace, to see if only one character is deleted. TEST=Move cursor to password input box, press ctrl-space to see if input method is not activated. Switch keyboard layout to Canadian-French then type a'[{' key and an 'a' key, then press enter, to see if a Latin character "U+00E2" is inputted in password box. TEST=Install fcitx with "sudo apt-get install fcitx" (assume you are using Ubuntu/Debian). Open a terminal, export XMODIFIERS=@im=fcitx and GTK_IM_MODULE=xim then run fcitx, then start chrome. Move cursor into an input box, press ctrl-space and input something, eg. "nihao" then press space. Check if some Chinese characters are inputted. TEST=Start chrome with GTK_IM_MODULE=scim. Move cursor into a text input box then move into a password box, chrome should not crash. TEST=Move cursor into a text input box, then click omnibox, and see if the text input box has lost focus. Press ctrl-space to activate input method, then type something, and see of the input goes into omnibox. TEST=Move cursor into a text input box and enable a Chinese Pinyin input method, then type something, eg. "dajiahao", make sure a composition string is displayed in the text input box, then press backspace and see if there is still a composition string and backspace is handled by input method. patch by James Su <james.su [at] gmail> original review URL: <http://codereview.chromium.org/149755> Review URL: http://codereview.chromium.org/155869 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21203 0039d316-1c4b-4281-b951-d872f2087c98
* Fix two crashers with TOOLKIT_VIEWS build:ben@chromium.org2009-07-211-0/+4
| | | | | | | | | | | - NativeViewHostGtk::RemovedFromWidget crashes due to WidgetGtk::window_contents_ being NULL... basically when RemovedFromWidget is called from the RootView's dtor, the window_contents_ and widget_ properties of the containing WidgetGtk are NULL. It seems acceptable to not clean up in this case. - TabContentsViewGtk dtor needs to call CloseNow(). This is similar to ~TabContents() calling DestroyWindow on the view's HWND. Without this, the TabContentsViewGtk object was destroyed but the corresponding GtkWidget wasn't, and so subsequent signal handlers would crash. BUG=none TEST=none Review URL: http://codereview.chromium.org/159130 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21202 0039d316-1c4b-4281-b951-d872f2087c98