public function render() { $this->requireResource('differential-changeset-view-css'); $this->requireResource('syntax-highlighting-css'); Javelin::initBehavior('phabricator-oncopy', array()); $changeset = $this->changeset; $class = 'differential-changeset'; if (!$this->editable) { $class .= ' differential-changeset-immutable'; } $buttons = null; if ($this->buttons) { $buttons = phutil_tag('div', array('class' => 'differential-changeset-buttons'), $this->buttons); } $id = $this->getID(); if ($this->symbolIndex) { Javelin::initBehavior('repository-crossreference', array('container' => $id) + $this->symbolIndex); } $display_filename = $changeset->getDisplayFilename(); $display_icon = $this->getFileIcon($display_filename); $icon = id(new PHUIIconView())->setIconFont($display_icon); $renderer = DifferentialChangesetHTMLRenderer::getHTMLRendererByKey($this->getRenderer()); return javelin_tag('div', array('sigil' => 'differential-changeset', 'meta' => array('left' => nonempty($this->getVsChangesetID(), $this->changeset->getID()), 'right' => $this->changeset->getID(), 'renderURI' => $this->getRenderURI(), 'whitespace' => $this->getWhitespace(), 'highlight' => null, 'renderer' => $this->getRenderer(), 'ref' => $this->getRenderingRef(), 'autoload' => $this->getAutoload(), 'loaded' => $this->getLoaded(), 'undoTemplates' => $renderer->renderUndoTemplates()), 'class' => $class, 'id' => $id), array(id(new PhabricatorAnchorView())->setAnchorName($changeset->getAnchorName())->setNavigationMarker(true)->render(), $buttons, phutil_tag('h1', array('class' => 'differential-file-icon-header'), array($icon, $display_filename)), javelin_tag('div', array('class' => 'changeset-view-content', 'sigil' => 'changeset-view-content'), $this->renderChildren()))); }
private function buildScaffoldForView(PHUIDiffInlineCommentView $view) { $renderer = DifferentialChangesetHTMLRenderer::getHTMLRendererByKey($this->getRenderer()); $view = $renderer->getRowScaffoldForInline($view); return id(new PHUIDiffInlineCommentTableScaffold())->addRowScaffold($view); }