void InsertIntoTextNodeCommand::doApply() { if (!m_node->rendererIsEditable()) return; if (document()->settings() && document()->settings()->passwordEchoEnabled()) { RenderText* renderText = toRenderText(m_node->renderer()); if (renderText && renderText->isSecure()) renderText->momentarilyRevealLastTypedCharacter(m_offset + m_text.length() - 1); } ExceptionCode ec; m_node->insertData(m_offset, m_text, ec); if (AXObjectCache::accessibilityEnabled()) document()->axObjectCache()->nodeTextChangeNotification(m_node->renderer(), AXObjectCache::AXTextInserted, m_offset, m_text.length()); }
void InsertIntoTextNodeCommand::doApply() { bool passwordEchoEnabled = document().settings() && document().settings()->passwordEchoEnabled(); if (passwordEchoEnabled) document().updateLayoutIgnorePendingStylesheets(); if (!m_node->rendererIsEditable()) return; if (passwordEchoEnabled) { RenderText* renderText = toRenderText(m_node->renderer()); if (renderText && renderText->isSecure()) renderText->momentarilyRevealLastTypedCharacter(m_offset + m_text.length() - 1); } m_node->insertData(m_offset, m_text, IGNORE_EXCEPTION, CharacterData::DeprecatedRecalcStyleImmediatlelyForEditing); }
void InsertIntoTextNodeCommand::doApply() { // FIXME: EditCommand should always have a Frame, so going through Document for Settings shouldn't be necessary. bool passwordEchoEnabled = document().settings() && document().settings()->passwordEchoEnabled(); if (passwordEchoEnabled) document().updateLayoutIgnorePendingStylesheets(); if (!m_node->hasEditableStyle()) return; if (passwordEchoEnabled) { RenderText* renderText = m_node->renderer(); if (renderText && renderText->isSecure()) renderText->momentarilyRevealLastTypedCharacter(m_offset + m_text.length() - 1); } m_node->insertData(m_offset, m_text, IGNORE_EXCEPTION); if (AXObjectCache* cache = document().existingAXObjectCache()) cache->nodeTextChangeNotification(m_node.get(), AXObjectCache::AXTextInserted, m_offset, m_text); }