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

Unified Diff: content/browser/renderer_host/gtk_key_bindings_handler_unittest.cc

Issue 231733005: Delete the GTK+ port of Chrome. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remerge to ToT Created 6 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/gtk_key_bindings_handler_unittest.cc
diff --git a/content/browser/renderer_host/gtk_key_bindings_handler_unittest.cc b/content/browser/renderer_host/gtk_key_bindings_handler_unittest.cc
deleted file mode 100644
index fed67d5e370f79b9da53721b517b8bf1a4236499..0000000000000000000000000000000000000000
--- a/content/browser/renderer_host/gtk_key_bindings_handler_unittest.cc
+++ /dev/null
@@ -1,226 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "content/browser/renderer_host/gtk_key_bindings_handler.h"
-
-#include <gdk/gdkkeysyms.h>
-#include <string>
-#include <utility>
-#include <vector>
-
-#include "base/basictypes.h"
-#include "base/file_util.h"
-#include "base/logging.h"
-#include "base/path_service.h"
-#include "base/strings/string_util.h"
-#include "content/common/edit_command.h"
-#include "content/public/browser/native_web_keyboard_event.h"
-#include "content/public/common/content_paths.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-namespace content {
-
-class GtkKeyBindingsHandlerTest : public testing::Test {
- protected:
- struct EditCommand {
- const char* name;
- const char* value;
- };
-
- GtkKeyBindingsHandlerTest()
- : window_(gtk_window_new(GTK_WINDOW_TOPLEVEL)),
- handler_(NULL) {
- base::FilePath gtkrc;
- PathService::Get(DIR_TEST_DATA, &gtkrc);
- gtkrc = gtkrc.AppendASCII("gtk_key_bindings_test_gtkrc");
- EXPECT_TRUE(base::PathExists(gtkrc));
-
- gtk_rc_parse(gtkrc.value().c_str());
-
- GtkWidget* fixed = gtk_fixed_new();
- handler_ = new GtkKeyBindingsHandler(fixed);
- gtk_container_add(GTK_CONTAINER(window_), fixed);
- gtk_widget_show(fixed);
- gtk_widget_show(window_);
- }
- virtual ~GtkKeyBindingsHandlerTest() {
- gtk_widget_destroy(window_);
- delete handler_;
- }
-
- NativeWebKeyboardEvent NewNativeWebKeyboardEvent(guint keyval, guint state) {
- GdkKeymap* keymap =
- gdk_keymap_get_for_display(gtk_widget_get_display(window_));
-
- GdkKeymapKey *keys = NULL;
- gint n_keys = 0;
- if (gdk_keymap_get_entries_for_keyval(keymap, keyval, &keys, &n_keys)) {
- GdkEventKey event;
- event.type = GDK_KEY_PRESS;
- event.window = NULL;
- event.send_event = 0;
- event.time = 0;
- event.state = state;
- event.keyval = keyval;
- event.length = 0;
- event.string = NULL;
- event.hardware_keycode = keys[0].keycode;
- event.group = keys[0].group;
- event.is_modifier = 0;
- g_free(keys);
- return NativeWebKeyboardEvent(reinterpret_cast<GdkEvent*>(&event));
- }
- LOG(ERROR) << "Failed to create key event for keyval:" << keyval;
- return NativeWebKeyboardEvent();
- }
-
- void TestKeyBinding(const NativeWebKeyboardEvent& event,
- const EditCommand expected_result[],
- size_t size) {
- EditCommands result;
- ASSERT_TRUE(handler_->Match(event, &result));
- ASSERT_EQ(size, result.size());
- for (size_t i = 0; i < size; ++i) {
- ASSERT_STREQ(expected_result[i].name, result[i].name.c_str());
- ASSERT_STREQ(expected_result[i].value, result[i].value.c_str());
- }
- }
-
- protected:
- GtkWidget* window_;
- GtkKeyBindingsHandler* handler_;
-};
-
-TEST_F(GtkKeyBindingsHandlerTest, MoveCursor) {
- static const EditCommand kEditCommands[] = {
- // "move-cursor" (logical-positions, -2, 0)
- { "MoveBackward", "" },
- { "MoveBackward", "" },
- // "move-cursor" (logical-positions, 2, 0)
- { "MoveForward", "" },
- { "MoveForward", "" },
- // "move-cursor" (visual-positions, -1, 1)
- { "MoveLeftAndModifySelection", "" },
- // "move-cursor" (visual-positions, 1, 1)
- { "MoveRightAndModifySelection", "" },
- // "move-cursor" (words, -1, 0)
- { "MoveWordLeft", "" },
- // "move-cursor" (words, 1, 0)
- { "MoveWordRight", "" },
- // "move-cursor" (display-lines, -1, 0)
- { "MoveUp", "" },
- // "move-cursor" (display-lines, 1, 0)
- { "MoveDown", "" },
- // "move-cursor" (display-line-ends, -1, 0)
- { "MoveToBeginningOfLine", "" },
- // "move-cursor" (display-line-ends, 1, 0)
- { "MoveToEndOfLine", "" },
- // "move-cursor" (paragraph-ends, -1, 0)
- { "MoveToBeginningOfParagraph", "" },
- // "move-cursor" (paragraph-ends, 1, 0)
- { "MoveToEndOfParagraph", "" },
- // "move-cursor" (pages, -1, 0)
- { "MovePageUp", "" },
- // "move-cursor" (pages, 1, 0)
- { "MovePageDown", "" },
- // "move-cursor" (buffer-ends, -1, 0)
- { "MoveToBeginningOfDocument", "" },
- // "move-cursor" (buffer-ends, 1, 0)
- { "MoveToEndOfDocument", "" }
- };
-
- TestKeyBinding(NewNativeWebKeyboardEvent(GDK_1, GDK_CONTROL_MASK),
- kEditCommands, arraysize(kEditCommands));
-}
-
-TEST_F(GtkKeyBindingsHandlerTest, DeleteFromCursor) {
- static const EditCommand kEditCommands[] = {
- // "delete-from-cursor" (chars, -2)
- { "DeleteBackward", "" },
- { "DeleteBackward", "" },
- // "delete-from-cursor" (chars, 2)
- { "DeleteForward", "" },
- { "DeleteForward", "" },
- // "delete-from-cursor" (word-ends, -1)
- { "DeleteWordBackward", "" },
- // "delete-from-cursor" (word-ends, 1)
- { "DeleteWordForward", "" },
- // "delete-from-cursor" (words, -1)
- { "MoveWordBackward", "" },
- { "DeleteWordForward", "" },
- // "delete-from-cursor" (words, 1)
- { "MoveWordForward", "" },
- { "DeleteWordBackward", "" },
- // "delete-from-cursor" (display-lines, -1)
- { "MoveToBeginningOfLine", "" },
- { "DeleteToEndOfLine", "" },
- // "delete-from-cursor" (display-lines, 1)
- { "MoveToBeginningOfLine", "" },
- { "DeleteToEndOfLine", "" },
- // "delete-from-cursor" (display-line-ends, -1)
- { "DeleteToBeginningOfLine", "" },
- // "delete-from-cursor" (display-line-ends, 1)
- { "DeleteToEndOfLine", "" },
- // "delete-from-cursor" (paragraph-ends, -1)
- { "DeleteToBeginningOfParagraph", "" },
- // "delete-from-cursor" (paragraph-ends, 1)
- { "DeleteToEndOfParagraph", "" },
- // "delete-from-cursor" (paragraphs, -1)
- { "MoveToBeginningOfParagraph", "" },
- { "DeleteToEndOfParagraph", "" },
- // "delete-from-cursor" (paragraphs, 1)
- { "MoveToBeginningOfParagraph", "" },
- { "DeleteToEndOfParagraph", "" },
- };
-
- TestKeyBinding(NewNativeWebKeyboardEvent(GDK_2, GDK_CONTROL_MASK),
- kEditCommands, arraysize(kEditCommands));
-}
-
-TEST_F(GtkKeyBindingsHandlerTest, OtherActions) {
- static const EditCommand kBackspace[] = {
- { "DeleteBackward", "" }
- };
- TestKeyBinding(NewNativeWebKeyboardEvent(GDK_3, GDK_CONTROL_MASK),
- kBackspace, arraysize(kBackspace));
-
- static const EditCommand kCopyClipboard[] = {
- { "Copy", "" }
- };
- TestKeyBinding(NewNativeWebKeyboardEvent(GDK_4, GDK_CONTROL_MASK),
- kCopyClipboard, arraysize(kCopyClipboard));
-
- static const EditCommand kCutClipboard[] = {
- { "Cut", "" }
- };
- TestKeyBinding(NewNativeWebKeyboardEvent(GDK_5, GDK_CONTROL_MASK),
- kCutClipboard, arraysize(kCutClipboard));
-
- static const EditCommand kInsertAtCursor[] = {
- { "InsertText", "hello" }
- };
- TestKeyBinding(NewNativeWebKeyboardEvent(GDK_6, GDK_CONTROL_MASK),
- kInsertAtCursor, arraysize(kInsertAtCursor));
-
- static const EditCommand kPasteClipboard[] = {
- { "Paste", "" }
- };
- TestKeyBinding(NewNativeWebKeyboardEvent(GDK_7, GDK_CONTROL_MASK),
- kPasteClipboard, arraysize(kPasteClipboard));
-
- static const EditCommand kSelectAll[] = {
- { "Unselect", "" },
- { "SelectAll", "" }
- };
- TestKeyBinding(NewNativeWebKeyboardEvent(GDK_8, GDK_CONTROL_MASK),
- kSelectAll, arraysize(kSelectAll));
-
- static const EditCommand kSetAnchor[] = {
- { "SetMark", "" }
- };
- TestKeyBinding(NewNativeWebKeyboardEvent(GDK_9, GDK_CONTROL_MASK),
- kSetAnchor, arraysize(kSetAnchor));
-}
-
-} // namespace content

Powered by Google App Engine
This is Rietveld 408576698