~midori/midori/trunk

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
/*
 Copyright (C) 2007-2008 Christian Dywan <christian@twotoasts.de>
 Copyright (C) 2009 Dale Whittaker <dayul@users.sf.net>

 This library is free software; you can redistribute it and/or
 modify it under the terms of the GNU Lesser General Public
 License as published by the Free Software Foundation; either
 version 2.1 of the License, or (at your option) any later version.

 See the file COPYING for the full license text.
*/

#ifndef __SOKOKE_H__
#define __SOKOKE_H__ 1

#include <JavaScriptCore/JavaScript.h>
#include "katze/katze.h"
#include <midori/midori-websettings.h>
#include <katze/gtk3-compat.h>

gchar*
sokoke_js_script_eval                   (JSContextRef    js_context,
                                         const gchar*    script,
                                         gchar**         exception);

void
sokoke_message_dialog                   (GtkMessageType  message_type,
                                         const gchar*    short_message,
                                         const gchar*    detailed_message,
                                         gboolean        modal);

gboolean
sokoke_show_uri_with_mime_type          (GdkScreen*      screen,
                                         const gchar*    uri,
                                         const gchar*    mime_type,
                                         guint32         timestamp,
                                         GError**        error);

gboolean
sokoke_show_uri                         (GdkScreen*      screen,
                                         const gchar*    uri,
                                         guint32         timestamp,
                                         GError**        error);

gchar*
sokoke_prepare_command                  (const gchar*    command,
                                         gboolean        quote_command,
                                         const gchar*    argument,
                                         gboolean        quote_argument);

gboolean
sokoke_spawn_program                    (const gchar* command,
                                         gboolean        quote_command,
                                         const gchar*    argument,
                                         gboolean        quote_argument,
                                         gboolean        sync);

void
sokoke_spawn_gdb                        (const gchar*    gdb,
                                         gboolean        sync);

void
sokoke_spawn_app                        (const gchar*    uri,
                                         gboolean        inherit_config);

gboolean
sokoke_external_uri                     (const gchar*    uri);

gchar*
sokoke_magic_uri                        (const gchar*    uri,
                                         gboolean        allow_search,
                                         gboolean        allow_realtive);

void
sokoke_widget_set_visible               (GtkWidget*      widget,
                                         gboolean        visible);

GtkWidget*
sokoke_xfce_header_new                  (const gchar*    icon,
                                         const gchar*    title);

gboolean
sokoke_key_file_save_to_file            (GKeyFile*       key_file,
                                         const gchar*    filename,
                                         GError**        error);

void
sokoke_widget_get_text_size             (GtkWidget*      widget,
                                         const gchar*    text,
                                         gint*           width,
                                         gint*           height);

gint64
sokoke_time_t_to_julian                 (const time_t*   timestamp);

gchar*
sokoke_replace_variables                (const gchar* template,
                                         const gchar* variable_first, ...);

gboolean
sokoke_window_activate_key              (GtkWindow*      window,
                                         GdkEventKey*    event);
guint
sokoke_gtk_action_count_modifiers       (GtkAction* action);

gboolean
sokoke_prefetch_uri                     (MidoriWebSettings*  settings,
                                         const char*         uri,
                                         GCallback           callback,
                                         gpointer            user_data);

gboolean
sokoke_resolve_hostname                 (const gchar*        hostname);

gboolean
sokoke_recursive_fork_protection        (const gchar*         uri,
                                         gboolean             set_uri);

void
sokoke_widget_copy_clipboard (GtkWidget*          widget,
                              const gchar*        text,
                              GtkClipboardGetFunc get_cb,
                              gpointer            owner);

GtkWidget*
sokoke_search_entry_new               (const gchar*        placeholder_text);

#ifdef G_OS_WIN32
gchar*
sokoke_get_win32_desktop_lnk_path_for_filename (gchar* filename);

void
sokoke_create_win32_desktop_lnk (gchar* prefix, gchar* filename, gchar* uri);
#endif

#endif /* !__SOKOKE_H__ */