summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorevanm@google.com <evanm@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-11-05 18:38:51 +0000
committerevanm@google.com <evanm@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-11-05 18:38:51 +0000
commit782e69aa855f6a42886831fa850b516420c3a5c3 (patch)
tree288e4a8cd47f6ddddc777ea1cbbad3b8096bd5ce
parent0f80457845ae773d00403b9b6af81f644e83a226 (diff)
downloadchromium_src-782e69aa855f6a42886831fa850b516420c3a5c3.zip
chromium_src-782e69aa855f6a42886831fa850b516420c3a5c3.tar.gz
chromium_src-782e69aa855f6a42886831fa850b516420c3a5c3.tar.bz2
Hook up test_shell toolbar buttons.
Review URL: http://codereview.chromium.org/9423 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4793 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--webkit/tools/test_shell/test_shell_gtk.cc56
1 files changed, 41 insertions, 15 deletions
diff --git a/webkit/tools/test_shell/test_shell_gtk.cc b/webkit/tools/test_shell/test_shell_gtk.cc
index 543fd9c..6498a57 100644
--- a/webkit/tools/test_shell/test_shell_gtk.cc
+++ b/webkit/tools/test_shell/test_shell_gtk.cc
@@ -69,6 +69,26 @@ void MainWindowDestroyed(GtkWindow* window, TestShell* shell) {
delete shell;
}
+// Callback for when you click the back button.
+void BackButtonClicked(GtkButton* button, TestShell* shell) {
+ shell->GoBackOrForward(-1);
+}
+
+// Callback for when you click the forward button.
+void ForwardButtonClicked(GtkButton* button, TestShell* shell) {
+ shell->GoBackOrForward(1);
+}
+
+// Callback for when you click the stop button.
+void StopButtonClicked(GtkButton* button, TestShell* shell) {
+ shell->webView()->StopLoading();
+}
+
+// Callback for when you click the reload button.
+void ReloadButtonClicked(GtkButton* button, TestShell* shell) {
+ shell->Reload();
+}
+
// Callback for when you press enter in the URL box.
void URLEntryActivate(GtkEntry* entry, TestShell* shell) {
const gchar* url = gtk_entry_get_text(entry);
@@ -87,18 +107,26 @@ bool TestShell::Initialize(const std::wstring& startingURL) {
GtkWidget* vbox = gtk_vbox_new(FALSE, 0);
GtkWidget* toolbar = gtk_toolbar_new();
- gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
- gtk_tool_button_new_from_stock(GTK_STOCK_GO_BACK),
- -1 /* append */);
- gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
- gtk_tool_button_new_from_stock(GTK_STOCK_GO_FORWARD),
- -1 /* append */);
- gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
- gtk_tool_button_new_from_stock(GTK_STOCK_REFRESH),
- -1 /* append */);
- gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
- gtk_tool_button_new_from_stock(GTK_STOCK_STOP),
- -1 /* append */);
+
+ GtkToolItem* back = gtk_tool_button_new_from_stock(GTK_STOCK_GO_BACK);
+ g_signal_connect(G_OBJECT(back), "clicked",
+ G_CALLBACK(BackButtonClicked), this);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), back, -1 /* append */);
+
+ GtkToolItem* forward = gtk_tool_button_new_from_stock(GTK_STOCK_GO_FORWARD);
+ g_signal_connect(G_OBJECT(forward), "clicked",
+ G_CALLBACK(ForwardButtonClicked), this);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), forward, -1 /* append */);
+
+ GtkToolItem* reload = gtk_tool_button_new_from_stock(GTK_STOCK_REFRESH);
+ g_signal_connect(G_OBJECT(reload), "clicked",
+ G_CALLBACK(ReloadButtonClicked), this);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), reload, -1 /* append */);
+
+ GtkToolItem* stop = gtk_tool_button_new_from_stock(GTK_STOCK_STOP);
+ g_signal_connect(G_OBJECT(stop), "clicked",
+ G_CALLBACK(StopButtonClicked), this);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), stop, -1 /* append */);
m_editWnd = gtk_entry_new();
g_signal_connect(G_OBJECT(m_editWnd), "activate",
@@ -108,9 +136,7 @@ bool TestShell::Initialize(const std::wstring& startingURL) {
GtkToolItem* tool_item = gtk_tool_item_new();
gtk_container_add(GTK_CONTAINER(tool_item), m_editWnd);
gtk_tool_item_set_expand(tool_item, TRUE);
- gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
- tool_item,
- -1 /* append */);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), tool_item, -1 /* append */);
gtk_box_pack_start(GTK_BOX(vbox), toolbar, FALSE, FALSE, 0);
m_webViewHost.reset(WebViewHost::Create(vbox, delegate_, *TestShell::web_prefs_));