https://svn.code.sf.net/p/tikiwiki/code/branches/experimental/ckeditor4
Based on trunk revision 45103

This branch will integrate new CkEditor4 functionality

  • Inline editing


See Also
CKEditor4

Inline editing

Objectives

  • The editor works in-context. No loading of new pages
  • Inline editing maintains the page history and other data as regular "frame" editing.
  • Inline and frame edit modes can be mixed.
  • Edit mode can be entered/exited as needed. An exit means Save or Discard changes
  • Wiki pages are saved in their "native" format, i.e. either html or wiki syntax.


About inline editing

See http://docs.ckeditor.com/#!/guide/dev_inline for details.

Inline editing is controlled by the "contenteditable='true'" attribute, which is added to DIV's that should be editable.
Additionally a DIV id is specified, which should be edited. In Tiki id='page-data' contains the wiki page/article content.

There should an activation of inline editing. When activated, the check if the page is already being edited must be done.

The Tiki integration must be able to save the content changed by inline editing. This can be implemented by adding a "Save" button to the inline editor toolbar.

If a page has been changed, not saved and the user attempts to leave the page, a warning should be given.

Wiki content can be in wiki format or HTML format. Inline edited content must/should be saved in the same format as is currently used by the page/content. So, pages in wiki format is saved in wiki format, and pages in HTML format is saved in HTML format.
HTML can represent more "things" than wiki format, e.g. a table border width. So, when content is saved in wiki format, there is a change of some formatting loss. Pages in HTML format should have no loss.

The toolbar for inline edit mode will also occur in-context. If the edited context is a div inside a page, the toolbar is displayed inside the page. So, inline editing should probably use a smaller, less intrusive toolbar than the frame editor. Or it could be an option to use a more simplified editor.