OLD | NEW |
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 #include <string> | 5 #include <string> |
6 #include <vector> | 6 #include <vector> |
7 | 7 |
8 #include "base/auto_reset.h" | 8 #include "base/auto_reset.h" |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
272 return bounds; | 272 return bounds; |
273 } | 273 } |
274 | 274 |
275 gfx::Rect GetDisplayRect() { | 275 gfx::Rect GetDisplayRect() { |
276 return textfield_view_->GetRenderText()->display_rect(); | 276 return textfield_view_->GetRenderText()->display_rect(); |
277 } | 277 } |
278 | 278 |
279 // Mouse click on the point whose x-axis is |bound|'s x plus |x_offset| and | 279 // Mouse click on the point whose x-axis is |bound|'s x plus |x_offset| and |
280 // y-axis is in the middle of |bound|'s vertical range. | 280 // y-axis is in the middle of |bound|'s vertical range. |
281 void MouseClick(const gfx::Rect bound, int x_offset) { | 281 void MouseClick(const gfx::Rect bound, int x_offset) { |
282 int x = bound.x() + x_offset; | 282 gfx::Point point(bound.x() + x_offset, bound.y() + bound.height() / 2); |
283 int y = bound.y() + bound.height() / 2; | 283 ui::MouseEvent click(ui::ET_MOUSE_PRESSED, point, point, |
284 MouseEvent click(ui::ET_MOUSE_PRESSED, x, y, ui::EF_LEFT_MOUSE_BUTTON); | 284 ui::EF_LEFT_MOUSE_BUTTON); |
285 textfield_view_->OnMousePressed(click); | 285 textfield_view_->OnMousePressed(click); |
286 MouseEvent release(ui::ET_MOUSE_RELEASED, x, y, ui::EF_LEFT_MOUSE_BUTTON); | 286 ui::MouseEvent release(ui::ET_MOUSE_RELEASED, point, point, |
| 287 ui::EF_LEFT_MOUSE_BUTTON); |
287 textfield_view_->OnMouseReleased(release); | 288 textfield_view_->OnMouseReleased(release); |
288 } | 289 } |
289 | 290 |
290 // This is to avoid double/triple click. | 291 // This is to avoid double/triple click. |
291 void NonClientMouseClick() { | 292 void NonClientMouseClick() { |
292 MouseEvent click(ui::ET_MOUSE_PRESSED, 0, 0, | 293 ui::MouseEvent click(ui::ET_MOUSE_PRESSED, gfx::Point(), gfx::Point(), |
293 ui::EF_LEFT_MOUSE_BUTTON | ui::EF_IS_NON_CLIENT); | 294 ui::EF_LEFT_MOUSE_BUTTON | ui::EF_IS_NON_CLIENT); |
294 textfield_view_->OnMousePressed(click); | 295 textfield_view_->OnMousePressed(click); |
295 MouseEvent release(ui::ET_MOUSE_RELEASED, 0, 0, | 296 ui::MouseEvent release(ui::ET_MOUSE_RELEASED, gfx::Point(), gfx::Point(), |
296 ui::EF_LEFT_MOUSE_BUTTON | ui::EF_IS_NON_CLIENT); | 297 ui::EF_LEFT_MOUSE_BUTTON | ui::EF_IS_NON_CLIENT); |
297 textfield_view_->OnMouseReleased(release); | 298 textfield_view_->OnMouseReleased(release); |
298 } | 299 } |
299 | 300 |
300 // Wrap for visibility in test classes. | 301 // Wrap for visibility in test classes. |
301 ui::TextInputType GetTextInputType() { | 302 ui::TextInputType GetTextInputType() { |
302 return textfield_view_->GetTextInputType(); | 303 return textfield_view_->GetTextInputType(); |
303 } | 304 } |
304 | 305 |
305 void VerifyTextfieldContextMenuContents(bool textfield_has_selection, | 306 void VerifyTextfieldContextMenuContents(bool textfield_has_selection, |
306 ui::MenuModel* menu_model) { | 307 ui::MenuModel* menu_model) { |
(...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
740 widget_->GetFocusManager()->AdvanceFocus(true); | 741 widget_->GetFocusManager()->AdvanceFocus(true); |
741 EXPECT_EQ(3, GetFocusedView()->id()); | 742 EXPECT_EQ(3, GetFocusedView()->id()); |
742 | 743 |
743 // Request focus should still work. | 744 // Request focus should still work. |
744 textfield_->RequestFocus(); | 745 textfield_->RequestFocus(); |
745 EXPECT_EQ(1, GetFocusedView()->id()); | 746 EXPECT_EQ(1, GetFocusedView()->id()); |
746 | 747 |
747 // Test if clicking on textfield view sets the focus to textfield_. | 748 // Test if clicking on textfield view sets the focus to textfield_. |
748 widget_->GetFocusManager()->AdvanceFocus(true); | 749 widget_->GetFocusManager()->AdvanceFocus(true); |
749 EXPECT_EQ(3, GetFocusedView()->id()); | 750 EXPECT_EQ(3, GetFocusedView()->id()); |
750 MouseEvent click(ui::ET_MOUSE_PRESSED, 0, 0, ui::EF_LEFT_MOUSE_BUTTON); | 751 ui::MouseEvent click(ui::ET_MOUSE_PRESSED, gfx::Point(), gfx::Point(), |
| 752 ui::EF_LEFT_MOUSE_BUTTON); |
751 textfield_view_->OnMousePressed(click); | 753 textfield_view_->OnMousePressed(click); |
752 EXPECT_EQ(1, GetFocusedView()->id()); | 754 EXPECT_EQ(1, GetFocusedView()->id()); |
753 } | 755 } |
754 | 756 |
755 TEST_F(NativeTextfieldViewsTest, ContextMenuDisplayTest) { | 757 TEST_F(NativeTextfieldViewsTest, ContextMenuDisplayTest) { |
756 InitTextfield(Textfield::STYLE_DEFAULT); | 758 InitTextfield(Textfield::STYLE_DEFAULT); |
757 textfield_->SetText(ASCIIToUTF16("hello world")); | 759 textfield_->SetText(ASCIIToUTF16("hello world")); |
758 EXPECT_TRUE(GetContextMenuModel()); | 760 EXPECT_TRUE(GetContextMenuModel()); |
759 VerifyTextfieldContextMenuContents(false, GetContextMenuModel()); | 761 VerifyTextfieldContextMenuContents(false, GetContextMenuModel()); |
760 | 762 |
761 textfield_->SelectAll(false); | 763 textfield_->SelectAll(false); |
762 VerifyTextfieldContextMenuContents(true, GetContextMenuModel()); | 764 VerifyTextfieldContextMenuContents(true, GetContextMenuModel()); |
763 } | 765 } |
764 | 766 |
765 TEST_F(NativeTextfieldViewsTest, DoubleAndTripleClickTest) { | 767 TEST_F(NativeTextfieldViewsTest, DoubleAndTripleClickTest) { |
766 InitTextfield(Textfield::STYLE_DEFAULT); | 768 InitTextfield(Textfield::STYLE_DEFAULT); |
767 textfield_->SetText(ASCIIToUTF16("hello world")); | 769 textfield_->SetText(ASCIIToUTF16("hello world")); |
768 MouseEvent click(ui::ET_MOUSE_PRESSED, 0, 0, ui::EF_LEFT_MOUSE_BUTTON); | 770 ui::MouseEvent click(ui::ET_MOUSE_PRESSED, gfx::Point(), gfx::Point(), |
769 MouseEvent release(ui::ET_MOUSE_RELEASED, 0, 0, ui::EF_LEFT_MOUSE_BUTTON); | 771 ui::EF_LEFT_MOUSE_BUTTON); |
770 MouseEvent double_click(ui::ET_MOUSE_PRESSED, 0, 0, | 772 ui::MouseEvent release(ui::ET_MOUSE_RELEASED, gfx::Point(), gfx::Point(), |
771 ui::EF_LEFT_MOUSE_BUTTON | ui::EF_IS_DOUBLE_CLICK); | 773 ui::EF_LEFT_MOUSE_BUTTON); |
| 774 ui::MouseEvent double_click( |
| 775 ui::ET_MOUSE_PRESSED, gfx::Point(), gfx::Point(), |
| 776 ui::EF_LEFT_MOUSE_BUTTON | ui::EF_IS_DOUBLE_CLICK); |
772 | 777 |
773 // Test for double click. | 778 // Test for double click. |
774 textfield_view_->OnMousePressed(click); | 779 textfield_view_->OnMousePressed(click); |
775 textfield_view_->OnMouseReleased(release); | 780 textfield_view_->OnMouseReleased(release); |
776 EXPECT_TRUE(textfield_->GetSelectedText().empty()); | 781 EXPECT_TRUE(textfield_->GetSelectedText().empty()); |
777 textfield_view_->OnMousePressed(double_click); | 782 textfield_view_->OnMousePressed(double_click); |
778 textfield_view_->OnMouseReleased(release); | 783 textfield_view_->OnMouseReleased(release); |
779 EXPECT_STR_EQ("hello", textfield_->GetSelectedText()); | 784 EXPECT_STR_EQ("hello", textfield_->GetSelectedText()); |
780 | 785 |
781 // Test for triple click. | 786 // Test for triple click. |
782 textfield_view_->OnMousePressed(click); | 787 textfield_view_->OnMousePressed(click); |
783 textfield_view_->OnMouseReleased(release); | 788 textfield_view_->OnMouseReleased(release); |
784 EXPECT_STR_EQ("hello world", textfield_->GetSelectedText()); | 789 EXPECT_STR_EQ("hello world", textfield_->GetSelectedText()); |
785 | 790 |
786 // Another click should reset back to single click. | 791 // Another click should reset back to single click. |
787 textfield_view_->OnMousePressed(click); | 792 textfield_view_->OnMousePressed(click); |
788 textfield_view_->OnMouseReleased(release); | 793 textfield_view_->OnMouseReleased(release); |
789 EXPECT_TRUE(textfield_->GetSelectedText().empty()); | 794 EXPECT_TRUE(textfield_->GetSelectedText().empty()); |
790 } | 795 } |
791 | 796 |
792 TEST_F(NativeTextfieldViewsTest, DragToSelect) { | 797 TEST_F(NativeTextfieldViewsTest, DragToSelect) { |
793 InitTextfield(Textfield::STYLE_DEFAULT); | 798 InitTextfield(Textfield::STYLE_DEFAULT); |
794 textfield_->SetText(ASCIIToUTF16("hello world")); | 799 textfield_->SetText(ASCIIToUTF16("hello world")); |
795 const int kStart = GetCursorPositionX(5); | 800 const int kStart = GetCursorPositionX(5); |
796 const int kEnd = 500; | 801 const int kEnd = 500; |
797 MouseEvent click_a(ui::ET_MOUSE_PRESSED, kStart, 0, ui::EF_LEFT_MOUSE_BUTTON); | 802 gfx::Point start_point(kStart, 0); |
798 MouseEvent click_b(ui::ET_MOUSE_PRESSED, kEnd, 0, ui::EF_LEFT_MOUSE_BUTTON); | 803 gfx::Point end_point(kEnd, 0); |
799 MouseEvent drag_left(ui::ET_MOUSE_DRAGGED, 0, 0, ui::EF_LEFT_MOUSE_BUTTON); | 804 ui::MouseEvent click_a(ui::ET_MOUSE_PRESSED, start_point, start_point, |
800 MouseEvent drag_right(ui::ET_MOUSE_DRAGGED, | 805 ui::EF_LEFT_MOUSE_BUTTON); |
801 kEnd, | 806 ui::MouseEvent click_b(ui::ET_MOUSE_PRESSED, end_point, end_point, |
802 0, | 807 ui::EF_LEFT_MOUSE_BUTTON); |
803 ui::EF_LEFT_MOUSE_BUTTON); | 808 ui::MouseEvent drag_left(ui::ET_MOUSE_DRAGGED, gfx::Point(), gfx::Point(), |
804 MouseEvent release(ui::ET_MOUSE_RELEASED, kEnd, 0, ui::EF_LEFT_MOUSE_BUTTON); | 809 ui::EF_LEFT_MOUSE_BUTTON); |
| 810 ui::MouseEvent drag_right(ui::ET_MOUSE_DRAGGED, end_point, end_point, |
| 811 ui::EF_LEFT_MOUSE_BUTTON); |
| 812 ui::MouseEvent release(ui::ET_MOUSE_RELEASED, end_point, end_point, |
| 813 ui::EF_LEFT_MOUSE_BUTTON); |
805 textfield_view_->OnMousePressed(click_a); | 814 textfield_view_->OnMousePressed(click_a); |
806 EXPECT_TRUE(textfield_->GetSelectedText().empty()); | 815 EXPECT_TRUE(textfield_->GetSelectedText().empty()); |
807 // Check that dragging left selects the beginning of the string. | 816 // Check that dragging left selects the beginning of the string. |
808 textfield_view_->OnMouseDragged(drag_left); | 817 textfield_view_->OnMouseDragged(drag_left); |
809 string16 text_left = textfield_->GetSelectedText(); | 818 string16 text_left = textfield_->GetSelectedText(); |
810 EXPECT_STR_EQ("hello", text_left); | 819 EXPECT_STR_EQ("hello", text_left); |
811 // Check that dragging right selects the rest of the string. | 820 // Check that dragging right selects the rest of the string. |
812 textfield_view_->OnMouseDragged(drag_right); | 821 textfield_view_->OnMouseDragged(drag_right); |
813 string16 text_right = textfield_->GetSelectedText(); | 822 string16 text_right = textfield_->GetSelectedText(); |
814 EXPECT_STR_EQ(" world", text_right); | 823 EXPECT_STR_EQ(" world", text_right); |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
928 textfield_->SetText(ASCIIToUTF16("hello world")); | 937 textfield_->SetText(ASCIIToUTF16("hello world")); |
929 | 938 |
930 string16 string; | 939 string16 string; |
931 ui::OSExchangeData data; | 940 ui::OSExchangeData data; |
932 int formats = 0; | 941 int formats = 0; |
933 int operations = 0; | 942 int operations = 0; |
934 std::set<OSExchangeData::CustomFormat> custom_formats; | 943 std::set<OSExchangeData::CustomFormat> custom_formats; |
935 | 944 |
936 // Start dragging "ello". | 945 // Start dragging "ello". |
937 textfield_->SelectRange(ui::Range(1, 5)); | 946 textfield_->SelectRange(ui::Range(1, 5)); |
938 MouseEvent click_a(ui::ET_MOUSE_PRESSED, GetCursorPositionX(3), 0, | 947 gfx::Point point(GetCursorPositionX(3), 0); |
939 ui::EF_LEFT_MOUSE_BUTTON); | 948 ui::MouseEvent click_a(ui::ET_MOUSE_PRESSED, point, point, |
| 949 ui::EF_LEFT_MOUSE_BUTTON); |
940 textfield_view_->OnMousePressed(click_a); | 950 textfield_view_->OnMousePressed(click_a); |
941 EXPECT_TRUE(textfield_view_->CanStartDragForView(textfield_view_, | 951 EXPECT_TRUE(textfield_view_->CanStartDragForView(textfield_view_, |
942 click_a.location(), gfx::Point())); | 952 click_a.location(), gfx::Point())); |
943 operations = textfield_view_->GetDragOperationsForView(textfield_view_, | 953 operations = textfield_view_->GetDragOperationsForView(textfield_view_, |
944 click_a.location()); | 954 click_a.location()); |
945 EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE | ui::DragDropTypes::DRAG_COPY, | 955 EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE | ui::DragDropTypes::DRAG_COPY, |
946 operations); | 956 operations); |
947 textfield_view_->WriteDragDataForView(NULL, click_a.location(), &data); | 957 textfield_view_->WriteDragDataForView(NULL, click_a.location(), &data); |
948 EXPECT_TRUE(data.GetString(&string)); | 958 EXPECT_TRUE(data.GetString(&string)); |
949 EXPECT_EQ(textfield_->GetSelectedText(), string); | 959 EXPECT_EQ(textfield_->GetSelectedText(), string); |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
982 textfield_->SetText(ASCIIToUTF16("hello world")); | 992 textfield_->SetText(ASCIIToUTF16("hello world")); |
983 | 993 |
984 string16 string; | 994 string16 string; |
985 ui::OSExchangeData data; | 995 ui::OSExchangeData data; |
986 int formats = 0; | 996 int formats = 0; |
987 int operations = 0; | 997 int operations = 0; |
988 std::set<OSExchangeData::CustomFormat> custom_formats; | 998 std::set<OSExchangeData::CustomFormat> custom_formats; |
989 | 999 |
990 // Start dragging " worl". | 1000 // Start dragging " worl". |
991 textfield_->SelectRange(ui::Range(5, 10)); | 1001 textfield_->SelectRange(ui::Range(5, 10)); |
992 MouseEvent click_a(ui::ET_MOUSE_PRESSED, GetCursorPositionX(7), 0, | 1002 gfx::Point point(GetCursorPositionX(7), 0); |
993 ui::EF_LEFT_MOUSE_BUTTON); | 1003 ui::MouseEvent click_a(ui::ET_MOUSE_PRESSED, point, point, |
| 1004 ui::EF_LEFT_MOUSE_BUTTON); |
994 textfield_view_->OnMousePressed(click_a); | 1005 textfield_view_->OnMousePressed(click_a); |
995 EXPECT_TRUE(textfield_view_->CanStartDragForView(textfield_view_, | 1006 EXPECT_TRUE(textfield_view_->CanStartDragForView(textfield_view_, |
996 click_a.location(), gfx::Point())); | 1007 click_a.location(), gfx::Point())); |
997 operations = textfield_view_->GetDragOperationsForView(textfield_view_, | 1008 operations = textfield_view_->GetDragOperationsForView(textfield_view_, |
998 click_a.location()); | 1009 click_a.location()); |
999 EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE | ui::DragDropTypes::DRAG_COPY, | 1010 EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE | ui::DragDropTypes::DRAG_COPY, |
1000 operations); | 1011 operations); |
1001 textfield_view_->WriteDragDataForView(NULL, click_a.location(), &data); | 1012 textfield_view_->WriteDragDataForView(NULL, click_a.location(), &data); |
1002 EXPECT_TRUE(data.GetString(&string)); | 1013 EXPECT_TRUE(data.GetString(&string)); |
1003 EXPECT_EQ(textfield_->GetSelectedText(), string); | 1014 EXPECT_EQ(textfield_->GetSelectedText(), string); |
(...skipping 25 matching lines...) Expand all Loading... |
1029 SendKeyEvent(ui::VKEY_Y, false, true); | 1040 SendKeyEvent(ui::VKEY_Y, false, true); |
1030 EXPECT_STR_EQ("h worlellod", textfield_->text()); | 1041 EXPECT_STR_EQ("h worlellod", textfield_->text()); |
1031 } | 1042 } |
1032 | 1043 |
1033 TEST_F(NativeTextfieldViewsTest, DragAndDrop_Canceled) { | 1044 TEST_F(NativeTextfieldViewsTest, DragAndDrop_Canceled) { |
1034 InitTextfield(Textfield::STYLE_DEFAULT); | 1045 InitTextfield(Textfield::STYLE_DEFAULT); |
1035 textfield_->SetText(ASCIIToUTF16("hello world")); | 1046 textfield_->SetText(ASCIIToUTF16("hello world")); |
1036 | 1047 |
1037 // Start dragging "worl". | 1048 // Start dragging "worl". |
1038 textfield_->SelectRange(ui::Range(6, 10)); | 1049 textfield_->SelectRange(ui::Range(6, 10)); |
1039 MouseEvent click(ui::ET_MOUSE_PRESSED, GetCursorPositionX(8), 0, | 1050 gfx::Point point(GetCursorPositionX(8), 0); |
1040 ui::EF_LEFT_MOUSE_BUTTON); | 1051 ui::MouseEvent click(ui::ET_MOUSE_PRESSED, point, point, |
| 1052 ui::EF_LEFT_MOUSE_BUTTON); |
1041 textfield_view_->OnMousePressed(click); | 1053 textfield_view_->OnMousePressed(click); |
1042 ui::OSExchangeData data; | 1054 ui::OSExchangeData data; |
1043 textfield_view_->WriteDragDataForView(NULL, click.location(), &data); | 1055 textfield_view_->WriteDragDataForView(NULL, click.location(), &data); |
1044 EXPECT_TRUE(textfield_view_->CanDrop(data)); | 1056 EXPECT_TRUE(textfield_view_->CanDrop(data)); |
1045 // Drag the text over somewhere valid, outside the current selection. | 1057 // Drag the text over somewhere valid, outside the current selection. |
1046 DropTargetEvent drop(data, GetCursorPositionX(2), 0, | 1058 DropTargetEvent drop(data, GetCursorPositionX(2), 0, |
1047 ui::DragDropTypes::DRAG_MOVE); | 1059 ui::DragDropTypes::DRAG_MOVE); |
1048 EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, textfield_view_->OnDragUpdated(drop)); | 1060 EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, textfield_view_->OnDragUpdated(drop)); |
1049 // "Cancel" the drag, via move and release over the selection, and OnDragDone. | 1061 // "Cancel" the drag, via move and release over the selection, and OnDragDone. |
1050 MouseEvent drag(ui::ET_MOUSE_DRAGGED, GetCursorPositionX(9), 0, | 1062 gfx::Point drag_point(GetCursorPositionX(9), 0); |
1051 ui::EF_LEFT_MOUSE_BUTTON); | 1063 ui::MouseEvent drag(ui::ET_MOUSE_DRAGGED, drag_point, drag_point, |
1052 MouseEvent release(ui::ET_MOUSE_RELEASED, GetCursorPositionX(9), 0, | 1064 ui::EF_LEFT_MOUSE_BUTTON); |
1053 ui::EF_LEFT_MOUSE_BUTTON); | 1065 ui::MouseEvent release(ui::ET_MOUSE_RELEASED, drag_point, drag_point, |
| 1066 ui::EF_LEFT_MOUSE_BUTTON); |
1054 textfield_view_->OnMouseDragged(drag); | 1067 textfield_view_->OnMouseDragged(drag); |
1055 textfield_view_->OnMouseReleased(release); | 1068 textfield_view_->OnMouseReleased(release); |
1056 textfield_view_->OnDragDone(); | 1069 textfield_view_->OnDragDone(); |
1057 EXPECT_EQ(ASCIIToUTF16("hello world"), textfield_->text()); | 1070 EXPECT_EQ(ASCIIToUTF16("hello world"), textfield_->text()); |
1058 } | 1071 } |
1059 | 1072 |
1060 TEST_F(NativeTextfieldViewsTest, ReadOnlyTest) { | 1073 TEST_F(NativeTextfieldViewsTest, ReadOnlyTest) { |
1061 InitTextfield(Textfield::STYLE_DEFAULT); | 1074 InitTextfield(Textfield::STYLE_DEFAULT); |
1062 textfield_->SetText(ASCIIToUTF16(" one two three ")); | 1075 textfield_->SetText(ASCIIToUTF16(" one two three ")); |
1063 textfield_->SetReadOnly(true); | 1076 textfield_->SetReadOnly(true); |
(...skipping 599 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1663 EXPECT_EQ(char_rect[i], actual_rect) << " i=" << i; | 1676 EXPECT_EQ(char_rect[i], actual_rect) << " i=" << i; |
1664 } | 1677 } |
1665 | 1678 |
1666 // Return false if the index is out of range. | 1679 // Return false if the index is out of range. |
1667 EXPECT_FALSE(client->GetCompositionCharacterBounds(char_count, &rect)); | 1680 EXPECT_FALSE(client->GetCompositionCharacterBounds(char_count, &rect)); |
1668 EXPECT_FALSE(client->GetCompositionCharacterBounds(char_count + 1, &rect)); | 1681 EXPECT_FALSE(client->GetCompositionCharacterBounds(char_count + 1, &rect)); |
1669 EXPECT_FALSE(client->GetCompositionCharacterBounds(char_count + 100, &rect)); | 1682 EXPECT_FALSE(client->GetCompositionCharacterBounds(char_count + 100, &rect)); |
1670 } | 1683 } |
1671 | 1684 |
1672 } // namespace views | 1685 } // namespace views |
OLD | NEW |