From: Kouhei S. <nu...@co...> - 2017-08-11 15:08:07
|
Kouhei Sutou 2017-08-12 00:06:43 +0900 (Sat, 12 Aug 2017) New Revision: c8e9cc5d482f7ae720914b65a4d11671d7c2981d https://github.com/ruby-gnome2/ruby-gnome2/commit/c8e9cc5d482f7ae720914b65a4d11671d7c2981d Message: webkit2-gtk: follow new_with_related_view fix in upstream GitHub: #1095 Reported by Jeremy Bicha. Thanks!!! Modified files: webkit2-gtk/lib/webkit2-gtk/web-view.rb webkit2-gtk/test/test-webkit2-gtk-web-view.rb Modified: webkit2-gtk/lib/webkit2-gtk/web-view.rb (+12 -9) =================================================================== --- webkit2-gtk/lib/webkit2-gtk/web-view.rb 2017-08-10 08:59:56 +0900 (f226edd47) +++ webkit2-gtk/lib/webkit2-gtk/web-view.rb 2017-08-12 00:06:43 +0900 (513571c8f) @@ -16,16 +16,16 @@ module WebKit2Gtk class WebView - class << self - def new(*args) - return super unless args.size == 1 - return super unless args[0].is_a?(Hash) + unless private_method_defined?(:initialize_new_with_related_view) + class << self + def new(*args) + return super unless args.size == 1 + return super unless args[0].is_a?(Hash) - related_view = args[0][:related_view] - return super unless related_view - # TODO: Workaround for webkit_web_view_new_with_related_view is - # handled as method not constructor. - related_view.new_with_related_view + related_view = args[0][:related_view] + return super unless related_view + related_view.new_with_related_view + end end end @@ -53,6 +53,7 @@ module WebKit2Gtk context = options[:context] settings = options[:settings] user_content_manager = options[:user_content_manager] + related_view = options[:related_view] if context initialize_new_with_context(context) @@ -60,6 +61,8 @@ module WebKit2Gtk initialize_new_with_settings(settings) elsif user_content_manager initialize_new_with_user_content_manager(user_content_manager) + elsif related_view + initialize_new_with_related_view(related_view) else message = "must specify :context, :settings, :user_content_manager or :related_view" Modified: webkit2-gtk/test/test-webkit2-gtk-web-view.rb (+1 -1) =================================================================== --- webkit2-gtk/test/test-webkit2-gtk-web-view.rb 2017-08-10 08:59:56 +0900 (b2d17145a) +++ webkit2-gtk/test/test-webkit2-gtk-web-view.rb 2017-08-12 00:06:43 +0900 (1ac81ea0e) @@ -43,7 +43,7 @@ class TestWebKit2GtkWebView < Test::Unit::TestCase test "with related view" do settings = WebKit2Gtk::Settings.new related = WebKit2Gtk::WebView.new(settings: settings) - webview = related.new_with_related_view + webview = WebKit2Gtk::WebView.new(related_view: related) assert_equal(settings, webview.settings) end |