summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-16 00:58:55 +0000
committeroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-16 00:58:55 +0000
commit0bbd6db7289b9b9337203715fd8d037f975bd044 (patch)
tree09b1f5ab71d1864ca6833cefa7b4fe86d5271b52
parent075cfa198bff8cc93a3ab7ca45c3c75125617a70 (diff)
downloadchromium_src-0bbd6db7289b9b9337203715fd8d037f975bd044.zip
chromium_src-0bbd6db7289b9b9337203715fd8d037f975bd044.tar.gz
chromium_src-0bbd6db7289b9b9337203715fd8d037f975bd044.tar.bz2
Fix panel resize flicker:
When adding new notification, its size is unknown until WebKit finish rendering the contents , so no need to update panel at this point. Removed BalloonViewImpl::GetPreferredSize as this is not used. (this was copied from desktop impl) BUG=33306 TEST=none Review URL: http://codereview.chromium.org/1519036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44726 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/chromeos/notifications/balloon_view.h5
-rw-r--r--chrome/browser/chromeos/notifications/notification_panel.cc4
2 files changed, 3 insertions, 6 deletions
diff --git a/chrome/browser/chromeos/notifications/balloon_view.h b/chrome/browser/chromeos/notifications/balloon_view.h
index e350c953..0ed77a8 100644
--- a/chrome/browser/chromeos/notifications/balloon_view.h
+++ b/chrome/browser/chromeos/notifications/balloon_view.h
@@ -71,11 +71,6 @@ class BalloonViewImpl : public BalloonView,
bool IsFor(const Notification& notification) const;
private:
- // views::View interface.
- virtual gfx::Size GetPreferredSize() {
- return gfx::Size(1000, 1000);
- }
-
// views::ViewMenuDelegate interface.
virtual void RunMenu(views::View* source, const gfx::Point& pt);
diff --git a/chrome/browser/chromeos/notifications/notification_panel.cc b/chrome/browser/chromeos/notifications/notification_panel.cc
index b055510..a673396 100644
--- a/chrome/browser/chromeos/notifications/notification_panel.cc
+++ b/chrome/browser/chromeos/notifications/notification_panel.cc
@@ -391,7 +391,9 @@ void NotificationPanel::Add(Balloon* balloon) {
if (state_ == CLOSED || state_ == MINIMIZED || state_ == KEEP_SIZE)
SET_STATE(STICKY_AND_NEW);
Show();
- UpdatePanel(true);
+ // Don't resize the panel yet. The panel will be resized when WebKit tells
+ // the size in ResizeNotification.
+ UpdatePanel(false);
StartStaleTimer(balloon);
}