Welcome to NeoOffice developer notes and announcements
NeoOffice
Developer notes and announcements
 
 

Problems after upgrading to El Capitan or Sierra? Try these steps
Download or installation problems? Try these steps


Support
· NeoOffice Support
· NeoWiki


Announcements
· Twitter @NeoOffice


Downloads
· Download NeoOffice
· Download latest patch
· User Guide
· User Guide Volume 2


RSS Feeds
· Announcements Only
· All Posts


  
NeoOffice :: View topic - Fix for hanging when pasting in a Writer table cell
 SearchSearch   ProfileProfile   Log inLog in 

Fix for hanging when pasting in a Writer table cell
 
Post new topic   Reply to topic    NeoOffice Forum Index -> NeoOffice Testing
View previous topic :: View next topic  
Author Message
pluby
The Architect
The Architect


Joined: Jun 16, 2003
Posts: 11637
Location: California, USA

PostPosted: Fri May 29, 2015 9:13 am    Post subject: Fix for hanging when pasting in a Writer table cell Reply with quote

A user discovered a bug that causes NeoOffice to hang. When pasting many pages of text into a table cell in a Writer document, NeoOffice will hang for several minutes. The bug is caused by NeoOffice's underlying OpenOffice code recalculating the new size of the table cell to include the pasted text.

I think that I have fixed this bug by stopping OpenOffice's cell size recalculation loop after the recalculation has been running for more than 15 seconds and to fix cell size recalculation in the background so that you can continue editing the document.

You can get the fix by installing one of the following test patches:

NeoOffice 2014.11:
http://nick.neooffice.org/test/NeoOffice-2014.11-Test-1-Intel.dmg

NeoOffice 2014.11 Free Edition:
http://nick.neooffice.org/test/NeoOffice-2014.11_Free_Edition-Test-1-Intel.dmg

NeoOffice 3.4.1:
http://nick.neooffice.org/test/NeoOffice-3.4.1-Patch-15-Test-1-Intel.dmg

Patrick
Back to top
View user's profile Send private message Visit poster's website
pluby
The Architect
The Architect


Joined: Jun 16, 2003
Posts: 11637
Location: California, USA

PostPosted: Sun May 31, 2015 9:09 pm    Post subject: Reply with quote

After more testing, I found that my bug fix in the previous test patches can cause truncation of the pasted data when printing or exporting to PDF so I have modified the code to disable my fix while NeoOffice is printing or exporting to PDF.

You can get the modified code by installing one of the following test patches:

NeoOffice 2014.11:
http://nick.neooffice.org/test/NeoOffice-2014.11-Test-2-Intel.dmg

NeoOffice 2014.11 Free Edition:
http://nick.neooffice.org/test/NeoOffice-2014.11_Free_Edition-Test-2-Intel.dmg

NeoOffice 3.4.1:
http://nick.neooffice.org/test/NeoOffice-3.4.1-Patch-15-Test-2-Intel.dmg

Patrick
Back to top
View user's profile Send private message Visit poster's website
pluby
The Architect
The Architect


Joined: Jun 16, 2003
Posts: 11637
Location: California, USA

PostPosted: Sat Jun 06, 2015 9:24 am    Post subject: Reply with quote

Although I reduced the time that NeoOffice hangs when pasting many pages of text into a table cell in a Writer document, I found that the OpenOffice bug that I fixed can also cause hanging when opening, saving, printing, exporting to PDF, or previewing lengthy, 100+ page documents with tables.

In the following test patch, I have made the following changes that should significantly reduce the amount of hanging that occurs when using such lengthy documents:
  • In the previous test patch, NeoOffice would still hang for 15 - 30 seconds after pasting many pages of text into a table cell in a Writer document. NeoOffice should now hang for only a few seconds after such pasting.
  • In the previous test patch, NeoOffice would hang for several minutes when printing, saving, exporting to PDF, or previewing. Basically, we had merely deferred the code that caused hanging after pasting so NeoOffice now runs small chunks of the deferred code in the background. After a few minutes of viewing or editing your document, all of the deferred code should have run and, at that point, printing, saving, exporting to PDF, or previewing should not cause NeoOffice to hang.
  • NeoOffice would hang for several minutes when opening lengthy .doc or .rtf documents with tables. By backporting a small fix from the LibreOffice 4.4 code, NeoOffice now opens most lengthy documents that do not have any computed fields (page number, page count, date, etc.) in less than 15 seconds.
You can get these changes by installing one of the following test patches:

NeoOffice 2014.11:
http://nick.neooffice.org/test/NeoOffice-2014.11-Test-3-Intel.dmg

NeoOffice 2014.11 Free Edition:
http://nick.neooffice.org/test/NeoOffice-2014.11_Free_Edition-Test-3-Intel.dmg

NeoOffice 3.4.1:
http://nick.neooffice.org/test/NeoOffice-3.4.1-Patch-15-Test-3-Intel.dmg

Patrick
Back to top
View user's profile Send private message Visit poster's website
pluby
The Architect
The Architect


Joined: Jun 16, 2003
Posts: 11637
Location: California, USA

PostPosted: Wed Jun 17, 2015 7:41 am    Post subject: Reply with quote

I found one more case where the OpenOffice bug that I fixed can cause NeoOffice to hang. When saving lengthy, 100+ page documents with tables in Writer, NeoOffice can hang while saving a PDF thumbnail image.

Since the PDF thumbnail image is only used for OS X's Quick Look feature, I have modified the code so that NeoOffice skips calculating text and table sizes when saving. By skipping the recalculation step when creating a PDF thumbnail image, the thumbnail image for lengthy documents that you see in the Finder may have some slightly mispositioned text or tables, but NeoOffice will not hang when saving.

Calculating text and table sizes occurs when printing and exporting to PDF to ensure that all text and tables are properly positioned based on the glyph sizes of all fonts used in the document. Calculating glyph sizes for all text in a lengthy document can be very timeconsuming. In this calculation is where NeoOffice would hang when creating a PDF thumbnail while saving.

You can get this change by installing one of the following test patches:

NeoOffice 2014.11:
http://nick.neooffice.org/test/NeoOffice-2014.11-Test-4-Intel.dmg

NeoOffice 2014.11 Free Edition:
http://nick.neooffice.org/test/NeoOffice-2014.11_Free_Edition-Test-4-Intel.dmg

NeoOffice 3.4.1:
http://nick.neooffice.org/test/NeoOffice-3.4.1-Patch-15-Test-4-Intel.dmg

Patrick
Back to top
View user's profile Send private message Visit poster's website
pluby
The Architect
The Architect


Joined: Jun 16, 2003
Posts: 11637
Location: California, USA

PostPosted: Thu Jun 18, 2015 8:17 pm    Post subject: Reply with quote

The test patches in my last post eliminated hanging when saving lengthy Writer documents with tables. After I posted those test patches, I found a way to also eliminate hanging when printing, previewing, and exporting to PDF.

In the following test patches, NeoOffice still calculates text and table sizes when printing, previewing, or exporting to PDF. But I have modified the code so that roughly every 30 seconds during this calculation NeoOffice will display a dialog with "Continue" and "Cancel" buttons. Pressing the "Cancel" button will end this calculation process and go straight to printing, previewing, or exporting to PDF.

Also, in the following test patches I fixed a crashing bug. The crashing bug would sometimes occurs when the cursor was in a note in a Writer document and you then clicked in text several hundred pages down from the note.

You can get these changes by installing one of the following test patches:

NeoOffice 2014.11:
http://nick.neooffice.org/test/NeoOffice-2014.11-Test-5-Intel.dmg

NeoOffice 2014.11 Free Edition:
http://nick.neooffice.org/test/NeoOffice-2014.11_Free_Edition-Test-5-Intel.dmg

NeoOffice 3.4.1:
http://nick.neooffice.org/test/NeoOffice-3.4.1-Patch-15-Test-5-Intel.dmg

Patrick
Back to top
View user's profile Send private message Visit poster's website
pluby
The Architect
The Architect


Joined: Jun 16, 2003
Posts: 11637
Location: California, USA

PostPosted: Mon Jun 22, 2015 2:48 pm    Post subject: Reply with quote

I found that NeoOffice hangs when you resize a document window while printing or exporting to PDF.

To fix this particular hanging bug, I applied the fix in my last test patch to another portion of NeoOffice's underlying OpenOffice Writer print code.

You can get this bug fix by installing one of the following test patches:

NeoOffice 2014.11:
http://nick.neooffice.org/test/NeoOffice-2014.11-Test-6-Intel.dmg

NeoOffice 2014.11 Free Edition:
http://nick.neooffice.org/test/NeoOffice-2014.11_Free_Edition-Test-6-Intel.dmg

NeoOffice 3.4.1:
http://nick.neooffice.org/test/NeoOffice-3.4.1-Patch-15-Test-6-Intel.dmg

Patrick
Back to top
View user's profile Send private message Visit poster's website
pluby
The Architect
The Architect


Joined: Jun 16, 2003
Posts: 11637
Location: California, USA

PostPosted: Tue Aug 04, 2015 5:43 pm    Post subject: Reply with quote

FYI. I have included the fixes for these bugs in NeoOffice 2014.12 which is available in Apple's Mac App Store.

I have also included the fixes in NeoOffice 3.4.1 Patch 16 which can be downloaded from the NeoOffice patch download page.

Patrick
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    NeoOffice Forum Index -> NeoOffice Testing All times are GMT - 7 Hours
Page 1 of 1

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum

Powered by phpBB © 2001, 2005 phpBB Group

All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © Planamesa Inc.
NeoOffice is a registered trademark of Planamesa Inc. and may not be used without permission.
PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Page Generation: 0.02 Seconds