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

Side by Side Diff: chrome/browser/autocomplete/autocomplete_edit_view_mac.mm

Issue 155871: [Mac] Don't handle up/down-arrow unless popup is visible. (Closed)
Patch Set: Created 11 years, 5 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
« no previous file with comments | « chrome/browser/autocomplete/autocomplete_edit_view_mac.h ('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) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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 "chrome/browser/autocomplete/autocomplete_edit_view_mac.h" 5 #include "chrome/browser/autocomplete/autocomplete_edit_view_mac.h"
6 6
7 #include "base/clipboard.h" 7 #include "base/clipboard.h"
8 #include "base/string_util.h" 8 #include "base/string_util.h"
9 #include "base/sys_string_conversions.h" 9 #include "base/sys_string_conversions.h"
10 #include "chrome/browser/autocomplete/autocomplete_edit.h" 10 #include "chrome/browser/autocomplete/autocomplete_edit.h"
(...skipping 561 matching lines...) Expand 10 before | Expand all | Expand 10 after
572 // OnAfterPossibleChange(), even if identical contents are pasted into the 572 // OnAfterPossibleChange(), even if identical contents are pasted into the
573 // text box. 573 // text box.
574 text_before_change_.clear(); 574 text_before_change_.clear();
575 575
576 NSString* s = base::SysWideToNSString(text); 576 NSString* s = base::SysWideToNSString(text);
577 [[field_ currentEditor] replaceCharactersInRange:selectedRange withString:s]; 577 [[field_ currentEditor] replaceCharactersInRange:selectedRange withString:s];
578 578
579 OnAfterPossibleChange(); 579 OnAfterPossibleChange();
580 } 580 }
581 581
582 bool AutocompleteEditViewMac::IsPopupOpen() const {
583 return popup_view_->IsOpen();
584 }
585
582 void AutocompleteEditViewMac::OnControlKeyChanged(bool pressed) { 586 void AutocompleteEditViewMac::OnControlKeyChanged(bool pressed) {
583 model_->OnControlKeyChanged(pressed); 587 model_->OnControlKeyChanged(pressed);
584 } 588 }
585 589
586 void AutocompleteEditViewMac::AcceptInput( 590 void AutocompleteEditViewMac::AcceptInput(
587 WindowOpenDisposition disposition, bool for_drop) { 591 WindowOpenDisposition disposition, bool for_drop) {
588 model_->AcceptInput(disposition, for_drop); 592 model_->AcceptInput(disposition, for_drop);
589 } 593 }
590 594
591 void AutocompleteEditViewMac::FocusLocation() { 595 void AutocompleteEditViewMac::FocusLocation() {
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
638 - initWithEditView:(AutocompleteEditViewMac*)view { 642 - initWithEditView:(AutocompleteEditViewMac*)view {
639 self = [super init]; 643 self = [super init];
640 if (self) { 644 if (self) {
641 edit_view_ = view; 645 edit_view_ = view;
642 } 646 }
643 return self; 647 return self;
644 } 648 }
645 649
646 - (BOOL)control:(NSControl*)control 650 - (BOOL)control:(NSControl*)control
647 textView:(NSTextView*)textView doCommandBySelector:(SEL)cmd { 651 textView:(NSTextView*)textView doCommandBySelector:(SEL)cmd {
648 if (cmd == @selector(moveDown:)) { 652 // Don't intercept up/down-arrow if the popup isn't open.
649 edit_view_->OnUpOrDownKeyPressed(false, false); 653 if (edit_view_->IsPopupOpen()) {
650 return YES; 654 if (cmd == @selector(moveDown:)) {
651 } 655 edit_view_->OnUpOrDownKeyPressed(false, false);
652 656 return YES;
653 if (cmd == @selector(moveUp:)) { 657 }
654 edit_view_->OnUpOrDownKeyPressed(true, false); 658
655 return YES; 659 if (cmd == @selector(moveUp:)) {
660 edit_view_->OnUpOrDownKeyPressed(true, false);
661 return YES;
662 }
656 } 663 }
657 664
658 if (cmd == @selector(scrollPageDown:)) { 665 if (cmd == @selector(scrollPageDown:)) {
659 edit_view_->OnUpOrDownKeyPressed(false, true); 666 edit_view_->OnUpOrDownKeyPressed(false, true);
660 return YES; 667 return YES;
661 } 668 }
662 669
663 if (cmd == @selector(scrollPageUp:)) { 670 if (cmd == @selector(scrollPageUp:)) {
664 edit_view_->OnUpOrDownKeyPressed(true, true); 671 edit_view_->OnUpOrDownKeyPressed(true, true);
665 return YES; 672 return YES;
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
734 // prepended and ".com" appended. This calls down to 741 // prepended and ".com" appended. This calls down to
735 // AutocompleteEditModel::OnControlKeyChanged() so that it can change 742 // AutocompleteEditModel::OnControlKeyChanged() so that it can change
736 // the popup to reflect this. See autocomplete_edit.cc 743 // the popup to reflect this. See autocomplete_edit.cc
737 // OnControlKeyChanged() and OnAfterPossibleChange(). 744 // OnControlKeyChanged() and OnAfterPossibleChange().
738 - (void)control:(NSControl*)control flagsChanged:(NSEvent*)theEvent { 745 - (void)control:(NSControl*)control flagsChanged:(NSEvent*)theEvent {
739 BOOL controlFlag = ([theEvent modifierFlags]&NSControlKeyMask) != 0; 746 BOOL controlFlag = ([theEvent modifierFlags]&NSControlKeyMask) != 0;
740 edit_view_->OnControlKeyChanged(controlFlag); 747 edit_view_->OnControlKeyChanged(controlFlag);
741 } 748 }
742 749
743 @end 750 @end
OLDNEW
« no previous file with comments | « chrome/browser/autocomplete/autocomplete_edit_view_mac.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698