diff options
author | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-19 18:47:05 +0000 |
---|---|---|
committer | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-19 18:47:05 +0000 |
commit | 28164cbf4787643ad22efc12b439ba0cff93cc63 (patch) | |
tree | dc6b1ecd04b34252755b6b6452859cb6ee6ad667 /views/controls | |
parent | 416ed618e916018bb154acd52fd39ca1198efd22 (diff) | |
download | chromium_src-28164cbf4787643ad22efc12b439ba0cff93cc63.zip chromium_src-28164cbf4787643ad22efc12b439ba0cff93cc63.tar.gz chromium_src-28164cbf4787643ad22efc12b439ba0cff93cc63.tar.bz2 |
Revert 66784 - Converts usage of SetProp/GetProp to a map. Even after making sure we
clean up props we still leak in a handful of cases that are causing
test grief. By and large our usage of properties is for inside the
application, so that a map works fine.
BUG=61528 44991
Review URL: http://codereview.chromium.org/5075003
TBR=sky@chromium.org
Review URL: http://codereview.chromium.org/5184009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66786 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views/controls')
-rw-r--r-- | views/controls/native_control.cc | 15 | ||||
-rw-r--r-- | views/controls/native_control_win.cc | 13 | ||||
-rw-r--r-- | views/controls/native_control_win.h | 8 |
3 files changed, 18 insertions, 18 deletions
diff --git a/views/controls/native_control.cc b/views/controls/native_control.cc index 13881bb..ef719c9 100644 --- a/views/controls/native_control.cc +++ b/views/controls/native_control.cc @@ -13,7 +13,7 @@ #include "app/keyboard_code_conversion_win.h" #include "app/keyboard_codes.h" #include "app/l10n_util_win.h" -#include "app/view_prop.h" +#include "app/win/scoped_prop.h" #include "base/logging.h" #include "base/scoped_ptr.h" #include "base/win_util.h" @@ -24,12 +24,10 @@ #include "views/focus/focus_manager.h" #include "views/widget/widget.h" -using app::ViewProp; - namespace views { // Maps to the NativeControl. -static const char* const kNativeControlKey = "__NATIVE_CONTROL__"; +static const wchar_t* const kNativeControlKey = L"__NATIVE_CONTROL__"; class NativeControlContainer : public CWindowImpl<NativeControlContainer, CWindow, @@ -91,7 +89,8 @@ class NativeControlContainer : public CWindowImpl<NativeControlContainer, // We subclass the control hwnd so we get the WM_KEYDOWN messages. original_handler_ = win_util::SetWindowProc( control_, &NativeControl::NativeControlWndProc); - prop_.reset(new ViewProp(control_, kNativeControlKey , parent_)); + prop_.reset( + new app::win::ScopedProp(control_, kNativeControlKey , parent_)); ::ShowWindow(control_, SW_SHOW); return 1; @@ -167,7 +166,7 @@ class NativeControlContainer : public CWindowImpl<NativeControlContainer, // Message handler that was set before we reset it. WNDPROC original_handler_; - scoped_ptr<ViewProp> prop_; + scoped_ptr<app::win::ScopedProp> prop_; DISALLOW_COPY_AND_ASSIGN(NativeControlContainer); }; @@ -364,8 +363,8 @@ LRESULT CALLBACK NativeControl::NativeControlWndProc(HWND window, UINT message, WPARAM w_param, LPARAM l_param) { - NativeControl* native_control = static_cast<NativeControl*>( - ViewProp::GetValue(window, kNativeControlKey)); + NativeControl* native_control = + static_cast<NativeControl*>(GetProp(window, kNativeControlKey)); DCHECK(native_control); WNDPROC original_handler = native_control->container_->original_handler_; DCHECK(original_handler); diff --git a/views/controls/native_control_win.cc b/views/controls/native_control_win.cc index a223993..c4f811c 100644 --- a/views/controls/native_control_win.cc +++ b/views/controls/native_control_win.cc @@ -7,16 +7,14 @@ #include <windowsx.h> #include "app/l10n_util_win.h" -#include "app/view_prop.h" +#include "app/win/scoped_prop.h" #include "base/logging.h" #include "base/win_util.h" #include "views/focus/focus_manager.h" -using app::ViewProp; - namespace views { -static const char* const kNativeControlWinKey = "__NATIVE_CONTROL_WIN__"; +static const wchar_t* kNativeControlWinKey = L"__NATIVE_CONTROL_WIN__"; //////////////////////////////////////////////////////////////////////////////// // NativeControlWin, public: @@ -132,7 +130,8 @@ void NativeControlWin::ShowContextMenu(const gfx::Point& location) { void NativeControlWin::NativeControlCreated(HWND native_control) { // Associate this object with the control's HWND so that WidgetWin can find // this object when it receives messages from it. - props_.push_back(new ViewProp(native_control, kNativeControlWinKey, this)); + props_.push_back( + new app::win::ScopedProp(native_control, kNativeControlWinKey, this)); props_.push_back(ChildWindowMessageProcessor::Register(native_control, this)); // Subclass so we get WM_KEYDOWN and WM_SETFOCUS messages. @@ -197,8 +196,8 @@ LRESULT NativeControlWin::NativeControlWndProc(HWND window, UINT message, WPARAM w_param, LPARAM l_param) { - NativeControlWin* native_control = reinterpret_cast<NativeControlWin*>( - ViewProp::GetValue(window, kNativeControlWinKey)); + NativeControlWin* native_control = + static_cast<NativeControlWin*>(GetProp(window, kNativeControlWinKey)); DCHECK(native_control); if (message == WM_KEYDOWN && diff --git a/views/controls/native_control_win.h b/views/controls/native_control_win.h index d27efa4..3733a15 100644 --- a/views/controls/native_control_win.h +++ b/views/controls/native_control_win.h @@ -13,7 +13,9 @@ #include "views/widget/child_window_message_processor.h" namespace app { -class ViewProp; +namespace win { +class ScopedProp; +} } namespace views { @@ -73,7 +75,7 @@ class NativeControlWin : public ChildWindowMessageProcessor, DWORD GetAdditionalRTLStyle() const; private: - typedef ScopedVector<app::ViewProp> ViewProps; + typedef ScopedVector<app::win::ScopedProp> ScopedProps; // Called by the containing WidgetWin when a message of type WM_CTLCOLORBTN or // WM_CTLCOLORSTATIC is sent from the HWND created by an object dreived from @@ -89,7 +91,7 @@ class NativeControlWin : public ChildWindowMessageProcessor, // The window procedure before we subclassed. WNDPROC original_wndproc_; - ViewProps props_; + ScopedProps props_; DISALLOW_COPY_AND_ASSIGN(NativeControlWin); }; |