In Graphene, the width of the content area of a page may vary due to the following settings:
– columns layout
– individual column width
– overall wrapper width
All of the above may be modified by the user via the Graphene Options page. As such, we cannot specify a fixed width for the editor since it will likely not reflect the actual width of the content area when displayed on the front end. This is the reason for the dynamic width. The graphene_get_content_width() function is responsible for determining the actual content area width of the current page/post.
setTimeout is used in order to make sure TinyMCE is fully loaded before we modify the width of the content area. This is to ensure consistency and eliminate the editor loading time causing inconsistent behaviour.
The graphene_get_content_width() should not return 0, however. If there is a bug, it’s likely that that’s where it is.