grumblr 2.2.0 → 2.3.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.
data/Changelog CHANGED
@@ -1,3 +1,8 @@
1
+ version 2.3.0 (2010-07-04)
2
+
3
+ * Fixed layout of video panel
4
+ * Fixed authentication to work with rest-client 1.6.0
5
+
1
6
  version 2.2.0 (2010-03-03)
2
7
 
3
8
  * Fixed authentication to work with rest-client 1.3.0+
data/README CHANGED
@@ -19,7 +19,7 @@ Grumblr is a tool to post messages to your Tumblr blog from GNOME.
19
19
  http://libxml.rubyforge.org/
20
20
 
21
21
  * REST Client
22
- http://github.com/adamwiggins/rest-client/
22
+ http://github.com/archiloque/rest-client
23
23
 
24
24
 
25
25
  === Installation ===
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.2.0
1
+ 2.3.0
data/grumblr.gemspec ADDED
@@ -0,0 +1,20 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = 'grumblr'
3
+ s.version = File.open('VERSION') { |f| f.read }
4
+ s.author = 'Paul Philippov'
5
+ s.description = "Grumblr is a message poster to Tumblr blogs from GNOME"
6
+ s.email = 'themactep@gmail.com'
7
+ s.bindir = "bin"
8
+ s.executables = ['grumblr']
9
+ s.extra_rdoc_files = ['README', 'LICENSE', 'VERSION', 'Changelog']
10
+ s.files = Dir.glob("{bin,data,lib,spec}/**/*") + \
11
+ %w(LICENSE README VERSION Changelog grumblr.gemspec)
12
+ s.homepage = 'http://themactep.com/grumblr/'
13
+ s.require_path = "lib"
14
+ s.rubyforge_project = 'grumblr'
15
+ s.summary = "Tumblr companion for GNOME"
16
+ s.has_rdoc = false
17
+ s.add_dependency "ppds-libs"
18
+ s.add_dependency "libxml-ruby"
19
+ s.add_dependency "rest-client", '>= 1.6.0'
20
+ end
data/lib/grumblr/ui.rb CHANGED
@@ -2,6 +2,7 @@ require 'gtk2'
2
2
 
3
3
  module Grumblr
4
4
 
5
+ APP_NAME = 'Grumblr'
5
6
  APP_ROOT = File.expand_path(File.join(File.dirname(__FILE__), '..', '..'))
6
7
  DATA_ROOT = File.join(APP_ROOT, 'data')
7
8
  VERSION = File.open(File.join(APP_ROOT,'VERSION')) { |f| f.read }
@@ -17,9 +18,9 @@ module Grumblr
17
18
  self.logo = Gdk::Pixbuf.new(filename, 128, 128)
18
19
 
19
20
  set_size_request 440, 340
20
- set_border_width 4
21
+ set_border_width 0
21
22
  set_allow_shrink false
22
- set_title 'Grumblr'
23
+ set_title Grumblr::APP_NAME
23
24
  set_icon self.logo
24
25
  set_default_width $cfg.get(:window_width).to_i
25
26
  set_default_height $cfg.get(:window_height).to_i
@@ -27,17 +28,19 @@ module Grumblr
27
28
  signal_connect(:destroy) { quit }
28
29
  signal_connect(:delete_event) { minimize }
29
30
  signal_connect(:check_resize) do |widget|
30
- x, y = widget.position
31
- w, h = widget.size
32
- $cfg.set :window_x_pos, x
33
- $cfg.set :window_y_pos, y
34
- $cfg.set :window_width, w
35
- $cfg.set :window_height, h
31
+ position_x, position_y = widget.position
32
+ size_w, size_h = widget.size
33
+ $cfg.set :window_x_pos, position_x
34
+ $cfg.set :window_y_pos, position_y
35
+ $cfg.set :window_width, size_w
36
+ $cfg.set :window_height, size_h
36
37
  end
37
38
  signal_connect(:window_state_event) do |widget, e|
38
39
  case e.event_type
39
40
  when Gdk::Event::WINDOW_STATE
40
41
  minimize if e.changed_mask.iconified? and e.new_window_state.iconified?
42
+ else
43
+ nil
41
44
  end
42
45
  end
43
46
  show
@@ -163,7 +166,7 @@ module Grumblr
163
166
  @video_title = Gtk::LabeledEntry.new 'Title (optional)'
164
167
 
165
168
  page.pack_start video_data, false
166
- page.pack_start @video_title, true
169
+ page.pack_start @video_title, false
167
170
  end
168
171
 
169
172
  page.pack_start @video_embed, false
@@ -217,7 +220,7 @@ module Grumblr
217
220
  toolbar.insert 3, item
218
221
 
219
222
  ### Buttons
220
- clear_button = Gtk::Button.new 'Clear'
223
+ clear_button = Gtk::Button.new ' Clear '
221
224
  clear_button.set_focus_on_click false
222
225
  clear_button.signal_connect(:clicked) do |widget|
223
226
  page = @notebook.get_nth_page @notebook.page
@@ -225,13 +228,13 @@ module Grumblr
225
228
  reset_form message_type.downcase
226
229
  end
227
230
 
228
- @private_button = Gtk::ToggleButton.new 'Private'
231
+ @private_button = Gtk::ToggleButton.new ' Private '
229
232
  @private_button.signal_connect(:toggled) do |widget|
230
233
  $cfg.set :private, widget.active?
231
234
  end
232
235
  @private_button.set_active $cfg.get(:private)
233
236
 
234
- submit_button = Gtk::Button.new 'Send'
237
+ submit_button = Gtk::Button.new ' Send '
235
238
  submit_button.signal_connect(:released) do |widget|
236
239
  post
237
240
  end
@@ -251,7 +254,7 @@ module Grumblr
251
254
  button_box.pack_start @private_button, false
252
255
  button_box.pack_start @tags, true
253
256
  button_box.pack_start format_box, false
254
- button_box.pack_start submit_button, true
257
+ button_box.pack_start submit_button, false
255
258
 
256
259
  ### Layout
257
260
  pack_start toolbar, false
@@ -310,9 +313,10 @@ module Grumblr
310
313
 
311
314
  def collect_data_for(fieldset, message_type)
312
315
  data = {}
313
- for key in fieldset[message_type]
316
+ fieldset[message_type].each do |key|
314
317
  name = "@#{message_type}_#{key.gsub(/-/,'_')}"
315
- if var = instance_variable_get(name)
318
+ var = instance_variable_get(name)
319
+ if var
316
320
  value = var.get_value
317
321
  data.merge!({ key => value })
318
322
  end
@@ -334,7 +338,7 @@ module Grumblr
334
338
  end
335
339
 
336
340
  def reset_fields_for(fieldset, message_type)
337
- for key in fieldset[message_type]
341
+ fieldset[message_type].each do |key|
338
342
  name = "@#{message_type}_#{key.gsub(/-/,'_')}"
339
343
  var = instance_variable_get(name)
340
344
  var.clear if var
@@ -451,7 +455,7 @@ module Grumblr
451
455
  end
452
456
  super
453
457
  self.logo = $gui.logo
454
- self.program_name = 'Grumblr'
458
+ self.program_name = Grumblr::APP_NAME
455
459
  self.version = Grumblr::VERSION
456
460
  self.copyright = "Copyright (c)2009, Paul Philippov"
457
461
  self.comments = "Tumblr companion for GNOME"
@@ -483,7 +487,7 @@ module Grumblr
483
487
 
484
488
  def menu
485
489
  menu = Gtk::Menu.new
486
- for item in [ ontop, sep, destroy_account, sep, about, sep, quit ]
490
+ [ ontop, sep, destroy_account, sep, about, sep, quit ].each do |item|
487
491
  menu.append item
488
492
  end
489
493
  menu.show_all
@@ -633,6 +637,7 @@ module Gtk
633
637
  self.set_left_margin 5
634
638
  self.modify_text Gtk::STATE_NORMAL, PALE
635
639
  self.buffer.set_text @label
640
+
636
641
  self.signal_connect(:focus_in_event) do |widget, type|
637
642
  if widget.buffer.text == @label
638
643
  widget.modify_text Gtk::STATE_NORMAL, DARK
@@ -640,12 +645,14 @@ module Gtk
640
645
  end
641
646
  report_length
642
647
  false
643
- end
648
+ end
649
+
644
650
  self.signal_connect(:focus_out_event) do |widget, type|
645
651
  self.clear if widget.buffer.text == ''
646
652
  $statusbar.push 0, $app.blog.title
647
653
  false
648
654
  end
655
+
649
656
  self.signal_connect(:key_release_event) do |widget, type|
650
657
  report_length
651
658
  false
@@ -654,6 +661,7 @@ module Gtk
654
661
 
655
662
  def report_length
656
663
  $statusbar.push 0, "Length: #{self.buffer.text.chars.count}"
664
+ self.buffer.text.strip
657
665
  end
658
666
 
659
667
  def get_value
data/lib/ppds/tumblr.rb CHANGED
@@ -55,13 +55,14 @@ module Ppds
55
55
 
56
56
  def query(action, data)
57
57
  raise 'Cannot authenticate without credentials' unless data[:email] and data[:password]
58
- RestClient.post(API_URL + action, data) { |response| response.body }
58
+ response = RestClient.post(API_URL + action, data)
59
+ response.to_str
59
60
  rescue RestClient::RequestFailed => e
60
61
  raise 'Query failed: %s' % e.response.body
61
62
  rescue RestClient::RequestTimeout
62
63
  raise 'Timeout occured'
63
- rescue Exception
64
- raise $!
64
+ # rescue Exception
65
+ # raise $!
65
66
  end
66
67
 
67
68
  def authenticate(email, password)
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grumblr
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.0
4
+ hash: 3
5
+ prerelease: false
6
+ segments:
7
+ - 2
8
+ - 3
9
+ - 0
10
+ version: 2.3.0
5
11
  platform: ruby
6
12
  authors:
7
13
  - Paul Philippov
@@ -9,39 +15,53 @@ autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
17
 
12
- date: 2010-03-03 00:00:00 +00:00
18
+ date: 2010-07-04 00:00:00 -04:00
13
19
  default_executable:
14
20
  dependencies:
15
21
  - !ruby/object:Gem::Dependency
16
22
  name: ppds-libs
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
20
26
  requirements:
21
27
  - - ">="
22
28
  - !ruby/object:Gem::Version
29
+ hash: 3
30
+ segments:
31
+ - 0
23
32
  version: "0"
24
- version:
33
+ type: :runtime
34
+ version_requirements: *id001
25
35
  - !ruby/object:Gem::Dependency
26
36
  name: libxml-ruby
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
37
+ prerelease: false
38
+ requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
30
40
  requirements:
31
41
  - - ">="
32
42
  - !ruby/object:Gem::Version
43
+ hash: 3
44
+ segments:
45
+ - 0
33
46
  version: "0"
34
- version:
47
+ type: :runtime
48
+ version_requirements: *id002
35
49
  - !ruby/object:Gem::Dependency
36
50
  name: rest-client
37
- type: :runtime
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
51
+ prerelease: false
52
+ requirement: &id003 !ruby/object:Gem::Requirement
53
+ none: false
40
54
  requirements:
41
55
  - - ">="
42
56
  - !ruby/object:Gem::Version
43
- version: "0"
44
- version:
57
+ hash: 15
58
+ segments:
59
+ - 1
60
+ - 6
61
+ - 0
62
+ version: 1.6.0
63
+ type: :runtime
64
+ version_requirements: *id003
45
65
  description: Grumblr is a message poster to Tumblr blogs from GNOME
46
66
  email: themactep@gmail.com
47
67
  executables:
@@ -51,29 +71,29 @@ extensions: []
51
71
  extra_rdoc_files:
52
72
  - README
53
73
  - LICENSE
54
- - Changelog
55
74
  - VERSION
75
+ - Changelog
56
76
  files:
57
77
  - bin/grumblr
58
- - data/pixmaps/grumblr.png
59
- - data/pixmaps/video.bmp
60
- - data/pixmaps/spinner.gif
78
+ - data/grumblr.desktop
61
79
  - data/pixmaps/photo.bmp
62
- - data/pixmaps/link.bmp
80
+ - data/pixmaps/text.bmp
81
+ - data/pixmaps/audio.bmp
63
82
  - data/pixmaps/chat.bmp
64
83
  - data/pixmaps/quote.bmp
84
+ - data/pixmaps/grumblr.png
65
85
  - data/pixmaps/grumblr.svg
66
- - data/pixmaps/audio.bmp
67
- - data/pixmaps/text.bmp
68
- - data/grumblr.desktop
69
- - lib/grumblr/ui.rb
70
- - lib/grumblr/core.rb
86
+ - data/pixmaps/link.bmp
87
+ - data/pixmaps/spinner.gif
88
+ - data/pixmaps/video.bmp
71
89
  - lib/ppds/tumblr.rb
90
+ - lib/grumblr/core.rb
91
+ - lib/grumblr/ui.rb
72
92
  - LICENSE
73
93
  - README
74
- - Rakefile
75
- - Changelog
76
94
  - VERSION
95
+ - Changelog
96
+ - grumblr.gemspec
77
97
  has_rdoc: true
78
98
  homepage: http://themactep.com/grumblr/
79
99
  licenses: []
@@ -84,21 +104,27 @@ rdoc_options: []
84
104
  require_paths:
85
105
  - lib
86
106
  required_ruby_version: !ruby/object:Gem::Requirement
107
+ none: false
87
108
  requirements:
88
109
  - - ">="
89
110
  - !ruby/object:Gem::Version
111
+ hash: 3
112
+ segments:
113
+ - 0
90
114
  version: "0"
91
- version:
92
115
  required_rubygems_version: !ruby/object:Gem::Requirement
116
+ none: false
93
117
  requirements:
94
118
  - - ">="
95
119
  - !ruby/object:Gem::Version
120
+ hash: 3
121
+ segments:
122
+ - 0
96
123
  version: "0"
97
- version:
98
124
  requirements: []
99
125
 
100
126
  rubyforge_project: grumblr
101
- rubygems_version: 1.3.5
127
+ rubygems_version: 1.3.7
102
128
  signing_key:
103
129
  specification_version: 3
104
130
  summary: Tumblr companion for GNOME
data/Rakefile DELETED
@@ -1,51 +0,0 @@
1
- require 'rubygems'
2
- require 'rake'
3
- require 'rake/clean'
4
- require 'rake/gempackagetask'
5
- require 'rake/rdoctask'
6
- require 'rake/testtask'
7
- require 'spec/rake/spectask'
8
-
9
- spec = Gem::Specification.new do |s|
10
- s.name = 'grumblr'
11
- s.version = File.open('VERSION') { |f| f.read }
12
- s.has_rdoc = false
13
- s.extra_rdoc_files = ['README', 'LICENSE', 'Changelog', 'VERSION']
14
- s.summary = "Tumblr companion for GNOME"
15
- s.description = "Grumblr is a message poster to Tumblr blogs from GNOME"
16
- s.author = 'Paul Philippov'
17
- s.email = 'themactep@gmail.com'
18
- s.homepage = 'http://themactep.com/grumblr/'
19
- s.rubyforge_project = 'grumblr'
20
- s.executables = ['grumblr']
21
- s.files = Dir.glob("{bin,data,lib,spec}/**/*") + \
22
- %w(LICENSE README Rakefile Changelog VERSION)
23
- s.require_path = "lib"
24
- s.bindir = "bin"
25
- s.add_dependency "ppds-libs"
26
- s.add_dependency "libxml-ruby"
27
- s.add_dependency "rest-client"
28
- end
29
-
30
- Rake::GemPackageTask.new(spec) do |p|
31
- p.gem_spec = spec
32
- p.need_tar = true
33
- p.need_zip = true
34
- end
35
-
36
- Rake::RDocTask.new do |rdoc|
37
- files =['README', 'LICENSE', 'lib/**/*.rb']
38
- rdoc.rdoc_files.add(files)
39
- rdoc.main = "README" # page to start on
40
- rdoc.title = "grumblr Docs"
41
- rdoc.rdoc_dir = 'doc/rdoc' # rdoc output folder
42
- rdoc.options << '--line-numbers'
43
- end
44
-
45
- Rake::TestTask.new do |t|
46
- t.test_files = FileList['test/**/*.rb']
47
- end
48
-
49
- Spec::Rake::SpecTask.new do |t|
50
- t.spec_files = FileList['spec/**/*.rb']
51
- end