Skip to content

Commit e24500d

Browse files
author
javiercordero
committed
Implemented the ability to move accross nameless anchors.
1 parent 8ca0f9f commit e24500d

File tree

6 files changed

+109
-4
lines changed

6 files changed

+109
-4
lines changed

ckeditor/contents.css

+4
Original file line numberDiff line numberDiff line change
@@ -130,3 +130,7 @@ a > img {
130130
border: none;
131131
outline: 1px solid #0782C1;
132132
}
133+
134+
img.cke_anchor {
135+
max-width: 0 !important;
136+
}

ckeditor/plugins/link/dialogs/anchor.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

css/editor.css

+6
Original file line numberDiff line numberDiff line change
@@ -280,6 +280,12 @@ a:active {
280280
z-index: 0;
281281
}
282282

283+
/*img.cke_anchor {
284+
width: 0;
285+
padding: 0;
286+
margin: 0;
287+
}
288+
*/
283289
/* Sidebar Styles */
284290
#sidebar-connect p {
285291
color: #999999;

index.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -495,7 +495,7 @@ <h1><small>Preview</small></h1>
495495
toolbarGroups: [
496496
{ name: 'document', groups: [ 'document', 'print', 'mode', 'tools' ] },
497497
{ name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
498-
{ name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ] },
498+
{ name: 'editing', groups: [ 'find', 'selection' ] },
499499
{ name: 'insert' },
500500
{ name: 'others' },
501501
{ name: 'colors' },

js/editor.js

+19-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

js/teleprompter.js

+78-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,9 @@ https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/onversionchange
6161
"anchor":13,
6262
"close":14,
6363
"restoreEditor":15,
64-
"resetTimer":16
64+
"resetTimer":16,
65+
"nextAnchor":17,
66+
"previousAnchor":18
6567
});
6668

6769
// Global constants
@@ -665,6 +667,59 @@ https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/onversionchange
665667
editor.postMessage( {'request':command.anchor,'data':theAnchor}, getDomain() );
666668
}
667669

670+
function moveToNextAnchor( theAnchor ) {
671+
editor.postMessage( {'request':command.anchor,'data':theAnchor}, getDomain() );
672+
}
673+
674+
function internalMoveToNextAnchor(next) {
675+
// Setup
676+
const anchors = document.getElementsByTagName("a"),
677+
currPos = -getCurrPos(),
678+
verticalDisplacement = focusVerticalDisplacementCorrector();
679+
let jump = 0;
680+
console.log("currPos", currPos);
681+
// console.log(anchors[0]);
682+
// if (flipV) {
683+
// for (let i=anchors.length-1; i>=0; i--) {
684+
// if (next) {
685+
// if (anchors[i].offsetTop-verticalDisplacement<currPos) {
686+
// jump = -promptHeight+anchors[i].offsetTop + screenHeight - verticalDisplacement;
687+
// break;
688+
// }
689+
// }
690+
// else if (anchors[i].offsetTop-verticalDisplacement>currPos) {
691+
// jump = -promptHeight+anchors[i].offsetTop + screenHeight - verticalDisplacement;
692+
// break;
693+
// }
694+
// }
695+
// }
696+
// else {
697+
if (next) {
698+
for (let i=0; i<anchors.length; i++) {
699+
console.log("i", i);
700+
console.log('offsetTop', anchors[i].offsetTop);
701+
if (anchors[i].offsetTop-verticalDisplacement>currPos) {
702+
jump = -anchors[i].offsetTop + verticalDisplacement;
703+
break;
704+
}
705+
}
706+
}
707+
else {
708+
for (let i=anchors.length-1; i>=0; i--) {
709+
console.log("i", i);
710+
console.log('offsetTop', anchors[i].offsetTop);
711+
if (anchors[i].offsetTop-verticalDisplacement<currPos) {
712+
jump = -anchors[i].offsetTop + verticalDisplacement;
713+
break;
714+
}
715+
}
716+
}
717+
// }
718+
if (jump < 0 || !next)
719+
animate(0, jump);
720+
resumeAnimation();
721+
}
722+
668723
// Update unit and unit related measurements
669724
function updateUnit() {
670725
unit = focusHeight/80;
@@ -991,6 +1046,12 @@ https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/onversionchange
9911046
case command.close :
9921047
closeInstance();
9931048
break;
1049+
case command.nextAnchor :
1050+
internalMoveToNextAnchor(true);
1051+
break;
1052+
case command.previousAnchor :
1053+
internalMoveToNextAnchor(false);
1054+
break;
9941055
default :
9951056
// Notify unknown message received.
9961057
if (debug) console.log("Unknown post message received: "+message.request) && false;
@@ -1084,6 +1145,22 @@ https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/onversionchange
10841145
case "backspace":
10851146
resetTimer();
10861147
break;
1148+
case 36:
1149+
case "Home":
1150+
listener({
1151+
data: {
1152+
request: command.previousAnchor
1153+
}
1154+
});
1155+
break;
1156+
case 35:
1157+
case "End":
1158+
listener({
1159+
data: {
1160+
request: command.nextAnchor
1161+
}
1162+
});
1163+
break;
10871164
default: // Move to anchor.
10881165
// If key is not a string
10891166
if(!isFunction(event.key.indexOf))

0 commit comments

Comments
 (0)