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

Don't try to activate disabled items in dropdown menus

Summary: Fixes an issue where the user could click a disabled dropdown menu item and get an exception or some other nonsense. Instead, just don't activate anything.

Test Plan: Clicked a disabled header, like "Members of project" in the policy dropdown.

Reviewers: btrahan, va.multimoney, chad

Reviewed By: chad

CC: aran

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

+48 -42
+42 -42
src/__celerity_resource_map__.php
··· 3169 3169 ), 3170 3170 'phabricator-dropdown-menu' => 3171 3171 array( 3172 - 'uri' => '/res/9e33be73/rsrc/js/core/DropdownMenu.js', 3172 + 'uri' => '/res/147ca011/rsrc/js/core/DropdownMenu.js', 3173 3173 'type' => 'js', 3174 3174 'requires' => 3175 3175 array( ··· 4309 4309 'uri' => '/res/pkg/b2f506ea/core.pkg.css', 4310 4310 'type' => 'css', 4311 4311 ), 4312 - '8fafb027' => 4312 + '3a57ca2f' => 4313 4313 array( 4314 4314 'name' => 'core.pkg.js', 4315 4315 'symbols' => ··· 4354 4354 37 => 'javelin-color', 4355 4355 38 => 'javelin-fx', 4356 4356 ), 4357 - 'uri' => '/res/pkg/8fafb027/core.pkg.js', 4357 + 'uri' => '/res/pkg/3a57ca2f/core.pkg.js', 4358 4358 'type' => 'js', 4359 4359 ), 4360 4360 '4ccfeb47' => ··· 4522 4522 'diffusion-icons-css' => 'c8ce2d88', 4523 4523 'global-drag-and-drop-css' => 'b2f506ea', 4524 4524 'inline-comment-summary-css' => '4dc2311c', 4525 - 'javelin-aphlict' => '8fafb027', 4525 + 'javelin-aphlict' => '3a57ca2f', 4526 4526 'javelin-behavior' => '9564fa17', 4527 - 'javelin-behavior-aphlict-dropdown' => '8fafb027', 4528 - 'javelin-behavior-aphlict-listen' => '8fafb027', 4529 - 'javelin-behavior-aphront-basic-tokenizer' => '8fafb027', 4527 + 'javelin-behavior-aphlict-dropdown' => '3a57ca2f', 4528 + 'javelin-behavior-aphlict-listen' => '3a57ca2f', 4529 + 'javelin-behavior-aphront-basic-tokenizer' => '3a57ca2f', 4530 4530 'javelin-behavior-aphront-drag-and-drop-textarea' => '5e9e5c4e', 4531 - 'javelin-behavior-aphront-form-disable-on-submit' => '8fafb027', 4531 + 'javelin-behavior-aphront-form-disable-on-submit' => '3a57ca2f', 4532 4532 'javelin-behavior-audit-preview' => '96909266', 4533 4533 'javelin-behavior-dark-console' => '4ccfeb47', 4534 - 'javelin-behavior-device' => '8fafb027', 4534 + 'javelin-behavior-device' => '3a57ca2f', 4535 4535 'javelin-behavior-differential-accept-with-errors' => '5e9e5c4e', 4536 4536 'javelin-behavior-differential-add-reviewers-and-ccs' => '5e9e5c4e', 4537 4537 'javelin-behavior-differential-comment-jump' => '5e9e5c4e', ··· 4547 4547 'javelin-behavior-diffusion-commit-graph' => '96909266', 4548 4548 'javelin-behavior-diffusion-pull-lastmodified' => '96909266', 4549 4549 'javelin-behavior-error-log' => '4ccfeb47', 4550 - 'javelin-behavior-global-drag-and-drop' => '8fafb027', 4551 - 'javelin-behavior-history-install' => '8fafb027', 4552 - 'javelin-behavior-konami' => '8fafb027', 4553 - 'javelin-behavior-lightbox-attachments' => '8fafb027', 4550 + 'javelin-behavior-global-drag-and-drop' => '3a57ca2f', 4551 + 'javelin-behavior-history-install' => '3a57ca2f', 4552 + 'javelin-behavior-konami' => '3a57ca2f', 4553 + 'javelin-behavior-lightbox-attachments' => '3a57ca2f', 4554 4554 'javelin-behavior-load-blame' => '5e9e5c4e', 4555 4555 'javelin-behavior-maniphest-batch-selector' => '0a694954', 4556 4556 'javelin-behavior-maniphest-subpriority-editor' => '0a694954', 4557 4557 'javelin-behavior-maniphest-transaction-controls' => '0a694954', 4558 4558 'javelin-behavior-maniphest-transaction-expand' => '0a694954', 4559 4559 'javelin-behavior-maniphest-transaction-preview' => '0a694954', 4560 - 'javelin-behavior-phabricator-active-nav' => '8fafb027', 4561 - 'javelin-behavior-phabricator-autofocus' => '8fafb027', 4562 - 'javelin-behavior-phabricator-gesture' => '8fafb027', 4563 - 'javelin-behavior-phabricator-hovercards' => '8fafb027', 4564 - 'javelin-behavior-phabricator-keyboard-shortcuts' => '8fafb027', 4565 - 'javelin-behavior-phabricator-nav' => '8fafb027', 4560 + 'javelin-behavior-phabricator-active-nav' => '3a57ca2f', 4561 + 'javelin-behavior-phabricator-autofocus' => '3a57ca2f', 4562 + 'javelin-behavior-phabricator-gesture' => '3a57ca2f', 4563 + 'javelin-behavior-phabricator-hovercards' => '3a57ca2f', 4564 + 'javelin-behavior-phabricator-keyboard-shortcuts' => '3a57ca2f', 4565 + 'javelin-behavior-phabricator-nav' => '3a57ca2f', 4566 4566 'javelin-behavior-phabricator-object-selector' => '5e9e5c4e', 4567 - 'javelin-behavior-phabricator-oncopy' => '8fafb027', 4568 - 'javelin-behavior-phabricator-remarkup-assist' => '8fafb027', 4569 - 'javelin-behavior-phabricator-reveal-content' => '8fafb027', 4570 - 'javelin-behavior-phabricator-search-typeahead' => '8fafb027', 4571 - 'javelin-behavior-phabricator-tooltips' => '8fafb027', 4572 - 'javelin-behavior-phabricator-watch-anchor' => '8fafb027', 4573 - 'javelin-behavior-refresh-csrf' => '8fafb027', 4567 + 'javelin-behavior-phabricator-oncopy' => '3a57ca2f', 4568 + 'javelin-behavior-phabricator-remarkup-assist' => '3a57ca2f', 4569 + 'javelin-behavior-phabricator-reveal-content' => '3a57ca2f', 4570 + 'javelin-behavior-phabricator-search-typeahead' => '3a57ca2f', 4571 + 'javelin-behavior-phabricator-tooltips' => '3a57ca2f', 4572 + 'javelin-behavior-phabricator-watch-anchor' => '3a57ca2f', 4573 + 'javelin-behavior-refresh-csrf' => '3a57ca2f', 4574 4574 'javelin-behavior-repository-crossreference' => '5e9e5c4e', 4575 - 'javelin-behavior-toggle-class' => '8fafb027', 4576 - 'javelin-behavior-workflow' => '8fafb027', 4577 - 'javelin-color' => '8fafb027', 4575 + 'javelin-behavior-toggle-class' => '3a57ca2f', 4576 + 'javelin-behavior-workflow' => '3a57ca2f', 4577 + 'javelin-color' => '3a57ca2f', 4578 4578 'javelin-dom' => '9564fa17', 4579 4579 'javelin-event' => '9564fa17', 4580 - 'javelin-fx' => '8fafb027', 4580 + 'javelin-fx' => '3a57ca2f', 4581 4581 'javelin-history' => '9564fa17', 4582 4582 'javelin-install' => '9564fa17', 4583 4583 'javelin-json' => '9564fa17', ··· 4599 4599 'maniphest-task-summary-css' => '49898640', 4600 4600 'phabricator-action-list-view-css' => 'b2f506ea', 4601 4601 'phabricator-application-launch-view-css' => 'b2f506ea', 4602 - 'phabricator-busy' => '8fafb027', 4602 + 'phabricator-busy' => '3a57ca2f', 4603 4603 'phabricator-content-source-view-css' => '4dc2311c', 4604 4604 'phabricator-core-css' => 'b2f506ea', 4605 4605 'phabricator-crumbs-view-css' => 'b2f506ea', 4606 4606 'phabricator-drag-and-drop-file-upload' => '5e9e5c4e', 4607 - 'phabricator-dropdown-menu' => '8fafb027', 4608 - 'phabricator-file-upload' => '8fafb027', 4607 + 'phabricator-dropdown-menu' => '3a57ca2f', 4608 + 'phabricator-file-upload' => '3a57ca2f', 4609 4609 'phabricator-filetree-view-css' => 'b2f506ea', 4610 4610 'phabricator-flag-css' => 'b2f506ea', 4611 - 'phabricator-hovercard' => '8fafb027', 4611 + 'phabricator-hovercard' => '3a57ca2f', 4612 4612 'phabricator-jump-nav' => 'b2f506ea', 4613 - 'phabricator-keyboard-shortcut' => '8fafb027', 4614 - 'phabricator-keyboard-shortcut-manager' => '8fafb027', 4613 + 'phabricator-keyboard-shortcut' => '3a57ca2f', 4614 + 'phabricator-keyboard-shortcut-manager' => '3a57ca2f', 4615 4615 'phabricator-main-menu-view' => 'b2f506ea', 4616 - 'phabricator-menu-item' => '8fafb027', 4616 + 'phabricator-menu-item' => '3a57ca2f', 4617 4617 'phabricator-nav-view-css' => 'b2f506ea', 4618 - 'phabricator-notification' => '8fafb027', 4618 + 'phabricator-notification' => '3a57ca2f', 4619 4619 'phabricator-notification-css' => 'b2f506ea', 4620 4620 'phabricator-notification-menu-css' => 'b2f506ea', 4621 4621 'phabricator-object-selector-css' => '4dc2311c', 4622 - 'phabricator-phtize' => '8fafb027', 4623 - 'phabricator-prefab' => '8fafb027', 4622 + 'phabricator-phtize' => '3a57ca2f', 4623 + 'phabricator-prefab' => '3a57ca2f', 4624 4624 'phabricator-project-tag-css' => '49898640', 4625 4625 'phabricator-remarkup-css' => 'b2f506ea', 4626 4626 'phabricator-shaped-request' => '5e9e5c4e', 4627 4627 'phabricator-side-menu-view-css' => 'b2f506ea', 4628 4628 'phabricator-standard-page-view' => 'b2f506ea', 4629 4629 'phabricator-tag-view-css' => 'b2f506ea', 4630 - 'phabricator-textareautils' => '8fafb027', 4631 - 'phabricator-tooltip' => '8fafb027', 4630 + 'phabricator-textareautils' => '3a57ca2f', 4631 + 'phabricator-tooltip' => '3a57ca2f', 4632 4632 'phabricator-transaction-view-css' => 'b2f506ea', 4633 4633 'phabricator-zindex-css' => 'b2f506ea', 4634 4634 'phui-button-css' => 'b2f506ea',
+6
webroot/rsrc/js/core/DropdownMenu.js
··· 118 118 if (!item) { 119 119 return; 120 120 } 121 + 122 + if (item.getDisabled()) { 123 + e.prevent(); 124 + return; 125 + } 126 + 121 127 item.select(); 122 128 e.prevent(); 123 129 this.close();