Skip to content

Commit 867fbdc

Browse files
committed
automatically resize diff pane to match window height. Does not adjust dynamically as the window is resized, however
1 parent a88e9cf commit 867fbdc

2 files changed

Lines changed: 14 additions & 5 deletions

File tree

air/diffCmd.html

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,9 @@ <h3>Edit</h3>
3232
function appLoad() {
3333
window.nativeWindow.maximize();
3434

35+
maximizeHeight(document.getElementById('scrollLeft'));
36+
maximizeHeight(document.getElementById('scrollRight'));
37+
3538
air.NativeApplication.nativeApplication.addEventListener(air.InvokeEvent.INVOKE, onInvoke);
3639

3740
var scrollLeft = document.getElementById('scrollLeft');
@@ -48,6 +51,12 @@ <h3>Edit</h3>
4851
});
4952
}
5053

54+
function maximizeHeight(element) {
55+
if (window.innerHeight) {
56+
element.style.height = (window.innerHeight - element.offsetTop - 10) + "px";
57+
}
58+
}
59+
5160
function onInvoke(event) {
5261
var original = readFile(event.currentDirectory, event.arguments[0]);
5362
var edit = readFile(event.currentDirectory, event.arguments[1]);

src/Diff.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ SourceDiff.Diff = function(ignoreLeadingWS) {
3030
var originalTrimmed = checkTrimLeadingWhiteSpace(originalLine);
3131
var editedTrimmed = checkTrimLeadingWhiteSpace(editedLine);
3232

33-
var s1Offset = originalLine.length - originalTrimmed.length;
34-
var s2Offset = editedLine.length - editedTrimmed.length;
33+
var originalOffset = originalLine.length - originalTrimmed.length;
34+
var editOffset = editedLine.length - editedTrimmed.length;
3535

3636
originalTrimmed = trimTrailingWhiteSpace(originalTrimmed);
3737
editedTrimmed = trimTrailingWhiteSpace(editedTrimmed);
@@ -48,18 +48,18 @@ SourceDiff.Diff = function(ignoreLeadingWS) {
4848
while (i >= 0 && j >= 0) {
4949
if (originalTrimmed[i - 1] === editedTrimmed[j - 1]) {
5050
if (originalTrimmed[i - 1]) {
51-
diff.addCommon(s1Offset + i - 1, s2Offset + j - 1);
51+
diff.addCommon(originalOffset + i - 1, editOffset + j - 1);
5252
}
5353
i--;
5454
j--;
5555
} else if (j >= 0 && (i === 0 || matrix[i][j - 1] >= matrix[i - 1][j])) {
5656
if (editedTrimmed[j - 1].length > 0) {
57-
diff.addInsert(s2Offset + j - 1);
57+
diff.addInsert(editOffset + j - 1);
5858
}
5959
j--;
6060
} else if (i >= 0 && (j === 0 || matrix[i][j - 1] < matrix[i - 1][j])) {
6161
if (originalTrimmed[i - 1].length > 0) {
62-
diff.addDelete(s1Offset + i - 1);
62+
diff.addDelete(originalOffset + i - 1);
6363
}
6464
i--;
6565
}

0 commit comments

Comments
 (0)