Guillaume Lerouge wrote:
> Hi,
> 
> On Wed, Nov 4, 2009 at 3:22 PM, Marius Dumitru Florea <
> [email protected]> wrote:
> 
>> Hi Guillaume,
>>
>> Guillaume Lerouge wrote:
>>> Hi Marius,
>>>
>>> On Wed, Nov 4, 2009 at 2:20 PM, Marius Dumitru Florea <
>>> [email protected]> wrote:
>>>
>>>> Embed HTML elements pose some problems:
>>>>
>>>> * they are loaded asynchronously and any attempt to access even the
>>>> simplest DOM property like nodeType through JavaScript raises an
>>>> exception if the object is not fully loaded (closed to
>>>> https://bugzilla.mozilla.org/show_bug.cgi?id=331672 ).
>>>>
>>>> * they can't be fully controlled from JavaScript. The specific plugin
>>>> that handles each of them decides the display and behavior (e.g.
>>>> https://bugzilla.mozilla.org/show_bug.cgi?id=250855 a flash movie might
>>>> auto start in edit mode and, unless you want to see a movie while
>>>> editing, that's not nice).
>>>>
>>>> * they aren't reloaded after they are detached and reattached to the DOM
>>>> tree using JavaScript which means that any DOM manipulation involving
>>>> one of the ancestors of a embed node can lead to the disappearance of
>>>> the embedded object. Sadly, appendChild, insertBefore and replaceChild
>>>> detach the target node before attaching it to the new location. As a
>>>> consequence there's no way to move an embed node inside the DOM tree
>>>> without detaching it.
>>>>
>>>> So I propose we replace the embed HTML elements with static image
>>>> placeholders just after the edited document finishes loading. The
>>>> placeholder will have the same size as the embedded object in view mode.
>>>>
>>>> Note, ckeditor already does this. You can check by copying the HTML from
>>>> http://jira.xwiki.org/jira/browse/XWIKI-3975 to the source of
>>>> http://ckeditor.com/demo .
>>>>
>>>> I'm +1.
>>>>
>>> Sounds good. It will also make the page easier to edit since it will be
>> less
>>> heavy.
>>>
>>> Only question: where do we display text for that image? The information
>> text
>>> we put with the image has to be easy to internationalize.
>> Indeed that's something to think about. One option is to use a generic
>> icon that stands for "Embedded Object" in the center of the placeholder
>> (which also has a border) and use a translatable text as the tool tip of
>> the placeholder. WDYT?
>>
> 

> Maybe we could use a DIV + text in the DIV + the background-image CSS
> property so that the text can be internationalized easily yet is diaplayed
> above the image.

But that text will be editable. Maybe not when the embedded object is 
generated by a macro, but the editor is not bound to the xwiki/2.0 
syntax. It should work the same with HTML syntax or a syntax that allows 
you to write "video:URL". Making the DIV container read-only is 
unfortunately not straightforward at the moment because the 
contentEditable=false attribute is not well supported by the current 
browsers. Using an image placeholder is the simplest and quickest 
solution right now.

Marius

> 
> WDYT?
> 
> Guillaume
> 
> CKeditor uses an image that contains some text (e.g. "FLASH") but that's
>> not i18n friendly.
>>
>> Marius
>>
>>> Otherwise +1 too.
>>>
>>> Guillaume
>>>
>>>
>>>> Thanks,
>>>> Marius
>>>> _______________________________________________
>>>> devs mailing list
>>>> [email protected]
>>>> http://lists.xwiki.org/mailman/listinfo/devs
>>>>
>>>
>>>
>> _______________________________________________
>> devs mailing list
>> [email protected]
>> http://lists.xwiki.org/mailman/listinfo/devs
>>
> 
> 
> 
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to