summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos/frame
diff options
context:
space:
mode:
authoroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-21 03:15:22 +0000
committeroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-21 03:15:22 +0000
commitc82366ff60db9e8995bdf1c3d2f7598c0c81d38c (patch)
treed536917564c55d40873fe8f67fbfd1ac090587cd /chrome/browser/chromeos/frame
parent34de05eb66c7d65c1df44b99658b4e4dd4aa7ca4 (diff)
downloadchromium_src-c82366ff60db9e8995bdf1c3d2f7598c0c81d38c.zip
chromium_src-c82366ff60db9e8995bdf1c3d2f7598c0c81d38c.tar.gz
chromium_src-c82366ff60db9e8995bdf1c3d2f7598c0c81d38c.tar.bz2
Make notification panel vertically resizable.
Dismiss all non sticky when the panel is closed. BUG=chromium-os:4771, chromium-os:3847 TEST=added new TestCloseDissmissAllNonSticky test Review URL: http://codereview.chromium.org/3029006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53148 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos/frame')
-rw-r--r--chrome/browser/chromeos/frame/panel_browser_view.cc5
-rw-r--r--chrome/browser/chromeos/frame/panel_controller.cc4
-rw-r--r--chrome/browser/chromeos/frame/panel_controller.h4
3 files changed, 10 insertions, 3 deletions
diff --git a/chrome/browser/chromeos/frame/panel_browser_view.cc b/chrome/browser/chromeos/frame/panel_browser_view.cc
index 0dda082..0d72579 100644
--- a/chrome/browser/chromeos/frame/panel_browser_view.cc
+++ b/chrome/browser/chromeos/frame/panel_browser_view.cc
@@ -5,6 +5,7 @@
#include "chrome/browser/chromeos/frame/panel_browser_view.h"
#include "chrome/browser/chromeos/frame/panel_controller.h"
+#include "third_party/cros/chromeos_wm_ipc_enums.h"
#include "views/window/window.h"
namespace chromeos {
@@ -36,7 +37,9 @@ void PanelBrowserView::Init() {
void PanelBrowserView::Show() {
panel_controller_.reset(new PanelController(this, GetNativeHandle()));
- panel_controller_->Init(true /* focus when opened */, bounds(), creator_xid_);
+ panel_controller_->Init(
+ true /* focus when opened */, bounds(), creator_xid_,
+ WM_IPC_PANEL_USER_RESIZE_HORIZONTALLY_AND_VERTICALLY);
BrowserView::Show();
}
diff --git a/chrome/browser/chromeos/frame/panel_controller.cc b/chrome/browser/chromeos/frame/panel_controller.cc
index 4eafa12..3446b38 100644
--- a/chrome/browser/chromeos/frame/panel_controller.cc
+++ b/chrome/browser/chromeos/frame/panel_controller.cc
@@ -90,7 +90,8 @@ PanelController::PanelController(Delegate* delegate,
void PanelController::Init(bool initial_focus,
const gfx::Rect& window_bounds,
- XID creator_xid) {
+ XID creator_xid,
+ WmIpcPanelUserResizeType resize_type) {
gfx::Rect title_bounds(
0, 0, window_bounds.width(), kTitleHeight);
@@ -110,6 +111,7 @@ void PanelController::Init(bool initial_focus,
type_params.push_back(expanded_ ? 1 : 0);
type_params.push_back(initial_focus ? 1 : 0);
type_params.push_back(creator_xid);
+ type_params.push_back(resize_type);
WmIpc::instance()->SetWindowType(
GTK_WIDGET(panel_),
WM_IPC_WINDOW_CHROME_PANEL_CONTENT,
diff --git a/chrome/browser/chromeos/frame/panel_controller.h b/chrome/browser/chromeos/frame/panel_controller.h
index 63b1898..32be295 100644
--- a/chrome/browser/chromeos/frame/panel_controller.h
+++ b/chrome/browser/chromeos/frame/panel_controller.h
@@ -9,6 +9,7 @@
#include "app/x11_util.h"
#include "views/controls/button/button.h"
+#include "third_party/cros/chromeos_wm_ipc_enums.h"
class BrowserView;
class SkBitmap;
@@ -52,7 +53,8 @@ class PanelController {
// Initializes the panel controller with the initial state of the focus and
// the window bounds.
- void Init(bool initial_focus, const gfx::Rect& init_bounds, XID creator_xid);
+ void Init(bool initial_focus, const gfx::Rect& init_bounds, XID creator_xid,
+ WmIpcPanelUserResizeType resize_type);
bool TitleMousePressed(const views::MouseEvent& event);
void TitleMouseReleased(const views::MouseEvent& event, bool canceled);