1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-12-24 14:30:56 +01:00
phorge-phorge/webroot/rsrc/js/core
epriestley eecee17213 Activate "jx-toggle-class" on click to fix broken mobile behavior
Summary:
See downstream <https://phabricator.wikimedia.org/T201480>. Searching for things on mobile is a significant challenge because clicking the "Magnifying Glass" icon shows and then immediately hides the menu. I believe some aspect of iOS event handling has changed since this was originally written.

At some point, I'd like to rewrite this to work more cleanly and get rid of `jx-toggle-class`. In particular, it isn't smart enough to know that it should be modal with other menus, so you can get states like this by clicking multiple things:

{F6320110}

This would also probably just look and work better if it was an inline element that showed up under the header instead of a floating dropdown element.

However, I'm having a hard time getting the Safari debugger to actually connect to the iOS simulator, so take a small step toward this bright future and fix the immediate problem for now: toggle on click instead of mousedown/touchstart.

This means the menu opens ~100ms later, but actually works. Big improvement!

I'd like to move away from "jx-toggle-class" anyway (it usually isn't sophisticated enough to fully describe a behavior) so reducing complexity here seems good. It isn't used in //too// many places so this is unlikely to have any negative effects, I hope.

Test Plan: On iOS simulator, clicked the magnifying glass icon in the main menu to get a search input. Before: got a search input for a microsecond. After: actually got a search input.

Reviewers: amckinley

Reviewed By: amckinley

Differential Revision: https://secure.phabricator.com/D20343
2019-03-28 17:29:06 -07:00
..
darkconsole Fix the DarkConsole inline error log stack trace expansion behavior for Content-Security-Policy 2018-03-13 16:45:20 -07:00
behavior-active-nav.js Remove unused JavaScript variables. 2014-06-24 03:27:47 +10:00
behavior-audio-source.js Implement macros as audio sources 2013-09-27 16:02:02 -07:00
behavior-autofocus.js Move js/application/core/ one level up 2013-04-23 10:56:46 -07:00
behavior-badge-view.js Links on badge card should be accessible 2016-04-15 07:55:31 -07:00
behavior-bulk-editor.js Organize bulk edit actions into nice groups 2018-01-19 13:22:25 -08:00
behavior-choose-control.js Allow installs to customize project icons 2016-01-08 14:01:53 -08:00
behavior-copy.js Help PROFESSIONAL SOFTWARE ENGINEERS copy text to their clipboard 2017-05-31 10:13:49 -07:00
behavior-detect-timezone.js When the JS "Intl" API is available, use it to guess the timezone 2016-05-22 09:14:02 -07:00
behavior-device.js Fix spelling 2017-10-09 10:48:04 -07:00
behavior-drag-and-drop-textarea.js Provide an <input type="file"> control in Remarkup for mobile and users with esoteric windowing systems 2016-05-20 16:24:22 -07:00
behavior-fancy-datepicker.js Fix a hang in fancy date picker for Ye Olde Time Years 2017-08-10 08:48:44 -07:00
behavior-file-tree.js Remove unused JavaScript variables. 2014-06-24 03:27:47 +10:00
behavior-form.js Apply some linter auto-fixes 2014-08-02 19:03:02 +10:00
behavior-gesture.js Remove unused JavaScript variables. 2014-06-24 03:27:47 +10:00
behavior-global-drag-and-drop.js Allow users to drop .ics files on calendar views to import them 2016-10-18 15:26:44 -07:00
behavior-high-security-warning.js Quicksand - make things work properly with high security mode 2015-04-23 16:37:56 -07:00
behavior-history-install.js Move js/application/core/ one level up 2013-04-23 10:56:46 -07:00
behavior-hovercard.js Move PhabricatorHovercard to PHUIHovercard 2016-02-03 16:26:30 +00:00
behavior-keyboard-pager.js Remove unused JavaScript variables. 2014-06-24 03:27:47 +10:00
behavior-keyboard-shortcuts.js Make "/" focus the search input again 2016-07-08 14:18:35 -07:00
behavior-lightbox-attachments.js Fix image prev/next cycling in lightboxes 2018-03-08 08:28:04 -08:00
behavior-line-linker.js When following a link to a particular line ("/example.txt$12"), scroll to that line 2018-04-11 17:29:22 -07:00
behavior-linked-container.js Replace the "Choose Subtype" radio buttons dialog with a simpler "big stuff you click" sort of UI 2018-12-10 14:59:18 -08:00
behavior-more.js Remove unused JavaScript variables. 2014-06-24 03:27:47 +10:00
behavior-object-selector.js Fix object selector button color 2017-06-07 13:50:12 -07:00
behavior-oncopy.js Display some invisible/nonprintable characters in diffs by default 2019-02-19 15:21:44 -08:00
behavior-phabricator-nav.js Repaint filetree more consistently for mobile/device views 2018-08-27 10:32:47 -07:00
behavior-phabricator-remarkup-assist.js Fix autocomplete/send-on-enter interactions 2017-04-26 08:48:25 -07:00
behavior-read-only-warning.js When Phabricator is in read-only mode, explain why 2016-04-10 12:19:18 -07:00
behavior-redirect.js Perform a client-side redirect after OAuth server authorization 2018-03-06 12:18:27 -08:00
behavior-refresh-csrf.js When logged-out users hit a "Login Required" dialog, try to choose a better "next" URI 2015-12-17 08:30:03 -08:00
behavior-remarkup-load-image.js When proxying an "{image ...}" image fails, show the user an error message 2018-03-08 07:03:26 -08:00
behavior-remarkup-preview.js Support field previews in EditEngine 2015-12-27 08:17:18 -08:00
behavior-reorder-applications.js Remove unused JavaScript variables. 2014-06-24 03:27:47 +10:00
behavior-reveal-content.js Remove unused JavaScript variables. 2014-06-24 03:27:47 +10:00
behavior-scrollbar.js Make scrolling happen relative to the main content frame 2015-01-25 08:42:40 -08:00
behavior-search-typeahead.js Add a rough Quick Search datasource for Phriction documents 2018-02-16 09:55:54 -08:00
behavior-select-content.js Clean up display of clone URIs a little bit 2016-05-11 13:14:55 -07:00
behavior-select-on-click.js Remove unused JavaScript variables. 2014-06-24 03:27:47 +10:00
behavior-setup-check-https.js Add client-side check for protocol mismatch 2016-06-07 15:54:48 +00:00
behavior-time-typeahead.js Time controls should format end date value correctly (not 5:0 PM) 2016-04-15 12:18:12 -07:00
behavior-toggle-class.js Activate "jx-toggle-class" on click to fix broken mobile behavior 2019-03-28 17:29:06 -07:00
behavior-tokenizer.js Move js/application/core/ one level up 2013-04-23 10:56:46 -07:00
behavior-tooltip.js Redesign Home/Profile/Projects side navigation 2017-01-31 08:59:01 -08:00
behavior-user-menu.js Make documentation items in user menu update as you navigate in Quicksand 2017-01-17 15:55:52 -08:00
behavior-watch-anchor.js Fix anchor-clicking scroll positions 2015-01-28 08:26:10 -08:00
behavior-workflow.js Provide a global router for Ajax requests 2014-05-05 10:57:42 -07:00
Busy.js Make busy indicator durable column aware 2015-04-01 20:10:32 -07:00
DragAndDropFileUpload.js Provide an <input type="file"> control in Remarkup for mobile and users with esoteric windowing systems 2016-05-20 16:24:22 -07:00
DraggableList.js Preview the effects of a drag-and-drop operation on workboards 2019-03-25 13:22:56 -07:00
Favicon.js JX.Favicon for Conpherence 2016-10-20 12:17:50 -07:00
FileUpload.js Support drag-and-drop to set cover images on workboard cards 2016-02-06 15:58:43 -08:00
Hovercard.js Move PhabricatorHovercard to PHUIHovercard 2016-02-03 16:26:30 +00:00
KeyboardShortcut.js Move js/application/core/ one level up 2013-04-23 10:56:46 -07:00
KeyboardShortcutManager.js Move keyboard focus reticle code to Differential 2017-05-16 08:20:50 -07:00
MultirowRowManager.js Clean up Multirow Manager UI 2014-11-17 14:06:05 -08:00
Notification.js Correct the behavior of "Desktop Only" in Notifications preferences 2018-03-16 15:17:49 -07:00
phtize.js Use JsShrink if jsxmin is not available 2013-05-18 17:04:22 -07:00
Prefab.js Show user availability dots (red = away, orange = busy) in typeaheads, tokenizer tokens, and autocompletes 2019-02-19 10:57:20 -08:00
ShapedRequest.js Provide a global router for Ajax requests 2014-05-05 10:57:42 -07:00
TextAreaUtils.js Provide an <input type="file"> control in Remarkup for mobile and users with esoteric windowing systems 2016-05-20 16:24:22 -07:00
Title.js JX.Favicon for Conpherence 2016-10-20 12:17:50 -07:00
ToolTip.js Make Differential objective markers show a brighter "editing" state 2017-05-20 07:57:38 -07:00