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

Side by Side Diff: ui/message_center/cocoa/tray_view_controller.mm

Issue 17408004: [Mac][MC] Initial accessibility pass. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Title -> Description Created 7 years, 6 months 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
« no previous file with comments | « ui/message_center/cocoa/status_item_view.mm ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "ui/message_center/cocoa/tray_view_controller.h" 5 #import "ui/message_center/cocoa/tray_view_controller.h"
6 6
7 #include <cmath> 7 #include <cmath>
8 8
9 #include "base/mac/scoped_nsautorelease_pool.h" 9 #include "base/mac/scoped_nsautorelease_pool.h"
10 #include "base/time.h" 10 #include "base/time.h"
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after
287 287
288 [[self view] addSubview:[settingsController_ view]]; 288 [[self view] addSubview:[settingsController_ view]];
289 289
290 NSRect titleFrame = [title_ frame]; 290 NSRect titleFrame = [title_ frame];
291 titleFrame.origin.x = 291 titleFrame.origin.x =
292 NSMaxX([backButton_ frame]) + message_center::kMarginBetweenItems / 2; 292 NSMaxX([backButton_ frame]) + message_center::kMarginBetweenItems / 2;
293 [title_ setFrame:titleFrame]; 293 [title_ setFrame:titleFrame];
294 [backButton_ setHidden:NO]; 294 [backButton_ setHidden:NO];
295 [clearAllButton_ setEnabled:NO]; 295 [clearAllButton_ setEnabled:NO];
296 296
297 [scrollView_ setHidden:YES];
298
297 [[[self view] window] recalculateKeyViewLoop]; 299 [[[self view] window] recalculateKeyViewLoop];
298 300
299 [self updateTrayViewAndWindow]; 301 [self updateTrayViewAndWindow];
300 } 302 }
301 303
302 - (void)hideSettings:(id)sender { 304 - (void)hideSettings:(id)sender {
305 [scrollView_ setHidden:NO];
306
303 [[settingsController_ view] removeFromSuperview]; 307 [[settingsController_ view] removeFromSuperview];
304 settingsController_.reset(); 308 settingsController_.reset();
305 309
306 NSRect titleFrame = [title_ frame]; 310 NSRect titleFrame = [title_ frame];
307 titleFrame.origin.x = NSMinX([backButton_ frame]); 311 titleFrame.origin.x = NSMinX([backButton_ frame]);
308 [title_ setFrame:titleFrame]; 312 [title_ setFrame:titleFrame];
309 [backButton_ setHidden:YES]; 313 [backButton_ setHidden:YES];
310 [clearAllButton_ setEnabled:YES]; 314 [clearAllButton_ setEnabled:YES];
311 315
312 [[[self view] window] recalculateKeyViewLoop]; 316 [[[self view] window] recalculateKeyViewLoop];
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
406 [backButton_ setDefaultImage: 410 [backButton_ setDefaultImage:
407 rb.GetNativeImageNamed(IDR_NOTIFICATION_ARROW).ToNSImage()]; 411 rb.GetNativeImageNamed(IDR_NOTIFICATION_ARROW).ToNSImage()];
408 [backButton_ setHoverImage: 412 [backButton_ setHoverImage:
409 rb.GetNativeImageNamed(IDR_NOTIFICATION_ARROW_HOVER).ToNSImage()]; 413 rb.GetNativeImageNamed(IDR_NOTIFICATION_ARROW_HOVER).ToNSImage()];
410 [backButton_ setPressedImage: 414 [backButton_ setPressedImage:
411 rb.GetNativeImageNamed(IDR_NOTIFICATION_ARROW_PRESSED).ToNSImage()]; 415 rb.GetNativeImageNamed(IDR_NOTIFICATION_ARROW_PRESSED).ToNSImage()];
412 [backButton_ setAction:@selector(hideSettings:)]; 416 [backButton_ setAction:@selector(hideSettings:)];
413 configureButton(backButton_); 417 configureButton(backButton_);
414 [backButton_ setHidden:YES]; 418 [backButton_ setHidden:YES];
415 [backButton_ setKeyEquivalent:@"\e"]; 419 [backButton_ setKeyEquivalent:@"\e"];
420 [backButton_ setToolTip:l10n_util::GetNSString(
421 IDS_MESSAGE_CENTER_SETTINGS_GO_BACK_BUTTON_TOOLTIP)];
422 [[backButton_ cell]
423 accessibilitySetOverrideValue:[backButton_ toolTip]
424 forAttribute:NSAccessibilityDescriptionAttribute];
416 [[self view] addSubview:backButton_]; 425 [[self view] addSubview:backButton_];
417 426
418 // Create the divider line between the control area and the notifications. 427 // Create the divider line between the control area and the notifications.
419 scoped_nsobject<NSBox> divider( 428 scoped_nsobject<NSBox> divider(
420 [[NSBox alloc] initWithFrame:NSMakeRect(0, 0, NSWidth([view frame]), 1)]); 429 [[NSBox alloc] initWithFrame:NSMakeRect(0, 0, NSWidth([view frame]), 1)]);
421 [divider setAutoresizingMask:NSViewMinYMargin]; 430 [divider setAutoresizingMask:NSViewMinYMargin];
422 [divider setBorderType:NSNoBorder]; 431 [divider setBorderType:NSNoBorder];
423 [divider setBoxType:NSBoxCustom]; 432 [divider setBoxType:NSBoxCustom];
424 [divider setContentViewMargins:NSZeroSize]; 433 [divider setContentViewMargins:NSZeroSize];
425 [divider setFillColor:gfx::SkColorToCalibratedNSColor( 434 [divider setFillColor:gfx::SkColorToCalibratedNSColor(
(...skipping 18 matching lines...) Expand all
444 defaultImage); 453 defaultImage);
445 settingsButton_.reset( 454 settingsButton_.reset(
446 [[HoverImageButton alloc] initWithFrame:settingsButtonFrame]); 455 [[HoverImageButton alloc] initWithFrame:settingsButtonFrame]);
447 [settingsButton_ setDefaultImage:defaultImage]; 456 [settingsButton_ setDefaultImage:defaultImage];
448 [settingsButton_ setHoverImage: 457 [settingsButton_ setHoverImage:
449 rb.GetNativeImageNamed(IDR_NOTIFICATION_SETTINGS_HOVER).ToNSImage()]; 458 rb.GetNativeImageNamed(IDR_NOTIFICATION_SETTINGS_HOVER).ToNSImage()];
450 [settingsButton_ setPressedImage: 459 [settingsButton_ setPressedImage:
451 rb.GetNativeImageNamed(IDR_NOTIFICATION_SETTINGS_PRESSED).ToNSImage()]; 460 rb.GetNativeImageNamed(IDR_NOTIFICATION_SETTINGS_PRESSED).ToNSImage()];
452 [settingsButton_ setToolTip: 461 [settingsButton_ setToolTip:
453 l10n_util::GetNSString(IDS_MESSAGE_CENTER_SETTINGS_BUTTON_LABEL)]; 462 l10n_util::GetNSString(IDS_MESSAGE_CENTER_SETTINGS_BUTTON_LABEL)];
463 [[settingsButton_ cell]
464 accessibilitySetOverrideValue:[settingsButton_ toolTip]
465 forAttribute:NSAccessibilityDescriptionAttribute];
454 [settingsButton_ setAction:@selector(showSettings:)]; 466 [settingsButton_ setAction:@selector(showSettings:)];
455 configureButton(settingsButton_); 467 configureButton(settingsButton_);
456 [view addSubview:settingsButton_]; 468 [view addSubview:settingsButton_];
457 469
458 // Create the clear all button. 470 // Create the clear all button.
459 defaultImage = rb.GetNativeImageNamed(IDR_NOTIFICATION_CLEAR_ALL).ToNSImage(); 471 defaultImage = rb.GetNativeImageNamed(IDR_NOTIFICATION_CLEAR_ALL).ToNSImage();
460 NSRect clearAllButtonFrame = getButtonFrame( 472 NSRect clearAllButtonFrame = getButtonFrame(
461 NSMinX(settingsButtonFrame) - kButtonXMargin, 473 NSMinX(settingsButtonFrame) - kButtonXMargin,
462 defaultImage); 474 defaultImage);
463 clearAllButton_.reset( 475 clearAllButton_.reset(
464 [[HoverImageButton alloc] initWithFrame:clearAllButtonFrame]); 476 [[HoverImageButton alloc] initWithFrame:clearAllButtonFrame]);
465 [clearAllButton_ setDefaultImage:defaultImage]; 477 [clearAllButton_ setDefaultImage:defaultImage];
466 [clearAllButton_ setHoverImage: 478 [clearAllButton_ setHoverImage:
467 rb.GetNativeImageNamed(IDR_NOTIFICATION_CLEAR_ALL_HOVER).ToNSImage()]; 479 rb.GetNativeImageNamed(IDR_NOTIFICATION_CLEAR_ALL_HOVER).ToNSImage()];
468 [clearAllButton_ setPressedImage: 480 [clearAllButton_ setPressedImage:
469 rb.GetNativeImageNamed(IDR_NOTIFICATION_CLEAR_ALL_PRESSED).ToNSImage()]; 481 rb.GetNativeImageNamed(IDR_NOTIFICATION_CLEAR_ALL_PRESSED).ToNSImage()];
470 [clearAllButton_ setToolTip: 482 [clearAllButton_ setToolTip:
471 l10n_util::GetNSString(IDS_MESSAGE_CENTER_CLEAR_ALL)]; 483 l10n_util::GetNSString(IDS_MESSAGE_CENTER_CLEAR_ALL)];
484 [[clearAllButton_ cell]
485 accessibilitySetOverrideValue:[clearAllButton_ toolTip]
486 forAttribute:NSAccessibilityDescriptionAttribute];
472 [clearAllButton_ setAction:@selector(clearAllNotifications:)]; 487 [clearAllButton_ setAction:@selector(clearAllNotifications:)];
473 configureButton(clearAllButton_); 488 configureButton(clearAllButton_);
474 [view addSubview:clearAllButton_]; 489 [view addSubview:clearAllButton_];
475 490
476 // Create the pause button. 491 // Create the pause button.
477 defaultImage = rb.GetNativeImageNamed(IDR_NOTIFICATION_PAUSE).ToNSImage(); 492 defaultImage = rb.GetNativeImageNamed(IDR_NOTIFICATION_PAUSE).ToNSImage();
478 NSRect pauseButtonFrame = getButtonFrame( 493 NSRect pauseButtonFrame = getButtonFrame(
479 NSMinX(clearAllButtonFrame) - kButtonXMargin, 494 NSMinX(clearAllButtonFrame) - kButtonXMargin,
480 defaultImage); 495 defaultImage);
481 pauseButton_.reset([[HoverImageButton alloc] initWithFrame:pauseButtonFrame]); 496 pauseButton_.reset([[HoverImageButton alloc] initWithFrame:pauseButtonFrame]);
482 [pauseButton_ setDefaultImage:defaultImage]; 497 [pauseButton_ setDefaultImage:defaultImage];
483 [pauseButton_ setHoverImage: 498 [pauseButton_ setHoverImage:
484 rb.GetNativeImageNamed(IDR_NOTIFICATION_PAUSE_HOVER).ToNSImage()]; 499 rb.GetNativeImageNamed(IDR_NOTIFICATION_PAUSE_HOVER).ToNSImage()];
485 [pauseButton_ setPressedImage: 500 [pauseButton_ setPressedImage:
486 rb.GetNativeImageNamed(IDR_NOTIFICATION_PAUSE_PRESSED).ToNSImage()]; 501 rb.GetNativeImageNamed(IDR_NOTIFICATION_PAUSE_PRESSED).ToNSImage()];
487 [pauseButton_ setToolTip: 502 [pauseButton_ setToolTip:
488 l10n_util::GetNSString(IDS_MESSAGE_CENTER_QUIET_MODE_BUTTON_TOOLTIP)]; 503 l10n_util::GetNSString(IDS_MESSAGE_CENTER_QUIET_MODE_BUTTON_TOOLTIP)];
504 [[pauseButton_ cell]
505 accessibilitySetOverrideValue:[pauseButton_ toolTip]
506 forAttribute:NSAccessibilityDescriptionAttribute];
489 [pauseButton_ setAction:@selector(toggleQuietMode:)]; 507 [pauseButton_ setAction:@selector(toggleQuietMode:)];
490 configureButton(pauseButton_); 508 configureButton(pauseButton_);
491 [view addSubview:pauseButton_]; 509 [view addSubview:pauseButton_];
492 } 510 }
493 511
494 - (void)updateTrayViewAndWindow { 512 - (void)updateTrayViewAndWindow {
495 CGFloat scrollContentHeight = 0; 513 CGFloat scrollContentHeight = 0;
496 if ([notifications_ count]) { 514 if ([notifications_ count]) {
497 scrollContentHeight = NSMaxY([[[notifications_ lastObject] view] frame]) + 515 scrollContentHeight = NSMaxY([[[notifications_ lastObject] view] frame]) +
498 message_center::kMarginBetweenItems;; 516 message_center::kMarginBetweenItems;;
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
711 729
712 [pauseButton_ setEnabled:YES]; 730 [pauseButton_ setEnabled:YES];
713 [clearAllButton_ setEnabled:YES]; 731 [clearAllButton_ setEnabled:YES];
714 [settingsButton_ setEnabled:YES]; 732 [settingsButton_ setEnabled:YES];
715 [clipView_ setFrozen:NO]; 733 [clipView_ setFrozen:NO];
716 734
717 messageCenter_->RemoveAllNotifications(true); 735 messageCenter_->RemoveAllNotifications(true);
718 } 736 }
719 737
720 @end 738 @end
OLDNEW
« no previous file with comments | « ui/message_center/cocoa/status_item_view.mm ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698