static void read_mode_function_realization (GtkWidget* botton,MidoriBrowser* browser) { gchar* exception = NULL; char *script=NULL; FILE *fp; unsigned int file_size; gboolean result; MidoriView* view = MIDORI_VIEW (midori_browser_get_current_tab (browser)); if((fp=fopen(midori_paths_get_res_filename("read_mode/readability.js"),"r"))!=NULL) { fseek(fp,0,SEEK_END); file_size=ftell(fp); fseek(fp,0,SEEK_SET); script=(char *)malloc(file_size * sizeof(char)+1); fread(script,file_size,sizeof(char),fp); script[file_size*sizeof(char)]='\0'; fclose(fp); } char *insert_js = "(function(){readConvertLinksToFootnotes=false;readStyle='style-newspaper';readSize='size-medium';readMargin='margin-wide';})();"; result = midori_view_execute_script (view, insert_js, &exception); result = midori_view_execute_script (view, script, &exception); free(script); script=NULL; }
static void formhistory_window_object_cleared_cb (WebKitWebView* web_view, WebKitWebFrame* web_frame, JSContextRef js_context, JSObjectRef js_window, MidoriExtension* extension) { const gchar* page_uri; FormhistoryPasswordEntry* entry; GtkWidget* view; page_uri = webkit_web_frame_get_uri (web_frame); if (!page_uri) return; if (!midori_uri_is_http (page_uri) && !g_str_has_prefix (page_uri, "file")) return; formhistory_setup_suggestions (web_view, js_context, extension); entry = g_object_get_data (G_OBJECT (web_view), "FormHistoryPasswordEntry"); if (entry) { const gchar* message = _("Remember password on this page?"); view = midori_browser_get_current_tab (midori_app_get_browser ( midori_extension_get_app (extension))); midori_view_add_info_bar (MIDORI_VIEW (view), GTK_MESSAGE_QUESTION, message, G_CALLBACK (formhistory_remember_password_response), entry, _("Remember"), GTK_RESPONSE_ACCEPT, _("Not now"), GTK_RESPONSE_IGNORE, _("Never for this page"), GTK_RESPONSE_CANCEL, NULL); g_object_set_data (G_OBJECT (web_view), "FormHistoryPasswordEntry", NULL); } }
static void statusbar_features_zoom_level_changed_cb (GtkWidget* combobox, MidoriBrowser* browser) { MidoriView* view = MIDORI_VIEW (midori_browser_get_current_tab (browser)); GtkWidget* entry = gtk_bin_get_child (GTK_BIN (combobox)); const gchar* zoom_level_text = gtk_entry_get_text (GTK_ENTRY (entry)); gdouble zoom_level = g_ascii_strtod (zoom_level_text, NULL); midori_view_set_zoom_level (view, zoom_level / 100.0); }
static void statusbar_features_browser_notify_tab_cb (MidoriBrowser* browser, GParamSpec* pspec, GtkWidget* combobox) { MidoriView* view = MIDORI_VIEW (midori_browser_get_current_tab (browser)); gchar* text; if (view == NULL) return; text = g_strdup_printf ("%d%%", (gint)(midori_view_get_zoom_level (view) * 100)); gtk_entry_set_text (GTK_ENTRY (gtk_bin_get_child (GTK_BIN (combobox))), text); g_free (text); }
static void tab_panel_browser_notify_tab_cb (MidoriBrowser* browser, GParamSpec* pspec, GtkTreeView* treeview) { GtkTreeModel* model = tab_panel_get_model_for_browser (browser); GtkTreeIter iter; GtkWidget* view; if (g_object_get_data (G_OBJECT (browser), "midori-browser-destroyed")) return; view = midori_browser_get_current_tab (browser); if (tab_panel_get_iter_for_view (model, &iter, view)) { GtkTreeSelection* selection = gtk_tree_view_get_selection (treeview); gtk_tree_selection_select_iter (selection, &iter); } }