Opened 17 years ago
Closed 15 years ago
#2389 closed Bug (worksforme)
Merge Cells removes attributes from tr in table
Reported by: | Matthew Leffler | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | General | Version: | FCKeditor 2.5 Beta |
Keywords: | Confirmed DataLoss | Cc: |
Description
When two cells are merged the class attribute on the tr(s) in the table is removed.
Steps to reproduce:
Click on the source button and remove the existing code and paste in the following
<table> <tbody> <tr class="sample_class"> <td>Test cell</td> <td>Test cell 2</td> </tr> </tbody> </table>
Click the source button again to exit source view and click in the two cells. Right-click and select merge cells (or merge right). Click source again and the class attribute is removed from the tr.
This is reproducible in either the demo on FCKeditor.net or the nightly build. It reproduces in FF3, FF2, IE7, and IE6 and doesn't seem to be dependent on platform used.
Attachments (3)
Change History (11)
comment:1 Changed 17 years ago by
Component: | Core : Styles → General |
---|---|
Keywords: | Confirmed added |
Version: | FCKeditor 2.6.2 → FCKeditor 2.5 Beta |
comment:2 follow-up: 3 Changed 17 years ago by
Keywords: | DataLoss added |
---|---|
Summary: | Merge Cells removes class from tr in table → Merge Cells removes attributes from tr in table |
comment:3 Changed 16 years ago by
Replying to alfonsoml:
Adding a patch for this defect. Tested it on FireFox 2.0 and IE 6 and seems to have fixed the issue.
Changed 16 years ago by
Attachment: | 2389.patch added |
---|
comment:4 Changed 16 years ago by
Having a function named CopyAttributesToArray that returns an object looks really strange. The comments should reflect the functionality in a generic way (don't use "on the row element", or that "could probably be used in other scenarios")
To me it looks strange that the functions added to fckdomtools are asymetric. One takes care of doing all the loop, but the second one only applies one attribute at a time.
The logic about rowCount is flawed. You can test that merging some cells in this table changes the classes:
<table cellspacing="1" cellpadding="1" border="1" width="200"> <tbody> <tr class="odd"> <td> </td> <td> </td> </tr> <tr> <td> </td> <td> </td> </tr> <tr class="odd"> <td> </td> <td> </td> </tr> </tbody> </table>
Changed 16 years ago by
Attachment: | 2389_3.patch added |
---|
comment:5 Changed 16 years ago by
I added a litle patch to preserve classes on rows and so on.
Regards, Koen Willems
comment:6 Changed 16 years ago by
Oops ... please wait reviewing this patch. I stumbled upon some problems with another patch i'm making.
comment:8 Changed 15 years ago by
Resolution: | → worksforme |
---|---|
Status: | new → closed |
Closing as this WFM on the CKEditor trunk.
The problem is the FCKTableHandler._InstallTableMap function that does removes all the rows in the table and then recreates them again, so any attribute in any row affected by the table operations (merge and split cells) will be lost.
It's not related to the Styles component, but to the tables handling, the code was introduced with [690], part of 2.5beta