Page MenuHomePhabricator

D17210.diff
No OneTemporary

D17210.diff

diff --git a/resources/celerity/map.php b/resources/celerity/map.php
--- a/resources/celerity/map.php
+++ b/resources/celerity/map.php
@@ -10,7 +10,7 @@
'conpherence.pkg.css' => '0b64e988',
'conpherence.pkg.js' => '6249a1cf',
'core.pkg.css' => '1afa1d13',
- 'core.pkg.js' => 'a2ead3fe',
+ 'core.pkg.js' => '892976d4',
'darkconsole.pkg.js' => 'e7393ebb',
'differential.pkg.css' => '9535a7e6',
'differential.pkg.js' => 'ddfeb49b',
@@ -533,7 +533,7 @@
'rsrc/js/core/behavior-watch-anchor.js' => '9f36c42d',
'rsrc/js/core/behavior-workflow.js' => '0a3f3021',
'rsrc/js/core/phtize.js' => 'd254d646',
- 'rsrc/js/phui/behavior-phui-dropdown-menu.js' => '1aa4c968',
+ 'rsrc/js/phui/behavior-phui-dropdown-menu.js' => '8744dfd1',
'rsrc/js/phui/behavior-phui-file-upload.js' => 'b003d4fb',
'rsrc/js/phui/behavior-phui-submenu.js' => 'a6f7a73b',
'rsrc/js/phui/behavior-phui-tab-group.js' => '0a0b10e9',
@@ -686,7 +686,7 @@
'javelin-behavior-phabricator-watch-anchor' => '9f36c42d',
'javelin-behavior-pholio-mock-edit' => 'bee502c8',
'javelin-behavior-pholio-mock-view' => 'fbe497e7',
- 'javelin-behavior-phui-dropdown-menu' => '1aa4c968',
+ 'javelin-behavior-phui-dropdown-menu' => '8744dfd1',
'javelin-behavior-phui-file-upload' => 'b003d4fb',
'javelin-behavior-phui-hovercards' => 'bcaccd64',
'javelin-behavior-phui-submenu' => 'a6f7a73b',
@@ -1057,12 +1057,6 @@
'19f9369b' => array(
'phui-oi-list-view-css',
),
- '1aa4c968' => array(
- 'javelin-behavior',
- 'javelin-stratcom',
- 'javelin-dom',
- 'phuix-dropdown-menu',
- ),
'1ad0a787' => array(
'javelin-install',
'javelin-reactor',
@@ -1573,6 +1567,12 @@
'phabricator-tooltip',
'changeset-view-manager',
),
+ '8744dfd1' => array(
+ 'javelin-behavior',
+ 'javelin-stratcom',
+ 'javelin-dom',
+ 'phuix-dropdown-menu',
+ ),
'88236f00' => array(
'javelin-behavior',
'phabricator-keyboard-shortcut',
diff --git a/src/view/layout/PhabricatorActionView.php b/src/view/layout/PhabricatorActionView.php
--- a/src/view/layout/PhabricatorActionView.php
+++ b/src/view/layout/PhabricatorActionView.php
@@ -173,22 +173,26 @@
->setIcon($this->icon.$color);
}
- if ($this->href) {
+ $sigils = array();
+ if ($this->workflow) {
+ $sigils[] = 'workflow';
+ }
- $sigils = array();
- if ($this->workflow) {
- $sigils[] = 'workflow';
- }
- if ($this->download) {
- $sigils[] = 'download';
- }
+ if ($this->download) {
+ $sigils[] = 'download';
+ }
- if ($this->sigils) {
- $sigils = array_merge($sigils, $this->sigils);
- }
+ if ($this->submenu) {
+ $sigils[] = 'keep-open';
+ }
- $sigils = $sigils ? implode(' ', $sigils) : null;
+ if ($this->sigils) {
+ $sigils = array_merge($sigils, $this->sigils);
+ }
+ $sigils = $sigils ? implode(' ', $sigils) : null;
+
+ if ($this->href) {
if ($this->renderAsForm) {
if (!$this->hasViewer()) {
throw new Exception(
@@ -248,6 +252,7 @@
'span',
array(
'class' => 'phabricator-action-view-item',
+ 'sigil' => $sigils,
),
array($icon, $this->name));
}
diff --git a/webroot/rsrc/js/phui/behavior-phui-dropdown-menu.js b/webroot/rsrc/js/phui/behavior-phui-dropdown-menu.js
--- a/webroot/rsrc/js/phui/behavior-phui-dropdown-menu.js
+++ b/webroot/rsrc/js/phui/behavior-phui-dropdown-menu.js
@@ -48,7 +48,9 @@
return;
}
- if (JX.Stratcom.pass()) {
+ // If this item opens a submenu, we don't want to close the current
+ // menu. One submenu is "Edit Related Objects..." on mobile.
+ if (JX.Stratcom.hasSigil(e.getTarget(), 'keep-open')) {
return;
}

File Metadata

Mime Type
text/plain
Expires
Sat, May 18, 6:00 AM (4 w, 6 h ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6294019
Default Alt Text
D17210.diff (3 KB)

Event Timeline