Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(204)

Unified Diff: ui/aura_shell/toplevel_window_event_filter_unittest.cc

Issue 8574049: [Aura] Fix HtmlDialogBrowserTest.SizeWindow. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix aura bots Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/aura_shell/toplevel_window_event_filter_unittest.cc
diff --git a/ui/aura_shell/toplevel_window_event_filter_unittest.cc b/ui/aura_shell/toplevel_window_event_filter_unittest.cc
index 59836994faf6e1dece99dd05c1bf13b765cde35d..e2c009428ec215df8fb71c950d5af63ed10bb86d 100644
--- a/ui/aura_shell/toplevel_window_event_filter_unittest.cc
+++ b/ui/aura_shell/toplevel_window_event_filter_unittest.cc
@@ -29,16 +29,28 @@ namespace test {
namespace {
// A simple window delegate that returns the specified hit-test code when
-// requested.
-class HitTestWindowDelegate : public aura::test::TestWindowDelegate {
+// requested and applies a minimum size constraint if there is one.
+class TestWindowDelegate : public aura::test::TestWindowDelegate {
public:
- explicit HitTestWindowDelegate(int hittest_code)
+ explicit TestWindowDelegate(int hittest_code)
: hittest_code_(hittest_code) {
}
- virtual ~HitTestWindowDelegate() {}
+ virtual ~TestWindowDelegate() {}
+
+ void set_min_size(const gfx::Size& size) {
+ min_size_ = size;
+ }
private:
- // Overridden from TestWindowDelegate:
+ // Overridden from aura::Test::TestWindowDelegate:
+ virtual void OnBoundsChanging(gfx::Rect* new_bounds) OVERRIDE {
+ if (!min_size_.IsEmpty()) {
+ new_bounds->set_width(std::max(min_size_.width(),
+ new_bounds->width()));
+ new_bounds->set_height(std::max(min_size_.height(),
+ new_bounds->height()));
+ }
+ }
virtual int GetNonClientComponent(const gfx::Point& point) const OVERRIDE {
return hittest_code_;
}
@@ -47,8 +59,9 @@ class HitTestWindowDelegate : public aura::test::TestWindowDelegate {
}
int hittest_code_;
+ gfx::Size min_size_;
- DISALLOW_COPY_AND_ASSIGN(HitTestWindowDelegate);
+ DISALLOW_COPY_AND_ASSIGN(TestWindowDelegate);
};
class ToplevelWindowEventFilterTest : public aura::test::AuraTestBase {
@@ -68,7 +81,7 @@ class ToplevelWindowEventFilterTest : public aura::test::AuraTestBase {
protected:
aura::Window* CreateWindow(int hittest_code) {
- HitTestWindowDelegate* d1 = new HitTestWindowDelegate(hittest_code);
+ TestWindowDelegate* d1 = new TestWindowDelegate(hittest_code);
aura::Window* w1 = new aura::Window(d1);
w1->set_id(1);
w1->Init(ui::Layer::LAYER_HAS_TEXTURE);
@@ -111,8 +124,11 @@ TEST_F(ToplevelWindowEventFilterTest, BottomRight) {
TEST_F(ToplevelWindowEventFilterTest, GrowBox) {
scoped_ptr<aura::Window> w1(CreateWindow(HTGROWBOX));
+ TestWindowDelegate* window_delegate =
+ static_cast<TestWindowDelegate*>(w1->delegate());
+ window_delegate->set_min_size(gfx::Size(50, 50));
+
gfx::Point position = w1->bounds().origin();
- w1->set_minimum_size(gfx::Size(50, 50));
aura::test::EventGenerator generator;
generator.MoveMouseToCenterOf(w1.get());
generator.DragMouseBy(100, 100);

Powered by Google App Engine
This is Rietveld 408576698