OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CONTENT_PUBLIC_BROWSER_WEB_CONTENTS_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_WEB_CONTENTS_H_ |
6 #define CONTENT_PUBLIC_BROWSER_WEB_CONTENTS_H_ | 6 #define CONTENT_PUBLIC_BROWSER_WEB_CONTENTS_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 559 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
570 #elif defined(OS_MACOSX) | 570 #elif defined(OS_MACOSX) |
571 // The web contents view assumes that its view will never be overlapped by | 571 // The web contents view assumes that its view will never be overlapped by |
572 // another view (either partially or fully). This allows it to perform | 572 // another view (either partially or fully). This allows it to perform |
573 // optimizations. If the view is in a view hierarchy where it might be | 573 // optimizations. If the view is in a view hierarchy where it might be |
574 // overlapped by another view, notify the view by calling this with |true|. | 574 // overlapped by another view, notify the view by calling this with |true|. |
575 virtual void SetAllowOverlappingViews(bool overlapping) = 0; | 575 virtual void SetAllowOverlappingViews(bool overlapping) = 0; |
576 | 576 |
577 // Returns true if overlapping views are allowed, false otherwise. | 577 // Returns true if overlapping views are allowed, false otherwise. |
578 virtual bool GetAllowOverlappingViews() = 0; | 578 virtual bool GetAllowOverlappingViews() = 0; |
579 | 579 |
580 // To draw two overlapping web contents view, the underlaying one should | 580 // Allowing other views disables optimizations which assume that only a single |
581 // know about the overlaying one. Caller must ensure that |overlay| exists | 581 // WebContents is present. |
582 // until |RemoveOverlayView| is called. | 582 virtual void SetAllowOtherViews(bool allow) = 0; |
583 virtual void SetOverlayView(WebContents* overlay, | |
584 const gfx::Point& offset) = 0; | |
585 | 583 |
586 // Removes the previously set overlay view. | 584 // Returns true if other views are allowed, false otherwise. |
587 virtual void RemoveOverlayView() = 0; | 585 virtual bool GetAllowOtherViews() = 0; |
588 #endif // OS_ANDROID | 586 #endif // OS_ANDROID |
589 | 587 |
590 private: | 588 private: |
591 // This interface should only be implemented inside content. | 589 // This interface should only be implemented inside content. |
592 friend class WebContentsImpl; | 590 friend class WebContentsImpl; |
593 WebContents() {} | 591 WebContents() {} |
594 }; | 592 }; |
595 | 593 |
596 } // namespace content | 594 } // namespace content |
597 | 595 |
598 #endif // CONTENT_PUBLIC_BROWSER_WEB_CONTENTS_H_ | 596 #endif // CONTENT_PUBLIC_BROWSER_WEB_CONTENTS_H_ |
OLD | NEW |