diff options
Diffstat (limited to 'WebKitTools/GtkLauncher')
-rw-r--r-- | WebKitTools/GtkLauncher/main.c | 203 | ||||
-rw-r--r-- | WebKitTools/GtkLauncher/simple.svg | 15 | ||||
-rw-r--r-- | WebKitTools/GtkLauncher/text.html | 9 |
3 files changed, 0 insertions, 227 deletions
diff --git a/WebKitTools/GtkLauncher/main.c b/WebKitTools/GtkLauncher/main.c deleted file mode 100644 index 8ed2690..0000000 --- a/WebKitTools/GtkLauncher/main.c +++ /dev/null @@ -1,203 +0,0 @@ -/* - * Copyright (C) 2006, 2007 Apple Inc. - * Copyright (C) 2007 Alp Toker <alp@atoker.com> - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY - * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include <gtk/gtk.h> -#include <webkit/webkit.h> - -static GtkWidget* main_window; -static GtkWidget* uri_entry; -static GtkStatusbar* main_statusbar; -static WebKitWebView* web_view; -static gchar* main_title; -static gint load_progress; -static guint status_context_id; - -static void -activate_uri_entry_cb (GtkWidget* entry, gpointer data) -{ - const gchar* uri = gtk_entry_get_text (GTK_ENTRY (entry)); - g_assert (uri); - webkit_web_view_open (web_view, uri); -} - -static void -update_title (GtkWindow* window) -{ - GString* string = g_string_new (main_title); - g_string_append (string, " - WebKit Launcher"); - if (load_progress < 100) - g_string_append_printf (string, " (%d%%)", load_progress); - gchar* title = g_string_free (string, FALSE); - gtk_window_set_title (window, title); - g_free (title); -} - -static void -link_hover_cb (WebKitWebView* page, const gchar* title, const gchar* link, gpointer data) -{ - /* underflow is allowed */ - gtk_statusbar_pop (main_statusbar, status_context_id); - if (link) - gtk_statusbar_push (main_statusbar, status_context_id, link); -} - -static void -title_change_cb (WebKitWebView* web_view, WebKitWebFrame* web_frame, const gchar* title, gpointer data) -{ - if (main_title) - g_free (main_title); - main_title = g_strdup (title); - update_title (GTK_WINDOW (main_window)); -} - -static void -progress_change_cb (WebKitWebView* page, gint progress, gpointer data) -{ - load_progress = progress; - update_title (GTK_WINDOW (main_window)); -} - -static void -load_commit_cb (WebKitWebView* page, WebKitWebFrame* frame, gpointer data) -{ - const gchar* uri = webkit_web_frame_get_uri(frame); - if (uri) - gtk_entry_set_text (GTK_ENTRY (uri_entry), uri); -} - -static void -destroy_cb (GtkWidget* widget, gpointer data) -{ - gtk_main_quit (); -} - -static void -go_back_cb (GtkWidget* widget, gpointer data) -{ - webkit_web_view_go_back (web_view); -} - -static void -go_forward_cb (GtkWidget* widget, gpointer data) -{ - webkit_web_view_go_forward (web_view); -} - -static GtkWidget* -create_browser () -{ - GtkWidget* scrolled_window = gtk_scrolled_window_new (NULL, NULL); - gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); - - web_view = WEBKIT_WEB_VIEW (webkit_web_view_new ()); - gtk_container_add (GTK_CONTAINER (scrolled_window), GTK_WIDGET (web_view)); - - g_signal_connect (G_OBJECT (web_view), "title-changed", G_CALLBACK (title_change_cb), web_view); - g_signal_connect (G_OBJECT (web_view), "load-progress-changed", G_CALLBACK (progress_change_cb), web_view); - g_signal_connect (G_OBJECT (web_view), "load-committed", G_CALLBACK (load_commit_cb), web_view); - g_signal_connect (G_OBJECT (web_view), "hovering-over-link", G_CALLBACK (link_hover_cb), web_view); - - return scrolled_window; -} - -static GtkWidget* -create_statusbar () -{ - main_statusbar = GTK_STATUSBAR (gtk_statusbar_new ()); - status_context_id = gtk_statusbar_get_context_id (main_statusbar, "Link Hover"); - - return (GtkWidget*)main_statusbar; -} - -static GtkWidget* -create_toolbar () -{ - GtkWidget* toolbar = gtk_toolbar_new (); - - gtk_toolbar_set_orientation (GTK_TOOLBAR (toolbar), GTK_ORIENTATION_HORIZONTAL); - gtk_toolbar_set_style (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_BOTH_HORIZ); - - GtkToolItem* item; - - /* the back button */ - item = gtk_tool_button_new_from_stock (GTK_STOCK_GO_BACK); - g_signal_connect (G_OBJECT (item), "clicked", G_CALLBACK (go_back_cb), NULL); - gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1); - - /* The forward button */ - item = gtk_tool_button_new_from_stock (GTK_STOCK_GO_FORWARD); - g_signal_connect (G_OBJECT (item), "clicked", G_CALLBACK (go_forward_cb), NULL); - gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1); - - /* The URL entry */ - item = gtk_tool_item_new (); - gtk_tool_item_set_expand (item, TRUE); - uri_entry = gtk_entry_new (); - gtk_container_add (GTK_CONTAINER (item), uri_entry); - g_signal_connect (G_OBJECT (uri_entry), "activate", G_CALLBACK (activate_uri_entry_cb), NULL); - gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1); - - /* The go button */ - item = gtk_tool_button_new_from_stock (GTK_STOCK_OK); - g_signal_connect_swapped (G_OBJECT (item), "clicked", G_CALLBACK (activate_uri_entry_cb), (gpointer)uri_entry); - gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1); - - return toolbar; -} - -static GtkWidget* -create_window () -{ - GtkWidget* window = gtk_window_new (GTK_WINDOW_TOPLEVEL); - gtk_window_set_default_size (GTK_WINDOW (window), 800, 600); - gtk_widget_set_name (window, "GtkLauncher"); - g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (destroy_cb), NULL); - - return window; -} - -int -main (int argc, char* argv[]) -{ - gtk_init (&argc, &argv); - - GtkWidget* vbox = gtk_vbox_new (FALSE, 0); - gtk_box_pack_start (GTK_BOX (vbox), create_toolbar (), FALSE, FALSE, 0); - gtk_box_pack_start (GTK_BOX (vbox), create_browser (), TRUE, TRUE, 0); - gtk_box_pack_start (GTK_BOX (vbox), create_statusbar (), FALSE, FALSE, 0); - - main_window = create_window (); - gtk_container_add (GTK_CONTAINER (main_window), vbox); - - gchar* uri = (gchar*) (argc > 1 ? argv[1] : "http://www.google.com/"); - webkit_web_view_open (web_view, uri); - - gtk_widget_grab_focus (GTK_WIDGET (web_view)); - gtk_widget_show_all (main_window); - gtk_main (); - - return 0; -} diff --git a/WebKitTools/GtkLauncher/simple.svg b/WebKitTools/GtkLauncher/simple.svg deleted file mode 100644 index 30b13ac..0000000 --- a/WebKitTools/GtkLauncher/simple.svg +++ /dev/null @@ -1,15 +0,0 @@ -<?xml version="1.0" standalone="no"?> -<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" -"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> -<svg width="5cm" height="4cm" -xmlns="http://www.w3.org/2000/svg"> -<desc>Four separate rectangles -</desc> -<rect x="0.5cm" y="0.5cm" width="2cm" height="1cm"/> -<rect x="0.5cm" y="2cm" width="1cm" height="1.5cm"/> -<rect x="3cm" y="0.5cm" width="1.5cm" height="2cm"/> -<rect x="3.5cm" y="3cm" width="1cm" height="0.5cm"/> -<!-- Show outline of canvas using 'rect' element --> -<rect x=".01cm" y=".01cm" width="4.98cm" height="3.98cm" -fill="none" stroke="blue" stroke-width=".02cm" /> -</svg> diff --git a/WebKitTools/GtkLauncher/text.html b/WebKitTools/GtkLauncher/text.html deleted file mode 100644 index 607df72..0000000 --- a/WebKitTools/GtkLauncher/text.html +++ /dev/null @@ -1,9 +0,0 @@ -<html> -<head> -<title>Hello World</title> -<body bgcolor=#00ffff text=#000000> -<p> -Hello world -</p> -</body> -</html> |