diff --git a/TODO.otl b/TODO.otl
index 9f3738c..77ab714 100755
--- a/TODO.otl
+++ b/TODO.otl
@@ -5,7 +5,12 @@
| touchdown point.
[_] BUG: no drag threshold on excludedElements (TouchSwipe)
| stalled...
- [_] 82% general todo
+ [_] 81% general todo
+ [_] 33% add inline editor...
+ [X] prepare the basic framework to accept the ckeditor
+ | keyboard handler, touchswipe and other event handlers...
+ [_] add editor and no-editor modes...
+ [_] add editor detecting...
[_] add in-page live templates...
| elements that will get generated content, like page numbers etc.
[_] magazine loader and data format...
diff --git a/index.html b/index.html
index 6e2fefe..a7880d7 100755
--- a/index.html
+++ b/index.html
@@ -10,6 +10,7 @@
+
@@ -98,7 +99,7 @@ $(document).ready(function(){
return true
},
- //excludedElements: '.noSwipe',
+ excludedElements: '.noSwipe, a, [contenteditable=true]',
fingers: $.fn.swipe.fingers.ALL
//fingers: $.fn.swipe.fingers.THREE
})
@@ -129,8 +130,24 @@ $(document).ready(function(){
$('.splash').fadeOut()
}, 350)
})
+
+
+
})
+// setup ckeditor events...
+CKEDITOR.on('instanceCreated', function(evt){
+ var editor = evt.editor
+ editor.on('focus', function(){
+ toggleEditorMode('on')
+ })
+ editor.on('blur', function(){
+ toggleEditorMode('off')
+ })
+})
+
+
+
@@ -443,7 +460,13 @@ $(document).ready(function(){
- Page
+
Two column
+
+ Column 1
+
+
+ Column 2
+
diff --git a/jli.js b/jli.js
index ff191d9..33b2bde 100755
--- a/jli.js
+++ b/jli.js
@@ -249,7 +249,8 @@ var KEYBOARD_HANDLER_PROPAGATE = true
*/
function makeKeyboardHandler(keybindings, unhandled){
if(unhandled == null){
- unhandled = function(){return false}
+ //unhandled = function(){return false}
+ unhandled = function(){return KEYBOARD_HANDLER_PROPAGATE}
}
return function(evt){
var did_handling = false
@@ -259,7 +260,8 @@ function makeKeyboardHandler(keybindings, unhandled){
var bindings = keybindings[mode]
var key = evt.keyCode
- if(bindings.ignore != null && bindings.ignore.indexOf(key) != -1){
+ if(bindings.ignore == '*'
+ || bindings.ignore != null && bindings.ignore.indexOf(key) != -1){
// return true
res = res == null ? true : res
did_handling = true
diff --git a/keybindings.js b/keybindings.js
index de6822d..76ac024 100755
--- a/keybindings.js
+++ b/keybindings.js
@@ -3,6 +3,7 @@
// list of keys to be ignored by handler but still handled by the browser...
var keybindings = {
+ /*
// global bindings...
'*': {
title: 'Global',
@@ -15,14 +16,6 @@ var keybindings = {
8 // BkSp
],
- // togglable modes and options...
- /*191: {
- 'default': ImageGrid.showKeyboardBindings, // ?
- 'ctrl': ImageGrid.showSetup, // ctrl+?
- },*/
- 13: function(){togglePageView('on')}, // Enter
- 27: function(){togglePageView('off')}, // Esc
-
// ignore the modifiers (shift, alt, ctrl, caps)...
16: function(){},
17: 16,
@@ -48,10 +41,15 @@ var keybindings = {
40, // Down
],
},
+ */
+ // ignore all keys here...
+ '.editor-mode': {
+ ignore: '*'
+ },
// everything except overlays...
- '.viewer *:not(.overlay-mode *)': {
+ '.viewer:not(.editor-mode)': {
title: 'Ribbon and Viewer',
doc: '',
@@ -82,6 +80,9 @@ var keybindings = {
// combined navigation with actions..
38: function(){togglePageView()}, // Up
40: function(){togglePageView()}, // Down
+
+ 13: function(){togglePageView('on')}, // Enter
+ 27: function(){togglePageView('off')}, // Esc
}
}
diff --git a/magazine.js b/magazine.js
index 7c1f34e..6a619ce 100755
--- a/magazine.js
+++ b/magazine.js
@@ -35,7 +35,10 @@ var USE_REAL_PAGE_SIZES = false
// toggles .dragging CSS class on the viewer while dragging is in
// progress.
// NOTE: this is used mostly for styling and drag assisting...
-togglePageDragging = createCSSClassToggler('.viewer', 'dragging')
+var togglePageDragging = createCSSClassToggler('.viewer', 'dragging')
+
+
+var toggleEditorMode = createCSSClassToggler('.viewer', 'editor-mode noSwipe')
// this is here only for speed, helps with dragging...
@@ -45,7 +48,7 @@ var _PAGE_VIEW
// toggle between the two main modes:
// - single page mode (.page-view-mode)
// - thumbnail/ribbon mode
-togglePageView = createCSSClassToggler(
+var togglePageView = createCSSClassToggler(
'.viewer',
'page-view-mode',
null,