var X_Node_updateReservedByReleaseGPU = false;
function X_Node_startUpdate( time ){
- var removal, i, xnodeOrElm, xnodesIEFilterFixAfter, xnode;
+ var removal, i, xnodeOrElm, xnodesIEFilterFixAfter, xnode, active;
if( !X_Node_updateTimerID || X_ViewPort_readyState < X_EVENT_INIT ){
return;
removal.length = 0;
};
- //
- X_UA[ 'IE5' ] && ( X_elmBody.style.visibility = 'hidden' );
-
+ // 強制的に再描画を起こす, 但し activeElement からフォーカスが外れるため復帰する
+ // IE5mode win10 で 確認
+ if( X_UA[ 'IE5' ] ){
+ active = FocusUtility_getFocusedElement();
+ X_elmBody.style.visibility = 'hidden';
+ };
+
if( X_Node_html[ '_flags' ] & X_Node_BitMask_IS_DIRTY ){
X_Node__commitUpdate( X_Node_html, X_Node_html[ '_rawObject' ].parentNode, null, X_Node_html[ '_flags' ], 1, xnodesIEFilterFixAfter = [] );
} else {
X_Node__commitUpdate( X_Node_head, X_Node_head[ '_rawObject' ].parentNode, null, X_Node_head[ '_flags' ], 1, xnodesIEFilterFixAfter = [] );
X_Node__commitUpdate( X_Node_body, X_Node_body[ '_rawObject' ].parentNode, null, X_Node_body[ '_flags' ], 1, xnodesIEFilterFixAfter = [] );
};
-
- X_UA[ 'IE5' ] && ( X_elmBody.style.visibility = '' );
+
+ if( X_UA[ 'IE5' ] ){
+ X_elmBody.style.visibility = '';
+ active && active.parentNode && FocusUtility_setTemporarilyFocus( active );
+ };
if( X_Node_updateReservedByReleaseGPU ){
X_Node_reserveUpdate();
if( !elm ){
if( !that[ '_tag' ] ){
that[ '_flags' ] &= X_Node_BitMask_RESET_DIRTY;
- elm = document.createTextNode( X_String_chrReferanceTo( that[ '_text' ] ) );
+ if( X_UA[ 'IE' ] < 8 ){
+ // \n -> \r\n に変換しないと pre タグで改行されない win10ie7(ie11 emu) で確認
+ elm = document.createTextNode( X_String_chrReferanceTo( that[ '_text' ] ).split( '\n' ).join( X_String_CRLF ) );
+ } else {
+ elm = document.createTextNode( X_String_chrReferanceTo( that[ '_text' ] ) );
+ };
if( !X_UA[ 'IE' ] ){
elm[ 'UID' ] = that[ '_uid' ];
};
// textNode
if( !that[ '_tag' ] ){
- elm.data = X_String_chrReferanceTo( that[ '_text' ] );
+ if( X_UA[ 'IE' ] < 8 ){
+ // \n -> \r\n に変換しないと pre タグで改行されない win10ie7(ie11 emu) で確認
+ elm.data = X_String_chrReferanceTo( that[ '_text' ] ).split( '\n' ).join( X_String_CRLF );
+ } else {
+ elm.data = X_String_chrReferanceTo( that[ '_text' ] );
+ };
that[ '_flags' ] &= X_Node_BitMask_RESET_DIRTY;
return;
};