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

Side by Side Diff: chrome/browser/ui/cocoa/ssl_client_certificate_selector_cocoa.mm

Issue 2562653002: Mac: Fix window ordering for certificate viewer/selector sheets and overlays.
Patch Set: Switch to reordering the child window array instead of setting the window level manually. Created 4 years 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #import "chrome/browser/ui/cocoa/ssl_client_certificate_selector_cocoa.h" 5 #import "chrome/browser/ui/cocoa/ssl_client_certificate_selector_cocoa.h"
6 6
7 #import <SecurityInterface/SFChooseIdentityPanel.h> 7 #import <SecurityInterface/SFChooseIdentityPanel.h>
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include <utility> 10 #include <utility>
(...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 286
287 oldResizesSubviews_ = [[sheetWindow contentView] autoresizesSubviews]; 287 oldResizesSubviews_ = [[sheetWindow contentView] autoresizesSubviews];
288 [[sheetWindow contentView] setAutoresizesSubviews:NO]; 288 [[sheetWindow contentView] setAutoresizesSubviews:NO];
289 } 289 }
290 290
291 - (void)unhideSheet { 291 - (void)unhideSheet {
292 NSWindow* sheetWindow = [overlayWindow_ attachedSheet]; 292 NSWindow* sheetWindow = [overlayWindow_ attachedSheet];
293 [[sheetWindow contentView] setAutoresizesSubviews:oldResizesSubviews_]; 293 [[sheetWindow contentView] setAutoresizesSubviews:oldResizesSubviews_];
294 [sheetWindow setAlphaValue:1.0]; 294 [sheetWindow setAlphaValue:1.0];
295 [sheetWindow setIgnoresMouseEvents:NO]; 295 [sheetWindow setIgnoresMouseEvents:NO];
296
297 // Reorder child windows so the currently showing sheet/overlay is on top.
298 NSWindow* parent = [overlayWindow_ parentWindow];
299 [parent removeChildWindow:overlayWindow_];
300 [parent addChildWindow:overlayWindow_ ordered:NSWindowAbove];
301 [overlayWindow_ removeChildWindow:sheetWindow];
302 [overlayWindow_ addChildWindow:sheetWindow ordered:NSWindowAbove];
296 } 303 }
297 304
298 - (void)pulseSheet { 305 - (void)pulseSheet {
299 // NOOP 306 // NOOP
300 } 307 }
301 308
302 - (void)makeSheetKeyAndOrderFront { 309 - (void)makeSheetKeyAndOrderFront {
303 [[overlayWindow_ attachedSheet] makeKeyAndOrderFront:nil]; 310 [[overlayWindow_ attachedSheet] makeKeyAndOrderFront:nil];
304 } 311 }
305 312
(...skipping 10 matching lines...) Expand all
316 } 323 }
317 324
318 - (void)onConstrainedWindowClosed { 325 - (void)onConstrainedWindowClosed {
319 observer_->StopObserving(); 326 observer_->StopObserving();
320 panel_.reset(); 327 panel_.reset();
321 constrainedWindow_.reset(); 328 constrainedWindow_.reset();
322 [self release]; 329 [self release];
323 } 330 }
324 331
325 @end 332 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698