mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-22 23:02:42 +01:00
Set an explicit height when drawing the dependent revision graph
Summary: See PHI1900. Recent changes to how commit graphs are drawn made the height automatic in most cases, but it fails in Differential because the element isn't initially visible so the computed height is 0. Just give them an explicit height so they show up again. Test Plan: Viewed graphs in Maniphest, Differential, and Diffusion; saw them all render properly. Differential Revision: https://secure.phabricator.com/D21481
This commit is contained in:
parent
058d2489e7
commit
2b8bbae5fb
5 changed files with 45 additions and 14 deletions
|
@ -15,7 +15,7 @@ return array(
|
||||||
'differential.pkg.css' => '5c459f92',
|
'differential.pkg.css' => '5c459f92',
|
||||||
'differential.pkg.js' => '5080baf4',
|
'differential.pkg.js' => '5080baf4',
|
||||||
'diffusion.pkg.css' => '42c75c37',
|
'diffusion.pkg.css' => '42c75c37',
|
||||||
'diffusion.pkg.js' => '8ee48a4b',
|
'diffusion.pkg.js' => '78c9885d',
|
||||||
'maniphest.pkg.css' => '35995d6d',
|
'maniphest.pkg.css' => '35995d6d',
|
||||||
'maniphest.pkg.js' => 'c9308721',
|
'maniphest.pkg.js' => 'c9308721',
|
||||||
'rsrc/audio/basic/alert.mp3' => '17889334',
|
'rsrc/audio/basic/alert.mp3' => '17889334',
|
||||||
|
@ -394,7 +394,7 @@ return array(
|
||||||
'rsrc/js/application/diffusion/ExternalEditorLinkEngine.js' => '48a8641f',
|
'rsrc/js/application/diffusion/ExternalEditorLinkEngine.js' => '48a8641f',
|
||||||
'rsrc/js/application/diffusion/behavior-audit-preview.js' => 'b7b73831',
|
'rsrc/js/application/diffusion/behavior-audit-preview.js' => 'b7b73831',
|
||||||
'rsrc/js/application/diffusion/behavior-commit-branches.js' => '4b671572',
|
'rsrc/js/application/diffusion/behavior-commit-branches.js' => '4b671572',
|
||||||
'rsrc/js/application/diffusion/behavior-commit-graph.js' => '3be6ef4f',
|
'rsrc/js/application/diffusion/behavior-commit-graph.js' => 'ac10c917',
|
||||||
'rsrc/js/application/diffusion/behavior-locate-file.js' => '87428eb2',
|
'rsrc/js/application/diffusion/behavior-locate-file.js' => '87428eb2',
|
||||||
'rsrc/js/application/diffusion/behavior-pull-lastmodified.js' => 'c715c123',
|
'rsrc/js/application/diffusion/behavior-pull-lastmodified.js' => 'c715c123',
|
||||||
'rsrc/js/application/doorkeeper/behavior-doorkeeper-tag.js' => '6a85bc5a',
|
'rsrc/js/application/doorkeeper/behavior-doorkeeper-tag.js' => '6a85bc5a',
|
||||||
|
@ -623,7 +623,7 @@ return array(
|
||||||
'javelin-behavior-differential-diff-radios' => '925fe8cd',
|
'javelin-behavior-differential-diff-radios' => '925fe8cd',
|
||||||
'javelin-behavior-differential-populate' => 'b86ef6c2',
|
'javelin-behavior-differential-populate' => 'b86ef6c2',
|
||||||
'javelin-behavior-diffusion-commit-branches' => '4b671572',
|
'javelin-behavior-diffusion-commit-branches' => '4b671572',
|
||||||
'javelin-behavior-diffusion-commit-graph' => '3be6ef4f',
|
'javelin-behavior-diffusion-commit-graph' => 'ac10c917',
|
||||||
'javelin-behavior-diffusion-locate-file' => '87428eb2',
|
'javelin-behavior-diffusion-locate-file' => '87428eb2',
|
||||||
'javelin-behavior-diffusion-pull-lastmodified' => 'c715c123',
|
'javelin-behavior-diffusion-pull-lastmodified' => 'c715c123',
|
||||||
'javelin-behavior-document-engine' => '243d6c22',
|
'javelin-behavior-document-engine' => '243d6c22',
|
||||||
|
@ -1250,11 +1250,6 @@ return array(
|
||||||
'phuix-button-view',
|
'phuix-button-view',
|
||||||
'javelin-external-editor-link-engine',
|
'javelin-external-editor-link-engine',
|
||||||
),
|
),
|
||||||
'3be6ef4f' => array(
|
|
||||||
'javelin-behavior',
|
|
||||||
'javelin-dom',
|
|
||||||
'javelin-stratcom',
|
|
||||||
),
|
|
||||||
'3dc5ad43' => array(
|
'3dc5ad43' => array(
|
||||||
'javelin-behavior',
|
'javelin-behavior',
|
||||||
'javelin-stratcom',
|
'javelin-stratcom',
|
||||||
|
@ -1927,6 +1922,11 @@ return array(
|
||||||
'javelin-dom',
|
'javelin-dom',
|
||||||
'phabricator-notification',
|
'phabricator-notification',
|
||||||
),
|
),
|
||||||
|
'ac10c917' => array(
|
||||||
|
'javelin-behavior',
|
||||||
|
'javelin-dom',
|
||||||
|
'javelin-stratcom',
|
||||||
|
),
|
||||||
'ac2b1e01' => array(
|
'ac2b1e01' => array(
|
||||||
'javelin-behavior',
|
'javelin-behavior',
|
||||||
'javelin-stratcom',
|
'javelin-stratcom',
|
||||||
|
|
|
@ -510,6 +510,11 @@ final class DifferentialRevisionViewController
|
||||||
->setLoadEntireGraph(true)
|
->setLoadEntireGraph(true)
|
||||||
->loadGraph();
|
->loadGraph();
|
||||||
if (!$stack_graph->isEmpty()) {
|
if (!$stack_graph->isEmpty()) {
|
||||||
|
// See PHI1900. The graph UI element now tries to figure out the correct
|
||||||
|
// height automatically, but currently can't in this case because the
|
||||||
|
// element is not visible when the page loads. Set an explicit height.
|
||||||
|
$stack_graph->setHeight(34);
|
||||||
|
|
||||||
$stack_table = $stack_graph->newGraphTable();
|
$stack_table = $stack_graph->newGraphTable();
|
||||||
|
|
||||||
$parent_type = DifferentialRevisionDependsOnRevisionEdgeType::EDGECONST;
|
$parent_type = DifferentialRevisionDependsOnRevisionEdgeType::EDGECONST;
|
||||||
|
|
|
@ -4,6 +4,7 @@ final class PHUIDiffGraphView extends Phobject {
|
||||||
|
|
||||||
private $isHead = true;
|
private $isHead = true;
|
||||||
private $isTail = true;
|
private $isTail = true;
|
||||||
|
private $height;
|
||||||
|
|
||||||
public function setIsHead($is_head) {
|
public function setIsHead($is_head) {
|
||||||
$this->isHead = $is_head;
|
$this->isHead = $is_head;
|
||||||
|
@ -23,6 +24,15 @@ final class PHUIDiffGraphView extends Phobject {
|
||||||
return $this->isTail;
|
return $this->isTail;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function setHeight($height) {
|
||||||
|
$this->height = $height;
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getHeight() {
|
||||||
|
return $this->height;
|
||||||
|
}
|
||||||
|
|
||||||
public function renderRawGraph(array $parents) {
|
public function renderRawGraph(array $parents) {
|
||||||
// This keeps our accumulated information about each line of the
|
// This keeps our accumulated information about each line of the
|
||||||
// merge/branch graph.
|
// merge/branch graph.
|
||||||
|
@ -205,7 +215,7 @@ final class PHUIDiffGraphView extends Phobject {
|
||||||
'diffusion-commit-graph',
|
'diffusion-commit-graph',
|
||||||
array(
|
array(
|
||||||
'count' => $count,
|
'count' => $count,
|
||||||
'autoheight' => true,
|
'height' => $this->getHeight(),
|
||||||
));
|
));
|
||||||
|
|
||||||
return $graph;
|
return $graph;
|
||||||
|
|
|
@ -11,6 +11,7 @@ abstract class PhabricatorObjectGraph
|
||||||
private $loadEntireGraph = false;
|
private $loadEntireGraph = false;
|
||||||
private $limit;
|
private $limit;
|
||||||
private $adjacent;
|
private $adjacent;
|
||||||
|
private $height;
|
||||||
|
|
||||||
public function setViewer(PhabricatorUser $viewer) {
|
public function setViewer(PhabricatorUser $viewer) {
|
||||||
$this->viewer = $viewer;
|
$this->viewer = $viewer;
|
||||||
|
@ -34,6 +35,15 @@ abstract class PhabricatorObjectGraph
|
||||||
return $this->limit;
|
return $this->limit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function setHeight($height) {
|
||||||
|
$this->height = $height;
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getHeight() {
|
||||||
|
return $this->height;
|
||||||
|
}
|
||||||
|
|
||||||
final public function setRenderOnlyAdjacentNodes($adjacent) {
|
final public function setRenderOnlyAdjacentNodes($adjacent) {
|
||||||
$this->adjacent = $adjacent;
|
$this->adjacent = $adjacent;
|
||||||
return $this;
|
return $this;
|
||||||
|
@ -193,8 +203,14 @@ abstract class PhabricatorObjectGraph
|
||||||
|
|
||||||
$ancestry = array_select_keys($ancestry, $order);
|
$ancestry = array_select_keys($ancestry, $order);
|
||||||
|
|
||||||
$traces = id(new PHUIDiffGraphView())
|
$graph_view = id(new PHUIDiffGraphView());
|
||||||
->renderGraph($ancestry);
|
|
||||||
|
$height = $this->getHeight();
|
||||||
|
if ($height !== null) {
|
||||||
|
$graph_view->setHeight($height);
|
||||||
|
}
|
||||||
|
|
||||||
|
$traces = $graph_view->renderGraph($ancestry);
|
||||||
|
|
||||||
$ii = 0;
|
$ii = 0;
|
||||||
$rows = array();
|
$rows = array();
|
||||||
|
|
|
@ -62,10 +62,10 @@ JX.behavior('diffusion-commit-graph', function(config) {
|
||||||
};
|
};
|
||||||
|
|
||||||
var h;
|
var h;
|
||||||
if (config.autoheight) {
|
if (config.height) {
|
||||||
h = JX.Vector.getDim(nodes[ii].parentNode).y;
|
h = config.height;
|
||||||
} else {
|
} else {
|
||||||
h = 34;
|
h = JX.Vector.getDim(nodes[ii].parentNode).y;
|
||||||
}
|
}
|
||||||
|
|
||||||
var w = cell * config.count;
|
var w = cell * config.count;
|
||||||
|
|
Loading…
Reference in a new issue