| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Normalize end of file newlines in chrome/. All files end in a single newline.
Review URL: http://codereview.chromium.org/42015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11331 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
maximized. This is because of the nonclient frameview/clientview hierarchy changes.
Make sure that the frame gets a chance to respond to GetViewForPoint before the client view if the client view does not visually overlap.
http://crbug.com/8312
Review URL: http://codereview.chromium.org/40062
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10857 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This completes the collapsing of window types and browser frames around a single class: views::Window. CustomFrameWindow is removed with this change.
The Browser window is represented by a single views::Window subclass: BrowserFrame, which replaces both AeroGlassFrame and OpaqueFrame.
NonClientView is now a container of two sibling classes - the Window's ClientView (in the Browser's case, BrowserView), and a NonClientFrameView subclass, which provides the rendering for the non-client portions of the window. These Views are siblings rather than the ClientView a child of the NonClientFrameView because when the DWM is toggled, the ClientView would have to be re-parented. Many Views make the assumption they are only inserted into a View hierarchy once, and so this is problematic. By having the views be siblings, this is avoided.
With this in mind, all of the former NonClientViews now become NonClientFrameView subclasses:
DefaultNonClientView -> CustomFrameView
(non-existent, NonClientView) -> NativeFrameView
AeroGlassNonClientView -> GlassBrowserFrameView
OpaqueNonClientView -> OpaqueBrowserFrameView
The latter two derive from NonClientFrameView via BrowserNonClientFrameView, which adds some extras.
I also had to modify the TabRenderer class to know how to drop its cache of tab background images when the theme changes since it uses different ones for Glass and non-Glass.
This change also fixes a few non-client flicker issues relating to window non-client activation by using more ScopedRedrawLocks. (Touches info_bubble.cc, window.cc)
Bugs fixed:
http://crbug.com/153
http://crbug.com/747
http://crbug.com/2371
http://crbug.com/3264
http://crbug.com/8234
Plumbing for http://crbug.com/8247
Design docs:
http://dev.chromium.org/developers/design-documents/views-windowing
http://dev.chromium.org/developers/design-documents/browser-window
Review URL: http://codereview.chromium.org/27317
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10757 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
This is not new code, just copying code into Window. None of the added codepaths are executed yet because UseNativeFrame is always true, so all custom frame windows continue to use CustomFrameWindow instead.
Review URL: http://codereview.chromium.org/27291
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10646 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
or not they fully render their own frame. This simplifies things a bit on the way to unification of Window and CustomFrameWindow.
Review URL: http://codereview.chromium.org/27286
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10632 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
triggered by clicking the window icon or hitting alt-space. Make clicking the icon for windows without a non-client view (e.g. the Bookmark Manager on Aero Glass) bring up the system menu.
Clean up more dead code, verbose code, or unnecessary statics/members.
TEST=Right-click titlebars, hit alt-space, and left-click window icons (where present), for:
* Main window
* Dialogs, e.g. the bookmark manager
* Popups
* App windows
When right-clicking, a system menu should appear at the cursor. For the other cases, a system menu should appear at the system native location (roughly just below the titlebar).
Review URL: http://codereview.chromium.org/20225
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9766 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
TBR=glen
Review URL: http://codereview.chromium.org/24007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9443 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
refactoring. More cleanup. Change tabstrip layout to match opaque frame.
BUG=5054
Review URL: http://codereview.chromium.org/20161
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9433 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
also removed support for window frame sizes with unequal widths vs. heights; Windows' UI doesn't actually let you do this and it was making the code more complex than it needed to be.
Review URL: http://codereview.chromium.org/19477
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8916 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
more sense anyway) so I'll be able to use it in custom_frame_window.cc.
Also eliminate an unnecessarily-repeated set of resource IDs from the opaque nonclient view, and move a comment to match what I ended up doing (but haven't yet sent up for review) in other places. Seems I couldn't make up my mind on that one.
Review URL: http://codereview.chromium.org/19458
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8891 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
modified the window layout (by a pixel or so) in the popup window case, which I haven't tried to make pixel-perfect yet anyway. Otherwise it's all reorg.
Clean up logic of nonclient view to be more consistent and coherent. Most things are now based on a small set of core functions that return various frame/nonclient thicknesses. This allows a noticeable reduction in the number of hardcoded constants, makes the code make more sense (even though a few places are longer than before), and makes it much easier to do things in the future like resizing various borders or handling system metrics better.
Rename and update comments for all constants to be more descriptive and less redundant.
Rename helper functions and variables for consistency, now that they've changed.
Remove an unused variant of TileImageInt(). Add a new one that takes an offset into the source image. This is used to rewrite the maximized bottom border tiling call in a way that doesn't rely on someone else clipping out or painting over the overdraw from tiling "too large" a source image. Probably no visible effect.
Make resize border hittest helper function able to handle borders of varying widths, and try to make parameter names more meaningful. Technically, we don't need the extra flexibility, since our bottom and side borders are the same thickness, but since there are different functions calculating that thickness on the caller side, it didn't hurt to not rely on that for the future.
BUG=5054
Review URL: http://codereview.chromium.org/18804
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8658 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
window is restored.
Turns out the messages we receive prior to becoming restored/minimized etc are not sufficient to restore the button to its appropriate state. Since this is specific to the implementation of these controls, I have provided a solution specific to them.
http://crbug.com/3559
Review URL: http://codereview.chromium.org/7803
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3721 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
http://crbug.com/2188
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3495 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154 0039d316-1c4b-4281-b951-d872f2087c98
|
|
it into its own file).
Rename NonClientView's HitTest method to NonClientHitTest, so it doesn't collide with View's HitTest method.
Also, consolidate some duplicated code between CustomFrameWindow and ConstrainedWindow's non-client view impl.
B=1300864
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141 0039d316-1c4b-4281-b951-d872f2087c98
|