summaryrefslogtreecommitdiffstats
path: root/chrome/views
Commit message (Collapse)AuthorAgeFilesLines
* Prevent window caption flashing in the magic frames by handling undocumented ↵beng@google.com2008-09-123-0/+45
| | | | | | | | | | windows messages that get sent to caption'ed windows. B=1031854 Review URL: http://codereview.chromium.org/1965 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2105 0039d316-1c4b-4281-b951-d872f2087c98
* Set an upper limit to the number of characters that can appear in a tooltip ↵beng@google.com2008-09-111-0/+9
| | | | | | | | | | string. B=1368905 Review URL: http://codereview.chromium.org/2409 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2042 0039d316-1c4b-4281-b951-d872f2087c98
* Double clicking on an item in the task manager should bring the relevant tab ↵petersont@google.com2008-09-103-10/+31
| | | | | | | | forward. Review URL: http://codereview.chromium.org/1822 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2026 0039d316-1c4b-4281-b951-d872f2087c98
* First pass at splitting the AutocompleteEdit into Model and View. This was ↵pkasting@chromium.org2008-09-102-6/+6
| | | | | | | | | 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
* Fixes bug in TableView where by we return nothing as selected whensky@google.com2008-09-092-36/+22
| | | | | | | | | | | there was a selection. This appears to be a bug in Vista. I've worked around it by iterating over the elements. BUG=1499 TEST=See my steps in bug. Test on both XP and Vista. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1915 0039d316-1c4b-4281-b951-d872f2087c98
* Support WM_APPCOMMAND on Window. Make it just pass through to ↵beng@google.com2008-09-083-0/+20
| | | | | | | | | | | | WindowDelegate::ExecuteWindowsCommand. The delegate needs to pre-translate for it. This allows my mouse's back and forward buttons to work on the new frames. B=1031854 Review URL: http://codereview.chromium.org/1620 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1849 0039d316-1c4b-4281-b951-d872f2087c98
* This patch is from Andrew Brampton <me@bramp.net>.sky@google.com2008-09-083-7/+14
| | | | | | | | | | | | | | This patches allows menu items in PopUpMenus to be clicked with the right mouse button. menu.cc controls the web content popup menus, and some others chrome_menu{.cc,.h} controls popup menu on the chrome, for example right clicking on a tab. BUG=718 TEST=Bring up any menu (wrench/document) and right click on one of the items. This should select the item. Try the same with any of the bookmark menus. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1838 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes crash that occurred because DialogClientView::AcceptWindow wassky@google.com2008-09-052-0/+15
| | | | | | | | | | | | | | | | | getting invoked twice. It appears that because we hide the window then destroy the window after a delay, it is possible for messages to get dispatched after the hide. Dispatching messages after the window was closed made it possible for two enters to be dispatched, which triggered a crash. I've modified the FocusManager to only dispatch key messages if the window is visible. BUG=1361863 TEST=See bug, but also make sure there are no weird focus traversal/accelerator issues in our dialogs. Review URL: http://codereview.chromium.org/251 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1802 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the polymorphic WindowResources class and FramePartBitmap enum.maruel@google.com2008-09-041-13/+4
| | | | | | | TBR=ben Review URL: http://codereview.chromium.org/224 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1710 0039d316-1c4b-4281-b951-d872f2087c98
* Minor cleanup to OneShotTimer and RepeatingTimer: moves more of the member ↵darin@google.com2008-09-036-176/+80
| | | | | | | | | | | 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
* Update Copyright text in SCons config files.sgk@google.com2008-09-011-28/+4
| | | | | | TBR: beng git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1607 0039d316-1c4b-4281-b951-d872f2087c98
* Simplify OneShotTimer and RepeatingTimer. Fix up all consumers.darin@google.com2008-08-281-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | Major changes: OneShotTimer and RepeatingTimer become template classes that no longer require a Task or a Timer object. They just use PostDelayedTask. Under the hood that still uses a Timer object. The API is much simpler for consumers as they now no longer need to worry about allocating a Task or managing the lifetime of the object pointer held by the Task. I added some new unit tests to timer_unittest.cc to cover the API. I preserved the old TimerManager / Timer API for now, but I plan to soon kill it. R=brettw BUG=1346553 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1502 0039d316-1c4b-4281-b951-d872f2087c98
* Explicitly call RunAllPending in the Teardown phase a few more unit tests todarin@google.com2008-08-271-0/+3
| | | | | | | | | prevent Purify from complaining about these pending tasks as MLKs. TBR=erikkay git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1431 0039d316-1c4b-4281-b951-d872f2087c98
* Make the system menu for frames have submenus for encoding and text zoombeng@google.com2008-08-261-0/+2
| | | | | | B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1413 0039d316-1c4b-4281-b951-d872f2087c98
* Extends the toolbar keyboard support. Adds skipping of unavailable elements ↵klink@google.com2008-08-262-3/+3
| | | | | | of the toolbar, to accomodate for quicker keyboard traversal. Fixes tooltip display on initial focusing of the toolbar. Also fixes the support for VK_SPACE and VK_ENTER. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1388 0039d316-1c4b-4281-b951-d872f2087c98
* Chrome changes corresponding to my message_loop_type CL.darin@google.com2008-08-268-12/+16
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1363 0039d316-1c4b-4281-b951-d872f2087c98
* Make the AeroGlassFrame better:beng@google.com2008-08-256-41/+54
| | | | | | | | | | | - client edge rendering is now pixel-perfect for all BrowserTypes. - fix NCCALCSIZE handling that was making our top-right corner less than perfectly round - make system menu work - remove some unnecessary functions B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1340 0039d316-1c4b-4281-b951-d872f2087c98
* Second attempt at fixing task manager crash. Provide a protected ↵beng@google.com2008-08-252-2/+12
| | | | | | | | | ReleaseWindow methods that recycled delegates can use to release the window ptr they use. Currently only one delegate uses this (TaskManager). It'd be nice if TaskManager wasn't a singleton... B=1333829 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1328 0039d316-1c4b-4281-b951-d872f2087c98
* roll back r1297 for nowbeng@google.com2008-08-242-1/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1298 0039d316-1c4b-4281-b951-d872f2087c98
* Fix task manager crash by releasing the delegate's scoped_ptr back to the ↵beng@google.com2008-08-242-1/+1
| | | | | | | | window when the window is destroyed, not when the window delegate is destroyed, since some use cases recycle the delegate. B=1333829 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1297 0039d316-1c4b-4281-b951-d872f2087c98
* Makes our tables (task manager, keywords ...) not flicker whensky@google.com2008-08-242-5/+38
| | | | | | | | | | | resizing by doing nothing when we get erase background. BUG=804753 TEST=make sure you don't get any painting artifacts in the task manager and keyword editor. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1292 0039d316-1c4b-4281-b951-d872f2087c98
* Use a more compact license header in source files.license.bot2008-08-24125-3634/+627
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
* Makes resize of custom frame window a bit smoother. I tried a wholesky@google.com2008-08-211-1/+14
| | | | | | | | | | | | | | | | | slew of variations, and this is the best I could get. From nc calc size we now return WVR_REDRAW, which indicates we need to redraw the frame. Without this I believe windows was copying some bits around for us resulting in the jitter. Additionally in OnNCPaint we do nothing if the root view's size isn't the same as the window's size. This is done as during resizes we get a WM_NCPAINT *before* a WM_SIZE. We also get a WM_NCPAINT after the WM_SIZE, so that it's ok to ignore the first one. BUG=1293978 TEST=make sure sizing of task manager/keyword editor doesn't break. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1157 0039d316-1c4b-4281-b951-d872f2087c98
* Allow popups using the new frames to be sized correctly. This involved a ↵beng@google.com2008-08-201-10/+9
| | | | | | | | | slight tweak to how RestoreWindowPosition on Window works - if the window is opened with specified bounds, we still ask the delegate to try and restore the position. The delegate can use the provided bounds as a hint (in the popup case the bounds aren't the true layout bounds of the window, rather the rect contains the window position and content area size) to return the actual bounds of the window. B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1117 0039d316-1c4b-4281-b951-d872f2087c98
* Large patch set (159 files total) to cleanup the includes.maruel@google.com2008-08-1546-193/+323
| | | | | | | | | | - 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
* Make theme change notifications for the renderer originate from the ↵beng@google.com2008-08-152-0/+8
| | | | | | | | | RenderWidgetHostHWND, not the frame. B=1326392 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@918 0039d316-1c4b-4281-b951-d872f2087c98
* Hook up the system menu in new frames.erg@google.com2008-08-144-0/+18
| | | | | | BUG=1319684 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@908 0039d316-1c4b-4281-b951-d872f2087c98
* If a Window is created with specified bounds, make sure its sized to them!beng@google.com2008-08-141-1/+8
| | | | | | B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@900 0039d316-1c4b-4281-b951-d872f2087c98
* Set the svn:eol-style to LF on all SConscript filestc@google.com2008-08-131-117/+117
| | | | | | TBR=evanm git-svn-id: svn://svn.chromium.org/chrome/trunk/src@823 0039d316-1c4b-4281-b951-d872f2087c98
* Minor cleanup of RootView. Removes unused double_buffered field fromsky@google.com2008-08-124-27/+18
| | | | | | | | | | | RootView, as well as renaming RootView::ProcessPendingPaint to PaintNow. BUG=1255929 TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@750 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup a few files, reduce the number of includes.maruel@google.com2008-08-123-5/+8
| | | | | | | | Applied glint. No code change, just moving around. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@713 0039d316-1c4b-4281-b951-d872f2087c98
* Allow the ChromeViews' Menu to wrap the Windows system menu and insert items ↵beng@google.com2008-08-112-35/+136
| | | | | | | | | | | | into it. Basically adds an alternate ctor for Menu that takes an existing HMENU, and then provides variants of most of the APIs that allow insertion of an item at a specified index. I will use this in the new frames to add the task manager and app frame menu items. B=1293995 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@661 0039d316-1c4b-4281-b951-d872f2087c98
* Another Frame Grab-Bagbeng@google.com2008-08-111-0/+2
| | | | | | | | | | | | | | | - makes more stuff in Browser object only happen if you're using the old frames- rename BrowserWindow::Update to BrowserWindow::UpdateToolbar since that's what it does - add window position save/restore handling to Browser- remove BrowserWindow::BrowserDidPaint - relic from HaloFrame days- remove BrowserWindow::GetRootView - unused and exposes impl details- remove BrowserWindow::DetachFromBrowser - unused - store BrowserView2* on HWND's property list so infobubbles can access it later- both frames (Opaque and AeroGlass) notify the BrowserView2 when they're moved so BrowserView2 can reposition the status bubble and close the autocomplete popup - remove BrowserView2::ShowTabContents - no longer used - remove BrowserView2::ShelfVisibilityChanged - no longer used - remove BrowserView2::SetWindowTitle - never used - remove BrowserView2::ProfileChanged - now called from TabSelectedAt- properly unhook infobars etc when a tab is detached B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@660 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for ChromeViews::Windows to disable inactive rendering. This is ↵beng@google.com2008-08-115-14/+67
| | | | | | | | | for the new frames to make it so when infobubbles are activated the window frame isn't deactivated. B=1318343 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@659 0039d316-1c4b-4281-b951-d872f2087c98
* A set of tests to exercise chrome menus as well as parts of bookmarksky@google.com2008-08-113-3/+18
| | | | | | | | | | | | bar view. These are disabled until we straighten out the buildbot that is always logged in. BUG=1318922 TEST=this is just a bunch of tests. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@654 0039d316-1c4b-4281-b951-d872f2087c98
* Allow the window icon to be shown in the task bar, Alt+Tab etc.beng@google.com2008-08-094-0/+23
| | | | | | | B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@614 0039d316-1c4b-4281-b951-d872f2087c98
* Even more tweaks.beng@google.com2008-08-091-0/+2
| | | | | | | | | | - make window icon and title work on app windows - make window title updating sync with the task bar - make Aero Glass frame respect app mode settings - move title formatting routine from TabRenderer into Browser (a more central location) - appearance adjustments for app windows with info bars git-svn-id: svn://svn.chromium.org/chrome/trunk/src@612 0039d316-1c4b-4281-b951-d872f2087c98
* More improvements to the frames. Consolidate some of the optional bar ↵beng@google.com2008-08-071-1/+7
| | | | | | | | | (bookmark, info, download) showing/layout, add a notion of supported window features, hook up some accelerator handling goop etc. B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@529 0039d316-1c4b-4281-b951-d872f2087c98
* Make tabs affected by context menu actions pulse. The effect is somewhat ↵beng@google.com2008-08-072-0/+7
| | | | | | | | | | subtle since I'm re-using the selection animation. Added support to the Menu Delegate for notifications of when selection moves within the menu. B=1313339 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@523 0039d316-1c4b-4281-b951-d872f2087c98
* Fix 1303709: Crash: Switching between tabs with a Find box open on both tabs ↵finnur@google.com2008-08-061-6/+7
| | | | | | | | | | | | | | | | | | nulls the Esc handler This is a temporary fix until we fix this properly: http://b/issue?id=1307173 This change makes sure that when we Register as the Esc handler, we store who was registered at the time the Find box was opened for the first time (as opposed to always restoring to what RegisterAccelerator tells us was registered before us). Also, if we have already been unregistered, we don't restore the old value. This prevents us from restoring to another tab's handler when the tab registering gets focus notification before the tab *un*registering receives blur notification (through FocusWillChange). BUG=1303709 TEST=Manually perform the steps listed in the bug and make sure it doesn't crash. Also make sure that the browser's Esc handler still works after closing the Find box. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@421 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing an issue where BiDi text in window titles was not displayed correctly ↵idana@google.com2008-08-051-0/+7
| | | | | | | | on Vista with aero. BUG=1306227 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@385 0039d316-1c4b-4281-b951-d872f2087c98
* Copy WM_GETOBJECT handler impl from XPFrame to HWNDViewContainer. This will ↵beng@google.com2008-08-052-1/+63
| | | | | | | | | | be used for the new frames. Also provide virtual stub handlers for WM_ENDSESSION and WM_POWERBROADCAST B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@378 0039d316-1c4b-4281-b951-d872f2087c98
* Add the AeroGlassFrame and AeroGlassNonClientView for Vista.beng@google.com2008-08-054-12/+29
| | | | | | | | Note that AeroGlassFrame needs a NonClientView as well - even though Windows draws most of the frame and its borders, we do some custom rendering in the non-client area, such as the distributor logo, the client edge and toolbar backgrounds. This necessitated allowing Window to support an optional NonClientView. I just jimmied this in for now... can clean up that API later if desired. B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@352 0039d316-1c4b-4281-b951-d872f2087c98
* Bring up the new frame (opaque version for XP only, for now).beng@google.com2008-08-042-6/+15
| | | | | | | | | | | | I've hidden this frame behind a command line switch (--magic_browzR) so as not to destabilize the main browser UI any further. Note that running with this switch is likely buggy, incomplete, crashy, etc. In order to make this work without disrupting a lot of existing code, I've had to make another BrowserView class (temporary) - BrowserView2. This also has to be a BrowserWindow implementor since that's the interface Browser uses to communicate with the UI. BrowserView2 and OpaqueNonClientView are the major new files in this CL, but BrowserView2 is pretty similar to BrowserView. OpaqueNonClientView is the view that renders the titlebar/borders/etc. It's layout/painting routines are a bit simpler than XPFrame's! B=1031854 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@329 0039d316-1c4b-4281-b951-d872f2087c98
* Convert chrome SConscript files to psuedo-builder calls.sgk@google.com2008-08-031-1/+1
| | | | | | | | TBR: evanm,bradnelson git-svn-id: svn://svn.chromium.org/chrome/trunk/src@306 0039d316-1c4b-4281-b951-d872f2087c98
* Fix crash in DialogClientView caused by recursion of Close calls. When ↵beng@google.com2008-08-011-6/+8
| | | | | | | | migrating from Window to DialogClientView, I neglected to insert the check into this function to see if the dialog had already been accepted by the user before trying to abort. B=1304032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244 0039d316-1c4b-4281-b951-d872f2087c98
* Fix SCons breakage, plus latest updates:sgk@google.com2008-07-311-0/+1
| | | | | | | | | | | | | * Update src/DEPS to latest icu38 rev. * Add new browser/views/frame/*.cc files. * Add new browser/debugger/debugger_contents.cc file. * Add new views/dialog_client_view.cc file. * Build new browser/debugger/resources/debugger_resources.rc file. * Add a new ChromeVersionRC() builder to the environment to provide a simpler, abstract interface for the four *version.rc files we build, with fixed definitions of $VERSION_BAT and $CHROME_SRC_DIR. * Fix the definition of $HTML_INLINE. R=deanm,bradnelson git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196 0039d316-1c4b-4281-b951-d872f2087c98
* Initial cleanups en route to coalescing the get-it-built cut-and-paste from ↵sgk@google.com2008-07-311-11/+2
| | | | | | | | | | | | | | | | | | various SConscripts into readable and maintainable shape. To wit: * Put the near-universal settings of /DCERT_CHAIN_PARA_HAS_EXTRA_FIELDS, /DWIN32_LEAN_AND_MEAN, /wd4503 and /wd4819 in the base construction environment. * Sort various unsorted source file lists. * Fix indentation and quoting for consistency in a couple SConscript files that escaped previous dragnets. * Eliminate two left-over uses of Split() for input file lists. * Give the devenv invocation to build v8_shell.exe the full path to the relevant .vcproj file. * Add /nologo to the base LINKFLAGS setting. * Remove various CPPPATH and other settings that have been hanging around commented out from the Visual Studio build (in case we needed them, which we evidently don't). * Get rid of unnecessary env.File() and env.Dir() calls in various settings (esp. CPPPATH) and source file lists. * Add copyright notice to an overlooked SConscript file. * Clean up version.bat invocation. TBR: bradnelson git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174 0039d316-1c4b-4281-b951-d872f2087c98
* rollback these changesbeng@google.com2008-07-313-20/+11
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171 0039d316-1c4b-4281-b951-d872f2087c98
* fix bustage, not sure why this didn't break on my machinebeng@google.com2008-07-311-0/+3
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169 0039d316-1c4b-4281-b951-d872f2087c98