Compare commits

..

3 Commits
4.3.1 ... 4.3.3

Author SHA1 Message Date
Jamie Peabody
b9bc901dd2 patch(#152): fixes resize issue when using zoom 2021-10-02 14:19:15 +01:00
Jamie Peabody
b49c9ce40f Updated README.md
Fixed tgz installation instructions.
2021-09-30 08:05:07 +01:00
Jamie Peabody
712cbe8472 patch(#151): resets the current diff when setValue, clear, lhs, or rhs are called 2021-06-23 21:57:38 +01:00
4 changed files with 21 additions and 6 deletions

View File

@@ -1,5 +1,11 @@
# Changes
## 4.3.3
* patch: Fixes resize issue when using zoom [#152](https://github.com/wickedest/Mergely/issues/152).
## 4.3.2
* patch: Reset the current change position when [setValue](https://mergely.com/doc##options_callbacks), [clear](https://mergely.com/doc#clear), [lhs](https://mergely.com/doc#lhs) or [rhs](https://mergely.com/doc#rhs) are called.
## 4.3.1
* patch: Updated README.md to fix incorrect option name.

View File

@@ -25,8 +25,8 @@ Unpack mergely.tgz into a folder, for example, `./lib`, and add the following to
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.32.0/codemirror.min.js"></script>
<link rel="stylesheet" media="all" href="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.32.0/codemirror.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.32.0/addon/search/searchcursor.min.js"></script>
<script src="lib/mergely/lib/mergely.js" type="text/javascript"></script>
<link rel="stylesheet" media="all" href="lib/mergely/lib/mergely.css" />
<script src="package/lib/mergely.js" type="text/javascript"></script>
<link rel="stylesheet" media="all" href="package/lib/mergely.css" />
```
Create a div for the editor in `<body>`.

View File

@@ -1,6 +1,6 @@
{
"name": "mergely",
"version": "4.3.1",
"version": "4.3.3",
"description": "A javascript UI for diff/merge",
"directories": {
"doc": "doc",

View File

@@ -489,11 +489,15 @@ jQuery.extend(Mgly.CodeMirrorDiffView.prototype, {
this.unbind();
},
lhs: function(text) {
this.changes = []; // invalidate existing changes
// invalidate existing changes and current position
this.changes = [];
delete this._current_diff;
this.editor[this.id + '-lhs'].setValue(text);
},
rhs: function(text) {
this.changes = []; // invalidate existing changes
// invalidate existing changes and current position
this.changes = [];
delete this._current_diff;
this.editor[this.id + '-rhs'].setValue(text);
},
update: function() {
@@ -607,7 +611,6 @@ jQuery.extend(Mgly.CodeMirrorDiffView.prototype, {
else if (!this.rhs_cmsettings.readOnly) re.setValue(le.getValue());
},
summary: function() {
//console.log('HERE');
return {
numChanges: this.changes.length,
lhsLength: this.editor[this.id + '-lhs'].getValue().length,
@@ -634,6 +637,7 @@ jQuery.extend(Mgly.CodeMirrorDiffView.prototype, {
if (side == 'rhs' && this.rhs_cmsettings.readOnly) return;
var ed = this.editor[this.id + '-' + side];
ed.setValue('');
delete this._current_diff;
},
cm: function(side) {
return this.editor[this.id + '-' + side];
@@ -659,6 +663,8 @@ jQuery.extend(Mgly.CodeMirrorDiffView.prototype, {
}
},
resize: function() {
// recalculate line height as it may be zoomed
this.em_height = null;
this.settings.resize();
this._changing(this.id + '-lhs', this.id + '-rhs');
this._set_top_offset(this.id + '-lhs');
@@ -820,6 +826,7 @@ jQuery.extend(Mgly.CodeMirrorDiffView.prototype, {
var sz_timeout1 = null;
var sz = function(init) {
if (self.settings.resize) self.settings.resize(init);
self.resize();
self.editor[self.id + '-lhs'].refresh();
self.editor[self.id + '-rhs'].refresh();
};
@@ -870,6 +877,7 @@ jQuery.extend(Mgly.CodeMirrorDiffView.prototype, {
self.trace('init', 'setting lhs value');
this.settings.lhs(function setValue(value) {
this._initializing = true;
delete this._current_diff;
this.editor[this.id + '-lhs'].getDoc().setValue(value);
}.bind(this));
}
@@ -877,6 +885,7 @@ jQuery.extend(Mgly.CodeMirrorDiffView.prototype, {
self.trace('init', 'setting rhs value');
this.settings.rhs(function setValue(value) {
this._initializing = true;
delete this._current_diff;
this.editor[this.id + '-rhs'].getDoc().setValue(value);
}.bind(this));
}