Index: ui/views/controls/textfield/textfield_unittest.cc |
diff --git a/ui/views/controls/textfield/native_textfield_views_unittest.cc b/ui/views/controls/textfield/textfield_unittest.cc |
similarity index 83% |
rename from ui/views/controls/textfield/native_textfield_views_unittest.cc |
rename to ui/views/controls/textfield/textfield_unittest.cc |
index 54f7337d327b76db80a4697d8c2776430166a678..4cd36637c4e5709189aadb92b29cb04909919190 100644 |
--- a/ui/views/controls/textfield/native_textfield_views_unittest.cc |
+++ b/ui/views/controls/textfield/textfield_unittest.cc |
@@ -2,7 +2,7 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#include "ui/views/controls/textfield/native_textfield_views.h" |
+#include "ui/views/controls/textfield/textfield.h" |
#include <set> |
#include <string> |
@@ -25,10 +25,10 @@ |
#include "ui/base/ime/text_input_client.h" |
#include "ui/base/l10n/l10n_util.h" |
#include "ui/base/ui_base_switches.h" |
+#include "ui/base/ui_base_switches_util.h" |
#include "ui/events/event.h" |
#include "ui/events/keycodes/keyboard_codes.h" |
#include "ui/gfx/render_text.h" |
-#include "ui/views/controls/textfield/textfield.h" |
#include "ui/views/controls/textfield/textfield_controller.h" |
#include "ui/views/controls/textfield/textfield_views_model.h" |
#include "ui/views/focus/focus_manager.h" |
@@ -119,16 +119,11 @@ class GestureEventForTest : public ui::GestureEvent { |
namespace views { |
-// TODO(oshima): Move tests that are independent of TextfieldViews to |
-// textfield_unittests.cc once we move the test utility functions |
-// from chrome/browser/automation/ to ui/base/test/. |
-class NativeTextfieldViewsTest : public ViewsTestBase, |
- public TextfieldController { |
+class TextfieldTest : public ViewsTestBase, public TextfieldController { |
public: |
- NativeTextfieldViewsTest() |
+ TextfieldTest() |
: widget_(NULL), |
textfield_(NULL), |
- textfield_view_(NULL), |
model_(NULL), |
input_method_(NULL), |
on_before_user_action_(0), |
@@ -184,10 +179,7 @@ class NativeTextfieldViewsTest : public ViewsTestBase, |
View* container = new View(); |
widget_->SetContentsView(container); |
container->AddChildView(textfield_); |
- |
- textfield_view_ = textfield_->GetTextfieldViewForTesting(); |
- DCHECK(textfield_view_); |
- textfield_view_->SetBoundsRect(params.bounds); |
+ textfield_->SetBoundsRect(params.bounds); |
textfield_->set_id(1); |
for (int i = 1; i < count; i++) { |
@@ -196,7 +188,7 @@ class NativeTextfieldViewsTest : public ViewsTestBase, |
textfield->set_id(i + 1); |
} |
- model_ = textfield_view_->model_.get(); |
+ model_ = textfield_->model_.get(); |
model_->ClearEditHistory(); |
input_method_ = new MockInputMethod(); |
@@ -208,12 +200,12 @@ class NativeTextfieldViewsTest : public ViewsTestBase, |
} |
ui::MenuModel* GetContextMenuModel() { |
- textfield_view_->UpdateContextMenu(); |
- return textfield_view_->context_menu_contents_.get(); |
+ textfield_->UpdateContextMenu(); |
+ return textfield_->context_menu_contents_.get(); |
} |
ui::TouchSelectionController* GetTouchSelectionController() { |
- return textfield_view_->touch_selection_controller_.get(); |
+ return textfield_->touch_selection_controller_.get(); |
} |
protected: |
@@ -270,27 +262,22 @@ class NativeTextfieldViewsTest : public ViewsTestBase, |
} |
int GetCursorPositionX(int cursor_pos) { |
- gfx::RenderText* render_text = textfield_view_->GetRenderText(); |
- return render_text->GetCursorBounds( |
+ return textfield_->GetRenderText()->GetCursorBounds( |
gfx::SelectionModel(cursor_pos, gfx::CURSOR_FORWARD), false).x(); |
} |
// Get the current cursor bounds. |
gfx::Rect GetCursorBounds() { |
- gfx::RenderText* render_text = textfield_view_->GetRenderText(); |
- gfx::Rect bounds = render_text->GetUpdatedCursorBounds(); |
- return bounds; |
+ return textfield_->GetRenderText()->GetUpdatedCursorBounds(); |
} |
// Get the cursor bounds of |sel|. |
gfx::Rect GetCursorBounds(const gfx::SelectionModel& sel) { |
- gfx::RenderText* render_text = textfield_view_->GetRenderText(); |
- gfx::Rect bounds = render_text->GetCursorBounds(sel, true); |
- return bounds; |
+ return textfield_->GetRenderText()->GetCursorBounds(sel, true); |
} |
gfx::Rect GetDisplayRect() { |
- return textfield_view_->GetRenderText()->display_rect(); |
+ return textfield_->GetRenderText()->display_rect(); |
} |
// Mouse click on the point whose x-axis is |bound|'s x plus |x_offset| and |
@@ -299,10 +286,10 @@ class NativeTextfieldViewsTest : public ViewsTestBase, |
gfx::Point point(bound.x() + x_offset, bound.y() + bound.height() / 2); |
ui::MouseEvent click(ui::ET_MOUSE_PRESSED, point, point, |
ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMousePressed(click); |
+ textfield_->OnMousePressed(click); |
ui::MouseEvent release(ui::ET_MOUSE_RELEASED, point, point, |
ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMouseReleased(release); |
+ textfield_->OnMouseReleased(release); |
} |
// This is to avoid double/triple click. |
@@ -310,16 +297,16 @@ class NativeTextfieldViewsTest : public ViewsTestBase, |
ui::MouseEvent click(ui::ET_MOUSE_PRESSED, gfx::Point(), gfx::Point(), |
ui::EF_LEFT_MOUSE_BUTTON | ui::EF_IS_NON_CLIENT, |
ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMousePressed(click); |
+ textfield_->OnMousePressed(click); |
ui::MouseEvent release(ui::ET_MOUSE_RELEASED, gfx::Point(), gfx::Point(), |
ui::EF_LEFT_MOUSE_BUTTON | ui::EF_IS_NON_CLIENT, |
ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMouseReleased(release); |
+ textfield_->OnMouseReleased(release); |
} |
// Wrap for visibility in test classes. |
ui::TextInputType GetTextInputType() { |
- return textfield_view_->GetTextInputType(); |
+ return textfield_->GetTextInputType(); |
} |
void VerifyTextfieldContextMenuContents(bool textfield_has_selection, |
@@ -339,7 +326,6 @@ class NativeTextfieldViewsTest : public ViewsTestBase, |
Widget* widget_; |
TestTextfield* textfield_; |
- NativeTextfieldViews* textfield_view_; |
TextfieldViewsModel* model_; |
// The string from Controller::ContentsChanged callback. |
@@ -355,10 +341,10 @@ class NativeTextfieldViewsTest : public ViewsTestBase, |
int on_after_user_action_; |
private: |
- DISALLOW_COPY_AND_ASSIGN(NativeTextfieldViewsTest); |
+ DISALLOW_COPY_AND_ASSIGN(TextfieldTest); |
}; |
-TEST_F(NativeTextfieldViewsTest, ModelChangesTest) { |
+TEST_F(TextfieldTest, ModelChangesTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// TextfieldController::ContentsChanged() shouldn't be called when changing |
@@ -366,12 +352,12 @@ TEST_F(NativeTextfieldViewsTest, ModelChangesTest) { |
last_contents_.clear(); |
textfield_->SetText(ASCIIToUTF16("this is")); |
- EXPECT_STR_EQ("this is", model_->GetText()); |
+ EXPECT_STR_EQ("this is", model_->text()); |
EXPECT_STR_EQ("this is", textfield_->text()); |
EXPECT_TRUE(last_contents_.empty()); |
textfield_->AppendText(ASCIIToUTF16(" a test")); |
- EXPECT_STR_EQ("this is a test", model_->GetText()); |
+ EXPECT_STR_EQ("this is a test", model_->text()); |
EXPECT_STR_EQ("this is a test", textfield_->text()); |
EXPECT_TRUE(last_contents_.empty()); |
@@ -381,7 +367,7 @@ TEST_F(NativeTextfieldViewsTest, ModelChangesTest) { |
EXPECT_TRUE(last_contents_.empty()); |
} |
-TEST_F(NativeTextfieldViewsTest, ModelChangesTestLowerCase) { |
+TEST_F(TextfieldTest, ModelChangesTestLowerCase) { |
// Check if |model_|'s text is properly lowercased for STYLE_LOWERCASE. |
InitTextfield(Textfield::STYLE_LOWERCASE); |
EXPECT_EQ(0U, textfield_->GetCursorPosition()); |
@@ -390,19 +376,17 @@ TEST_F(NativeTextfieldViewsTest, ModelChangesTestLowerCase) { |
textfield_->SetText(ASCIIToUTF16("THIS IS")); |
EXPECT_EQ(7U, textfield_->GetCursorPosition()); |
- EXPECT_STR_EQ("this is", model_->GetText()); |
- EXPECT_STR_EQ("THIS IS", textfield_->text()); |
+ EXPECT_STR_EQ("this is", textfield_->text()); |
EXPECT_TRUE(last_contents_.empty()); |
textfield_->AppendText(ASCIIToUTF16(" A TEST")); |
EXPECT_EQ(7U, textfield_->GetCursorPosition()); |
- EXPECT_STR_EQ("this is a test", model_->GetText()); |
- EXPECT_STR_EQ("THIS IS A TEST", textfield_->text()); |
+ EXPECT_STR_EQ("this is a test", textfield_->text()); |
EXPECT_TRUE(last_contents_.empty()); |
} |
-TEST_F(NativeTextfieldViewsTest, ModelChangesTestLowerCaseI18n) { |
+TEST_F(TextfieldTest, ModelChangesTestLowerCaseI18n) { |
// Check if lower case conversion works for non-ASCII characters. |
InitTextfield(Textfield::STYLE_LOWERCASE); |
EXPECT_EQ(0U, textfield_->GetCursorPosition()); |
@@ -413,9 +397,6 @@ TEST_F(NativeTextfieldViewsTest, ModelChangesTestLowerCaseI18n) { |
EXPECT_EQ(6U, textfield_->GetCursorPosition()); |
// Zenkaku Japanese "abcabc" |
EXPECT_EQ(WideToUTF16(L"\xFF41\xFF42\xFF43\xFF41\xFF42\xFF43"), |
- model_->GetText()); |
- // Zenkaku Japanese "ABCabc" |
- EXPECT_EQ(WideToUTF16(L"\xFF21\xFF22\xFF23\xFF41\xFF42\xFF43"), |
textfield_->text()); |
EXPECT_TRUE(last_contents_.empty()); |
@@ -425,15 +406,11 @@ TEST_F(NativeTextfieldViewsTest, ModelChangesTestLowerCaseI18n) { |
// Zenkaku Japanese "abcabcxyzxyz" |
EXPECT_EQ(WideToUTF16(L"\xFF41\xFF42\xFF43\xFF41\xFF42\xFF43" |
L"\xFF58\xFF59\xFF5A\xFF58\xFF59\xFF5A"), |
- model_->GetText()); |
- // Zenkaku Japanese "ABCabcXYZxyz" |
- EXPECT_EQ(WideToUTF16(L"\xFF21\xFF22\xFF23\xFF41\xFF42\xFF43" |
- L"\xFF38\xFF39\xFF3A\xFF58\xFF59\xFF5A"), |
textfield_->text()); |
EXPECT_TRUE(last_contents_.empty()); |
} |
-TEST_F(NativeTextfieldViewsTest, ModelChangesTestLowerCaseWithLocale) { |
+TEST_F(TextfieldTest, ModelChangesTestLowerCaseWithLocale) { |
// Check if lower case conversion honors locale properly. |
std::string locale = l10n_util::GetApplicationLocale(""); |
base::i18n::SetICUDefaultLocale("tr"); |
@@ -445,8 +422,7 @@ TEST_F(NativeTextfieldViewsTest, ModelChangesTestLowerCaseWithLocale) { |
// Turkish 'I' should be converted to dotless 'i' (U+0131). |
textfield_->SetText(WideToUTF16(L"I")); |
EXPECT_EQ(1U, textfield_->GetCursorPosition()); |
- EXPECT_EQ(WideToUTF16(L"\x0131"), model_->GetText()); |
- EXPECT_EQ(WideToUTF16(L"I"), textfield_->text()); |
+ EXPECT_EQ(WideToUTF16(L"\x0131"), textfield_->text()); |
EXPECT_TRUE(last_contents_.empty()); |
base::i18n::SetICUDefaultLocale(locale); |
@@ -454,12 +430,11 @@ TEST_F(NativeTextfieldViewsTest, ModelChangesTestLowerCaseWithLocale) { |
// On default (en) locale, 'I' should be converted to 'i'. |
textfield_->SetText(WideToUTF16(L"I")); |
EXPECT_EQ(1U, textfield_->GetCursorPosition()); |
- EXPECT_EQ(WideToUTF16(L"i"), model_->GetText()); |
- EXPECT_EQ(WideToUTF16(L"I"), textfield_->text()); |
+ EXPECT_EQ(WideToUTF16(L"i"), textfield_->text()); |
EXPECT_TRUE(last_contents_.empty()); |
} |
-TEST_F(NativeTextfieldViewsTest, KeyTest) { |
+TEST_F(TextfieldTest, KeyTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// Event flags: key, alt, shift, ctrl, caps-lock. |
SendKeyEvent(ui::VKEY_T, false, true, false, false); |
@@ -473,7 +448,7 @@ TEST_F(NativeTextfieldViewsTest, KeyTest) { |
EXPECT_STR_EQ("TexT!1!1", textfield_->text()); |
} |
-TEST_F(NativeTextfieldViewsTest, ControlAndSelectTest) { |
+TEST_F(TextfieldTest, ControlAndSelectTest) { |
// Insert a test string in a textfield. |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("one two three")); |
@@ -508,7 +483,7 @@ TEST_F(NativeTextfieldViewsTest, ControlAndSelectTest) { |
EXPECT_STR_EQ("ZERO ", textfield_->GetSelectedText()); |
} |
-TEST_F(NativeTextfieldViewsTest, InsertionDeletionTest) { |
+TEST_F(TextfieldTest, InsertionDeletionTest) { |
// Insert a test string in a textfield. |
InitTextfield(Textfield::STYLE_DEFAULT); |
for (size_t i = 0; i < 10; i++) |
@@ -535,13 +510,13 @@ TEST_F(NativeTextfieldViewsTest, InsertionDeletionTest) { |
SendKeyEvent(ui::VKEY_BACK, false, false, true, false); |
EXPECT_STR_EQ("one two three ", textfield_->text()); |
- // Delete text preceeding the cursor in chromeos, do nothing in windows. |
+ // Delete to a line break on Linux and ChromeOS, no-op on Windows. |
SendKeyEvent(ui::VKEY_LEFT, false, false, true, false); |
SendKeyEvent(ui::VKEY_BACK, false, true, true, false); |
-#if defined(OS_WIN) |
- EXPECT_STR_EQ("one two three ", textfield_->text()); |
-#else |
+#if defined(OS_LINUX) |
EXPECT_STR_EQ("three ", textfield_->text()); |
+#else |
+ EXPECT_STR_EQ("one two three ", textfield_->text()); |
#endif |
// Delete the next word from cursor. |
@@ -550,17 +525,17 @@ TEST_F(NativeTextfieldViewsTest, InsertionDeletionTest) { |
SendKeyEvent(ui::VKEY_DELETE, false, false, true, false); |
EXPECT_STR_EQ(" two three four", textfield_->text()); |
- // Delete text following the cursor in chromeos, do nothing in windows. |
+ // Delete to a line break on Linux and ChromeOS, no-op on Windows. |
SendKeyEvent(ui::VKEY_RIGHT, false, false, true, false); |
SendKeyEvent(ui::VKEY_DELETE, false, true, true, false); |
-#if defined(OS_WIN) |
- EXPECT_STR_EQ(" two three four", textfield_->text()); |
-#else |
+#if defined(OS_LINUX) |
EXPECT_STR_EQ(" two", textfield_->text()); |
+#else |
+ EXPECT_STR_EQ(" two three four", textfield_->text()); |
#endif |
} |
-TEST_F(NativeTextfieldViewsTest, PasswordTest) { |
+TEST_F(TextfieldTest, PasswordTest) { |
InitTextfield(Textfield::STYLE_OBSCURED); |
EXPECT_EQ(ui::TEXT_INPUT_TYPE_PASSWORD, GetTextInputType()); |
EXPECT_TRUE(textfield_->enabled()); |
@@ -575,11 +550,11 @@ TEST_F(NativeTextfieldViewsTest, PasswordTest) { |
SetClipboardText("foo"); |
// Cut and copy should be disabled. |
- EXPECT_FALSE(textfield_view_->IsCommandIdEnabled(IDS_APP_CUT)); |
- textfield_view_->ExecuteCommand(IDS_APP_CUT, 0); |
+ EXPECT_FALSE(textfield_->IsCommandIdEnabled(IDS_APP_CUT)); |
+ textfield_->ExecuteCommand(IDS_APP_CUT, 0); |
SendKeyEvent(ui::VKEY_X, false, true); |
- EXPECT_FALSE(textfield_view_->IsCommandIdEnabled(IDS_APP_COPY)); |
- textfield_view_->ExecuteCommand(IDS_APP_COPY, 0); |
+ EXPECT_FALSE(textfield_->IsCommandIdEnabled(IDS_APP_COPY)); |
+ textfield_->ExecuteCommand(IDS_APP_COPY, 0); |
SendKeyEvent(ui::VKEY_C, false, true); |
SendKeyEvent(ui::VKEY_INSERT, false, true); |
EXPECT_STR_EQ("foo", base::string16(GetClipboardText())); |
@@ -589,15 +564,15 @@ TEST_F(NativeTextfieldViewsTest, PasswordTest) { |
SendKeyEvent(ui::VKEY_DELETE, true, false); |
// Paste should work normally. |
- EXPECT_TRUE(textfield_view_->IsCommandIdEnabled(IDS_APP_PASTE)); |
- textfield_view_->ExecuteCommand(IDS_APP_PASTE, 0); |
+ EXPECT_TRUE(textfield_->IsCommandIdEnabled(IDS_APP_PASTE)); |
+ textfield_->ExecuteCommand(IDS_APP_PASTE, 0); |
SendKeyEvent(ui::VKEY_V, false, true); |
SendKeyEvent(ui::VKEY_INSERT, true, false); |
EXPECT_STR_EQ("foo", base::string16(GetClipboardText())); |
EXPECT_STR_EQ("foofoofoo", textfield_->text()); |
} |
-TEST_F(NativeTextfieldViewsTest, InputTypeSetsObscured) { |
+TEST_F(TextfieldTest, InputTypeSetsObscured) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// Defaults to TEXT |
@@ -609,7 +584,7 @@ TEST_F(NativeTextfieldViewsTest, InputTypeSetsObscured) { |
EXPECT_TRUE(textfield_->IsObscured()); |
} |
-TEST_F(NativeTextfieldViewsTest, ObscuredSetsInputType) { |
+TEST_F(TextfieldTest, ObscuredSetsInputType) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// Defaults to TEXT |
@@ -622,7 +597,7 @@ TEST_F(NativeTextfieldViewsTest, ObscuredSetsInputType) { |
EXPECT_EQ(ui::TEXT_INPUT_TYPE_TEXT, GetTextInputType()); |
} |
-TEST_F(NativeTextfieldViewsTest, TextInputType) { |
+TEST_F(TextfieldTest, TextInputType) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// Defaults to TEXT |
@@ -644,7 +619,7 @@ TEST_F(NativeTextfieldViewsTest, TextInputType) { |
EXPECT_EQ(ui::TEXT_INPUT_TYPE_NONE, GetTextInputType()); |
} |
-TEST_F(NativeTextfieldViewsTest, OnKeyPressReturnValueTest) { |
+TEST_F(TextfieldTest, OnKeyPressReturnValueTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// Character keys will be handled by input method. |
@@ -707,7 +682,7 @@ TEST_F(NativeTextfieldViewsTest, OnKeyPressReturnValueTest) { |
textfield_->clear(); |
} |
-TEST_F(NativeTextfieldViewsTest, CursorMovement) { |
+TEST_F(TextfieldTest, CursorMovement) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// Test with trailing whitespace. |
@@ -757,7 +732,7 @@ TEST_F(NativeTextfieldViewsTest, CursorMovement) { |
EXPECT_STR_EQ("one two", last_contents_); |
} |
-TEST_F(NativeTextfieldViewsTest, FocusTraversalTest) { |
+TEST_F(TextfieldTest, FocusTraversalTest) { |
InitTextfields(Textfield::STYLE_DEFAULT, 3); |
textfield_->RequestFocus(); |
@@ -789,16 +764,16 @@ TEST_F(NativeTextfieldViewsTest, FocusTraversalTest) { |
EXPECT_EQ(3, GetFocusedView()->id()); |
ui::MouseEvent click(ui::ET_MOUSE_PRESSED, gfx::Point(), gfx::Point(), |
ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMousePressed(click); |
+ textfield_->OnMousePressed(click); |
EXPECT_EQ(1, GetFocusedView()->id()); |
} |
-TEST_F(NativeTextfieldViewsTest, ContextMenuDisplayTest) { |
+TEST_F(TextfieldTest, ContextMenuDisplayTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
EXPECT_TRUE(textfield_->context_menu_controller()); |
textfield_->SetText(ASCIIToUTF16("hello world")); |
ui::Clipboard::GetForCurrentThread()->Clear(ui::CLIPBOARD_TYPE_COPY_PASTE); |
- textfield_view_->ClearEditHistory(); |
+ textfield_->ClearEditHistory(); |
EXPECT_TRUE(GetContextMenuModel()); |
VerifyTextfieldContextMenuContents(false, false, GetContextMenuModel()); |
@@ -816,7 +791,7 @@ TEST_F(NativeTextfieldViewsTest, ContextMenuDisplayTest) { |
VerifyTextfieldContextMenuContents(true, true, GetContextMenuModel()); |
} |
-TEST_F(NativeTextfieldViewsTest, DoubleAndTripleClickTest) { |
+TEST_F(TextfieldTest, DoubleAndTripleClickTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("hello world")); |
ui::MouseEvent click(ui::ET_MOUSE_PRESSED, gfx::Point(), gfx::Point(), |
@@ -829,25 +804,25 @@ TEST_F(NativeTextfieldViewsTest, DoubleAndTripleClickTest) { |
ui::EF_LEFT_MOUSE_BUTTON); |
// Test for double click. |
- textfield_view_->OnMousePressed(click); |
- textfield_view_->OnMouseReleased(release); |
+ textfield_->OnMousePressed(click); |
+ textfield_->OnMouseReleased(release); |
EXPECT_TRUE(textfield_->GetSelectedText().empty()); |
- textfield_view_->OnMousePressed(double_click); |
- textfield_view_->OnMouseReleased(release); |
+ textfield_->OnMousePressed(double_click); |
+ textfield_->OnMouseReleased(release); |
EXPECT_STR_EQ("hello", textfield_->GetSelectedText()); |
// Test for triple click. |
- textfield_view_->OnMousePressed(click); |
- textfield_view_->OnMouseReleased(release); |
+ textfield_->OnMousePressed(click); |
+ textfield_->OnMouseReleased(release); |
EXPECT_STR_EQ("hello world", textfield_->GetSelectedText()); |
// Another click should reset back to double click. |
- textfield_view_->OnMousePressed(click); |
- textfield_view_->OnMouseReleased(release); |
+ textfield_->OnMousePressed(click); |
+ textfield_->OnMouseReleased(release); |
EXPECT_STR_EQ("hello", textfield_->GetSelectedText()); |
} |
-TEST_F(NativeTextfieldViewsTest, DragToSelect) { |
+TEST_F(TextfieldTest, DragToSelect) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("hello world")); |
const int kStart = GetCursorPositionX(5); |
@@ -864,28 +839,28 @@ TEST_F(NativeTextfieldViewsTest, DragToSelect) { |
ui::EF_LEFT_MOUSE_BUTTON, 0); |
ui::MouseEvent release(ui::ET_MOUSE_RELEASED, end_point, end_point, |
ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMousePressed(click_a); |
+ textfield_->OnMousePressed(click_a); |
EXPECT_TRUE(textfield_->GetSelectedText().empty()); |
// Check that dragging left selects the beginning of the string. |
- textfield_view_->OnMouseDragged(drag_left); |
+ textfield_->OnMouseDragged(drag_left); |
base::string16 text_left = textfield_->GetSelectedText(); |
EXPECT_STR_EQ("hello", text_left); |
// Check that dragging right selects the rest of the string. |
- textfield_view_->OnMouseDragged(drag_right); |
+ textfield_->OnMouseDragged(drag_right); |
base::string16 text_right = textfield_->GetSelectedText(); |
EXPECT_STR_EQ(" world", text_right); |
// Check that releasing in the same location does not alter the selection. |
- textfield_view_->OnMouseReleased(release); |
+ textfield_->OnMouseReleased(release); |
EXPECT_EQ(text_right, textfield_->GetSelectedText()); |
// Check that dragging from beyond the text length works too. |
- textfield_view_->OnMousePressed(click_b); |
- textfield_view_->OnMouseDragged(drag_left); |
- textfield_view_->OnMouseReleased(release); |
+ textfield_->OnMousePressed(click_b); |
+ textfield_->OnMouseDragged(drag_left); |
+ textfield_->OnMouseReleased(release); |
EXPECT_EQ(textfield_->text(), textfield_->GetSelectedText()); |
} |
#if defined(OS_WIN) |
-TEST_F(NativeTextfieldViewsTest, DragAndDrop_AcceptDrop) { |
+TEST_F(TextfieldTest, DragAndDrop_AcceptDrop) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("hello world")); |
@@ -897,31 +872,31 @@ TEST_F(NativeTextfieldViewsTest, DragAndDrop_AcceptDrop) { |
// Ensure that disabled textfields do not accept drops. |
textfield_->SetEnabled(false); |
- EXPECT_FALSE(textfield_view_->GetDropFormats(&formats, &custom_formats)); |
+ EXPECT_FALSE(textfield_->GetDropFormats(&formats, &custom_formats)); |
EXPECT_EQ(0, formats); |
EXPECT_TRUE(custom_formats.empty()); |
- EXPECT_FALSE(textfield_view_->CanDrop(data)); |
+ EXPECT_FALSE(textfield_->CanDrop(data)); |
textfield_->SetEnabled(true); |
// Ensure that read-only textfields do not accept drops. |
textfield_->SetReadOnly(true); |
- EXPECT_FALSE(textfield_view_->GetDropFormats(&formats, &custom_formats)); |
+ EXPECT_FALSE(textfield_->GetDropFormats(&formats, &custom_formats)); |
EXPECT_EQ(0, formats); |
EXPECT_TRUE(custom_formats.empty()); |
- EXPECT_FALSE(textfield_view_->CanDrop(data)); |
+ EXPECT_FALSE(textfield_->CanDrop(data)); |
textfield_->SetReadOnly(false); |
// Ensure that enabled and editable textfields do accept drops. |
- EXPECT_TRUE(textfield_view_->GetDropFormats(&formats, &custom_formats)); |
+ EXPECT_TRUE(textfield_->GetDropFormats(&formats, &custom_formats)); |
EXPECT_EQ(ui::OSExchangeData::STRING, formats); |
EXPECT_TRUE(custom_formats.empty()); |
- EXPECT_TRUE(textfield_view_->CanDrop(data)); |
+ EXPECT_TRUE(textfield_->CanDrop(data)); |
gfx::Point drop_point(GetCursorPositionX(6), 0); |
ui::DropTargetEvent drop(data, drop_point, drop_point, |
ui::DragDropTypes::DRAG_COPY | ui::DragDropTypes::DRAG_MOVE); |
EXPECT_EQ(ui::DragDropTypes::DRAG_COPY | ui::DragDropTypes::DRAG_MOVE, |
- textfield_view_->OnDragUpdated(drop)); |
- EXPECT_EQ(ui::DragDropTypes::DRAG_COPY, textfield_view_->OnPerformDrop(drop)); |
+ textfield_->OnDragUpdated(drop)); |
+ EXPECT_EQ(ui::DragDropTypes::DRAG_COPY, textfield_->OnPerformDrop(drop)); |
EXPECT_STR_EQ("hello string world", textfield_->text()); |
// Ensure that textfields do not accept non-OSExchangeData::STRING types. |
@@ -935,11 +910,11 @@ TEST_F(NativeTextfieldViewsTest, DragAndDrop_AcceptDrop) { |
ui::OSExchangeData::DownloadFileInfo download(base::FilePath(), NULL); |
bad_data.SetDownloadFileInfo(download); |
#endif |
- EXPECT_FALSE(textfield_view_->CanDrop(bad_data)); |
+ EXPECT_FALSE(textfield_->CanDrop(bad_data)); |
} |
#endif |
-TEST_F(NativeTextfieldViewsTest, DragAndDrop_InitiateDrag) { |
+TEST_F(TextfieldTest, DragAndDrop_InitiateDrag) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("hello string world")); |
@@ -949,44 +924,44 @@ TEST_F(NativeTextfieldViewsTest, DragAndDrop_InitiateDrag) { |
const gfx::Range kStringRange(6, 12); |
textfield_->SelectRange(kStringRange); |
const gfx::Point kStringPoint(GetCursorPositionX(9), 0); |
- textfield_view_->WriteDragDataForView(NULL, kStringPoint, &data); |
+ textfield_->WriteDragDataForView(NULL, kStringPoint, &data); |
EXPECT_TRUE(data.GetString(&string)); |
EXPECT_EQ(textfield_->GetSelectedText(), string); |
// Ensure that disabled textfields do not support drag operations. |
textfield_->SetEnabled(false); |
EXPECT_EQ(ui::DragDropTypes::DRAG_NONE, |
- textfield_view_->GetDragOperationsForView(NULL, kStringPoint)); |
+ textfield_->GetDragOperationsForView(NULL, kStringPoint)); |
textfield_->SetEnabled(true); |
// Ensure that textfields without selections do not support drag operations. |
textfield_->ClearSelection(); |
EXPECT_EQ(ui::DragDropTypes::DRAG_NONE, |
- textfield_view_->GetDragOperationsForView(NULL, kStringPoint)); |
+ textfield_->GetDragOperationsForView(NULL, kStringPoint)); |
textfield_->SelectRange(kStringRange); |
// Ensure that password textfields do not support drag operations. |
textfield_->SetObscured(true); |
EXPECT_EQ(ui::DragDropTypes::DRAG_NONE, |
- textfield_view_->GetDragOperationsForView(NULL, kStringPoint)); |
+ textfield_->GetDragOperationsForView(NULL, kStringPoint)); |
textfield_->SetObscured(false); |
// Ensure that textfields only initiate drag operations inside the selection. |
ui::MouseEvent press_event(ui::ET_MOUSE_PRESSED, kStringPoint, kStringPoint, |
ui::EF_LEFT_MOUSE_BUTTON, |
ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMousePressed(press_event); |
+ textfield_->OnMousePressed(press_event); |
EXPECT_EQ(ui::DragDropTypes::DRAG_NONE, |
- textfield_view_->GetDragOperationsForView(NULL, gfx::Point())); |
- EXPECT_FALSE(textfield_view_->CanStartDragForView(NULL, gfx::Point(), |
- gfx::Point())); |
+ textfield_->GetDragOperationsForView(NULL, gfx::Point())); |
+ EXPECT_FALSE(textfield_->CanStartDragForView(NULL, gfx::Point(), |
+ gfx::Point())); |
EXPECT_EQ(ui::DragDropTypes::DRAG_COPY, |
- textfield_view_->GetDragOperationsForView(NULL, kStringPoint)); |
- EXPECT_TRUE(textfield_view_->CanStartDragForView(NULL, kStringPoint, |
- gfx::Point())); |
+ textfield_->GetDragOperationsForView(NULL, kStringPoint)); |
+ EXPECT_TRUE(textfield_->CanStartDragForView(NULL, kStringPoint, |
+ gfx::Point())); |
// Ensure that textfields support local moves. |
EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE | ui::DragDropTypes::DRAG_COPY, |
- textfield_view_->GetDragOperationsForView(textfield_view_, kStringPoint)); |
+ textfield_->GetDragOperationsForView(textfield_, kStringPoint)); |
} |
-TEST_F(NativeTextfieldViewsTest, DragAndDrop_ToTheRight) { |
+TEST_F(TextfieldTest, DragAndDrop_ToTheRight) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("hello world")); |
@@ -1001,30 +976,28 @@ TEST_F(NativeTextfieldViewsTest, DragAndDrop_ToTheRight) { |
gfx::Point point(GetCursorPositionX(3), 0); |
ui::MouseEvent click_a(ui::ET_MOUSE_PRESSED, point, point, |
ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMousePressed(click_a); |
- EXPECT_TRUE(textfield_view_->CanStartDragForView(textfield_view_, |
- click_a.location(), gfx::Point())); |
- operations = textfield_view_->GetDragOperationsForView(textfield_view_, |
- click_a.location()); |
+ textfield_->OnMousePressed(click_a); |
+ EXPECT_TRUE(textfield_->CanStartDragForView(textfield_, click_a.location(), |
+ gfx::Point())); |
+ operations = textfield_->GetDragOperationsForView(textfield_, |
+ click_a.location()); |
EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE | ui::DragDropTypes::DRAG_COPY, |
operations); |
- textfield_view_->WriteDragDataForView(NULL, click_a.location(), &data); |
+ textfield_->WriteDragDataForView(NULL, click_a.location(), &data); |
EXPECT_TRUE(data.GetString(&string)); |
EXPECT_EQ(textfield_->GetSelectedText(), string); |
- EXPECT_TRUE(textfield_view_->GetDropFormats(&formats, &custom_formats)); |
+ EXPECT_TRUE(textfield_->GetDropFormats(&formats, &custom_formats)); |
EXPECT_EQ(ui::OSExchangeData::STRING, formats); |
EXPECT_TRUE(custom_formats.empty()); |
// Drop "ello" after "w". |
const gfx::Point kDropPoint(GetCursorPositionX(7), 0); |
- EXPECT_TRUE(textfield_view_->CanDrop(data)); |
+ EXPECT_TRUE(textfield_->CanDrop(data)); |
ui::DropTargetEvent drop_a(data, kDropPoint, kDropPoint, operations); |
- EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, |
- textfield_view_->OnDragUpdated(drop_a)); |
- EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, |
- textfield_view_->OnPerformDrop(drop_a)); |
+ EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, textfield_->OnDragUpdated(drop_a)); |
+ EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, textfield_->OnPerformDrop(drop_a)); |
EXPECT_STR_EQ("h welloorld", textfield_->text()); |
- textfield_view_->OnDragDone(); |
+ textfield_->OnDragDone(); |
// Undo/Redo the drag&drop change. |
SendKeyEvent(ui::VKEY_Z, false, true); |
@@ -1041,7 +1014,7 @@ TEST_F(NativeTextfieldViewsTest, DragAndDrop_ToTheRight) { |
EXPECT_STR_EQ("h welloorld", textfield_->text()); |
} |
-TEST_F(NativeTextfieldViewsTest, DragAndDrop_ToTheLeft) { |
+TEST_F(TextfieldTest, DragAndDrop_ToTheLeft) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("hello world")); |
@@ -1056,30 +1029,28 @@ TEST_F(NativeTextfieldViewsTest, DragAndDrop_ToTheLeft) { |
gfx::Point point(GetCursorPositionX(7), 0); |
ui::MouseEvent click_a(ui::ET_MOUSE_PRESSED, point, point, |
ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMousePressed(click_a); |
- EXPECT_TRUE(textfield_view_->CanStartDragForView(textfield_view_, |
- click_a.location(), gfx::Point())); |
- operations = textfield_view_->GetDragOperationsForView(textfield_view_, |
- click_a.location()); |
+ textfield_->OnMousePressed(click_a); |
+ EXPECT_TRUE(textfield_->CanStartDragForView(textfield_, click_a.location(), |
+ gfx::Point())); |
+ operations = textfield_->GetDragOperationsForView(textfield_, |
+ click_a.location()); |
EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE | ui::DragDropTypes::DRAG_COPY, |
operations); |
- textfield_view_->WriteDragDataForView(NULL, click_a.location(), &data); |
+ textfield_->WriteDragDataForView(NULL, click_a.location(), &data); |
EXPECT_TRUE(data.GetString(&string)); |
EXPECT_EQ(textfield_->GetSelectedText(), string); |
- EXPECT_TRUE(textfield_view_->GetDropFormats(&formats, &custom_formats)); |
+ EXPECT_TRUE(textfield_->GetDropFormats(&formats, &custom_formats)); |
EXPECT_EQ(ui::OSExchangeData::STRING, formats); |
EXPECT_TRUE(custom_formats.empty()); |
// Drop " worl" after "h". |
- EXPECT_TRUE(textfield_view_->CanDrop(data)); |
+ EXPECT_TRUE(textfield_->CanDrop(data)); |
gfx::Point drop_point(GetCursorPositionX(1), 0); |
ui::DropTargetEvent drop_a(data, drop_point, drop_point, operations); |
- EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, |
- textfield_view_->OnDragUpdated(drop_a)); |
- EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, |
- textfield_view_->OnPerformDrop(drop_a)); |
+ EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, textfield_->OnDragUpdated(drop_a)); |
+ EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, textfield_->OnPerformDrop(drop_a)); |
EXPECT_STR_EQ("h worlellod", textfield_->text()); |
- textfield_view_->OnDragDone(); |
+ textfield_->OnDragDone(); |
// Undo/Redo the drag&drop change. |
SendKeyEvent(ui::VKEY_Z, false, true); |
@@ -1096,7 +1067,7 @@ TEST_F(NativeTextfieldViewsTest, DragAndDrop_ToTheLeft) { |
EXPECT_STR_EQ("h worlellod", textfield_->text()); |
} |
-TEST_F(NativeTextfieldViewsTest, DragAndDrop_Canceled) { |
+TEST_F(TextfieldTest, DragAndDrop_Canceled) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("hello world")); |
@@ -1105,28 +1076,28 @@ TEST_F(NativeTextfieldViewsTest, DragAndDrop_Canceled) { |
gfx::Point point(GetCursorPositionX(8), 0); |
ui::MouseEvent click(ui::ET_MOUSE_PRESSED, point, point, |
ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMousePressed(click); |
+ textfield_->OnMousePressed(click); |
ui::OSExchangeData data; |
- textfield_view_->WriteDragDataForView(NULL, click.location(), &data); |
- EXPECT_TRUE(textfield_view_->CanDrop(data)); |
+ textfield_->WriteDragDataForView(NULL, click.location(), &data); |
+ EXPECT_TRUE(textfield_->CanDrop(data)); |
// Drag the text over somewhere valid, outside the current selection. |
gfx::Point drop_point(GetCursorPositionX(2), 0); |
ui::DropTargetEvent drop(data, drop_point, drop_point, |
ui::DragDropTypes::DRAG_MOVE); |
- EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, textfield_view_->OnDragUpdated(drop)); |
+ EXPECT_EQ(ui::DragDropTypes::DRAG_MOVE, textfield_->OnDragUpdated(drop)); |
// "Cancel" the drag, via move and release over the selection, and OnDragDone. |
gfx::Point drag_point(GetCursorPositionX(9), 0); |
ui::MouseEvent drag(ui::ET_MOUSE_DRAGGED, drag_point, drag_point, |
ui::EF_LEFT_MOUSE_BUTTON, 0); |
ui::MouseEvent release(ui::ET_MOUSE_RELEASED, drag_point, drag_point, |
ui::EF_LEFT_MOUSE_BUTTON, ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMouseDragged(drag); |
- textfield_view_->OnMouseReleased(release); |
- textfield_view_->OnDragDone(); |
+ textfield_->OnMouseDragged(drag); |
+ textfield_->OnMouseReleased(release); |
+ textfield_->OnDragDone(); |
EXPECT_EQ(ASCIIToUTF16("hello world"), textfield_->text()); |
} |
-TEST_F(NativeTextfieldViewsTest, ReadOnlyTest) { |
+TEST_F(TextfieldTest, ReadOnlyTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("read only")); |
textfield_->SetReadOnly(true); |
@@ -1150,24 +1121,24 @@ TEST_F(NativeTextfieldViewsTest, ReadOnlyTest) { |
// Cut should be disabled. |
SetClipboardText("Test"); |
- EXPECT_FALSE(textfield_view_->IsCommandIdEnabled(IDS_APP_CUT)); |
- textfield_view_->ExecuteCommand(IDS_APP_CUT, 0); |
+ EXPECT_FALSE(textfield_->IsCommandIdEnabled(IDS_APP_CUT)); |
+ textfield_->ExecuteCommand(IDS_APP_CUT, 0); |
SendKeyEvent(ui::VKEY_X, false, true); |
SendKeyEvent(ui::VKEY_DELETE, true, false); |
EXPECT_STR_EQ("Test", base::string16(GetClipboardText())); |
EXPECT_STR_EQ("read only", textfield_->text()); |
// Paste should be disabled. |
- EXPECT_FALSE(textfield_view_->IsCommandIdEnabled(IDS_APP_PASTE)); |
- textfield_view_->ExecuteCommand(IDS_APP_PASTE, 0); |
+ EXPECT_FALSE(textfield_->IsCommandIdEnabled(IDS_APP_PASTE)); |
+ textfield_->ExecuteCommand(IDS_APP_PASTE, 0); |
SendKeyEvent(ui::VKEY_V, false, true); |
SendKeyEvent(ui::VKEY_INSERT, true, false); |
EXPECT_STR_EQ("read only", textfield_->text()); |
// Copy should work normally. |
SetClipboardText("Test"); |
- EXPECT_TRUE(textfield_view_->IsCommandIdEnabled(IDS_APP_COPY)); |
- textfield_view_->ExecuteCommand(IDS_APP_COPY, 0); |
+ EXPECT_TRUE(textfield_->IsCommandIdEnabled(IDS_APP_COPY)); |
+ textfield_->ExecuteCommand(IDS_APP_COPY, 0); |
EXPECT_STR_EQ("read only", base::string16(GetClipboardText())); |
SetClipboardText("Test"); |
SendKeyEvent(ui::VKEY_C, false, true); |
@@ -1192,7 +1163,7 @@ TEST_F(NativeTextfieldViewsTest, ReadOnlyTest) { |
EXPECT_STR_EQ(" four five six ", textfield_->GetSelectedText()); |
} |
-TEST_F(NativeTextfieldViewsTest, TextInputClientTest) { |
+TEST_F(TextfieldTest, TextInputClientTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
ui::TextInputClient* client = textfield_->GetTextInputClient(); |
EXPECT_TRUE(client); |
@@ -1297,7 +1268,7 @@ TEST_F(NativeTextfieldViewsTest, TextInputClientTest) { |
EXPECT_TRUE(textfield_->GetTextInputClient()); |
} |
-TEST_F(NativeTextfieldViewsTest, UndoRedoTest) { |
+TEST_F(TextfieldTest, UndoRedoTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
SendKeyEvent(ui::VKEY_A); |
EXPECT_STR_EQ("a", textfield_->text()); |
@@ -1392,14 +1363,14 @@ TEST_F(NativeTextfieldViewsTest, UndoRedoTest) { |
EXPECT_STR_EQ("", textfield_->text()); |
} |
-TEST_F(NativeTextfieldViewsTest, CutCopyPaste) { |
+TEST_F(TextfieldTest, CutCopyPaste) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// Ensure IDS_APP_CUT cuts. |
textfield_->SetText(ASCIIToUTF16("123")); |
textfield_->SelectAll(false); |
- EXPECT_TRUE(textfield_view_->IsCommandIdEnabled(IDS_APP_CUT)); |
- textfield_view_->ExecuteCommand(IDS_APP_CUT, 0); |
+ EXPECT_TRUE(textfield_->IsCommandIdEnabled(IDS_APP_CUT)); |
+ textfield_->ExecuteCommand(IDS_APP_CUT, 0); |
EXPECT_STR_EQ("123", base::string16(GetClipboardText())); |
EXPECT_STR_EQ("", textfield_->text()); |
@@ -1423,8 +1394,8 @@ TEST_F(NativeTextfieldViewsTest, CutCopyPaste) { |
// Ensure IDS_APP_COPY copies. |
textfield_->SetText(ASCIIToUTF16("789")); |
textfield_->SelectAll(false); |
- EXPECT_TRUE(textfield_view_->IsCommandIdEnabled(IDS_APP_COPY)); |
- textfield_view_->ExecuteCommand(IDS_APP_COPY, 0); |
+ EXPECT_TRUE(textfield_->IsCommandIdEnabled(IDS_APP_COPY)); |
+ textfield_->ExecuteCommand(IDS_APP_COPY, 0); |
EXPECT_STR_EQ("789", base::string16(GetClipboardText())); |
// Ensure [Ctrl]+[c] copies and [Ctrl]+[Alt][c] does nothing. |
@@ -1446,8 +1417,8 @@ TEST_F(NativeTextfieldViewsTest, CutCopyPaste) { |
// also ensure that [Ctrl]+[Alt]+[V] does nothing. |
SetClipboardText("abc"); |
textfield_->SetText(base::string16()); |
- EXPECT_TRUE(textfield_view_->IsCommandIdEnabled(IDS_APP_PASTE)); |
- textfield_view_->ExecuteCommand(IDS_APP_PASTE, 0); |
+ EXPECT_TRUE(textfield_->IsCommandIdEnabled(IDS_APP_PASTE)); |
+ textfield_->ExecuteCommand(IDS_APP_PASTE, 0); |
EXPECT_STR_EQ("abc", textfield_->text()); |
SendKeyEvent(ui::VKEY_V, false, true); |
EXPECT_STR_EQ("abcabc", textfield_->text()); |
@@ -1463,7 +1434,7 @@ TEST_F(NativeTextfieldViewsTest, CutCopyPaste) { |
EXPECT_STR_EQ("abcabcabc", textfield_->text()); |
} |
-TEST_F(NativeTextfieldViewsTest, OvertypeMode) { |
+TEST_F(TextfieldTest, OvertypeMode) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// Overtype mode should be disabled (no-op [Insert]). |
textfield_->SetText(ASCIIToUTF16("2")); |
@@ -1473,7 +1444,7 @@ TEST_F(NativeTextfieldViewsTest, OvertypeMode) { |
EXPECT_STR_EQ("12", textfield_->text()); |
} |
-TEST_F(NativeTextfieldViewsTest, TextCursorDisplayTest) { |
+TEST_F(TextfieldTest, TextCursorDisplayTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// LTR-RTL string in LTR context. |
SendKeyEvent('a'); |
@@ -1525,7 +1496,7 @@ TEST_F(NativeTextfieldViewsTest, TextCursorDisplayTest) { |
EXPECT_LT(prev_x, x); |
} |
-TEST_F(NativeTextfieldViewsTest, TextCursorDisplayInRTLTest) { |
+TEST_F(TextfieldTest, TextCursorDisplayInRTLTest) { |
std::string locale = l10n_util::GetApplicationLocale(""); |
base::i18n::SetICUDefaultLocale("he"); |
@@ -1583,7 +1554,7 @@ TEST_F(NativeTextfieldViewsTest, TextCursorDisplayInRTLTest) { |
base::i18n::SetICUDefaultLocale(locale); |
} |
-TEST_F(NativeTextfieldViewsTest, HitInsideTextAreaTest) { |
+TEST_F(TextfieldTest, HitInsideTextAreaTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(WideToUTF16(L"ab\x05E1\x5E2")); |
std::vector<gfx::Rect> cursor_bounds; |
@@ -1638,7 +1609,7 @@ TEST_F(NativeTextfieldViewsTest, HitInsideTextAreaTest) { |
} |
} |
-TEST_F(NativeTextfieldViewsTest, HitOutsideTextAreaTest) { |
+TEST_F(TextfieldTest, HitOutsideTextAreaTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
// LTR-RTL string in LTR context. |
@@ -1670,7 +1641,7 @@ TEST_F(NativeTextfieldViewsTest, HitOutsideTextAreaTest) { |
EXPECT_EQ(bound, GetCursorBounds()); |
} |
-TEST_F(NativeTextfieldViewsTest, HitOutsideTextAreaInRTLTest) { |
+TEST_F(TextfieldTest, HitOutsideTextAreaInRTLTest) { |
std::string locale = l10n_util::GetApplicationLocale(""); |
base::i18n::SetICUDefaultLocale("he"); |
@@ -1706,7 +1677,7 @@ TEST_F(NativeTextfieldViewsTest, HitOutsideTextAreaInRTLTest) { |
base::i18n::SetICUDefaultLocale(locale); |
} |
-TEST_F(NativeTextfieldViewsTest, OverflowTest) { |
+TEST_F(TextfieldTest, OverflowTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
base::string16 str; |
@@ -1732,7 +1703,7 @@ TEST_F(NativeTextfieldViewsTest, OverflowTest) { |
EXPECT_EQ(501U, textfield_->GetCursorPosition()); |
} |
-TEST_F(NativeTextfieldViewsTest, OverflowInRTLTest) { |
+TEST_F(TextfieldTest, OverflowInRTLTest) { |
std::string locale = l10n_util::GetApplicationLocale(""); |
base::i18n::SetICUDefaultLocale("he"); |
@@ -1763,7 +1734,7 @@ TEST_F(NativeTextfieldViewsTest, OverflowInRTLTest) { |
base::i18n::SetICUDefaultLocale(locale); |
} |
-TEST_F(NativeTextfieldViewsTest, GetCompositionCharacterBoundsTest) { |
+TEST_F(TextfieldTest, GetCompositionCharacterBoundsTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
base::string16 str; |
@@ -1786,8 +1757,8 @@ TEST_F(NativeTextfieldViewsTest, GetCompositionCharacterBoundsTest) { |
gfx::Rect cursor_bounds = GetCursorBounds(); |
gfx::Point top_left(prev_cursor.x(), prev_cursor.y()); |
gfx::Point bottom_right(cursor_bounds.x(), prev_cursor.bottom()); |
- views::View::ConvertPointToScreen(textfield_view_, &top_left); |
- views::View::ConvertPointToScreen(textfield_view_, &bottom_right); |
+ views::View::ConvertPointToScreen(textfield_, &top_left); |
+ views::View::ConvertPointToScreen(textfield_, &bottom_right); |
char_rect_in_screen_coord[i].set_origin(top_left); |
char_rect_in_screen_coord[i].set_width(bottom_right.x() - top_left.x()); |
char_rect_in_screen_coord[i].set_height(bottom_right.y() - top_left.y()); |
@@ -1807,7 +1778,7 @@ TEST_F(NativeTextfieldViewsTest, GetCompositionCharacterBoundsTest) { |
EXPECT_FALSE(client->GetCompositionCharacterBounds(char_count + 100, &rect)); |
} |
-TEST_F(NativeTextfieldViewsTest, GetCompositionCharacterBounds_ComplexText) { |
+TEST_F(TextfieldTest, GetCompositionCharacterBounds_ComplexText) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
const base::char16 kUtf16Chars[] = { |
@@ -1844,7 +1815,7 @@ TEST_F(NativeTextfieldViewsTest, GetCompositionCharacterBounds_ComplexText) { |
// The word we select by double clicking should remain selected regardless of |
// where we drag the mouse afterwards without releasing the left button. |
-TEST_F(NativeTextfieldViewsTest, KeepInitiallySelectedWord) { |
+TEST_F(TextfieldTest, KeepInitiallySelectedWord) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("abc def ghi")); |
@@ -1861,69 +1832,64 @@ TEST_F(NativeTextfieldViewsTest, KeepInitiallySelectedWord) { |
ui::MouseEvent press_event(ui::ET_MOUSE_PRESSED, middle, middle, |
ui::EF_LEFT_MOUSE_BUTTON, |
ui::EF_LEFT_MOUSE_BUTTON); |
- textfield_view_->OnMousePressed(press_event); |
+ textfield_->OnMousePressed(press_event); |
EXPECT_EQ(gfx::Range(4, 7), textfield_->GetSelectedRange()); |
// Drag the mouse to the beginning of the textfield. |
ui::MouseEvent drag_event(ui::ET_MOUSE_DRAGGED, beginning, beginning, |
ui::EF_LEFT_MOUSE_BUTTON, 0); |
- textfield_view_->OnMouseDragged(drag_event); |
+ textfield_->OnMouseDragged(drag_event); |
EXPECT_EQ(gfx::Range(7, 0), textfield_->GetSelectedRange()); |
} |
-// Touch selection and draggin currently only works for chromeos. |
+// Touch selection and dragging currently only works for chromeos. |
#if defined(OS_CHROMEOS) |
-TEST_F(NativeTextfieldViewsTest, TouchSelectionAndDraggingTest) { |
+TEST_F(TextfieldTest, TouchSelectionAndDraggingTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("hello world")); |
EXPECT_FALSE(GetTouchSelectionController()); |
- const int eventX = GetCursorPositionX(2); |
- const int eventY = 0; |
+ const int x = GetCursorPositionX(2); |
+ GestureEventForTest tap(ui::ET_GESTURE_TAP, x, 0, 1.0f, 0.0f); |
+ GestureEventForTest tap_down(ui::ET_GESTURE_TAP_DOWN, x, 0, 0.0f, 0.0f); |
+ GestureEventForTest long_press(ui::ET_GESTURE_LONG_PRESS, x, 0, 0.0f, 0.0f); |
CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnableTouchEditing); |
// Tapping on the textfield should turn on the TouchSelectionController. |
- GestureEventForTest tap(ui::ET_GESTURE_TAP, eventX, eventY, 1.0f, 0.0f); |
- textfield_view_->OnGestureEvent(&tap); |
+ textfield_->OnGestureEvent(&tap); |
EXPECT_TRUE(GetTouchSelectionController()); |
// Un-focusing the textfield should reset the TouchSelectionController |
- textfield_view_->GetFocusManager()->ClearFocus(); |
+ textfield_->GetFocusManager()->ClearFocus(); |
EXPECT_FALSE(GetTouchSelectionController()); |
// With touch editing enabled, long press should not show context menu. |
// Instead, select word and invoke TouchSelectionController. |
- GestureEventForTest tap_down(ui::ET_GESTURE_TAP_DOWN, eventX, eventY, 0.0f, |
- 0.0f); |
- textfield_view_->OnGestureEvent(&tap_down); |
- GestureEventForTest long_press(ui::ET_GESTURE_LONG_PRESS, eventX, eventY, |
- 0.0f, 0.0f); |
- textfield_view_->OnGestureEvent(&long_press); |
+ textfield_->OnGestureEvent(&tap_down); |
+ textfield_->OnGestureEvent(&long_press); |
EXPECT_STR_EQ("hello", textfield_->GetSelectedText()); |
EXPECT_TRUE(GetTouchSelectionController()); |
- // Long pressing again in the selecting region should not do anything since |
- // touch drag drop is not yet enabled. |
- textfield_view_->OnGestureEvent(&tap_down); |
- textfield_view_->OnGestureEvent(&long_press); |
+ // With touch drag drop enabled, long pressing in the selected region should |
+ // start a drag and remove TouchSelectionController. |
+ ASSERT_TRUE(switches::IsTouchDragDropEnabled()); |
+ textfield_->OnGestureEvent(&tap_down); |
+ textfield_->OnGestureEvent(&long_press); |
EXPECT_STR_EQ("hello", textfield_->GetSelectedText()); |
- EXPECT_TRUE(GetTouchSelectionController()); |
- EXPECT_TRUE(long_press.handled()); |
+ EXPECT_FALSE(GetTouchSelectionController()); |
- // After enabling touch drag drop, long pressing in the selected region should |
- // start a drag and remove TouchSelectionController. |
+ // After disabling touch drag drop, long pressing again in the selection |
+ // region should not do anything. |
CommandLine::ForCurrentProcess()->AppendSwitch( |
- switches::kEnableTouchDragDrop); |
- textfield_view_->OnGestureEvent(&tap_down); |
- |
- // Create a new long press event since the previous one is not marked handled. |
- GestureEventForTest long_press2(ui::ET_GESTURE_LONG_PRESS, eventX, eventY, |
- 0.0f, 0.0f); |
- textfield_view_->OnGestureEvent(&long_press2); |
+ switches::kDisableTouchDragDrop); |
+ ASSERT_FALSE(switches::IsTouchDragDropEnabled()); |
+ textfield_->OnGestureEvent(&tap_down); |
+ textfield_->OnGestureEvent(&long_press); |
EXPECT_STR_EQ("hello", textfield_->GetSelectedText()); |
- EXPECT_FALSE(GetTouchSelectionController()); |
+ EXPECT_TRUE(GetTouchSelectionController()); |
+ EXPECT_TRUE(long_press.handled()); |
} |
-TEST_F(NativeTextfieldViewsTest, TouchScrubbingSelection) { |
+TEST_F(TextfieldTest, TouchScrubbingSelection) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("hello world")); |
EXPECT_FALSE(GetTouchSelectionController()); |
@@ -1936,26 +1902,26 @@ TEST_F(NativeTextfieldViewsTest, TouchScrubbingSelection) { |
GestureEventForTest tap_down(ui::ET_GESTURE_TAP_DOWN, scrubbing_start, 0, |
0.0f, 0.0f); |
- textfield_view_->OnGestureEvent(&tap_down); |
+ textfield_->OnGestureEvent(&tap_down); |
GestureEventForTest tap_cancel(ui::ET_GESTURE_TAP_CANCEL, scrubbing_start, 0, |
0.0f, 0.0f); |
- textfield_view_->OnGestureEvent(&tap_cancel); |
+ textfield_->OnGestureEvent(&tap_cancel); |
GestureEventForTest scroll_begin(ui::ET_GESTURE_SCROLL_BEGIN, scrubbing_start, |
0, 0.0f, 0.0f); |
- textfield_view_->OnGestureEvent(&scroll_begin); |
+ textfield_->OnGestureEvent(&scroll_begin); |
GestureEventForTest scroll_update(ui::ET_GESTURE_SCROLL_UPDATE, scrubbing_end, |
0, scrubbing_end - scrubbing_start, 0.0f); |
- textfield_view_->OnGestureEvent(&scroll_update); |
+ textfield_->OnGestureEvent(&scroll_update); |
GestureEventForTest scroll_end(ui::ET_GESTURE_SCROLL_END, scrubbing_end, 0, |
0.0f, 0.0f); |
- textfield_view_->OnGestureEvent(&scroll_end); |
+ textfield_->OnGestureEvent(&scroll_end); |
GestureEventForTest end(ui::ET_GESTURE_END, scrubbing_end, 0, 0.0f, 0.0f); |
- textfield_view_->OnGestureEvent(&end); |
+ textfield_->OnGestureEvent(&end); |
// In the end, part of text should have been selected and handles should have |
// appeared. |
@@ -1964,8 +1930,8 @@ TEST_F(NativeTextfieldViewsTest, TouchScrubbingSelection) { |
} |
#endif |
-// Long_Press gesture in NativeTextfieldViews can initiate a drag and drop now. |
-TEST_F(NativeTextfieldViewsTest, TestLongPressInitiatesDragDrop) { |
+// Long_Press gesture in Textfield can initiate a drag and drop now. |
+TEST_F(TextfieldTest, TestLongPressInitiatesDragDrop) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(ASCIIToUTF16("Hello string world")); |
@@ -1980,12 +1946,12 @@ TEST_F(NativeTextfieldViewsTest, TestLongPressInitiatesDragDrop) { |
// Create a long press event in the selected region should start a drag. |
GestureEventForTest long_press(ui::ET_GESTURE_LONG_PRESS, kStringPoint.x(), |
kStringPoint.y(), 0.0f, 0.0f); |
- textfield_view_->OnGestureEvent(&long_press); |
- EXPECT_TRUE(textfield_view_->CanStartDragForView(NULL, |
- kStringPoint, kStringPoint)); |
+ textfield_->OnGestureEvent(&long_press); |
+ EXPECT_TRUE(textfield_->CanStartDragForView(NULL, kStringPoint, |
+ kStringPoint)); |
} |
-TEST_F(NativeTextfieldViewsTest, GetTextfieldBaseline_FontFallbackTest) { |
+TEST_F(TextfieldTest, GetTextfieldBaseline_FontFallbackTest) { |
InitTextfield(Textfield::STYLE_DEFAULT); |
textfield_->SetText(UTF8ToUTF16("abc")); |
const int old_baseline = textfield_->GetBaseline(); |