@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.

Action Menu (mobile)

Summary: First pass here, still needs some UI work (maybe? tablets?). Getting it out to see if implementation is corrrect.

Test Plan: Shrink Maniphest task on Chrome, see new UI. Toggle menu. Test on iOS.

Reviewers: epriestley, btrahan

Reviewed By: epriestley

CC: aran, Korvin

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

+345 -249
resources/sprite/icons_1x/action-menu.png

This is a binary file and will not be displayed.

resources/sprite/icons_2x/action-menu.png

This is a binary file and will not be displayed.

resources/sprite/icons_grey_1x/action-menu.png

This is a binary file and will not be displayed.

resources/sprite/icons_grey_2x/action-menu.png

This is a binary file and will not be displayed.

resources/sprite/icons_white_1x/action-menu.png

This is a binary file and will not be displayed.

resources/sprite/icons_white_2x/action-menu.png

This is a binary file and will not be displayed.

+15
resources/sprite/manifest/icon.json
··· 1 1 { 2 2 "version" : 1, 3 3 "sprites" : { 4 + "action-action-menu" : { 5 + "name" : "action-action-menu", 6 + "rule" : ".action-action-menu", 7 + "hash" : "533fe3e36cfbf890ad7348330a2328a9" 8 + }, 9 + "action-action-menu-grey" : { 10 + "name" : "action-action-menu-grey", 11 + "rule" : ".action-action-menu-grey", 12 + "hash" : "9bc229a81b33bb62bcb4e025283ffbe5" 13 + }, 14 + "action-action-menu-white" : { 15 + "name" : "action-action-menu-white", 16 + "rule" : ".action-action-menu-white, .device-desktop .phabricator-action-view:hover .action-action-menu", 17 + "hash" : "db0ff28b9ee23cdbf6125a7864b693b0" 18 + }, 4 19 "action-arrow_left" : { 5 20 "name" : "action-arrow_left", 6 21 "rule" : ".action-arrow_left",
+45 -45
src/__celerity_resource_map__.php
··· 597 597 ), 598 598 '/rsrc/image/sprite-icon-X2.png' => 599 599 array( 600 - 'hash' => 'c9fae25bc6221922ce26517e654a18e4', 601 - 'uri' => '/res/c9fae25b/rsrc/image/sprite-icon-X2.png', 600 + 'hash' => '1610d410ca8730ec26232cd5698a962a', 601 + 'uri' => '/res/1610d410/rsrc/image/sprite-icon-X2.png', 602 602 'disk' => '/rsrc/image/sprite-icon-X2.png', 603 603 'type' => 'png', 604 604 ), 605 605 '/rsrc/image/sprite-icon.png' => 606 606 array( 607 - 'hash' => 'b690ea69bf5f2abe84d0a6e9ef64b03d', 608 - 'uri' => '/res/b690ea69/rsrc/image/sprite-icon.png', 607 + 'hash' => '891dea483c37bdc43c00372944c98165', 608 + 'uri' => '/res/891dea48/rsrc/image/sprite-icon.png', 609 609 'disk' => '/rsrc/image/sprite-icon.png', 610 610 'type' => 'png', 611 611 ), ··· 2849 2849 ), 2850 2850 'phabricator-action-list-view-css' => 2851 2851 array( 2852 - 'uri' => '/res/7a67c3b9/rsrc/css/layout/phabricator-action-list-view.css', 2852 + 'uri' => '/res/3d02ca59/rsrc/css/layout/phabricator-action-list-view.css', 2853 2853 'type' => 'css', 2854 2854 'requires' => 2855 2855 array( ··· 2923 2923 ), 2924 2924 'phabricator-crumbs-view-css' => 2925 2925 array( 2926 - 'uri' => '/res/2857d229/rsrc/css/layout/phabricator-crumbs-view.css', 2926 + 'uri' => '/res/31ef131e/rsrc/css/layout/phabricator-crumbs-view.css', 2927 2927 'type' => 'css', 2928 2928 'requires' => 2929 2929 array( ··· 3830 3830 ), 3831 3831 'sprite-icon-css' => 3832 3832 array( 3833 - 'uri' => '/res/e7d63fcf/rsrc/css/sprite-icon.css', 3833 + 'uri' => '/res/fa36bb72/rsrc/css/sprite-icon.css', 3834 3834 'type' => 'css', 3835 3835 'requires' => 3836 3836 array( ··· 3903 3903 ), array( 3904 3904 'packages' => 3905 3905 array( 3906 - '90eede2c' => 3906 + '60914b69' => 3907 3907 array( 3908 3908 'name' => 'core.pkg.css', 3909 3909 'symbols' => ··· 3945 3945 34 => 'phabricator-object-item-list-view-css', 3946 3946 35 => 'global-drag-and-drop-css', 3947 3947 ), 3948 - 'uri' => '/res/pkg/90eede2c/core.pkg.css', 3948 + 'uri' => '/res/pkg/60914b69/core.pkg.css', 3949 3949 'type' => 'css', 3950 3950 ), 3951 3951 'bf16b308' => ··· 4135 4135 'reverse' => 4136 4136 array( 4137 4137 'aphront-attached-file-view-css' => '6b1fccc6', 4138 - 'aphront-dialog-view-css' => '90eede2c', 4139 - 'aphront-error-view-css' => '90eede2c', 4140 - 'aphront-form-view-css' => '90eede2c', 4141 - 'aphront-list-filter-view-css' => '90eede2c', 4142 - 'aphront-pager-view-css' => '90eede2c', 4143 - 'aphront-panel-view-css' => '90eede2c', 4144 - 'aphront-table-view-css' => '90eede2c', 4145 - 'aphront-tokenizer-control-css' => '90eede2c', 4146 - 'aphront-tooltip-css' => '90eede2c', 4147 - 'aphront-typeahead-control-css' => '90eede2c', 4138 + 'aphront-dialog-view-css' => '60914b69', 4139 + 'aphront-error-view-css' => '60914b69', 4140 + 'aphront-form-view-css' => '60914b69', 4141 + 'aphront-list-filter-view-css' => '60914b69', 4142 + 'aphront-pager-view-css' => '60914b69', 4143 + 'aphront-panel-view-css' => '60914b69', 4144 + 'aphront-table-view-css' => '60914b69', 4145 + 'aphront-tokenizer-control-css' => '60914b69', 4146 + 'aphront-tooltip-css' => '60914b69', 4147 + 'aphront-typeahead-control-css' => '60914b69', 4148 4148 'differential-changeset-view-css' => '8aaacd1b', 4149 4149 'differential-core-view-css' => '8aaacd1b', 4150 4150 'differential-inline-comment-editor' => 'e96b08f8', ··· 4158 4158 'differential-table-of-contents-css' => '8aaacd1b', 4159 4159 'diffusion-commit-view-css' => 'c8ce2d88', 4160 4160 'diffusion-icons-css' => 'c8ce2d88', 4161 - 'global-drag-and-drop-css' => '90eede2c', 4161 + 'global-drag-and-drop-css' => '60914b69', 4162 4162 'inline-comment-summary-css' => '8aaacd1b', 4163 4163 'javelin-aphlict' => 'bf16b308', 4164 4164 'javelin-behavior' => 'a2f94024', ··· 4230 4230 'javelin-util' => 'a2f94024', 4231 4231 'javelin-vector' => 'a2f94024', 4232 4232 'javelin-workflow' => 'a2f94024', 4233 - 'lightbox-attachment-css' => '90eede2c', 4233 + 'lightbox-attachment-css' => '60914b69', 4234 4234 'maniphest-task-summary-css' => '6b1fccc6', 4235 4235 'maniphest-transaction-detail-css' => '6b1fccc6', 4236 4236 'phabricator-busy' => 'bf16b308', 4237 4237 'phabricator-content-source-view-css' => '8aaacd1b', 4238 - 'phabricator-core-buttons-css' => '90eede2c', 4239 - 'phabricator-core-css' => '90eede2c', 4240 - 'phabricator-crumbs-view-css' => '90eede2c', 4241 - 'phabricator-directory-css' => '90eede2c', 4238 + 'phabricator-core-buttons-css' => '60914b69', 4239 + 'phabricator-core-css' => '60914b69', 4240 + 'phabricator-crumbs-view-css' => '60914b69', 4241 + 'phabricator-directory-css' => '60914b69', 4242 4242 'phabricator-drag-and-drop-file-upload' => 'e96b08f8', 4243 4243 'phabricator-dropdown-menu' => 'bf16b308', 4244 4244 'phabricator-file-upload' => 'bf16b308', 4245 - 'phabricator-filetree-view-css' => '90eede2c', 4246 - 'phabricator-flag-css' => '90eede2c', 4247 - 'phabricator-form-view-css' => '90eede2c', 4248 - 'phabricator-header-view-css' => '90eede2c', 4249 - 'phabricator-jump-nav' => '90eede2c', 4245 + 'phabricator-filetree-view-css' => '60914b69', 4246 + 'phabricator-flag-css' => '60914b69', 4247 + 'phabricator-form-view-css' => '60914b69', 4248 + 'phabricator-header-view-css' => '60914b69', 4249 + 'phabricator-jump-nav' => '60914b69', 4250 4250 'phabricator-keyboard-shortcut' => 'bf16b308', 4251 4251 'phabricator-keyboard-shortcut-manager' => 'bf16b308', 4252 - 'phabricator-main-menu-view' => '90eede2c', 4252 + 'phabricator-main-menu-view' => '60914b69', 4253 4253 'phabricator-menu-item' => 'bf16b308', 4254 - 'phabricator-nav-view-css' => '90eede2c', 4254 + 'phabricator-nav-view-css' => '60914b69', 4255 4255 'phabricator-notification' => 'bf16b308', 4256 - 'phabricator-notification-css' => '90eede2c', 4257 - 'phabricator-notification-menu-css' => '90eede2c', 4258 - 'phabricator-object-item-list-view-css' => '90eede2c', 4256 + 'phabricator-notification-css' => '60914b69', 4257 + 'phabricator-notification-menu-css' => '60914b69', 4258 + 'phabricator-object-item-list-view-css' => '60914b69', 4259 4259 'phabricator-object-selector-css' => '8aaacd1b', 4260 4260 'phabricator-prefab' => 'bf16b308', 4261 4261 'phabricator-project-tag-css' => '6b1fccc6', 4262 - 'phabricator-remarkup-css' => '90eede2c', 4262 + 'phabricator-remarkup-css' => '60914b69', 4263 4263 'phabricator-shaped-request' => 'e96b08f8', 4264 - 'phabricator-side-menu-view-css' => '90eede2c', 4265 - 'phabricator-standard-page-view' => '90eede2c', 4264 + 'phabricator-side-menu-view-css' => '60914b69', 4265 + 'phabricator-standard-page-view' => '60914b69', 4266 4266 'phabricator-textareautils' => 'bf16b308', 4267 4267 'phabricator-tooltip' => 'bf16b308', 4268 - 'phabricator-transaction-view-css' => '90eede2c', 4269 - 'phabricator-zindex-css' => '90eede2c', 4270 - 'sprite-apps-large-css' => '90eede2c', 4271 - 'sprite-gradient-css' => '90eede2c', 4272 - 'sprite-icon-css' => '90eede2c', 4273 - 'sprite-menu-css' => '90eede2c', 4274 - 'syntax-highlighting-css' => '90eede2c', 4268 + 'phabricator-transaction-view-css' => '60914b69', 4269 + 'phabricator-zindex-css' => '60914b69', 4270 + 'sprite-apps-large-css' => '60914b69', 4271 + 'sprite-gradient-css' => '60914b69', 4272 + 'sprite-icon-css' => '60914b69', 4273 + 'sprite-menu-css' => '60914b69', 4274 + 'syntax-highlighting-css' => '60914b69', 4275 4275 ), 4276 4276 ));
+2 -1
src/applications/maniphest/controller/ManiphestTaskDetailController.php
··· 335 335 $user, $task->getPHID()); 336 336 337 337 $object_name = 'T'.$task->getID(); 338 + $actions = $this->buildActionView($task); 338 339 339 340 $crumbs = $this->buildApplicationCrumbs(); 340 341 $crumbs->addCrumb( 341 342 id(new PhabricatorCrumbView()) 342 343 ->setName($object_name) 343 344 ->setHref('/'.$object_name)) 345 + ->setActionList($actions) 344 346 ->addAction( 345 347 id(new PhabricatorMenuItemView()) 346 348 ->setHref($this->getApplicationURI('/task/create/')) ··· 348 350 ->setIcon('create')); 349 351 350 352 $header = $this->buildHeaderView($task); 351 - $actions = $this->buildActionView($task); 352 353 $properties = $this->buildPropertyView($task, $aux_fields, $edges, $engine); 353 354 354 355 return $this->buildApplicationPage(
+7
src/view/layout/PhabricatorActionListView.php
··· 4 4 5 5 private $actions = array(); 6 6 private $object; 7 + private $id = null; 7 8 8 9 public function setObject(PhabricatorLiskDAO $object) { 9 10 $this->object = $object; ··· 12 13 13 14 public function addAction(PhabricatorActionView $view) { 14 15 $this->actions[] = $view; 16 + return $this; 17 + } 18 + 19 + public function setID($id) { 20 + $this->id = $id; 15 21 return $this; 16 22 } 17 23 ··· 41 47 'ul', 42 48 array( 43 49 'class' => 'phabricator-action-list-view', 50 + 'id' => $this->id 44 51 ), 45 52 $actions); 46 53 }
+43 -1
src/view/layout/PhabricatorCrumbsView.php
··· 4 4 5 5 private $crumbs = array(); 6 6 private $actions = array(); 7 + private $actionListID = null; 7 8 8 9 protected function canAppendChild() { 9 10 return false; ··· 14 15 return $this; 15 16 } 16 17 17 - 18 18 public function addAction(PhabricatorMenuItemView $action) { 19 19 $this->actions[] = $action; 20 + return $this; 21 + } 20 22 23 + public function setActionList(PhabricatorActionListView $list) { 24 + $this->actionListID = celerity_generate_unique_node_id(); 25 + $list->setId($this->actionListID); 21 26 return $this; 22 27 } 23 28 ··· 44 49 ), 45 50 $action->getName() 46 51 ); 52 + 47 53 $actions[] = javelin_tag( 48 54 'a', 49 55 array( ··· 55 61 $icon, 56 62 $name, 57 63 )); 64 + } 65 + 66 + if ($this->actionListID) { 67 + $icon_id = celerity_generate_unique_node_id(); 68 + $icon = phutil_tag( 69 + 'span', 70 + array( 71 + 'class' => 'sprite-icon action-action-menu' 72 + ), 73 + ''); 74 + $name = phutil_tag( 75 + 'span', 76 + array( 77 + 'class' => 'phabricator-crumbs-action-name' 78 + ), 79 + pht('Actions')); 80 + 81 + $actions[] = javelin_tag( 82 + 'a', 83 + array( 84 + 'href' => '#', 85 + 'class' => 86 + 'phabricator-crumbs-action phabricator-crumbs-action-menu', 87 + 'sigil' => 'jx-toggle-class', 88 + 'id' => $icon_id, 89 + 'meta' => array( 90 + 'map' => array( 91 + $this->actionListID => 'phabricator-action-list-toggle', 92 + $icon_id => 'phabricator-crumbs-action-menu-open' 93 + ), 94 + ), 95 + ), 96 + array( 97 + $icon, 98 + $name, 99 + )); 58 100 } 59 101 60 102 $action_view = phutil_tag(
+8 -1
webroot/rsrc/css/layout/phabricator-action-list-view.css
··· 29 29 } 30 30 31 31 .device .phabricator-action-list-view { 32 - background: #f3f3f3; 33 32 border-top: 1px solid #dcdcdc; 34 33 padding: .5em 0; 34 + } 35 + 36 + .device .phabricator-action-list-view { 37 + display: none; 38 + } 39 + 40 + .device .phabricator-action-list-view.phabricator-action-list-toggle { 41 + display: block; 35 42 } 36 43 37 44 .phabricator-action-view {
+12
webroot/rsrc/css/layout/phabricator-crumbs-view.css
··· 25 25 text-shadow: 0 1px 2px rgba(255, 255, 255, 0.9); 26 26 } 27 27 28 + .phabricator-crumbs-action.phabricator-crumbs-action-menu { 29 + display: none; 30 + } 31 + 32 + .device .phabricator-crumbs-action.phabricator-crumbs-action-menu { 33 + display: inline-block; 34 + } 35 + 36 + .device .phabricator-crumbs-action-menu-open { 37 + background: rgba(0,0,0,.1); 38 + } 39 + 28 40 .phabricator-crumbs-view + .phabricator-header-shell { 29 41 border-top: none; 30 42 }
+213 -201
webroot/rsrc/css/sprite-icon.css
··· 18 18 } 19 19 20 20 21 - .action-arrow_left { 21 + .action-action-menu { 22 22 background-position: 0px 0px; 23 23 } 24 24 25 - .action-arrow_right { 25 + .action-arrow_left { 26 26 background-position: -15px 0px; 27 27 } 28 28 29 - .action-attach { 29 + .action-arrow_right { 30 30 background-position: -30px 0px; 31 31 } 32 32 33 - .action-blame { 33 + .action-attach { 34 34 background-position: -45px 0px; 35 35 } 36 36 37 - .action-check { 37 + .action-blame { 38 38 background-position: -60px 0px; 39 39 } 40 40 41 - .action-comment { 41 + .action-check { 42 42 background-position: -75px 0px; 43 43 } 44 44 45 - .action-computer { 45 + .action-comment { 46 46 background-position: -90px 0px; 47 47 } 48 48 49 - .action-create { 49 + .action-computer { 50 50 background-position: -105px 0px; 51 51 } 52 52 53 - .action-delete { 53 + .action-create { 54 54 background-position: -120px 0px; 55 55 } 56 56 57 - .action-disable { 57 + .action-delete { 58 58 background-position: -135px 0px; 59 59 } 60 60 61 - .action-dislike { 61 + .action-disable { 62 62 background-position: -150px 0px; 63 63 } 64 64 65 - .action-download-alt { 65 + .action-dislike { 66 66 background-position: -165px 0px; 67 67 } 68 68 69 - .action-download { 69 + .action-download-alt { 70 70 background-position: -180px 0px; 71 71 } 72 72 73 - .action-edit { 73 + .action-download { 74 74 background-position: -195px 0px; 75 75 } 76 76 77 - .action-enable { 77 + .action-edit { 78 78 background-position: 0px -15px; 79 79 } 80 80 81 - .action-file { 81 + .action-enable { 82 82 background-position: -15px -15px; 83 83 } 84 84 85 - .action-flag-0 { 85 + .action-file { 86 86 background-position: -30px -15px; 87 87 } 88 88 89 - .action-flag-1 { 89 + .action-flag-0 { 90 90 background-position: -45px -15px; 91 91 } 92 92 93 - .action-flag-2 { 93 + .action-flag-1 { 94 94 background-position: -60px -15px; 95 95 } 96 96 97 - .action-flag-3 { 97 + .action-flag-2 { 98 98 background-position: -75px -15px; 99 99 } 100 100 101 - .action-flag-4 { 101 + .action-flag-3 { 102 102 background-position: -90px -15px; 103 103 } 104 104 105 - .action-flag-5 { 105 + .action-flag-4 { 106 106 background-position: -105px -15px; 107 107 } 108 108 109 - .action-flag-6 { 109 + .action-flag-5 { 110 110 background-position: -120px -15px; 111 111 } 112 112 113 - .action-flag-7 { 113 + .action-flag-6 { 114 114 background-position: -135px -15px; 115 115 } 116 116 117 - .action-flag-ghost { 117 + .action-flag-7 { 118 118 background-position: -150px -15px; 119 119 } 120 120 121 - .action-flag { 121 + .action-flag-ghost { 122 122 background-position: -165px -15px; 123 123 } 124 124 125 - .action-folder-open { 125 + .action-flag { 126 126 background-position: -180px -15px; 127 127 } 128 128 129 - .action-fork { 129 + .action-folder-open { 130 130 background-position: -195px -15px; 131 131 } 132 132 133 - .action-herald { 133 + .action-fork { 134 134 background-position: 0px -30px; 135 135 } 136 136 137 - .action-highlight { 137 + .action-herald { 138 138 background-position: -15px -30px; 139 139 } 140 140 141 - .action-history { 141 + .action-highlight { 142 142 background-position: -30px -30px; 143 143 } 144 144 145 - .action-image { 145 + .action-history { 146 146 background-position: -45px -30px; 147 147 } 148 148 149 - .action-like { 149 + .action-image { 150 150 background-position: -60px -30px; 151 151 } 152 152 153 - .action-link { 153 + .action-like { 154 154 background-position: -75px -30px; 155 155 } 156 156 157 - .action-lint-info { 157 + .action-link { 158 158 background-position: -90px -30px; 159 159 } 160 160 161 - .action-lint-ok { 161 + .action-lint-info { 162 162 background-position: -105px -30px; 163 163 } 164 164 165 - .action-lint-warning { 165 + .action-lint-ok { 166 166 background-position: -120px -30px; 167 167 } 168 168 169 - .action-lock { 169 + .action-lint-warning { 170 170 background-position: -135px -30px; 171 171 } 172 172 173 - .action-love { 173 + .action-lock { 174 174 background-position: -150px -30px; 175 175 } 176 176 177 - .action-merge { 177 + .action-love { 178 178 background-position: -165px -30px; 179 179 } 180 180 181 - .action-message { 181 + .action-merge { 182 182 background-position: -180px -30px; 183 183 } 184 184 185 - .action-meta-mta { 185 + .action-message { 186 186 background-position: -195px -30px; 187 187 } 188 188 189 - .action-move { 189 + .action-meta-mta { 190 190 background-position: 0px -45px; 191 191 } 192 192 193 - .action-new { 193 + .action-move { 194 194 background-position: -15px -45px; 195 195 } 196 196 197 - .action-none { 197 + .action-new { 198 198 background-position: -30px -45px; 199 199 } 200 200 201 - .action-perflab { 201 + .action-none { 202 202 background-position: -45px -45px; 203 203 } 204 204 205 - .action-preview { 205 + .action-perflab { 206 206 background-position: -60px -45px; 207 207 } 208 208 209 - .action-refresh { 209 + .action-preview { 210 210 background-position: -75px -45px; 211 211 } 212 212 213 - .action-remove { 213 + .action-refresh { 214 214 background-position: -90px -45px; 215 215 } 216 216 217 - .action-search { 217 + .action-remove { 218 218 background-position: -105px -45px; 219 219 } 220 220 221 - .action-start-sandcastle { 221 + .action-search { 222 222 background-position: -120px -45px; 223 223 } 224 224 225 - .action-subscribe-add { 225 + .action-start-sandcastle { 226 226 background-position: -135px -45px; 227 227 } 228 228 229 - .action-subscribe-auto { 229 + .action-subscribe-add { 230 230 background-position: -150px -45px; 231 231 } 232 232 233 - .action-subscribe-delete { 233 + .action-subscribe-auto { 234 234 background-position: -165px -45px; 235 235 } 236 236 237 - .action-tag { 237 + .action-subscribe-delete { 238 238 background-position: -180px -45px; 239 239 } 240 240 241 - .action-transcript { 241 + .action-tag { 242 242 background-position: -195px -45px; 243 243 } 244 244 245 - .action-undo { 245 + .action-transcript { 246 246 background-position: 0px -60px; 247 247 } 248 248 249 - .action-unlock { 249 + .action-undo { 250 250 background-position: -15px -60px; 251 251 } 252 252 253 - .action-unmerge { 253 + .action-unlock { 254 254 background-position: -30px -60px; 255 255 } 256 256 257 - .action-unpublish { 257 + .action-unmerge { 258 258 background-position: -45px -60px; 259 259 } 260 260 261 - .action-upload { 261 + .action-unpublish { 262 262 background-position: -60px -60px; 263 263 } 264 264 265 - .action-warning { 265 + .action-upload { 266 266 background-position: -75px -60px; 267 267 } 268 268 269 - .action-world { 269 + .action-warning { 270 270 background-position: -90px -60px; 271 271 } 272 272 273 - .action-arrow_left-grey { 273 + .action-world { 274 274 background-position: -105px -60px; 275 275 } 276 276 277 - .action-arrow_right-grey { 277 + .action-action-menu-grey { 278 278 background-position: -120px -60px; 279 279 } 280 280 281 - .action-attach-grey { 281 + .action-arrow_left-grey { 282 282 background-position: -135px -60px; 283 283 } 284 284 285 - .action-blame-grey { 285 + .action-arrow_right-grey { 286 286 background-position: -150px -60px; 287 287 } 288 288 289 - .action-check-grey { 289 + .action-attach-grey { 290 290 background-position: -165px -60px; 291 291 } 292 292 293 - .action-comment-grey { 293 + .action-blame-grey { 294 294 background-position: -180px -60px; 295 295 } 296 296 297 - .action-computer-grey { 297 + .action-check-grey { 298 298 background-position: -195px -60px; 299 299 } 300 300 301 - .action-create-grey { 301 + .action-comment-grey { 302 302 background-position: 0px -75px; 303 303 } 304 304 305 - .action-delete-grey { 305 + .action-computer-grey { 306 306 background-position: -15px -75px; 307 307 } 308 308 309 - .action-disable-grey { 309 + .action-create-grey { 310 310 background-position: -30px -75px; 311 311 } 312 312 313 - .action-dislike-grey { 313 + .action-delete-grey { 314 314 background-position: -45px -75px; 315 315 } 316 316 317 - .action-download-alt-grey { 317 + .action-disable-grey { 318 318 background-position: -60px -75px; 319 319 } 320 320 321 - .action-download-grey { 321 + .action-dislike-grey { 322 322 background-position: -75px -75px; 323 323 } 324 324 325 - .action-edit-grey { 325 + .action-download-alt-grey { 326 326 background-position: -90px -75px; 327 327 } 328 328 329 - .action-enable-grey { 329 + .action-download-grey { 330 330 background-position: -105px -75px; 331 331 } 332 332 333 - .action-file-grey { 333 + .action-edit-grey { 334 334 background-position: -120px -75px; 335 335 } 336 336 337 - .action-flag-0-grey { 337 + .action-enable-grey { 338 338 background-position: -135px -75px; 339 339 } 340 340 341 - .action-flag-1-grey { 341 + .action-file-grey { 342 342 background-position: -150px -75px; 343 343 } 344 344 345 - .action-flag-2-grey { 345 + .action-flag-0-grey { 346 346 background-position: -165px -75px; 347 347 } 348 348 349 - .action-flag-3-grey { 349 + .action-flag-1-grey { 350 350 background-position: -180px -75px; 351 351 } 352 352 353 - .action-flag-4-grey { 353 + .action-flag-2-grey { 354 354 background-position: -195px -75px; 355 355 } 356 356 357 - .action-flag-5-grey { 357 + .action-flag-3-grey { 358 358 background-position: 0px -90px; 359 359 } 360 360 361 - .action-flag-6-grey { 361 + .action-flag-4-grey { 362 362 background-position: -15px -90px; 363 363 } 364 364 365 - .action-flag-7-grey { 365 + .action-flag-5-grey { 366 366 background-position: -30px -90px; 367 367 } 368 368 369 - .action-flag-ghost-grey { 369 + .action-flag-6-grey { 370 370 background-position: -45px -90px; 371 371 } 372 372 373 - .action-flag-grey { 373 + .action-flag-7-grey { 374 374 background-position: -60px -90px; 375 375 } 376 376 377 - .action-folder-open-grey { 377 + .action-flag-ghost-grey { 378 378 background-position: -75px -90px; 379 379 } 380 380 381 - .action-fork-grey { 381 + .action-flag-grey { 382 382 background-position: -90px -90px; 383 383 } 384 384 385 - .action-herald-grey { 385 + .action-folder-open-grey { 386 386 background-position: -105px -90px; 387 387 } 388 388 389 - .action-highlight-grey { 389 + .action-fork-grey { 390 390 background-position: -120px -90px; 391 391 } 392 392 393 - .action-history-grey { 393 + .action-herald-grey { 394 394 background-position: -135px -90px; 395 395 } 396 396 397 - .action-image-grey { 397 + .action-highlight-grey { 398 398 background-position: -150px -90px; 399 399 } 400 400 401 - .action-like-grey { 401 + .action-history-grey { 402 402 background-position: -165px -90px; 403 403 } 404 404 405 - .action-link-grey { 405 + .action-image-grey { 406 406 background-position: -180px -90px; 407 407 } 408 408 409 - .action-lint-info-grey { 409 + .action-like-grey { 410 410 background-position: -195px -90px; 411 411 } 412 412 413 - .action-lint-ok-grey { 413 + .action-link-grey { 414 414 background-position: 0px -105px; 415 415 } 416 416 417 - .action-lint-warning-grey { 417 + .action-lint-info-grey { 418 418 background-position: -15px -105px; 419 419 } 420 420 421 - .action-lock-grey { 421 + .action-lint-ok-grey { 422 422 background-position: -30px -105px; 423 423 } 424 424 425 - .action-love-grey { 425 + .action-lint-warning-grey { 426 426 background-position: -45px -105px; 427 427 } 428 428 429 - .action-merge-grey { 429 + .action-lock-grey { 430 430 background-position: -60px -105px; 431 431 } 432 432 433 - .action-message-grey { 433 + .action-love-grey { 434 434 background-position: -75px -105px; 435 435 } 436 436 437 - .action-meta-mta-grey { 437 + .action-merge-grey { 438 438 background-position: -90px -105px; 439 439 } 440 440 441 - .action-move-grey { 441 + .action-message-grey { 442 442 background-position: -105px -105px; 443 443 } 444 444 445 - .action-new-grey { 445 + .action-meta-mta-grey { 446 446 background-position: -120px -105px; 447 447 } 448 448 449 - .action-none-grey { 449 + .action-move-grey { 450 450 background-position: -135px -105px; 451 451 } 452 452 453 - .action-perflab-grey { 453 + .action-new-grey { 454 454 background-position: -150px -105px; 455 455 } 456 456 457 - .action-preview-grey { 457 + .action-none-grey { 458 458 background-position: -165px -105px; 459 459 } 460 460 461 - .action-refresh-grey { 461 + .action-perflab-grey { 462 462 background-position: -180px -105px; 463 463 } 464 464 465 - .action-remove-grey { 465 + .action-preview-grey { 466 466 background-position: -195px -105px; 467 467 } 468 468 469 - .action-search-grey { 469 + .action-refresh-grey { 470 470 background-position: 0px -120px; 471 471 } 472 472 473 - .action-start-sandcastle-grey { 473 + .action-remove-grey { 474 474 background-position: -15px -120px; 475 475 } 476 476 477 - .action-subscribe-add-grey { 477 + .action-search-grey { 478 478 background-position: -30px -120px; 479 479 } 480 480 481 - .action-subscribe-auto-grey { 481 + .action-start-sandcastle-grey { 482 482 background-position: -45px -120px; 483 483 } 484 484 485 - .action-subscribe-delete-grey { 485 + .action-subscribe-add-grey { 486 486 background-position: -60px -120px; 487 487 } 488 488 489 - .action-tag-grey { 489 + .action-subscribe-auto-grey { 490 490 background-position: -75px -120px; 491 491 } 492 492 493 - .action-transcript-grey { 493 + .action-subscribe-delete-grey { 494 494 background-position: -90px -120px; 495 495 } 496 496 497 - .action-undo-grey { 497 + .action-tag-grey { 498 498 background-position: -105px -120px; 499 499 } 500 500 501 - .action-unlock-grey { 501 + .action-transcript-grey { 502 502 background-position: -120px -120px; 503 503 } 504 504 505 - .action-unmerge-grey { 505 + .action-undo-grey { 506 506 background-position: -135px -120px; 507 507 } 508 508 509 - .action-unpublish-grey { 509 + .action-unlock-grey { 510 510 background-position: -150px -120px; 511 511 } 512 512 513 - .action-upload-grey { 513 + .action-unmerge-grey { 514 514 background-position: -165px -120px; 515 515 } 516 516 517 - .action-warning-grey { 517 + .action-unpublish-grey { 518 518 background-position: -180px -120px; 519 519 } 520 520 521 - .action-world-grey { 521 + .action-upload-grey { 522 522 background-position: -195px -120px; 523 523 } 524 524 525 - .action-arrow_left-white, .device-desktop .phabricator-action-view:hover .action-arrow_left { 525 + .action-warning-grey { 526 526 background-position: 0px -135px; 527 527 } 528 528 529 - .action-arrow_right-white, .device-desktop .phabricator-action-view:hover .action-arrow_right { 529 + .action-world-grey { 530 530 background-position: -15px -135px; 531 531 } 532 532 533 - .action-attach-white, .device-desktop .phabricator-action-view:hover .action-attach { 533 + .action-action-menu-white, .device-desktop .phabricator-action-view:hover .action-action-menu { 534 534 background-position: -30px -135px; 535 535 } 536 536 537 - .action-blame-white, .device-desktop .phabricator-action-view:hover .action-blame { 537 + .action-arrow_left-white, .device-desktop .phabricator-action-view:hover .action-arrow_left { 538 538 background-position: -45px -135px; 539 539 } 540 540 541 - .action-check-white, .device-desktop .phabricator-action-view:hover .action-check { 541 + .action-arrow_right-white, .device-desktop .phabricator-action-view:hover .action-arrow_right { 542 542 background-position: -60px -135px; 543 543 } 544 544 545 - .action-comment-white, .device-desktop .phabricator-action-view:hover .action-comment { 545 + .action-attach-white, .device-desktop .phabricator-action-view:hover .action-attach { 546 546 background-position: -75px -135px; 547 547 } 548 548 549 - .action-computer-white, .device-desktop .phabricator-action-view:hover .action-computer { 549 + .action-blame-white, .device-desktop .phabricator-action-view:hover .action-blame { 550 550 background-position: -90px -135px; 551 551 } 552 552 553 - .action-create-white, .device-desktop .phabricator-action-view:hover .action-create { 553 + .action-check-white, .device-desktop .phabricator-action-view:hover .action-check { 554 554 background-position: -105px -135px; 555 555 } 556 556 557 - .action-delete-white, .device-desktop .phabricator-action-view:hover .action-delete { 557 + .action-comment-white, .device-desktop .phabricator-action-view:hover .action-comment { 558 558 background-position: -120px -135px; 559 559 } 560 560 561 - .action-disable-white, .device-desktop .phabricator-action-view:hover .action-disable { 561 + .action-computer-white, .device-desktop .phabricator-action-view:hover .action-computer { 562 562 background-position: -135px -135px; 563 563 } 564 564 565 - .action-dislike-white, .device-desktop .phabricator-action-view:hover .action-dislike { 565 + .action-create-white, .device-desktop .phabricator-action-view:hover .action-create { 566 566 background-position: -150px -135px; 567 567 } 568 568 569 - .action-download-alt-white, .device-desktop .phabricator-action-view:hover .action-download-alt { 569 + .action-delete-white, .device-desktop .phabricator-action-view:hover .action-delete { 570 570 background-position: -165px -135px; 571 571 } 572 572 573 - .action-download-white, .device-desktop .phabricator-action-view:hover .action-download { 573 + .action-disable-white, .device-desktop .phabricator-action-view:hover .action-disable { 574 574 background-position: -180px -135px; 575 575 } 576 576 577 - .action-edit-white, .device-desktop .phabricator-action-view:hover .action-edit { 577 + .action-dislike-white, .device-desktop .phabricator-action-view:hover .action-dislike { 578 578 background-position: -195px -135px; 579 579 } 580 580 581 - .action-enable-white, .device-desktop .phabricator-action-view:hover .action-enable { 581 + .action-download-alt-white, .device-desktop .phabricator-action-view:hover .action-download-alt { 582 582 background-position: 0px -150px; 583 583 } 584 584 585 - .action-file-white, .device-desktop .phabricator-action-view:hover .action-file { 585 + .action-download-white, .device-desktop .phabricator-action-view:hover .action-download { 586 586 background-position: -15px -150px; 587 587 } 588 588 589 - .action-flag-0-white, .device-desktop .phabricator-action-view:hover .action-flag-0 { 589 + .action-edit-white, .device-desktop .phabricator-action-view:hover .action-edit { 590 590 background-position: -30px -150px; 591 591 } 592 592 593 - .action-flag-1-white, .device-desktop .phabricator-action-view:hover .action-flag-1 { 593 + .action-enable-white, .device-desktop .phabricator-action-view:hover .action-enable { 594 594 background-position: -45px -150px; 595 595 } 596 596 597 - .action-flag-2-white, .device-desktop .phabricator-action-view:hover .action-flag-2 { 597 + .action-file-white, .device-desktop .phabricator-action-view:hover .action-file { 598 598 background-position: -60px -150px; 599 599 } 600 600 601 - .action-flag-3-white, .device-desktop .phabricator-action-view:hover .action-flag-3 { 601 + .action-flag-0-white, .device-desktop .phabricator-action-view:hover .action-flag-0 { 602 602 background-position: -75px -150px; 603 603 } 604 604 605 - .action-flag-4-white, .device-desktop .phabricator-action-view:hover .action-flag-4 { 605 + .action-flag-1-white, .device-desktop .phabricator-action-view:hover .action-flag-1 { 606 606 background-position: -90px -150px; 607 607 } 608 608 609 - .action-flag-5-white, .device-desktop .phabricator-action-view:hover .action-flag-5 { 609 + .action-flag-2-white, .device-desktop .phabricator-action-view:hover .action-flag-2 { 610 610 background-position: -105px -150px; 611 611 } 612 612 613 - .action-flag-6-white, .device-desktop .phabricator-action-view:hover .action-flag-6 { 613 + .action-flag-3-white, .device-desktop .phabricator-action-view:hover .action-flag-3 { 614 614 background-position: -120px -150px; 615 615 } 616 616 617 + .action-flag-4-white, .device-desktop .phabricator-action-view:hover .action-flag-4 { 618 + background-position: -135px -150px; 619 + } 620 + 621 + .action-flag-5-white, .device-desktop .phabricator-action-view:hover .action-flag-5 { 622 + background-position: -150px -150px; 623 + } 624 + 625 + .action-flag-6-white, .device-desktop .phabricator-action-view:hover .action-flag-6 { 626 + background-position: -165px -150px; 627 + } 628 + 617 629 .action-flag-7-white, .device-desktop .phabricator-action-view:hover .action-flag-7 { 618 - background-position: -135px -150px; 630 + background-position: -180px -150px; 619 631 } 620 632 621 633 .action-flag-ghost-white, .device-desktop .phabricator-action-view:hover .action-flag-ghost { 622 - background-position: -150px -150px; 634 + background-position: -195px -150px; 623 635 } 624 636 625 637 .action-flag-white, .device-desktop .phabricator-action-view:hover .action-flag { 626 - background-position: -165px -150px; 638 + background-position: 0px -165px; 627 639 } 628 640 629 641 .action-folder-open-white, .device-desktop .phabricator-action-view:hover .action-folder-open { 630 - background-position: -180px -150px; 642 + background-position: -15px -165px; 631 643 } 632 644 633 645 .action-fork-white, .device-desktop .phabricator-action-view:hover .action-fork { 634 - background-position: -195px -150px; 646 + background-position: -30px -165px; 635 647 } 636 648 637 649 .action-herald-white, .device-desktop .phabricator-action-view:hover .action-herald { 638 - background-position: 0px -165px; 650 + background-position: -45px -165px; 639 651 } 640 652 641 653 .action-highlight-white, .device-desktop .phabricator-action-view:hover .action-highlight { 642 - background-position: -15px -165px; 654 + background-position: -60px -165px; 643 655 } 644 656 645 657 .action-history-white, .device-desktop .phabricator-action-view:hover .action-history { 646 - background-position: -30px -165px; 658 + background-position: -75px -165px; 647 659 } 648 660 649 661 .action-image-white, .device-desktop .phabricator-action-view:hover .action-image { 650 - background-position: -45px -165px; 662 + background-position: -90px -165px; 651 663 } 652 664 653 665 .action-like-white, .device-desktop .phabricator-action-view:hover .action-like { 654 - background-position: -60px -165px; 666 + background-position: -105px -165px; 655 667 } 656 668 657 669 .action-link-white, .device-desktop .phabricator-action-view:hover .action-link { 658 - background-position: -75px -165px; 670 + background-position: -120px -165px; 659 671 } 660 672 661 673 .action-lint-info-white, .device-desktop .phabricator-action-view:hover .action-lint-info { 662 - background-position: -90px -165px; 674 + background-position: -135px -165px; 663 675 } 664 676 665 677 .action-lint-ok-white, .device-desktop .phabricator-action-view:hover .action-lint-ok { 666 - background-position: -105px -165px; 678 + background-position: -150px -165px; 667 679 } 668 680 669 681 .action-lint-warning-white, .device-desktop .phabricator-action-view:hover .action-lint-warning { 670 - background-position: -120px -165px; 682 + background-position: -165px -165px; 671 683 } 672 684 673 685 .action-lock-white, .device-desktop .phabricator-action-view:hover .action-lock { 674 - background-position: -135px -165px; 686 + background-position: -180px -165px; 675 687 } 676 688 677 689 .action-love-white, .device-desktop .phabricator-action-view:hover .action-love { 678 - background-position: -150px -165px; 690 + background-position: -195px -165px; 679 691 } 680 692 681 693 .action-merge-white, .device-desktop .phabricator-action-view:hover .action-merge { 682 - background-position: -165px -165px; 694 + background-position: 0px -180px; 683 695 } 684 696 685 697 .action-message-white, .device-desktop .phabricator-action-view:hover .action-message { 686 - background-position: -180px -165px; 698 + background-position: -15px -180px; 687 699 } 688 700 689 701 .action-meta-mta-white, .device-desktop .phabricator-action-view:hover .action-meta-mta { 690 - background-position: -195px -165px; 702 + background-position: -30px -180px; 691 703 } 692 704 693 705 .action-move-white, .device-desktop .phabricator-action-view:hover .action-move { 694 - background-position: 0px -180px; 706 + background-position: -45px -180px; 695 707 } 696 708 697 709 .action-new-white, .device-desktop .phabricator-action-view:hover .action-new, .phabricator-application-launch-create:hover .phabricator-application-create-icon.action-new-grey { 698 - background-position: -15px -180px; 710 + background-position: -60px -180px; 699 711 } 700 712 701 713 .action-none-white, .device-desktop .phabricator-action-view:hover .action-none { 702 - background-position: -30px -180px; 714 + background-position: -75px -180px; 703 715 } 704 716 705 717 .action-perflab-white, .device-desktop .phabricator-action-view:hover .action-perflab { 706 - background-position: -45px -180px; 718 + background-position: -90px -180px; 707 719 } 708 720 709 721 .action-preview-white, .device-desktop .phabricator-action-view:hover .action-preview { 710 - background-position: -60px -180px; 722 + background-position: -105px -180px; 711 723 } 712 724 713 725 .action-refresh-white, .device-desktop .phabricator-action-view:hover .action-refresh { 714 - background-position: -75px -180px; 726 + background-position: -120px -180px; 715 727 } 716 728 717 729 .action-remove-white, .device-desktop .phabricator-action-view:hover .action-remove { 718 - background-position: -90px -180px; 730 + background-position: -135px -180px; 719 731 } 720 732 721 733 .action-search-white, .device-desktop .phabricator-action-view:hover .action-search { 722 - background-position: -105px -180px; 734 + background-position: -150px -180px; 723 735 } 724 736 725 737 .action-start-sandcastle-white, .device-desktop .phabricator-action-view:hover .action-start-sandcastle { 726 - background-position: -120px -180px; 738 + background-position: -165px -180px; 727 739 } 728 740 729 741 .action-subscribe-add-white, .device-desktop .phabricator-action-view:hover .action-subscribe-add { 730 - background-position: -135px -180px; 742 + background-position: -180px -180px; 731 743 } 732 744 733 745 .action-subscribe-auto-white, .device-desktop .phabricator-action-view:hover .action-subscribe-auto { 734 - background-position: -150px -180px; 746 + background-position: -195px -180px; 735 747 } 736 748 737 749 .action-subscribe-delete-white, .device-desktop .phabricator-action-view:hover .action-subscribe-delete { 738 - background-position: -165px -180px; 750 + background-position: 0px -195px; 739 751 } 740 752 741 753 .action-tag-white, .device-desktop .phabricator-action-view:hover .action-tag { 742 - background-position: -180px -180px; 754 + background-position: -15px -195px; 743 755 } 744 756 745 757 .action-transcript-white, .device-desktop .phabricator-action-view:hover .action-transcript { 746 - background-position: -195px -180px; 758 + background-position: -30px -195px; 747 759 } 748 760 749 761 .action-undo-white, .device-desktop .phabricator-action-view:hover .action-undo { 750 - background-position: 0px -195px; 762 + background-position: -45px -195px; 751 763 } 752 764 753 765 .action-unlock-white, .device-desktop .phabricator-action-view:hover .action-unlock { 754 - background-position: -15px -195px; 766 + background-position: -60px -195px; 755 767 } 756 768 757 769 .action-unmerge-white, .device-desktop .phabricator-action-view:hover .action-unmerge { 758 - background-position: -30px -195px; 770 + background-position: -75px -195px; 759 771 } 760 772 761 773 .action-unpublish-white, .device-desktop .phabricator-action-view:hover .action-unpublish { 762 - background-position: -45px -195px; 774 + background-position: -90px -195px; 763 775 } 764 776 765 777 .action-upload-white, .device-desktop .phabricator-action-view:hover .action-upload { 766 - background-position: -60px -195px; 778 + background-position: -105px -195px; 767 779 } 768 780 769 781 .action-warning-white, .device-desktop .phabricator-action-view:hover .action-warning { 770 - background-position: -75px -195px; 782 + background-position: -120px -195px; 771 783 } 772 784 773 785 .action-world-white, .device-desktop .phabricator-action-view:hover .action-world { 774 - background-position: -90px -195px; 786 + background-position: -135px -195px; 775 787 } 776 788 777 789 .remarkup-assist-b { 778 - background-position: -105px -195px; 790 + background-position: -150px -195px; 779 791 } 780 792 781 793 .remarkup-assist-code { 782 - background-position: -120px -195px; 794 + background-position: -165px -195px; 783 795 } 784 796 785 797 .remarkup-assist-help { 786 - background-position: -135px -195px; 798 + background-position: -180px -195px; 787 799 } 788 800 789 801 .remarkup-assist-i { 790 - background-position: -150px -195px; 802 + background-position: -195px -195px; 791 803 } 792 804 793 805 .remarkup-assist-image { 794 - background-position: -165px -195px; 806 + background-position: 0px -210px; 795 807 } 796 808 797 809 .remarkup-assist-larger { 798 - background-position: -180px -195px; 810 + background-position: -15px -210px; 799 811 } 800 812 801 813 .remarkup-assist-meme { 802 - background-position: -195px -195px; 814 + background-position: -30px -210px; 803 815 } 804 816 805 817 .remarkup-assist-ol { 806 - background-position: 0px -210px; 818 + background-position: -45px -210px; 807 819 } 808 820 809 821 .remarkup-assist-table { 810 - background-position: -15px -210px; 822 + background-position: -60px -210px; 811 823 } 812 824 813 825 .remarkup-assist-tag { 814 - background-position: -30px -210px; 826 + background-position: -75px -210px; 815 827 } 816 828 817 829 .remarkup-assist-tt { 818 - background-position: -45px -210px; 830 + background-position: -90px -210px; 819 831 } 820 832 821 833 .remarkup-assist-ul { 822 - background-position: -60px -210px; 834 + background-position: -105px -210px; 823 835 }
webroot/rsrc/image/sprite-icon-X2.png

This is a binary file and will not be displayed.

webroot/rsrc/image/sprite-icon.png

This is a binary file and will not be displayed.