@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add a border to additional property lists in a group.

Summary: When we stack property sections without a header, we still want a thin line. This adds a line on non-initial sections but not when headers exist. Fixes T4051

Test Plan: Tested Macro, File, Diffusion, a Whacked Profile Page and Maniphest. All lines look right

Reviewers: epriestley

Reviewed By: epriestley

CC: Korvin, epriestley, aran

Maniphest Tasks: T4051

Differential Revision: https://secure.phabricator.com/D7492

+66 -48
+46 -46
src/__celerity_resource_map__.php
··· 3933 3933 ), 3934 3934 'phui-property-list-view-css' => 3935 3935 array( 3936 - 'uri' => '/res/b307acfe/rsrc/css/phui/phui-property-list-view.css', 3936 + 'uri' => '/res/68275e2c/rsrc/css/phui/phui-property-list-view.css', 3937 3937 'type' => 'css', 3938 3938 'requires' => 3939 3939 array( ··· 4321 4321 ), array( 4322 4322 'packages' => 4323 4323 array( 4324 - 'b05e33c6' => 4324 + 'ef078368' => 4325 4325 array( 4326 4326 'name' => 'core.pkg.css', 4327 4327 'symbols' => ··· 4370 4370 41 => 'phabricator-tag-view-css', 4371 4371 42 => 'phui-list-view-css', 4372 4372 ), 4373 - 'uri' => '/res/pkg/b05e33c6/core.pkg.css', 4373 + 'uri' => '/res/pkg/ef078368/core.pkg.css', 4374 4374 'type' => 'css', 4375 4375 ), 4376 4376 '2c1dba03' => ··· 4562 4562 ), 4563 4563 'reverse' => 4564 4564 array( 4565 - 'aphront-dialog-view-css' => 'b05e33c6', 4566 - 'aphront-error-view-css' => 'b05e33c6', 4567 - 'aphront-list-filter-view-css' => 'b05e33c6', 4568 - 'aphront-pager-view-css' => 'b05e33c6', 4569 - 'aphront-panel-view-css' => 'b05e33c6', 4570 - 'aphront-table-view-css' => 'b05e33c6', 4571 - 'aphront-tokenizer-control-css' => 'b05e33c6', 4572 - 'aphront-tooltip-css' => 'b05e33c6', 4573 - 'aphront-typeahead-control-css' => 'b05e33c6', 4565 + 'aphront-dialog-view-css' => 'ef078368', 4566 + 'aphront-error-view-css' => 'ef078368', 4567 + 'aphront-list-filter-view-css' => 'ef078368', 4568 + 'aphront-pager-view-css' => 'ef078368', 4569 + 'aphront-panel-view-css' => 'ef078368', 4570 + 'aphront-table-view-css' => 'ef078368', 4571 + 'aphront-tokenizer-control-css' => 'ef078368', 4572 + 'aphront-tooltip-css' => 'ef078368', 4573 + 'aphront-typeahead-control-css' => 'ef078368', 4574 4574 'differential-changeset-view-css' => '1084b12b', 4575 4575 'differential-core-view-css' => '1084b12b', 4576 4576 'differential-inline-comment-editor' => '5e9e5c4e', ··· 4584 4584 'differential-table-of-contents-css' => '1084b12b', 4585 4585 'diffusion-commit-view-css' => '7aa115b4', 4586 4586 'diffusion-icons-css' => '7aa115b4', 4587 - 'global-drag-and-drop-css' => 'b05e33c6', 4587 + 'global-drag-and-drop-css' => 'ef078368', 4588 4588 'inline-comment-summary-css' => '1084b12b', 4589 4589 'javelin-aphlict' => '2c1dba03', 4590 4590 'javelin-behavior' => '3e3be199', ··· 4659 4659 'javelin-util' => '3e3be199', 4660 4660 'javelin-vector' => '3e3be199', 4661 4661 'javelin-workflow' => '3e3be199', 4662 - 'lightbox-attachment-css' => 'b05e33c6', 4662 + 'lightbox-attachment-css' => 'ef078368', 4663 4663 'maniphest-task-summary-css' => '49898640', 4664 - 'phabricator-action-list-view-css' => 'b05e33c6', 4665 - 'phabricator-application-launch-view-css' => 'b05e33c6', 4664 + 'phabricator-action-list-view-css' => 'ef078368', 4665 + 'phabricator-application-launch-view-css' => 'ef078368', 4666 4666 'phabricator-busy' => '2c1dba03', 4667 4667 'phabricator-content-source-view-css' => '1084b12b', 4668 - 'phabricator-core-css' => 'b05e33c6', 4669 - 'phabricator-crumbs-view-css' => 'b05e33c6', 4668 + 'phabricator-core-css' => 'ef078368', 4669 + 'phabricator-crumbs-view-css' => 'ef078368', 4670 4670 'phabricator-drag-and-drop-file-upload' => '5e9e5c4e', 4671 4671 'phabricator-dropdown-menu' => '2c1dba03', 4672 4672 'phabricator-file-upload' => '2c1dba03', 4673 - 'phabricator-filetree-view-css' => 'b05e33c6', 4674 - 'phabricator-flag-css' => 'b05e33c6', 4673 + 'phabricator-filetree-view-css' => 'ef078368', 4674 + 'phabricator-flag-css' => 'ef078368', 4675 4675 'phabricator-hovercard' => '2c1dba03', 4676 - 'phabricator-jump-nav' => 'b05e33c6', 4676 + 'phabricator-jump-nav' => 'ef078368', 4677 4677 'phabricator-keyboard-shortcut' => '2c1dba03', 4678 4678 'phabricator-keyboard-shortcut-manager' => '2c1dba03', 4679 - 'phabricator-main-menu-view' => 'b05e33c6', 4679 + 'phabricator-main-menu-view' => 'ef078368', 4680 4680 'phabricator-menu-item' => '2c1dba03', 4681 - 'phabricator-nav-view-css' => 'b05e33c6', 4681 + 'phabricator-nav-view-css' => 'ef078368', 4682 4682 'phabricator-notification' => '2c1dba03', 4683 - 'phabricator-notification-css' => 'b05e33c6', 4684 - 'phabricator-notification-menu-css' => 'b05e33c6', 4683 + 'phabricator-notification-css' => 'ef078368', 4684 + 'phabricator-notification-menu-css' => 'ef078368', 4685 4685 'phabricator-object-selector-css' => '1084b12b', 4686 4686 'phabricator-phtize' => '2c1dba03', 4687 4687 'phabricator-prefab' => '2c1dba03', 4688 4688 'phabricator-project-tag-css' => '49898640', 4689 - 'phabricator-remarkup-css' => 'b05e33c6', 4689 + 'phabricator-remarkup-css' => 'ef078368', 4690 4690 'phabricator-shaped-request' => '5e9e5c4e', 4691 - 'phabricator-side-menu-view-css' => 'b05e33c6', 4692 - 'phabricator-standard-page-view' => 'b05e33c6', 4693 - 'phabricator-tag-view-css' => 'b05e33c6', 4691 + 'phabricator-side-menu-view-css' => 'ef078368', 4692 + 'phabricator-standard-page-view' => 'ef078368', 4693 + 'phabricator-tag-view-css' => 'ef078368', 4694 4694 'phabricator-textareautils' => '2c1dba03', 4695 4695 'phabricator-tooltip' => '2c1dba03', 4696 - 'phabricator-transaction-view-css' => 'b05e33c6', 4697 - 'phabricator-zindex-css' => 'b05e33c6', 4698 - 'phui-button-css' => 'b05e33c6', 4699 - 'phui-form-css' => 'b05e33c6', 4700 - 'phui-form-view-css' => 'b05e33c6', 4701 - 'phui-header-view-css' => 'b05e33c6', 4702 - 'phui-icon-view-css' => 'b05e33c6', 4703 - 'phui-list-view-css' => 'b05e33c6', 4704 - 'phui-object-item-list-view-css' => 'b05e33c6', 4705 - 'phui-property-list-view-css' => 'b05e33c6', 4706 - 'phui-spacing-css' => 'b05e33c6', 4707 - 'sprite-apps-large-css' => 'b05e33c6', 4708 - 'sprite-gradient-css' => 'b05e33c6', 4709 - 'sprite-icons-css' => 'b05e33c6', 4710 - 'sprite-menu-css' => 'b05e33c6', 4711 - 'sprite-status-css' => 'b05e33c6', 4712 - 'syntax-highlighting-css' => 'b05e33c6', 4696 + 'phabricator-transaction-view-css' => 'ef078368', 4697 + 'phabricator-zindex-css' => 'ef078368', 4698 + 'phui-button-css' => 'ef078368', 4699 + 'phui-form-css' => 'ef078368', 4700 + 'phui-form-view-css' => 'ef078368', 4701 + 'phui-header-view-css' => 'ef078368', 4702 + 'phui-icon-view-css' => 'ef078368', 4703 + 'phui-list-view-css' => 'ef078368', 4704 + 'phui-object-item-list-view-css' => 'ef078368', 4705 + 'phui-property-list-view-css' => 'ef078368', 4706 + 'phui-spacing-css' => 'ef078368', 4707 + 'sprite-apps-large-css' => 'ef078368', 4708 + 'sprite-gradient-css' => 'ef078368', 4709 + 'sprite-icons-css' => 'ef078368', 4710 + 'sprite-menu-css' => 'ef078368', 4711 + 'sprite-status-css' => 'ef078368', 4712 + 'syntax-highlighting-css' => 'ef078368', 4713 4713 ), 4714 4714 ));
+5
src/view/phui/PHUIObjectBoxView.php
··· 138 138 139 139 foreach ($this->propertyLists as $key => $list) { 140 140 $group = new PHUIPropertyGroupView(); 141 + $i = 0; 141 142 foreach ($list as $item) { 142 143 $group->addPropertyList($item); 144 + if ($i > 0) { 145 + $item->addClass('phui-property-list-section-noninitial'); 146 + } 147 + $i++; 143 148 } 144 149 145 150 if ($this->tabs && $key != $default_key) {
+9 -1
src/view/phui/PHUIPropertyListView.php
··· 7 7 private $object; 8 8 private $invokedWillRenderEvent; 9 9 private $actionList; 10 + private $classes = array(); 10 11 11 12 protected function canAppendChild() { 12 13 return false; ··· 19 20 20 21 public function setActionList(PhabricatorActionListView $list) { 21 22 $this->actionList = $list; 23 + return $this; 24 + } 25 + 26 + public function addClass($class) { 27 + $this->classes[] = $class; 22 28 return $this; 23 29 } 24 30 ··· 110 116 throw new Exception(pht("Unknown part type '%s'!", $type)); 111 117 } 112 118 } 119 + $this->classes[] = 'phui-property-list-section'; 120 + $classes = implode(' ', $this->classes); 113 121 114 122 return phutil_tag( 115 123 'div', 116 124 array( 117 - 'class' => 'phui-property-list-section', 125 + 'class' => $classes, 118 126 ), 119 127 array( 120 128 $items,
+6 -1
webroot/rsrc/css/phui/phui-property-list-view.css
··· 23 23 display: none; 24 24 } 25 25 26 - .phui-property-group-noninitial { 26 + .phui-property-group-noninitial, 27 + .phui-property-list-section-noninitial { 27 28 border-color: {$thinblueborder}; 28 29 border-style: solid; 29 30 border-width: 1px 0 0; ··· 83 84 border-color: {$thinblueborder}; 84 85 border-style: solid; 85 86 border-width: 1px 0 0; 87 + } 88 + 89 + .phui-property-list-section-noninitial .phui-property-list-section-header { 90 + border-top: none; 86 91 } 87 92 88 93 .device .phui-property-list-section-header {