mdv 0.4.1 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a9ea415d5cb925df17d9d4d5b08159c216db759c5649acf495d1193c735f8b3a
4
- data.tar.gz: 9102fc4355708e379ba96f00e4630ddcc653d2d32baaf7ee89b01479f8ead804
3
+ metadata.gz: bec671164b80fa13809af1842d4ea302a388e81a3b51b899e5bd8b34bdd924aa
4
+ data.tar.gz: c7db8b4304851526efd75310c4a3e4b8c5753da4c6a424569a06a48f424dc3a6
5
5
  SHA512:
6
- metadata.gz: cd6419ac5e176c461df1284208f147a61bb289a28927aa6342ba2ee3a1bf5df984695a306d22476ad1ae4cd3fa4f3944831451be6814e4641dba01a7c29fc907
7
- data.tar.gz: 8b12ad0377ddebd0fffe0c2bd82991ef981e27ced5b5d5be5dbd927dd8ba6cac89fe1a1ef88cd06878341e8b125d408c3b9d5d48338a8ba4e99fcad04b0fb390
6
+ metadata.gz: 0a119b041b46a789e42402aa6025e77516adfca358c21225b95b1ff6364fd0a212fcddb07387439f4ffd03e2a6c046f3a6e3e76a3cae9ae08c59711273aeb541
7
+ data.tar.gz: b0852942ed1e080b07742cfe4dc76cc8e5fc49357aac5a17804e02e3debaf113583e3c6d7bef25620a84d042192ec9058f5ad9415f01a3150f72599393ca37c6
@@ -1,5 +1,10 @@
1
1
  # Change log
2
2
 
3
+ ## 0.5.0 / 2019-10-20
4
+
5
+ * Drop support for Ruby 2.3 and lower
6
+ * Port to GirFFI-Gtk
7
+
3
8
  ## 0.4.1 / 2018-12-09
4
9
 
5
10
  * Update dependencies
data/Gemfile CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- source 'https://rubygems.org'
3
+ source "https://rubygems.org"
4
4
 
5
5
  gemspec
data/README.md CHANGED
@@ -15,7 +15,15 @@ links open in default browser.
15
15
 
16
16
  ## Dependencies
17
17
 
18
- MDV depends on the wekit2-gtk gem.
18
+ MDV depends on the `gir_ffi-gtk` gem. Additionally, you need to install the
19
+ Webkit2Gtk library and its gobject-introspection information. On Debian and
20
+ Ubuntu, the following should work:
21
+
22
+ sudo apt-get install gir1.2-webkit2-4.0
23
+
24
+ On Ubuntu, you may also have to install two additional packages:
25
+
26
+ sudo apt-get install libwebkit2gtk-4.0-dev libjavascriptcoregtk-4.0-dev
19
27
 
20
28
  ## Contributing
21
29
 
@@ -24,5 +32,5 @@ on GitHub.
24
32
 
25
33
  ## License
26
34
 
27
- Copyright © 2012–2018 [Matijs van Zuijlen](http://www.matijs.net).
35
+ Copyright © 2012–2019 [Matijs van Zuijlen](http://www.matijs.net).
28
36
  See LICENSE for details.
data/Rakefile CHANGED
@@ -1,25 +1,25 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'rake/clean'
4
- require 'bundler/gem_tasks'
5
- require 'rake/testtask'
3
+ require "rake/clean"
4
+ require "bundler/gem_tasks"
5
+ require "rake/testtask"
6
6
 
7
7
  namespace :test do
8
8
  Rake::TestTask.new(:unit) do |t|
9
- t.libs = ['lib']
10
- t.test_files = FileList['test/mdv/*_test.rb']
9
+ t.libs = ["lib"]
10
+ t.test_files = FileList["test/mdv/*_test.rb"]
11
11
  t.warning = true
12
12
  end
13
13
 
14
14
  Rake::TestTask.new(:end_to_end) do |t|
15
- t.libs = ['lib']
16
- t.test_files = FileList['test/end_to_end/*_test.rb']
15
+ t.libs = ["lib"]
16
+ t.test_files = FileList["test/end_to_end/*_test.rb"]
17
17
  t.warning = true
18
18
  end
19
19
 
20
20
  task all: [:unit, :end_to_end]
21
21
  end
22
22
 
23
- task test: 'test:all'
23
+ task test: "test:all"
24
24
 
25
- task default: 'test'
25
+ task default: "test"
data/bin/mdv CHANGED
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env ruby
2
2
  # frozen_string_literal: true
3
3
 
4
- require 'mdv'
4
+ require "mdv"
5
5
 
6
6
  Gtk.init
7
7
 
8
- WebKit2Gtk::WebContext.default.set_cache_model :document_viewer
8
+ WebKit2::WebContext.get_default.set_cache_model :document_viewer
9
9
 
10
10
  file = ARGV[0]
11
- raise 'Need file' unless file
11
+ raise "Need file" unless file
12
12
 
13
13
  MDV::MarkdownViewer.new file
14
14
 
data/lib/mdv.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'mdv/markdown_viewer'
3
+ require_relative "mdv/markdown_viewer"
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'github/markup'
3
+ require "github/markup"
4
4
 
5
5
  module MDV
6
6
  # Markdown document class
@@ -1,7 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'webkit2-gtk'
4
- require 'mdv/document'
3
+ require "gir_ffi-gtk3"
4
+ require "mdv/document"
5
+
6
+ GirFFI.setup :WebKit2, "4.0"
5
7
 
6
8
  module MDV
7
9
  # Markdown viewer window class
@@ -23,41 +25,41 @@ module MDV
23
25
  end
24
26
 
25
27
  def connect_destroy_signal
26
- @win.signal_connect('destroy') { Gtk.main_quit }
28
+ @win.signal_connect("destroy") { Gtk.main_quit }
27
29
  end
28
30
 
29
31
  def connect_key_press_event_signal
30
- @win.signal_connect 'key-press-event' do |_wdg, evt, _ud|
31
- handle_key(evt) if evt.state.control_mask?
32
+ @win.signal_connect "key-press-event" do |_wdg, evt, _ud|
33
+ handle_key(evt) if evt.state[:control_mask]
32
34
  false
33
35
  end
34
36
  end
35
37
 
36
38
  def connect_web_view_signals
37
- web_view.signal_connect('context-menu') { true }
38
- web_view.signal_connect('decide-policy') do |_wv, decision, decision_type|
39
+ web_view.signal_connect("context-menu") { true }
40
+ web_view.signal_connect("decide-policy") do |_wv, decision, decision_type|
39
41
  handle_decide_policy(decision, decision_type)
40
42
  end
41
43
  end
42
44
 
43
45
  def handle_key(evt)
44
46
  case evt.keyval
45
- when 'q'.ord
47
+ when "q".ord
46
48
  @win.destroy
47
- when 'r'.ord
49
+ when "r".ord
48
50
  reload
49
51
  end
50
52
  end
51
53
 
52
54
  def handle_decide_policy(decision, decision_type)
53
- case decision_type.nick
54
- when 'navigation-action'
55
+ case decision_type
56
+ when :navigation_action
55
57
  action = decision.navigation_action
56
58
  if action.user_gesture?
57
59
  Gtk.show_uri_on_window(@win, action.request.uri, 0)
58
60
  true
59
61
  end
60
- when 'new-window-action'
62
+ when :new_window_action
61
63
  true
62
64
  end
63
65
  end
@@ -76,7 +78,7 @@ module MDV
76
78
  end
77
79
 
78
80
  def web_view
79
- @web_view ||= WebKit2Gtk::WebView.new
81
+ @web_view ||= WebKit2::WebView.new
80
82
  end
81
83
 
82
84
  def reload
@@ -1,12 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative '../test_helper'
4
- require 'gnome_app_driver'
3
+ require_relative "../test_helper"
4
+ require "atspi_app_driver"
5
5
 
6
6
  # Test driver for the MDV application.
7
- class MDVDriver < GnomeAppDriver
7
+ class MDVDriver < AtspiAppDriver
8
8
  def initialize
9
- super 'mdv'
9
+ super "mdv"
10
10
  end
11
11
 
12
12
  def boot(filename)
@@ -14,17 +14,17 @@ class MDVDriver < GnomeAppDriver
14
14
  end
15
15
  end
16
16
 
17
- describe 'The MDV application' do
17
+ describe "The MDV application" do
18
18
  before do
19
19
  @driver = MDVDriver.new
20
- @driver.boot('README.md')
20
+ @driver.boot("README.md")
21
21
  end
22
22
 
23
- it 'starts and can be quit with Ctrl-q' do
23
+ it "starts and can be quit with Ctrl-q" do
24
24
  @driver.press_ctrl_q
25
25
 
26
26
  status = @driver.cleanup
27
- status.exitstatus.must_equal 0
27
+ _(status.exitstatus).must_equal 0
28
28
  end
29
29
 
30
30
  after do
@@ -1,16 +1,16 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative '../test_helper'
3
+ require_relative "../test_helper"
4
4
 
5
- require 'mdv/document'
5
+ require "mdv/document"
6
6
 
7
7
  describe MDV::Document do
8
- let(:document) { MDV::Document.new('test/fixtures/test.md') }
8
+ let(:document) { MDV::Document.new("test/fixtures/test.md") }
9
9
 
10
- describe '#html' do
11
- it 'renders the correct html' do
12
- document.html.
13
- must_equal "<h1>Test</h1>\n\n<p>This is a test document.</p>\n"
10
+ describe "#html" do
11
+ it "renders the correct html" do
12
+ _(document.html)
13
+ .must_equal "<h1>Test</h1>\n\n<p>This is a test document.</p>\n"
14
14
  end
15
15
  end
16
16
  end
@@ -1,3 +1,3 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'minitest/autorun'
3
+ require "minitest/autorun"
metadata CHANGED
@@ -1,99 +1,99 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mdv
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matijs van Zuijlen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-12-09 00:00:00.000000000 Z
11
+ date: 2019-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: github-markdown
14
+ name: gir_ffi-gtk
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.6.5
19
+ version: 0.15.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.6.5
26
+ version: 0.15.0
27
27
  - !ruby/object:Gem::Dependency
28
- name: github-markup
28
+ name: github-markdown
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '3.0'
33
+ version: 0.6.5
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '3.0'
40
+ version: 0.6.5
41
41
  - !ruby/object:Gem::Dependency
42
- name: webkit2-gtk
42
+ name: github-markup
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 3.3.0
47
+ version: '3.0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 3.3.0
54
+ version: '3.0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: gnome_app_driver
56
+ name: atspi_app_driver
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 0.2.1
61
+ version: 0.6.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 0.2.1
68
+ version: 0.6.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: minitest
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '5.5'
75
+ version: '5.12'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '5.5'
82
+ version: '5.12'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rake
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '12.0'
89
+ version: '13.0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '12.0'
96
+ version: '13.0'
97
97
  description: Quickly view markdown files on GNOME
98
98
  email:
99
99
  - matijs@matijs.net
@@ -126,15 +126,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
126
126
  requirements:
127
127
  - - ">="
128
128
  - !ruby/object:Gem::Version
129
- version: 2.3.0
129
+ version: 2.4.0
130
130
  required_rubygems_version: !ruby/object:Gem::Requirement
131
131
  requirements:
132
132
  - - ">="
133
133
  - !ruby/object:Gem::Version
134
134
  version: '0'
135
135
  requirements: []
136
- rubyforge_project:
137
- rubygems_version: 2.7.6
136
+ rubygems_version: 3.0.6
138
137
  signing_key:
139
138
  specification_version: 4
140
139
  summary: Simple Markdown Viewer