diff options
author | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-14 23:49:03 +0000 |
---|---|---|
committer | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-14 23:49:03 +0000 |
commit | 5dd4a2c8d4c8cb889069388fcf0105962b99c50d (patch) | |
tree | 26608e09708bfcf4bf7c0d2fa06b3077e03d1140 /content/browser | |
parent | cb36dc783d391f63a26a3191f9a274f4acaed8bf (diff) | |
download | chromium_src-5dd4a2c8d4c8cb889069388fcf0105962b99c50d.zip chromium_src-5dd4a2c8d4c8cb889069388fcf0105962b99c50d.tar.gz chromium_src-5dd4a2c8d4c8cb889069388fcf0105962b99c50d.tar.bz2 |
Revert 109960 - Send WM_DEVICECHANGE message through SystemMonitor
WM_DEVICECHANGE is sent when there's been a change to devices or the computer;
specifically when a USB device is connected or disconnected. This is intended
for use in support of Gamepads for more performant polling and
connect/disconnect testing. Currently only on Windows, though seems reasonable
to add for other platforms in the future.
BUG=79050
Review URL: http://codereview.chromium.org/8523021
TBR=scottmg@chromium.org
Review URL: http://codereview.chromium.org/8528044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109979 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser')
-rw-r--r-- | content/browser/browser_main_loop.cc | 5 | ||||
-rw-r--r-- | content/browser/browser_main_loop.h | 4 | ||||
-rw-r--r-- | content/browser/system_message_window_win.cc | 57 | ||||
-rw-r--r-- | content/browser/system_message_window_win.h | 43 |
4 files changed, 0 insertions, 109 deletions
diff --git a/content/browser/browser_main_loop.cc b/content/browser/browser_main_loop.cc index 2059d2a..d722637 100644 --- a/content/browser/browser_main_loop.cc +++ b/content/browser/browser_main_loop.cc @@ -32,7 +32,6 @@ #include <ole2.h> #include <shellapi.h> -#include "content/browser/system_message_window_win.h" #include "ui/base/l10n/l10n_util_win.h" #include "net/base/winsock_init.h" #endif @@ -256,10 +255,6 @@ void BrowserMainLoop::MainMessageLoopStart() { network_change_notifier_.reset(net::NetworkChangeNotifier::Create()); -#if defined(OS_WIN) - system_message_window_.reset(new SystemMessageWindowWin); -#endif - for (size_t i = 0; i < parts_list_.size(); ++i) parts_list_[i]->PostMainMessageLoopStart(); } diff --git a/content/browser/browser_main_loop.h b/content/browser/browser_main_loop.h index 0abe7e1..8642e4f 100644 --- a/content/browser/browser_main_loop.h +++ b/content/browser/browser_main_loop.h @@ -14,7 +14,6 @@ class CommandLine; class HighResolutionTimerManager; class MessageLoop; -class SystemMessageWindowWin; namespace base { class SystemMonitor; @@ -65,9 +64,6 @@ class BrowserMainLoop { scoped_ptr<base::SystemMonitor> system_monitor_; scoped_ptr<HighResolutionTimerManager> hi_res_timer_manager_; scoped_ptr<net::NetworkChangeNotifier> network_change_notifier_; -#if defined(OS_WIN) - scoped_ptr<SystemMessageWindowWin> system_message_window_; -#endif scoped_ptr<BrowserThreadImpl> main_thread_; DISALLOW_COPY_AND_ASSIGN(BrowserMainLoop); diff --git a/content/browser/system_message_window_win.cc b/content/browser/system_message_window_win.cc deleted file mode 100644 index c5a7633..0000000 --- a/content/browser/system_message_window_win.cc +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "content/browser/system_message_window_win.h" - -#include <windows.h> -#include <dbt.h> - -#include "base/system_monitor/system_monitor.h" -#include "base/win/wrapped_window_proc.h" - -static const wchar_t* const WindowClassName = L"Chrome_SystemMessageWindow"; - -SystemMessageWindowWin::SystemMessageWindowWin() { - HINSTANCE hinst = GetModuleHandle(NULL); - - WNDCLASSEX wc = {0}; - wc.cbSize = sizeof(wc); - wc.lpfnWndProc = - base::win::WrappedWindowProc<&SystemMessageWindowWin::WndProcThunk>; - wc.hInstance = hinst; - wc.lpszClassName = WindowClassName; - ATOM clazz = RegisterClassEx(&wc); - DCHECK(clazz); - - window_ = CreateWindow(WindowClassName, - 0, 0, 0, 0, 0, 0, 0, 0, hinst, 0); - SetWindowLongPtr(window_, GWLP_USERDATA, reinterpret_cast<LONG_PTR>(this)); -} - -SystemMessageWindowWin::~SystemMessageWindowWin() { - if (window_) { - DestroyWindow(window_); - UnregisterClass(WindowClassName, GetModuleHandle(NULL)); - } -} - -LRESULT SystemMessageWindowWin::OnDeviceChange(UINT event_type, DWORD data) { - base::SystemMonitor* monitor = base::SystemMonitor::Get(); - if (monitor && event_type == DBT_DEVNODES_CHANGED) - monitor->ProcessDevicesChanged(); - return TRUE; -} - -LRESULT CALLBACK SystemMessageWindowWin::WndProc(HWND hwnd, UINT message, - WPARAM wparam, LPARAM lparam) { - switch (message) { - case WM_DEVICECHANGE: - return OnDeviceChange(static_cast<UINT>(wparam), - static_cast<DWORD>(lparam)); - default: - break; - } - - return ::DefWindowProc(hwnd, message, wparam, lparam); -} diff --git a/content/browser/system_message_window_win.h b/content/browser/system_message_window_win.h deleted file mode 100644 index 184aaa3..0000000 --- a/content/browser/system_message_window_win.h +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef CONTENT_BROWSER_SYSTEM_MESSAGE_WINDOW_WIN_H_ -#define CONTENT_BROWSER_SYSTEM_MESSAGE_WINDOW_WIN_H_ -#pragma once - -#include "build/build_config.h" - -#include <windows.h> - -#include "base/basictypes.h" -#include "content/common/content_export.h" - -class CONTENT_EXPORT SystemMessageWindowWin { - public: - SystemMessageWindowWin(); - virtual ~SystemMessageWindowWin(); - - virtual LRESULT OnDeviceChange(UINT event_type, DWORD data); - - private: - LRESULT CALLBACK WndProc(HWND hwnd, UINT message, - WPARAM wparam, LPARAM lparam); - - static LRESULT CALLBACK WndProcThunk(HWND hwnd, - UINT message, - WPARAM wparam, - LPARAM lparam) { - SystemMessageWindowWin* msg_wnd = reinterpret_cast<SystemMessageWindowWin*>( - GetWindowLongPtr(hwnd, GWLP_USERDATA)); - if (msg_wnd) - return msg_wnd->WndProc(hwnd, message, wparam, lparam); - return ::DefWindowProc(hwnd, message, wparam, lparam); - } - - HWND window_; - - DISALLOW_COPY_AND_ASSIGN(SystemMessageWindowWin); -}; - -#endif // CONTENT_BROWSER_SYSTEM_MESSAGE_WINDOW_WIN_H_ |