summaryrefslogtreecommitdiffstats
path: root/content/browser/system_message_window_win.cc
diff options
context:
space:
mode:
authortpayne@chromium.org <tpayne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-04-25 18:35:08 +0000
committertpayne@chromium.org <tpayne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-04-25 18:35:08 +0000
commitb83575d22ecc2937e065c5b53ff6a74447c3f3af (patch)
tree64c9b763a261b961d6b9bcdef5f13589a836b183 /content/browser/system_message_window_win.cc
parentad1acb571488dad4b3adc67a8199fe4c6ede96f5 (diff)
downloadchromium_src-b83575d22ecc2937e065c5b53ff6a74447c3f3af.zip
chromium_src-b83575d22ecc2937e065c5b53ff6a74447c3f3af.tar.gz
chromium_src-b83575d22ecc2937e065c5b53ff6a74447c3f3af.tar.bz2
Moves media device notification code to chrome/browser
BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/10211008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@133946 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/system_message_window_win.cc')
-rw-r--r--content/browser/system_message_window_win.cc63
1 files changed, 2 insertions, 61 deletions
diff --git a/content/browser/system_message_window_win.cc b/content/browser/system_message_window_win.cc
index 1aca1c1..347e717d 100644
--- a/content/browser/system_message_window_win.cc
+++ b/content/browser/system_message_window_win.cc
@@ -6,50 +6,15 @@
#include <windows.h>
#include <dbt.h>
-#include <string>
-#include "base/file_path.h"
-#include "base/sys_string_conversions.h"
+#include "base/logging.h"
#include "base/system_monitor/system_monitor.h"
#include "base/win/wrapped_window_proc.h"
static const wchar_t* const WindowClassName = L"Chrome_SystemMessageWindow";
-namespace {
-LRESULT GetVolumeName(LPCWSTR drive,
- LPWSTR volume_name,
- unsigned int volume_name_len) {
- return GetVolumeInformation(drive, volume_name, volume_name_len, NULL, NULL,
- NULL, NULL, 0);
-}
-
-// Returns 0 if the devicetype is not volume.
-DWORD GetVolumeBitMaskFromBroadcastHeader(DWORD data) {
- PDEV_BROADCAST_HDR dev_broadcast_hdr =
- reinterpret_cast<PDEV_BROADCAST_HDR>(data);
- if (dev_broadcast_hdr->dbch_devicetype == DBT_DEVTYP_VOLUME) {
- PDEV_BROADCAST_VOLUME dev_broadcast_volume =
- reinterpret_cast<PDEV_BROADCAST_VOLUME>(dev_broadcast_hdr);
- return dev_broadcast_volume->dbcv_unitmask;
- }
- return 0;
-}
-
-} // namespace
-
-
-SystemMessageWindowWin::SystemMessageWindowWin()
- : volume_name_func_(&GetVolumeName) {
- Init();
-}
-
-SystemMessageWindowWin::SystemMessageWindowWin(VolumeNameFunc volume_name_func)
- : volume_name_func_(volume_name_func) {
- Init();
-}
-
-void SystemMessageWindowWin::Init() {
+SystemMessageWindowWin::SystemMessageWindowWin() {
HINSTANCE hinst = GetModuleHandle(NULL);
WNDCLASSEX wc = {0};
@@ -79,30 +44,6 @@ LRESULT SystemMessageWindowWin::OnDeviceChange(UINT event_type, DWORD data) {
case DBT_DEVNODES_CHANGED:
monitor->ProcessDevicesChanged();
break;
- case DBT_DEVICEARRIVAL: {
- DWORD unitmask = GetVolumeBitMaskFromBroadcastHeader(data);
- for (int i = 0; unitmask; ++i, unitmask >>= 1) {
- if (unitmask & 0x01) {
- FilePath::StringType drive(L"_:\\");
- drive[0] = L'A' + i;
- WCHAR volume_name[MAX_PATH + 1];
- if ((*volume_name_func_)(drive.c_str(), volume_name, MAX_PATH + 1)) {
- monitor->ProcessMediaDeviceAttached(
- i, base::SysWideToUTF8(volume_name), FilePath(drive));
- }
- }
- }
- break;
- }
- case DBT_DEVICEREMOVECOMPLETE: {
- DWORD unitmask = GetVolumeBitMaskFromBroadcastHeader(data);
- for (int i = 0; unitmask; ++i, unitmask >>= 1) {
- if (unitmask & 0x01) {
- monitor->ProcessMediaDeviceDetached(i);
- }
- }
- break;
- }
}
return TRUE;
}