Page MenuHomePhabricator

D8170.id18494.diff
No OneTemporary

D8170.id18494.diff

Index: resources/celerity/map.php
===================================================================
--- resources/celerity/map.php
+++ resources/celerity/map.php
@@ -151,6 +151,7 @@
'rsrc/css/sprite-apps-large.css' => '0a453d4b',
'rsrc/css/sprite-apps-xlarge.css' => 'db66c878',
'rsrc/css/sprite-apps.css' => 'c3857e4e',
+ 'rsrc/css/sprite-buttonbar.css' => 'bbec51ec',
'rsrc/css/sprite-conpherence.css' => '084b1f13',
'rsrc/css/sprite-docs.css' => '7ea4927e',
'rsrc/css/sprite-gradient.css' => 'a10def53',
@@ -305,6 +306,8 @@
'rsrc/image/sprite-apps-large.png' => 'b0aa7d64',
'rsrc/image/sprite-apps-xlarge.png' => 'a751a580',
'rsrc/image/sprite-apps.png' => '35052ada',
+ 'rsrc/image/sprite-buttonbar-X2.png' => '36fcc19d',
+ 'rsrc/image/sprite-buttonbar.png' => 'e488cf8d',
'rsrc/image/sprite-conpherence-X2.png' => '5ed80fb0',
'rsrc/image/sprite-conpherence.png' => '7146f76f',
'rsrc/image/sprite-docs-X2.png' => '520858fa',
@@ -778,6 +781,7 @@
'sprite-apps-css' => 'c3857e4e',
'sprite-apps-large-css' => '0a453d4b',
'sprite-apps-xlarge-css' => 'db66c878',
+ 'sprite-buttonbar-css' => 'bbec51ec',
'sprite-conpherence-css' => '084b1f13',
'sprite-docs-css' => '7ea4927e',
'sprite-gradient-css' => 'a10def53',
Index: resources/sprite/manifest/buttonbar.json
===================================================================
--- /dev/null
+++ resources/sprite/manifest/buttonbar.json
@@ -0,0 +1,46 @@
+{
+ "version" : 1,
+ "sprites" : {
+ "buttonbar-calendar" : {
+ "name" : "buttonbar-calendar",
+ "rule" : ".buttonbar-calendar",
+ "hash" : "51aed380faf290dab35d736a92d15aba"
+ },
+ "buttonbar-chevron-left" : {
+ "name" : "buttonbar-chevron-left",
+ "rule" : ".buttonbar-chevron-left",
+ "hash" : "24e52c724c85eb313e19ecd222be73b5"
+ },
+ "buttonbar-chevron-right" : {
+ "name" : "buttonbar-chevron-right",
+ "rule" : ".buttonbar-chevron-right",
+ "hash" : "9bbe40f752ee650646021b348b2971a9"
+ },
+ "buttonbar-cog" : {
+ "name" : "buttonbar-cog",
+ "rule" : ".buttonbar-cog",
+ "hash" : "1c816c27b8d7b6bffe5e32ba716e5930"
+ },
+ "buttonbar-home" : {
+ "name" : "buttonbar-home",
+ "rule" : ".buttonbar-home",
+ "hash" : "3ab3bfd5bf3c1ba0a422c200a70578d5"
+ },
+ "buttonbar-pencil" : {
+ "name" : "buttonbar-pencil",
+ "rule" : ".buttonbar-pencil",
+ "hash" : "17d42be118aa21bc154b3f7da3faf7cb"
+ },
+ "buttonbar-time" : {
+ "name" : "buttonbar-time",
+ "rule" : ".buttonbar-time",
+ "hash" : "1355aa26ecd63e76a59352aba95e54ad"
+ }
+ },
+ "scales" : [
+ 1,
+ 2
+ ],
+ "header" : "\/**\n * @provides sprite-buttonbar-css\n * @generated\n *\/\n\n.sprite-buttonbar {\n background-image: url(\/rsrc\/image\/sprite-buttonbar.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-buttonbar {\n background-image: url(\/rsrc\/image\/sprite-buttonbar-X2.png);\n background-size: {X}px {Y}px;\n }\n}\n",
+ "type" : "standard"
+}
Index: scripts/celerity/generate_sprites.php
===================================================================
--- scripts/celerity/generate_sprites.php
+++ scripts/celerity/generate_sprites.php
@@ -36,6 +36,7 @@
'apps-large' => $generator->buildAppsLargeSheet(),
'payments' => $generator->buildPaymentsSheet(),
'tokens' => $generator->buildTokenSheet(),
+ 'buttonbar' => $generator->buildButtonBarSheet(),
'docs' => $generator->buildDocsSheet(),
'gradient' => $generator->buildGradientSheet(),
'main-header' => $generator->buildMainHeaderSheet(),
Index: src/infrastructure/celerity/CeleritySpriteGenerator.php
===================================================================
--- src/infrastructure/celerity/CeleritySpriteGenerator.php
+++ src/infrastructure/celerity/CeleritySpriteGenerator.php
@@ -343,6 +343,38 @@
return $sheet;
}
+ public function buildButtonBarSheet() {
+ $icons = $this->getDirectoryList('button_bar_1x');
+ $scales = array(
+ '1x' => 1,
+ '2x' => 2,
+ );
+ $template = id(new PhutilSprite())
+ ->setSourceSize(14, 14);
+
+ $sprites = array();
+ $prefix = 'button_bar_';
+ foreach ($icons as $icon) {
+ $sprite = id(clone $template)
+ ->setName('buttonbar-'.$icon)
+ ->setTargetCSS('.buttonbar-'.$icon);
+
+ foreach ($scales as $scale_key => $scale) {
+ $path = $this->getPath($prefix.$scale_key.'/'.$icon.'.png');
+ $sprite->setSourceFile($path, $scale);
+ }
+ $sprites[] = $sprite;
+ }
+
+ $sheet = $this->buildSheet('buttonbar', true);
+ $sheet->setScales($scales);
+ foreach ($sprites as $sprite) {
+ $sheet->addSprite($sprite);
+ }
+
+ return $sheet;
+ }
+
public function buildProjectsSheet() {
$icons = $this->getDirectoryList('projects_1x');
$scales = array(
Index: webroot/rsrc/css/sprite-buttonbar.css
===================================================================
--- /dev/null
+++ webroot/rsrc/css/sprite-buttonbar.css
@@ -0,0 +1,47 @@
+/**
+ * @provides sprite-buttonbar-css
+ * @generated
+ */
+
+.sprite-buttonbar {
+ background-image: url(/rsrc/image/sprite-buttonbar.png);
+ background-repeat: no-repeat;
+}
+
+@media
+only screen and (min-device-pixel-ratio: 1.5),
+only screen and (-webkit-min-device-pixel-ratio: 1.5) {
+ .sprite-buttonbar {
+ background-image: url(/rsrc/image/sprite-buttonbar-X2.png);
+ background-size: 45px 45px;
+ }
+}
+
+
+.buttonbar-calendar {
+ background-position: 0px 0px;
+}
+
+.buttonbar-chevron-left {
+ background-position: -15px 0px;
+}
+
+.buttonbar-chevron-right {
+ background-position: -30px 0px;
+}
+
+.buttonbar-cog {
+ background-position: 0px -15px;
+}
+
+.buttonbar-home {
+ background-position: -15px -15px;
+}
+
+.buttonbar-pencil {
+ background-position: 0px -30px;
+}
+
+.buttonbar-time {
+ background-position: -15px -30px;
+}

File Metadata

Mime Type
text/plain
Expires
Tue, May 14, 5:01 AM (3 w, 3 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6294288
Default Alt Text
D8170.id18494.diff (6 KB)

Event Timeline