@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 summon the emoji autocompleter for ":3"

Summary:
Fixes T12460. Also ":)", ":(", ":/", and oldschool ":-)" variants.

Not included are variants with actual letters (`:D`, `:O`, `:P`) and obscure variants (`:^)`, `:*)`).

Test Plan: Typed `:3` (no emoji summoned). Typed `:dog3` (emoji summoned). Typed `@3` (user autocomplete summoned).

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T12460

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

+29 -8
+8 -8
resources/celerity/map.php
··· 528 528 'rsrc/js/phui/behavior-phui-tab-group.js' => '0a0b10e9', 529 529 'rsrc/js/phuix/PHUIXActionListView.js' => 'b5c256b8', 530 530 'rsrc/js/phuix/PHUIXActionView.js' => 'b3465b9b', 531 - 'rsrc/js/phuix/PHUIXAutocomplete.js' => '7c492cd2', 531 + 'rsrc/js/phuix/PHUIXAutocomplete.js' => '7910aacb', 532 532 'rsrc/js/phuix/PHUIXDropdownMenu.js' => '8018ee50', 533 533 'rsrc/js/phuix/PHUIXFormControl.js' => '83e03671', 534 534 'rsrc/js/phuix/PHUIXIconView.js' => 'bff6884b', ··· 885 885 'phui-workpanel-view-css' => 'a3a63478', 886 886 'phuix-action-list-view' => 'b5c256b8', 887 887 'phuix-action-view' => 'b3465b9b', 888 - 'phuix-autocomplete' => '7c492cd2', 888 + 'phuix-autocomplete' => '7910aacb', 889 889 'phuix-dropdown-menu' => '8018ee50', 890 890 'phuix-form-control-view' => '83e03671', 891 891 'phuix-icon-view' => 'bff6884b', ··· 1456 1456 'multirow-row-manager', 1457 1457 'javelin-json', 1458 1458 ), 1459 + '7910aacb' => array( 1460 + 'javelin-install', 1461 + 'javelin-dom', 1462 + 'phuix-icon-view', 1463 + 'phabricator-prefab', 1464 + ), 1459 1465 '7927a7d3' => array( 1460 1466 'javelin-behavior', 1461 1467 'javelin-quicksand', ··· 1463 1469 '7a68dda3' => array( 1464 1470 'owners-path-editor', 1465 1471 'javelin-behavior', 1466 - ), 1467 - '7c492cd2' => array( 1468 - 'javelin-install', 1469 - 'javelin-dom', 1470 - 'phuix-icon-view', 1471 - 'phabricator-prefab', 1472 1472 ), 1473 1473 '7cbe244b' => array( 1474 1474 'javelin-install',
+9
src/view/form/control/PhabricatorRemarkupControl.php
··· 97 97 'headerIcon' => 'fa-smile-o', 98 98 'headerText' => pht('Find Emoji:'), 99 99 'hintText' => $emoji_datasource->getPlaceholderText(), 100 + 101 + // Cancel on emoticons like ":3". 102 + 'ignore' => array( 103 + '3', 104 + ')', 105 + '(', 106 + '-', 107 + '/', 108 + ), 100 109 ), 101 110 ), 102 111 ));
+12
webroot/rsrc/js/phuix/PHUIXAutocomplete.js
··· 343 343 return [' ', ':', ',', '.', '!', '?']; 344 344 }, 345 345 346 + _getIgnoreList: function() { 347 + return this._map[this._active].ignore || []; 348 + }, 349 + 346 350 _isTerminatedString: function(string) { 347 351 var terminators = this._getTerminators(); 348 352 for (var ii = 0; ii < terminators.length; ii++) { ··· 512 516 var cancels = this._getCancelCharacters(); 513 517 for (var ii = 0; ii < cancels.length; ii++) { 514 518 if (trim.indexOf(cancels[ii]) !== -1) { 519 + this._deactivate(); 520 + return; 521 + } 522 + } 523 + 524 + var ignore = this._getIgnoreList(); 525 + for (ii = 0; ii < ignore.length; ii++) { 526 + if (trim.indexOf(ignore[ii]) === 0) { 515 527 this._deactivate(); 516 528 return; 517 529 }