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

Summary: First pass at 'action icons' for headers and other items. Ties into future diff.

Test Plan: photoshop, read the css.

Reviewers: epriestley, btrahan

Reviewed By: epriestley

CC: aran, Korvin, AnhNhan

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

+588 -41
resources/sprite/actions_dark_1x/flag.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_1x/heart.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_1x/move.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_1x/new.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_1x/search.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_1x/settings.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_1x/star.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_1x/tag.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_1x/wrench.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_2x/flag.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_2x/heart.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_2x/move.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_2x/new.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_2x/search.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_2x/settings.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_2x/star.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_2x/tag.png

This is a binary file and will not be displayed.

resources/sprite/actions_dark_2x/wrench.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_1x/flag.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_1x/heart.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_1x/move.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_1x/new.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_1x/search.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_1x/settings.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_1x/star.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_1x/tag.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_1x/wrench.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_2x/flag.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_2x/heart.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_2x/move.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_2x/new.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_2x/search.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_2x/settings.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_2x/star.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_2x/tag.png

This is a binary file and will not be displayed.

resources/sprite/actions_grey_2x/wrench.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_1x/flag.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_1x/heart.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_1x/move.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_1x/new.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_1x/search.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_1x/settings.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_1x/star.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_1x/tag.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_1x/wrench.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_2x/flag.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_2x/heart.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_2x/move.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_2x/new.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_2x/search.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_2x/settings.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_2x/star.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_2x/tag.png

This is a binary file and will not be displayed.

resources/sprite/actions_white_2x/wrench.png

This is a binary file and will not be displayed.

resources/sprite/gradients/blue-header.png

This is a binary file and will not be displayed.

resources/sprite/gradients/green-header.png

This is a binary file and will not be displayed.

resources/sprite/gradients/grey-header.png

This is a binary file and will not be displayed.

resources/sprite/gradients/red-header.png

This is a binary file and will not be displayed.

resources/sprite/gradients/yellow-header.png

This is a binary file and will not be displayed.

+146
resources/sprite/manifest/actions.json
··· 1 + { 2 + "version" : 1, 3 + "sprites" : { 4 + "action-icon-flag-dark" : { 5 + "name" : "action-icon-flag-dark", 6 + "rule" : ".action-icon-flag-dark", 7 + "hash" : "4ae54fc28dd2d6cfa6e57dde7bd640cf" 8 + }, 9 + "action-icon-flag-grey" : { 10 + "name" : "action-icon-flag-grey", 11 + "rule" : ".action-icon-flag-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-flag", 12 + "hash" : "50e739ca2d6a5527ce2bb8aafd4eb93f" 13 + }, 14 + "action-icon-flag-white" : { 15 + "name" : "action-icon-flag-white", 16 + "rule" : ".action-icon-flag-white", 17 + "hash" : "d29ba4e3f88d5b2f3b0ea14754f7b89a" 18 + }, 19 + "action-icon-heart-dark" : { 20 + "name" : "action-icon-heart-dark", 21 + "rule" : ".action-icon-heart-dark", 22 + "hash" : "90b437a281724a4961e33272eafd616b" 23 + }, 24 + "action-icon-heart-grey" : { 25 + "name" : "action-icon-heart-grey", 26 + "rule" : ".action-icon-heart-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-heart", 27 + "hash" : "cd521a7267b321516223462860373f09" 28 + }, 29 + "action-icon-heart-white" : { 30 + "name" : "action-icon-heart-white", 31 + "rule" : ".action-icon-heart-white", 32 + "hash" : "505ebd7324f9c39fa2366a85996d1194" 33 + }, 34 + "action-icon-move-dark" : { 35 + "name" : "action-icon-move-dark", 36 + "rule" : ".action-icon-move-dark", 37 + "hash" : "38f5b9168bf04d1a904b09805e589cd7" 38 + }, 39 + "action-icon-move-grey" : { 40 + "name" : "action-icon-move-grey", 41 + "rule" : ".action-icon-move-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-move", 42 + "hash" : "35dcc45f04a81cbf9e5ecdf0fcd5bebc" 43 + }, 44 + "action-icon-move-white" : { 45 + "name" : "action-icon-move-white", 46 + "rule" : ".action-icon-move-white", 47 + "hash" : "2b1b790a494a079d288d5a3a47c6bd62" 48 + }, 49 + "action-icon-new-dark" : { 50 + "name" : "action-icon-new-dark", 51 + "rule" : ".action-icon-new-dark", 52 + "hash" : "52c45b76d0dbd51e6eb65f0597d5098a" 53 + }, 54 + "action-icon-new-grey" : { 55 + "name" : "action-icon-new-grey", 56 + "rule" : ".action-icon-new-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-new", 57 + "hash" : "c51315bd83a20806625ca3a887f86215" 58 + }, 59 + "action-icon-new-white" : { 60 + "name" : "action-icon-new-white", 61 + "rule" : ".action-icon-new-white", 62 + "hash" : "5a344c62e037d672516dae0e3a8dd589" 63 + }, 64 + "action-icon-search-dark" : { 65 + "name" : "action-icon-search-dark", 66 + "rule" : ".action-icon-search-dark", 67 + "hash" : "6ff124bc9423bf98be5a53e22508cd26" 68 + }, 69 + "action-icon-search-grey" : { 70 + "name" : "action-icon-search-grey", 71 + "rule" : ".action-icon-search-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-search", 72 + "hash" : "57b5c47c0676da7f97d3b2f7eefbbea4" 73 + }, 74 + "action-icon-search-white" : { 75 + "name" : "action-icon-search-white", 76 + "rule" : ".action-icon-search-white", 77 + "hash" : "17f1bf9820b0c44f4641e0256840b138" 78 + }, 79 + "action-icon-settings-dark" : { 80 + "name" : "action-icon-settings-dark", 81 + "rule" : ".action-icon-settings-dark", 82 + "hash" : "5ecb08643250a052e5d090ef4660faf5" 83 + }, 84 + "action-icon-settings-grey" : { 85 + "name" : "action-icon-settings-grey", 86 + "rule" : ".action-icon-settings-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-settings", 87 + "hash" : "5aeb35f1019c51a2f9140dc8765c9dca" 88 + }, 89 + "action-icon-settings-white" : { 90 + "name" : "action-icon-settings-white", 91 + "rule" : ".action-icon-settings-white", 92 + "hash" : "8cdd154946f1a8d8d307b72eddd5d755" 93 + }, 94 + "action-icon-star-dark" : { 95 + "name" : "action-icon-star-dark", 96 + "rule" : ".action-icon-star-dark", 97 + "hash" : "45567d03f8e34811eca0621e93b5e050" 98 + }, 99 + "action-icon-star-grey" : { 100 + "name" : "action-icon-star-grey", 101 + "rule" : ".action-icon-star-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-star", 102 + "hash" : "1c7909e987b64b26b728506695457770" 103 + }, 104 + "action-icon-star-white" : { 105 + "name" : "action-icon-star-white", 106 + "rule" : ".action-icon-star-white", 107 + "hash" : "e7c949542a54a347879ceb96f42a3c02" 108 + }, 109 + "action-icon-tag-dark" : { 110 + "name" : "action-icon-tag-dark", 111 + "rule" : ".action-icon-tag-dark", 112 + "hash" : "24d97fa7524d0bf1bac17d9e07a63f48" 113 + }, 114 + "action-icon-tag-grey" : { 115 + "name" : "action-icon-tag-grey", 116 + "rule" : ".action-icon-tag-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-tag", 117 + "hash" : "f04a5b38209c0f8e9ad2a3a964d5d505" 118 + }, 119 + "action-icon-tag-white" : { 120 + "name" : "action-icon-tag-white", 121 + "rule" : ".action-icon-tag-white", 122 + "hash" : "fdfc5d20f6a0d90b6d329159823d2cb0" 123 + }, 124 + "action-icon-wrench-dark" : { 125 + "name" : "action-icon-wrench-dark", 126 + "rule" : ".action-icon-wrench-dark", 127 + "hash" : "3a5cfa463c3c89194d3bbce3952a6e80" 128 + }, 129 + "action-icon-wrench-grey" : { 130 + "name" : "action-icon-wrench-grey", 131 + "rule" : ".action-icon-wrench-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-wrench", 132 + "hash" : "40d8a77d6272589c69f65e9b5e5587e1" 133 + }, 134 + "action-icon-wrench-white" : { 135 + "name" : "action-icon-wrench-white", 136 + "rule" : ".action-icon-wrench-white", 137 + "hash" : "20ee83ae6a5d0dc6918727b6ccacec67" 138 + } 139 + }, 140 + "scales" : [ 141 + 1, 142 + 2 143 + ], 144 + "header" : "\/**\n * @provides sprite-action-icon-css\n * @generated\n *\/\n\n.sprite-action-icon {\n background-image: url(\/rsrc\/image\/sprite-action-icon.png);\n background-repeat: no-repeat;\n}\n\n@media\nonly screen and (min-device-pixel-ratio: 1.5),\nonly screen and (-webkit-min-device-pixel-ratio: 1.5) {\n .sprite-action-icon {\n background-image: url(\/rsrc\/image\/sprite-action-icon-X2.png);\n background-size: {X}px {Y}px;\n }\n}\n", 145 + "type" : "standard" 146 + }
+25
resources/sprite/manifest/gradient.json
··· 16 16 "rule" : ".gradient-blue-dark, button, a.button, a.button:visited, input.inputsubmit", 17 17 "hash" : "f467612edcdbf984672287c6086492c4" 18 18 }, 19 + "gradient-blue-header" : { 20 + "name" : "gradient-blue-header", 21 + "rule" : ".gradient-blue-header", 22 + "hash" : "dd82b6d737f9f683c0d6e70eff59e872" 23 + }, 19 24 "gradient-blue-light" : { 20 25 "name" : "gradient-blue-light", 21 26 "rule" : ".gradient-blue-light, button:active, a.button:active", ··· 36 41 "rule" : ".gradient-green-dark, button.green, a.green, a.green:visited", 37 42 "hash" : "a6719fe55b2b0e527ed32985691eab34" 38 43 }, 44 + "gradient-green-header" : { 45 + "name" : "gradient-green-header", 46 + "rule" : ".gradient-green-header", 47 + "hash" : "d61297d23aa31fa1de51e2b9b5974554" 48 + }, 39 49 "gradient-green-light" : { 40 50 "name" : "gradient-green-light", 41 51 "rule" : ".gradient-green-light, button.green:active, a.green:active", ··· 46 56 "rule" : ".gradient-grey-dark, button.grey, input.inputaux, a.grey, a.grey:visited, a.button.disabled, button[disabled], button.disabled", 47 57 "hash" : "fac28a773098fc62bf571e12b843f71a" 48 58 }, 59 + "gradient-grey-header" : { 60 + "name" : "gradient-grey-header", 61 + "rule" : ".gradient-grey-header", 62 + "hash" : "f1453896068a8dd0d7885457c8e371bc" 63 + }, 49 64 "gradient-grey-light" : { 50 65 "name" : "gradient-grey-light", 51 66 "rule" : ".gradient-grey-light, button.grey:active, a.grey:active, button.grey_active, a.dropdown-open", ··· 65 80 "name" : "gradient-menu-selected", 66 81 "rule" : ".gradient-menu-selected, .phabricator-side-menu .phabricator-menu-item-selected, .device-desktop .phabricator-side-menu a.phabricator-menu-item-selected:hover, .phabricator-nav-local a.phabricator-active-nav-focus", 67 82 "hash" : "9b4b039fba177b90bc26f0e6eece339d" 83 + }, 84 + "gradient-red-header" : { 85 + "name" : "gradient-red-header", 86 + "rule" : ".gradient-red-header", 87 + "hash" : "27a76645065953a8440d0c3d2b192c82" 88 + }, 89 + "gradient-yellow-header" : { 90 + "name" : "gradient-yellow-header", 91 + "rule" : ".gradient-yellow-header", 92 + "hash" : "181e68e61f29071c3ec3810694c2ef08" 68 93 } 69 94 }, 70 95 "scales" : [
+31
resources/sprite/manifest/minicons.json
··· 1 + { 2 + "version" : 1, 3 + "sprites" : { 4 + "minicons-company-white" : { 5 + "name" : "minicons-company-white", 6 + "rule" : ".minicons-company-white", 7 + "hash" : "181289eba2fcb851858ab5b99fd19818" 8 + }, 9 + "minicons-move-white" : { 10 + "name" : "minicons-move-white", 11 + "rule" : ".minicons-move-white", 12 + "hash" : "620e464c0e50830b90eaed3b5a2b9f56" 13 + }, 14 + "minicons-public-white" : { 15 + "name" : "minicons-public-white", 16 + "rule" : ".minicons-public-white", 17 + "hash" : "c075363aeba4c52dbcc328a24d8f4298" 18 + }, 19 + "minicons-restricted-white" : { 20 + "name" : "minicons-restricted-white", 21 + "rule" : ".minicons-restricted-white", 22 + "hash" : "af00df15815b83d410073859dacf7a75" 23 + } 24 + }, 25 + "scales" : [ 26 + 1, 27 + 2 28 + ], 29 + "header" : "\/**\n * @provides sprite-minicons-css\n * @generated\n *\/\n\n.sprite-minicons {\n background-image: url(\/rsrc\/image\/sprite-minicons.png);\n background-repeat: no-repeat;\n}\n\n@media\nonly screen and (min-device-pixel-ratio: 1.5),\nonly screen and (-webkit-min-device-pixel-ratio: 1.5) {\n .sprite-minicons {\n background-image: url(\/rsrc\/image\/sprite-minicons-X2.png);\n background-size: {X}px {Y}px;\n }\n}\n", 30 + "type" : "standard" 31 + }
resources/sprite/minicons_white_1x/company.png

This is a binary file and will not be displayed.

resources/sprite/minicons_white_1x/move.png

This is a binary file and will not be displayed.

resources/sprite/minicons_white_1x/public.png

This is a binary file and will not be displayed.

resources/sprite/minicons_white_1x/restricted.png

This is a binary file and will not be displayed.

resources/sprite/minicons_white_2x/company.png

This is a binary file and will not be displayed.

resources/sprite/minicons_white_2x/move.png

This is a binary file and will not be displayed.

resources/sprite/minicons_white_2x/public.png

This is a binary file and will not be displayed.

resources/sprite/minicons_white_2x/restricted.png

This is a binary file and will not be displayed.

+2
scripts/celerity/generate_sprites.php
··· 30 30 'icon' => $generator->buildIconSheet(), 31 31 'menu' => $generator->buildMenuSheet(), 32 32 'apps' => $generator->buildAppsSheet(), 33 + 'actions' => $generator->buildActionsSheet(), 34 + 'minicons' => $generator->buildMiniconsSheet(), 33 35 'conpherence' => $generator->buildConpherenceSheet(), 34 36 'apps-large' => $generator->buildAppsLargeSheet(), 35 37 'tokens' => $generator->buildTokenSheet(),
+87 -41
src/__celerity_resource_map__.php
··· 511 511 'disk' => '/rsrc/image/search.png', 512 512 'type' => 'png', 513 513 ), 514 + '/rsrc/image/sprite-actions-X2.png' => 515 + array( 516 + 'hash' => 'dee876887537d0f941f89ea41adf6631', 517 + 'uri' => '/res/dee87688/rsrc/image/sprite-actions-X2.png', 518 + 'disk' => '/rsrc/image/sprite-actions-X2.png', 519 + 'type' => 'png', 520 + ), 521 + '/rsrc/image/sprite-actions.png' => 522 + array( 523 + 'hash' => '6b58724a27c34412edb421dc25b4b091', 524 + 'uri' => '/res/6b58724a/rsrc/image/sprite-actions.png', 525 + 'disk' => '/rsrc/image/sprite-actions.png', 526 + 'type' => 'png', 527 + ), 514 528 '/rsrc/image/sprite-apps-X2.png' => 515 529 array( 516 530 'hash' => '35a4b5c92f0b05a6a06c8a8e2f409d9e', ··· 576 590 ), 577 591 '/rsrc/image/sprite-gradient.png' => 578 592 array( 579 - 'hash' => '92aebaab67dcc6baf2ea99294368d895', 580 - 'uri' => '/res/92aebaab/rsrc/image/sprite-gradient.png', 593 + 'hash' => 'df1e8e0d09bbbabdd6015d3467dec11a', 594 + 'uri' => '/res/df1e8e0d/rsrc/image/sprite-gradient.png', 581 595 'disk' => '/rsrc/image/sprite-gradient.png', 582 596 'type' => 'png', 583 597 ), ··· 607 621 'hash' => '21508eebdf582d7251d62bb2cd09f66d', 608 622 'uri' => '/res/21508eeb/rsrc/image/sprite-menu.png', 609 623 'disk' => '/rsrc/image/sprite-menu.png', 624 + 'type' => 'png', 625 + ), 626 + '/rsrc/image/sprite-minicons-X2.png' => 627 + array( 628 + 'hash' => '9b36608d0bfaa941816e42ceb6912aaf', 629 + 'uri' => '/res/9b36608d/rsrc/image/sprite-minicons-X2.png', 630 + 'disk' => '/rsrc/image/sprite-minicons-X2.png', 631 + 'type' => 'png', 632 + ), 633 + '/rsrc/image/sprite-minicons.png' => 634 + array( 635 + 'hash' => 'f4aa63b2bb2d7364c388a20fa35a08c5', 636 + 'uri' => '/res/f4aa63b2/rsrc/image/sprite-minicons.png', 637 + 'disk' => '/rsrc/image/sprite-minicons.png', 610 638 'type' => 'png', 611 639 ), 612 640 '/rsrc/image/sprite-tokens.png' => ··· 3688 3716 ), 3689 3717 'disk' => '/rsrc/css/core/spacing.css', 3690 3718 ), 3719 + 'sprite-action-icon-css' => 3720 + array( 3721 + 'uri' => '/res/a992b71c/rsrc/css/sprite-actions.css', 3722 + 'type' => 'css', 3723 + 'requires' => 3724 + array( 3725 + ), 3726 + 'disk' => '/rsrc/css/sprite-actions.css', 3727 + ), 3691 3728 'sprite-apps-css' => 3692 3729 array( 3693 3730 'uri' => '/res/d0b8b697/rsrc/css/sprite-apps.css', ··· 3735 3772 ), 3736 3773 'sprite-gradient-css' => 3737 3774 array( 3738 - 'uri' => '/res/e62e7a0f/rsrc/css/sprite-gradient.css', 3775 + 'uri' => '/res/0d784d61/rsrc/css/sprite-gradient.css', 3739 3776 'type' => 'css', 3740 3777 'requires' => 3741 3778 array( ··· 3760 3797 ), 3761 3798 'disk' => '/rsrc/css/sprite-menu.css', 3762 3799 ), 3800 + 'sprite-minicons--css' => 3801 + array( 3802 + 'uri' => '/res/6dda36e5/rsrc/css/sprite-minicons.css', 3803 + 'type' => 'css', 3804 + 'requires' => 3805 + array( 3806 + ), 3807 + 'disk' => '/rsrc/css/sprite-minicons.css', 3808 + ), 3763 3809 'sprite-tokens-css' => 3764 3810 array( 3765 3811 'uri' => '/res/9ae0de5b/rsrc/css/sprite-tokens.css', ··· 3808 3854 ), array( 3809 3855 'packages' => 3810 3856 array( 3811 - '2265745d' => 3857 + 'fdb9d6ab' => 3812 3858 array( 3813 3859 'name' => 'core.pkg.css', 3814 3860 'symbols' => ··· 3850 3896 34 => 'phabricator-object-item-list-view-css', 3851 3897 35 => 'global-drag-and-drop-css', 3852 3898 ), 3853 - 'uri' => '/res/pkg/2265745d/core.pkg.css', 3899 + 'uri' => '/res/pkg/fdb9d6ab/core.pkg.css', 3854 3900 'type' => 'css', 3855 3901 ), 3856 3902 'd95b69e5' => ··· 4040 4086 'reverse' => 4041 4087 array( 4042 4088 'aphront-attached-file-view-css' => '6b1fccc6', 4043 - 'aphront-dialog-view-css' => '2265745d', 4044 - 'aphront-error-view-css' => '2265745d', 4045 - 'aphront-form-view-css' => '2265745d', 4046 - 'aphront-list-filter-view-css' => '2265745d', 4047 - 'aphront-pager-view-css' => '2265745d', 4048 - 'aphront-panel-view-css' => '2265745d', 4049 - 'aphront-table-view-css' => '2265745d', 4050 - 'aphront-tokenizer-control-css' => '2265745d', 4051 - 'aphront-tooltip-css' => '2265745d', 4052 - 'aphront-typeahead-control-css' => '2265745d', 4089 + 'aphront-dialog-view-css' => 'fdb9d6ab', 4090 + 'aphront-error-view-css' => 'fdb9d6ab', 4091 + 'aphront-form-view-css' => 'fdb9d6ab', 4092 + 'aphront-list-filter-view-css' => 'fdb9d6ab', 4093 + 'aphront-pager-view-css' => 'fdb9d6ab', 4094 + 'aphront-panel-view-css' => 'fdb9d6ab', 4095 + 'aphront-table-view-css' => 'fdb9d6ab', 4096 + 'aphront-tokenizer-control-css' => 'fdb9d6ab', 4097 + 'aphront-tooltip-css' => 'fdb9d6ab', 4098 + 'aphront-typeahead-control-css' => 'fdb9d6ab', 4053 4099 'differential-changeset-view-css' => '8aaacd1b', 4054 4100 'differential-core-view-css' => '8aaacd1b', 4055 4101 'differential-inline-comment-editor' => 'e96b08f8', ··· 4063 4109 'differential-table-of-contents-css' => '8aaacd1b', 4064 4110 'diffusion-commit-view-css' => 'c8ce2d88', 4065 4111 'diffusion-icons-css' => 'c8ce2d88', 4066 - 'global-drag-and-drop-css' => '2265745d', 4112 + 'global-drag-and-drop-css' => 'fdb9d6ab', 4067 4113 'inline-comment-summary-css' => '8aaacd1b', 4068 4114 'javelin-aphlict' => 'd95b69e5', 4069 4115 'javelin-behavior' => 'fe22443b', ··· 4135 4181 'javelin-util' => 'fe22443b', 4136 4182 'javelin-vector' => 'fe22443b', 4137 4183 'javelin-workflow' => 'fe22443b', 4138 - 'lightbox-attachment-css' => '2265745d', 4184 + 'lightbox-attachment-css' => 'fdb9d6ab', 4139 4185 'maniphest-task-summary-css' => '6b1fccc6', 4140 4186 'maniphest-transaction-detail-css' => '6b1fccc6', 4141 4187 'phabricator-busy' => 'd95b69e5', 4142 4188 'phabricator-content-source-view-css' => '8aaacd1b', 4143 - 'phabricator-core-buttons-css' => '2265745d', 4144 - 'phabricator-core-css' => '2265745d', 4145 - 'phabricator-crumbs-view-css' => '2265745d', 4146 - 'phabricator-directory-css' => '2265745d', 4189 + 'phabricator-core-buttons-css' => 'fdb9d6ab', 4190 + 'phabricator-core-css' => 'fdb9d6ab', 4191 + 'phabricator-crumbs-view-css' => 'fdb9d6ab', 4192 + 'phabricator-directory-css' => 'fdb9d6ab', 4147 4193 'phabricator-drag-and-drop-file-upload' => 'e96b08f8', 4148 4194 'phabricator-dropdown-menu' => 'd95b69e5', 4149 4195 'phabricator-file-upload' => 'd95b69e5', 4150 - 'phabricator-filetree-view-css' => '2265745d', 4151 - 'phabricator-flag-css' => '2265745d', 4152 - 'phabricator-form-view-css' => '2265745d', 4153 - 'phabricator-header-view-css' => '2265745d', 4154 - 'phabricator-jump-nav' => '2265745d', 4196 + 'phabricator-filetree-view-css' => 'fdb9d6ab', 4197 + 'phabricator-flag-css' => 'fdb9d6ab', 4198 + 'phabricator-form-view-css' => 'fdb9d6ab', 4199 + 'phabricator-header-view-css' => 'fdb9d6ab', 4200 + 'phabricator-jump-nav' => 'fdb9d6ab', 4155 4201 'phabricator-keyboard-shortcut' => 'd95b69e5', 4156 4202 'phabricator-keyboard-shortcut-manager' => 'd95b69e5', 4157 - 'phabricator-main-menu-view' => '2265745d', 4203 + 'phabricator-main-menu-view' => 'fdb9d6ab', 4158 4204 'phabricator-menu-item' => 'd95b69e5', 4159 - 'phabricator-nav-view-css' => '2265745d', 4205 + 'phabricator-nav-view-css' => 'fdb9d6ab', 4160 4206 'phabricator-notification' => 'd95b69e5', 4161 - 'phabricator-notification-css' => '2265745d', 4162 - 'phabricator-notification-menu-css' => '2265745d', 4163 - 'phabricator-object-item-list-view-css' => '2265745d', 4207 + 'phabricator-notification-css' => 'fdb9d6ab', 4208 + 'phabricator-notification-menu-css' => 'fdb9d6ab', 4209 + 'phabricator-object-item-list-view-css' => 'fdb9d6ab', 4164 4210 'phabricator-object-selector-css' => '8aaacd1b', 4165 4211 'phabricator-prefab' => 'd95b69e5', 4166 4212 'phabricator-project-tag-css' => '6b1fccc6', 4167 - 'phabricator-remarkup-css' => '2265745d', 4213 + 'phabricator-remarkup-css' => 'fdb9d6ab', 4168 4214 'phabricator-shaped-request' => 'e96b08f8', 4169 - 'phabricator-side-menu-view-css' => '2265745d', 4170 - 'phabricator-standard-page-view' => '2265745d', 4215 + 'phabricator-side-menu-view-css' => 'fdb9d6ab', 4216 + 'phabricator-standard-page-view' => 'fdb9d6ab', 4171 4217 'phabricator-textareautils' => 'd95b69e5', 4172 4218 'phabricator-tooltip' => 'd95b69e5', 4173 - 'phabricator-transaction-view-css' => '2265745d', 4174 - 'phabricator-zindex-css' => '2265745d', 4175 - 'sprite-apps-large-css' => '2265745d', 4176 - 'sprite-gradient-css' => '2265745d', 4177 - 'sprite-icon-css' => '2265745d', 4178 - 'sprite-menu-css' => '2265745d', 4179 - 'syntax-highlighting-css' => '2265745d', 4219 + 'phabricator-transaction-view-css' => 'fdb9d6ab', 4220 + 'phabricator-zindex-css' => 'fdb9d6ab', 4221 + 'sprite-apps-large-css' => 'fdb9d6ab', 4222 + 'sprite-gradient-css' => 'fdb9d6ab', 4223 + 'sprite-icon-css' => 'fdb9d6ab', 4224 + 'sprite-menu-css' => 'fdb9d6ab', 4225 + 'syntax-highlighting-css' => 'fdb9d6ab', 4180 4226 ), 4181 4227 ));
+115
src/infrastructure/celerity/CeleritySpriteGenerator.php
··· 83 83 return $sheet; 84 84 } 85 85 86 + public function buildActionsSheet() { 87 + $icons = $this->getDirectoryList('actions_white_1x'); 88 + 89 + $colors = array( 90 + 'dark', 91 + 'grey', 92 + 'white', 93 + ); 94 + 95 + $scales = array( 96 + '1x' => 1, 97 + '2x' => 2, 98 + ); 99 + 100 + $template = id(new PhutilSprite()) 101 + ->setSourceSize(24, 24); 102 + 103 + $sprites = array(); 104 + foreach ($colors as $color) { 105 + foreach ($icons as $icon) { 106 + $prefix = 'actions_'; 107 + if (strlen($color)) { 108 + $prefix .= $color.'_'; 109 + } 110 + 111 + $suffix = ''; 112 + if (strlen($color)) { 113 + $suffix = '-'.$color; 114 + } 115 + 116 + $sprite = id(clone $template) 117 + ->setName('action-icon-'.$icon.$suffix); 118 + 119 + $tcss = array(); 120 + $tcss[] = '.action-icon-'.$icon.$suffix; 121 + if ($color == 'grey') { 122 + $tcss[] = '.device-desktop .phabricator-action-icon-view:hover '. 123 + '.action-icon-'.$icon; 124 + } 125 + 126 + $sprite->setTargetCSS(implode(', ', $tcss)); 127 + 128 + foreach ($scales as $scale_key => $scale) { 129 + $path = $this->getPath($prefix.$scale_key.'/'.$icon.'.png'); 130 + $sprite->setSourceFile($path, $scale); 131 + } 132 + $sprites[] = $sprite; 133 + } 134 + } 135 + 136 + $sheet = $this->buildSheet('action-icon', true); 137 + $sheet->setScales($scales); 138 + foreach ($sprites as $sprite) { 139 + $sheet->addSprite($sprite); 140 + } 141 + 142 + return $sheet; 143 + } 144 + 145 + public function buildMiniconsSheet() { 146 + $icons = $this->getDirectoryList('minicons_white_1x'); 147 + 148 + $colors = array( 149 + 'white', 150 + ); 151 + 152 + $scales = array( 153 + '1x' => 1, 154 + '2x' => 2, 155 + ); 156 + 157 + $template = id(new PhutilSprite()) 158 + ->setSourceSize(16, 16); 159 + 160 + $sprites = array(); 161 + foreach ($colors as $color) { 162 + foreach ($icons as $icon) { 163 + $prefix = 'minicons_'; 164 + if (strlen($color)) { 165 + $prefix .= $color.'_'; 166 + } 167 + 168 + $suffix = ''; 169 + if (strlen($color)) { 170 + $suffix = '-'.$color; 171 + } 172 + 173 + $sprite = id(clone $template) 174 + ->setName('minicons-'.$icon.$suffix); 175 + 176 + $sprite->setTargetCSS('.minicons-'.$icon.$suffix); 177 + 178 + foreach ($scales as $scale_key => $scale) { 179 + $path = $this->getPath($prefix.$scale_key.'/'.$icon.'.png'); 180 + $sprite->setSourceFile($path, $scale); 181 + } 182 + $sprites[] = $sprite; 183 + } 184 + } 185 + 186 + $sheet = $this->buildSheet('minicons', true); 187 + $sheet->setScales($scales); 188 + foreach ($sprites as $sprite) { 189 + $sheet->addSprite($sprite); 190 + } 191 + 192 + return $sheet; 193 + } 194 + 195 + 86 196 public function buildMenuSheet() { 87 197 $sprites = array(); 88 198 ··· 300 410 'menu-hover' => 28, 301 411 'menu-label' => 24, 302 412 'menu-selected' => 28, 413 + 'red-header' => 70, 414 + 'blue-header' => 70, 415 + 'green-header' => 70, 416 + 'yellow-header' => 70, 417 + 'grey-header' => 70 303 418 ); 304 419 305 420 // Reorder the sprites so less-specific rules generate earlier in the sheet.
+127
webroot/rsrc/css/sprite-actions.css
··· 1 + /** 2 + * @provides sprite-action-icon-css 3 + * @generated 4 + */ 5 + 6 + .sprite-action-icon { 7 + background-image: url(/rsrc/image/sprite-action-icon.png); 8 + background-repeat: no-repeat; 9 + } 10 + 11 + @media 12 + only screen and (min-device-pixel-ratio: 1.5), 13 + only screen and (-webkit-min-device-pixel-ratio: 1.5) { 14 + .sprite-action-icon { 15 + background-image: url(/rsrc/image/sprite-action-icon-X2.png); 16 + background-size: 125px 150px; 17 + } 18 + } 19 + 20 + 21 + .action-icon-flag-dark { 22 + background-position: 0px 0px; 23 + } 24 + 25 + .action-icon-heart-dark { 26 + background-position: -25px 0px; 27 + } 28 + 29 + .action-icon-move-dark { 30 + background-position: -50px 0px; 31 + } 32 + 33 + .action-icon-new-dark { 34 + background-position: -75px 0px; 35 + } 36 + 37 + .action-icon-search-dark { 38 + background-position: -100px 0px; 39 + } 40 + 41 + .action-icon-settings-dark { 42 + background-position: 0px -25px; 43 + } 44 + 45 + .action-icon-star-dark { 46 + background-position: -25px -25px; 47 + } 48 + 49 + .action-icon-tag-dark { 50 + background-position: -50px -25px; 51 + } 52 + 53 + .action-icon-wrench-dark { 54 + background-position: -75px -25px; 55 + } 56 + 57 + .action-icon-flag-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-flag { 58 + background-position: -100px -25px; 59 + } 60 + 61 + .action-icon-heart-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-heart { 62 + background-position: 0px -50px; 63 + } 64 + 65 + .action-icon-move-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-move { 66 + background-position: -25px -50px; 67 + } 68 + 69 + .action-icon-new-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-new { 70 + background-position: -50px -50px; 71 + } 72 + 73 + .action-icon-search-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-search { 74 + background-position: -75px -50px; 75 + } 76 + 77 + .action-icon-settings-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-settings { 78 + background-position: -100px -50px; 79 + } 80 + 81 + .action-icon-star-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-star { 82 + background-position: 0px -75px; 83 + } 84 + 85 + .action-icon-tag-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-tag { 86 + background-position: -25px -75px; 87 + } 88 + 89 + .action-icon-wrench-grey, .device-desktop .phabricator-action-icon-view:hover .action-icon-wrench { 90 + background-position: -50px -75px; 91 + } 92 + 93 + .action-icon-flag-white { 94 + background-position: -75px -75px; 95 + } 96 + 97 + .action-icon-heart-white { 98 + background-position: -100px -75px; 99 + } 100 + 101 + .action-icon-move-white { 102 + background-position: 0px -100px; 103 + } 104 + 105 + .action-icon-new-white { 106 + background-position: -25px -100px; 107 + } 108 + 109 + .action-icon-search-white { 110 + background-position: -50px -100px; 111 + } 112 + 113 + .action-icon-settings-white { 114 + background-position: -75px -100px; 115 + } 116 + 117 + .action-icon-star-white { 118 + background-position: -100px -100px; 119 + } 120 + 121 + .action-icon-tag-white { 122 + background-position: 0px -125px; 123 + } 124 + 125 + .action-icon-wrench-white { 126 + background-position: -25px -125px; 127 + }
+20
webroot/rsrc/css/sprite-gradient.css
··· 27 27 background-position: 0px -132px; 28 28 } 29 29 30 + .gradient-blue-header { 31 + background-position: 0px -357px; 32 + } 33 + 30 34 .gradient-breadcrumbs { 31 35 background-position: 0px -325px; 32 36 } ··· 39 43 background-position: 0px -159px; 40 44 } 41 45 46 + .gradient-green-header { 47 + background-position: 0px -428px; 48 + } 49 + 42 50 .gradient-green-light, button.green:active, a.green:active { 43 51 background-position: 0px -186px; 44 52 } ··· 47 55 background-position: 0px -213px; 48 56 } 49 57 58 + .gradient-grey-header { 59 + background-position: 0px -499px; 60 + } 61 + 50 62 .gradient-grey-light, button.grey:active, a.grey:active, button.grey_active, a.dropdown-open { 51 63 background-position: 0px -240px; 52 64 } ··· 62 74 .gradient-menu-selected, .phabricator-side-menu .phabricator-menu-item-selected, .device-desktop .phabricator-side-menu a.phabricator-menu-item-selected:hover, .phabricator-nav-local a.phabricator-active-nav-focus { 63 75 background-position: 0px -296px; 64 76 } 77 + 78 + .gradient-red-header { 79 + background-position: 0px -570px; 80 + } 81 + 82 + .gradient-yellow-header { 83 + background-position: 0px -641px; 84 + }
+35
webroot/rsrc/css/sprite-minicons.css
··· 1 + /** 2 + * @provides sprite-minicons-css 3 + * @generated 4 + */ 5 + 6 + .sprite-minicons { 7 + background-image: url(/rsrc/image/sprite-minicons.png); 8 + background-repeat: no-repeat; 9 + } 10 + 11 + @media 12 + only screen and (min-device-pixel-ratio: 1.5), 13 + only screen and (-webkit-min-device-pixel-ratio: 1.5) { 14 + .sprite-minicons { 15 + background-image: url(/rsrc/image/sprite-minicons-X2.png); 16 + background-size: 34px 34px; 17 + } 18 + } 19 + 20 + 21 + .minicons-company-white { 22 + background-position: 0px 0px; 23 + } 24 + 25 + .minicons-move-white { 26 + background-position: -17px 0px; 27 + } 28 + 29 + .minicons-public-white { 30 + background-position: 0px -17px; 31 + } 32 + 33 + .minicons-restricted-white { 34 + background-position: -17px -17px; 35 + }
webroot/rsrc/image/sprite-actions-X2.png

This is a binary file and will not be displayed.

webroot/rsrc/image/sprite-actions.png

This is a binary file and will not be displayed.

webroot/rsrc/image/sprite-gradient.png

This is a binary file and will not be displayed.

webroot/rsrc/image/sprite-minicons-X2.png

This is a binary file and will not be displayed.

webroot/rsrc/image/sprite-minicons.png

This is a binary file and will not be displayed.