diff --git a/src/browser.c b/src/browser.c index 1e0a9d99..8f09d623 100644 --- a/src/browser.c +++ b/src/browser.c @@ -95,7 +95,7 @@ void on_action_delete_activate(GtkAction* action, CBrowser* browser) { GtkWidget* widget = gtk_window_get_focus(GTK_WINDOW(browser->window)); if(WEBKIT_IS_WEB_VIEW(widget)) - ;//webkit_web_view_delete_selection(WEBKIT_WEB_VIEW(widget)); + webkit_web_view_delete_selection(WEBKIT_WEB_VIEW(widget)); else if(GTK_IS_EDITABLE(widget)) gtk_editable_delete_selection(GTK_EDITABLE(widget)); } diff --git a/src/helpers.c b/src/helpers.c index 914d47b1..9fdaa5b0 100644 --- a/src/helpers.c +++ b/src/helpers.c @@ -333,20 +333,20 @@ void update_edit_items(CBrowser* browser) GtkWidget* widget = gtk_window_get_focus(GTK_WINDOW(browser->window)); gboolean hasSelection = FALSE; gboolean canCut = FALSE; gboolean canCopy = FALSE; gboolean canPaste = FALSE; - if(widget && (/*WEBKIT_IS_WEB_VIEW(widget) || */GTK_IS_EDITABLE(widget))) + if(widget && (WEBKIT_IS_WEB_VIEW(widget) || GTK_IS_EDITABLE(widget))) { - hasSelection = /*WEBKIT_IS_WEB_VIEW(widget) - ? webkit_web_view_has_selection(WEBKIT_WEB_VIEW(widget), NULL, NULL) - : */gtk_editable_get_selection_bounds(GTK_EDITABLE(widget), NULL, NULL); - canCut = /*WEBKIT_IS_WEB_VIEW(widget) + hasSelection = WEBKIT_IS_WEB_VIEW(widget) + ? webkit_web_view_has_selection(WEBKIT_WEB_VIEW(widget)) + : gtk_editable_get_selection_bounds(GTK_EDITABLE(widget), NULL, NULL); + canCut = WEBKIT_IS_WEB_VIEW(widget) ? webkit_web_view_can_cut_clipboard(WEBKIT_WEB_VIEW(widget)) - : */hasSelection && gtk_editable_get_editable(GTK_EDITABLE(widget)); - canCopy = /*WEBKIT_IS_WEB_VIEW(widget) + : hasSelection && gtk_editable_get_editable(GTK_EDITABLE(widget)); + canCopy = WEBKIT_IS_WEB_VIEW(widget) ? webkit_web_view_can_copy_clipboard(WEBKIT_WEB_VIEW(widget)) - : */hasSelection; - canPaste = /*WEBKIT_IS_WEB_VIEW(widget) + : hasSelection; + canPaste = WEBKIT_IS_WEB_VIEW(widget) ? webkit_web_view_can_paste_clipboard(WEBKIT_WEB_VIEW(widget)) - : */gtk_editable_get_editable(GTK_EDITABLE(widget)); + : gtk_editable_get_editable(GTK_EDITABLE(widget)); } action_set_sensitive("Cut", canCut, browser); action_set_sensitive("Copy", canCopy, browser); diff --git a/src/webView.c b/src/webView.c index 24a2809b..14d8e160 100644 --- a/src/webView.c +++ b/src/webView.c @@ -162,8 +162,8 @@ void webView_popup(GtkWidget* webView, GdkEventButton* event, CBrowser* browser) gboolean isLink = browser->elementUri != NULL; // Did we right-click a link? gboolean haveLinks = FALSE; // TODO: Are several links selected? gboolean isImage = FALSE; // TODO: Did we right-click an image? - gboolean isEditable = FALSE; //webkit_web_view_can_paste_clipboard(WEBKIT_WEB_VIEW(webView)); //... - gchar* selection = NULL; //webkit_web_view_get_selected_text(WEBKIT_WEB_VIEW(webView)); + gboolean isEditable = webkit_web_view_can_paste_clipboard(WEBKIT_WEB_VIEW(webView)); + gboolean hasSelection = webkit_web_view_has_selection(WEBKIT_WEB_VIEW(webView)); update_edit_items(browser); @@ -180,10 +180,10 @@ void webView_popup(GtkWidget* webView, GdkEventButton* event, CBrowser* browser) action_set_visible("LinkCopy", isLink, browser); action_set_visible("LinkBookmarkNew", isLink, browser); - action_set_visible("SelectionLinksNewTabs", haveLinks && selection && *selection, browser); - action_set_visible("SelectionTextTabNew", haveLinks && selection && *selection, browser); - action_set_visible("SelectionTextTabCurrent", haveLinks && selection && *selection, browser); - action_set_visible("SelectionTextWindowNew", haveLinks && selection && *selection, browser); + action_set_visible("SelectionLinksNewTabs", haveLinks && hasSelection, browser); + action_set_visible("SelectionTextTabNew", haveLinks && hasSelection, browser); + action_set_visible("SelectionTextTabCurrent", haveLinks && hasSelection, browser); + action_set_visible("SelectionTextWindowNew", haveLinks && hasSelection, browser); action_set_visible("ImageViewTabNew", isImage, browser); action_set_visible("ImageViewTabCurrent", isImage, browser); @@ -191,16 +191,16 @@ void webView_popup(GtkWidget* webView, GdkEventButton* event, CBrowser* browser) action_set_visible("ImageSaveWith", isImage && canDownload, browser); action_set_visible("ImageCopy", isImage, browser); - action_set_visible("Copy_", (selection && *selection) || isEditable, browser); - action_set_visible("SelectionSearch", selection && *selection, browser); - action_set_visible("SelectionSearchWith", selection && *selection, browser); - action_set_visible("SelectionSourceView", selection && *selection, browser); + action_set_visible("Copy_", hasSelection || isEditable, browser); + action_set_visible("SelectionSearch", hasSelection, browser); + action_set_visible("SelectionSearchWith", hasSelection, browser); + action_set_visible("SelectionSourceView", hasSelection, browser); - action_set_visible("SourceView", !selection, browser); + action_set_visible("SourceView", !hasSelection, browser); if(isEditable) sokoke_widget_popup(webView, GTK_MENU(browser->popup_editable), event); - else if(isLink || isImage || (selection && *selection)) + else if(isLink || isImage || hasSelection) sokoke_widget_popup(webView, GTK_MENU(browser->popup_element), event); else sokoke_widget_popup(webView, GTK_MENU(browser->popup_webView), event);