Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(61)

Side by Side Diff: app/win_util.cc

Issue 4569002: Fix ThumbnailGenerator on Windows. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Just fix thumbnail generator for now Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "app/win_util.h" 5 #include "app/win_util.h"
6 6
7 #include <commdlg.h> 7 #include <commdlg.h>
8 #include <dwmapi.h> 8 #include <dwmapi.h>
9 #include <shellapi.h> 9 #include <shellapi.h>
10 #include <shlobj.h> 10 #include <shlobj.h>
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 HANDLE GetSectionFromProcess(HANDLE section, HANDLE process, bool read_only) { 262 HANDLE GetSectionFromProcess(HANDLE section, HANDLE process, bool read_only) {
263 HANDLE valid_section = NULL; 263 HANDLE valid_section = NULL;
264 DWORD access = STANDARD_RIGHTS_REQUIRED | FILE_MAP_READ; 264 DWORD access = STANDARD_RIGHTS_REQUIRED | FILE_MAP_READ;
265 if (!read_only) 265 if (!read_only)
266 access |= FILE_MAP_WRITE; 266 access |= FILE_MAP_WRITE;
267 DuplicateHandle(process, section, GetCurrentProcess(), &valid_section, access, 267 DuplicateHandle(process, section, GetCurrentProcess(), &valid_section, access,
268 FALSE, 0); 268 FALSE, 0);
269 return valid_section; 269 return valid_section;
270 } 270 }
271 271
272 HANDLE GetSectionForProcess(HANDLE section, HANDLE process, bool read_only) {
273 HANDLE valid_section = NULL;
274 DWORD access = STANDARD_RIGHTS_REQUIRED | FILE_MAP_READ;
275 if (!read_only)
276 access |= FILE_MAP_WRITE;
277 DuplicateHandle(GetCurrentProcess(), section, process, &valid_section, access,
278 FALSE, 0);
279 return valid_section;
280 }
281
272 bool DoesWindowBelongToActiveWindow(HWND window) { 282 bool DoesWindowBelongToActiveWindow(HWND window) {
273 DCHECK(window); 283 DCHECK(window);
274 HWND top_window = ::GetAncestor(window, GA_ROOT); 284 HWND top_window = ::GetAncestor(window, GA_ROOT);
275 if (!top_window) 285 if (!top_window)
276 return false; 286 return false;
277 287
278 HWND active_top_window = ::GetAncestor(::GetForegroundWindow(), GA_ROOT); 288 HWND active_top_window = ::GetAncestor(::GetForegroundWindow(), GA_ROOT);
279 return (top_window == active_top_window); 289 return (top_window == active_top_window);
280 } 290 }
281 291
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after
576 hwnd, __uuidof(*pps), reinterpret_cast<void**>(pps.Receive())); 586 hwnd, __uuidof(*pps), reinterpret_cast<void**>(pps.Receive()));
577 if (S_OK == result) { 587 if (S_OK == result) {
578 SetAppIdForPropertyStore(pps, app_id.c_str()); 588 SetAppIdForPropertyStore(pps, app_id.c_str());
579 } 589 }
580 590
581 // Cleanup. 591 // Cleanup.
582 base::UnloadNativeLibrary(shell32_library); 592 base::UnloadNativeLibrary(shell32_library);
583 } 593 }
584 594
585 } // namespace win_util 595 } // namespace win_util
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698