chiliproject_side_by_side_wiki_edit 0.1.1 → 0.2.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/History.txt CHANGED
@@ -1,3 +1,13 @@
1
+ === 0.2.0 2013-01-07
2
+
3
+ * 2 enhancements
4
+ * Introduces writing mode, which removes all layout from the wiki edit
5
+ page which is not relevant to the task at hand of editing wiki pages
6
+ to get optimal screen real-estate for the editor and preview
7
+ elements
8
+ * Resizing the editor textarea element on supported browsers resizes
9
+ the preview window accordingly
10
+
1
11
  === 0.1.1 2012-12-06
2
12
 
3
13
  * 1 enhancement:
@@ -1,22 +1,30 @@
1
1
  jQuery(function($) {
2
+ var htmlElement = $('html');
2
3
  var editor = $('textarea.wiki-edit');
3
- var editor_parent = editor.parentsUntil('p').parent();
4
4
  var preview = $('div#preview');
5
5
  var preview_link = $('input[name=commit]').next();
6
6
 
7
7
  var disable_side_by_side_mode = function() {
8
- editor_parent.add(preview).removeClass('side_by_side');
8
+ htmlElement.removeClass('side_by_side');
9
+
9
10
  editor.off('scroll');
11
+ editor.off('mouseup');
12
+
10
13
  $('#content').append(preview);
11
14
  };
12
15
 
16
+ var disable_writing_mode = function() {
17
+ htmlElement.removeClass('writing_mode');
18
+ }
19
+
13
20
  var enable_side_by_side_mode = function() {
14
- editor_parent.add(preview).addClass('side_by_side');
21
+ htmlElement.addClass('side_by_side');
15
22
 
16
- editor_parent.before(preview);
17
- preview.height(editor.height() + 5);
23
+ editor.before(preview);
24
+ resize_preview_to_editor_height();
18
25
 
19
26
  editor.scroll(preview, scroll_preview);
27
+ editor.mouseup(resize_preview_if_required);
20
28
  editor.scroll();
21
29
 
22
30
  if($('fieldset.preview').length === 0) {
@@ -24,6 +32,23 @@ jQuery(function($) {
24
32
  }
25
33
  };
26
34
 
35
+ var enable_writing_mode = function() {
36
+ htmlElement.addClass('writing_mode');
37
+ }
38
+
39
+ var resize_preview_if_required = function() {
40
+ var newEditorHeight = editor.outerHeight();
41
+
42
+ if(newEditorHeight != editor.data('height')) {
43
+ editor.data('height', newEditorHeight);
44
+ resize_preview_to_editor_height();
45
+ }
46
+ }
47
+
48
+ var resize_preview_to_editor_height = function() {
49
+ preview.height(editor.height() + 6);
50
+ }
51
+
27
52
  var scroll_preview = function(event) {
28
53
  var source_position = this.scrollTop / (this.scrollHeight - $(this).innerHeight());
29
54
  var target = $(event.data);
@@ -39,7 +64,20 @@ jQuery(function($) {
39
64
  }
40
65
  };
41
66
 
67
+ var toggle_writing_mode = function() {
68
+ if(this.checked) {
69
+ enable_writing_mode();
70
+ } else {
71
+ disable_writing_mode();
72
+ }
73
+ };
74
+
42
75
  preview_link.after($('<label for="side_by_side_mode">Show editor and preview side-by-side</label>'))
43
- .after($('<input id="side_by_side_mode" type="checkbox" />'));
76
+ .after($('<input id="side_by_side_mode" type="checkbox" />'))
77
+ .after($('<label for="writing_mode">Writing mode</label>'))
78
+ .after($('<input id="writing_mode" type="checkbox" />'));
44
79
  $('#side_by_side_mode').click(toggle_side_by_side_mode);
80
+ $('#writing_mode').click(toggle_writing_mode);
81
+
82
+ editor.data('height', editor.outerHeight());
45
83
  });
@@ -1,9 +1,18 @@
1
- .side_by_side {
1
+ .side_by_side textarea.wiki-edit {
2
+ resize: vertical;
2
3
  width: 49.5%;
3
4
  }
4
5
 
5
- #preview.side_by_side {
6
+ .side_by_side #preview {
6
7
  float: right;
7
- margin-top: 5ex;
8
8
  overflow-y: scroll;
9
+ width: 49.5%;
10
+ }
11
+
12
+ .writing_mode #footer, .writing_mode #side-container, .writing_mode #top-menu {
13
+ display: none;
14
+ }
15
+
16
+ .writing_mode div#content {
17
+ margin: 0;
9
18
  }
@@ -1,3 +1,3 @@
1
1
  module ChiliprojectSideBySideWikiEdit
2
- VERSION = "0.1.1"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chiliproject_side_by_side_wiki_edit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-06 00:00:00.000000000 Z
12
+ date: 2013-01-07 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: Allows side by side editor/preview functionality for ChiliProject wiki
15
15
  pages
@@ -49,7 +49,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
49
49
  version: '0'
50
50
  segments:
51
51
  - 0
52
- hash: 1742587861404646340
52
+ hash: 55443892493408792
53
53
  required_rubygems_version: !ruby/object:Gem::Requirement
54
54
  none: false
55
55
  requirements:
@@ -58,7 +58,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
58
58
  version: '0'
59
59
  segments:
60
60
  - 0
61
- hash: 1742587861404646340
61
+ hash: 55443892493408792
62
62
  requirements: []
63
63
  rubyforge_project:
64
64
  rubygems_version: 1.8.23