2021-01-07 21:49:48 +01:00
|
|
|
'use strict';
|
|
|
|
|
|
|
|
describe(`Really long text line goes to character within text line if text line is last
|
|
|
|
line in viewport if the second line is also incredibly long`, function () {
|
|
|
|
beforeEach(function (cb) {
|
|
|
|
helper.newPad({
|
|
|
|
cb: async () => {
|
|
|
|
await helper.clearPad();
|
|
|
|
// 200 lines
|
|
|
|
await helper.edit(
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world\n ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'hello world hello world hello world hello world hello world hello world hello world ' +
|
|
|
|
'\n\n\n\n\n\n\n\n\n ');
|
|
|
|
cb();
|
|
|
|
},
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
it('Pg down on long line keeps char on the same line but with large X offset', async function () {
|
|
|
|
await helper.edit('xxx', 1); // caret is offset 6
|
|
|
|
await helper.waitForPromise(() => {
|
|
|
|
if ((helper.padInner$.document.getSelection().anchorOffset === 0) &&
|
|
|
|
(helper.caretLineNumber() === 1)) {
|
|
|
|
return true;
|
|
|
|
} else {
|
|
|
|
helper.pageUp();
|
|
|
|
}
|
|
|
|
});
|
|
|
|
helper.pageDown();
|
|
|
|
await helper.waitForPromise(() => {
|
|
|
|
if ((helper.padInner$.document.getSelection().anchorOffset > 0) &&
|
|
|
|
(helper.caretLineNumber() === 1)) {
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
});
|
|
|
|
helper.pageUp();
|
|
|
|
await helper.waitForPromise(() => {
|
|
|
|
if ((helper.padInner$.document.getSelection().anchorOffset > 0) &&
|
|
|
|
(helper.caretLineNumber() === 1)) {
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|