1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2025-02-02 01:48:23 +01:00
phorge-phorge/webroot/rsrc/js/application
epriestley 9ed9764784 Replace height buffer behavior while dragging on workboards with infinite column height
Summary:
Ref T4900. The root problem is that dragging stuff near the bottom of the board can cause jittery, jumpy behaviors.

Internal scrolling has changed the nature of this problem. Previously, the height of the board itself would jump around, but it's now fixed so the height of columns jumps around instead.

We could take the same approach and add a chunk to the bottom of each column when a drag starts, but this is really distracting visually since it's obvious to the user.

Instead, treat columns as infinitely tall (so dragging beneath them still counts as dragging to the bottom position).

Test Plan:
  - View a board with a column taller than the screen (has a scrollbar).
  - Drag a card to near the bottom position.
  - Move the mouse down a little bit at a time, continuing toward the bottom of the page.
    - Before patch: at some point, UI flips out and starts rapidly adding, scrolling, and removing the ghost.
    - After patch: sensible behavior, ghost is in bottom position for all cursor locations.

Also works for dragging to the top.

(This leaves us with a little less dead space for cancelling drags, but you've still got the left menu, anything offscreen, and the escape key, which seems fine.)

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T4900

Differential Revision: https://secure.phabricator.com/D15227
2016-02-10 13:06:34 -08:00
..
aphlict Merge branch 'master' into redesign-2015 2015-06-22 15:52:40 -07:00
auth Add Persona auth provider 2013-10-14 14:34:57 -07:00
calendar Show informative errors when attempting to set a recurrence end date on a non-recurring event. 2015-06-07 15:57:19 -07:00
config Fix custom field selector control in cases where the user doesn't edit anything 2015-05-25 05:34:23 -07:00
conpherence Remove Files Widget from Conpherence 2015-08-20 08:24:42 -07:00
countdown Define JavaScript functions before they are used 2014-12-30 02:53:32 -08:00
daemon Execute Maniphest batch edits in the background with a web UI progress bar 2015-06-23 13:36:16 -07:00
dashboard Improve minor workboard drag behaviors 2016-02-02 06:42:41 -08:00
differential Don't mutate DOM on touch-originated cursor events in Differential 2016-01-29 06:55:41 -08:00
diffusion Improve rendering of commit branching graph 2016-01-08 11:52:07 -08:00
doorkeeper Various linter fixes. 2014-02-26 12:44:58 -08:00
drydock Show a more reasonable status element for pull requests 2015-10-21 11:28:26 -07:00
files Remove defunt project image choices 2016-01-19 08:50:59 -08:00
herald Make herald tokenizers copy values more correctly 2016-01-21 12:17:33 -08:00
maniphest Swap charts from gRaphael to D3 2016-02-01 10:36:59 -08:00
owners Change double quotes to single quotes in JavaScript. 2014-06-24 03:35:39 +10:00
passphrase Rename Passphrase credential control JS 2015-03-02 13:01:00 -08:00
pholio Quicksand and Pholio - make mock edit work 2015-05-07 10:42:07 -07:00
phortune Remove support for Balanced payments 2015-03-13 15:47:37 -07:00
policy De-garbage the horrible garbage project section of the policy selection control 2016-02-05 09:50:06 -08:00
projects Replace height buffer behavior while dragging on workboards with infinite column height 2016-02-10 13:06:34 -08:00
releeph Make scrolling happen relative to the main content frame 2015-01-25 08:42:40 -08:00
repository Symbol Search: Allow ctrl-click with no hover 2015-08-27 04:17:38 -07:00
search Allow profile menu items to be reordered 2016-01-13 11:45:57 -08:00
slowvote Replace the primary scrollbar with a fake one to prepare for a persistent chat column 2015-01-23 13:29:15 -08:00
transactions Support synthetic submits from stacked actions 2016-01-11 09:16:53 -08:00
typeahead Implement viewer() and members(project) typeahead functions 2015-04-17 11:06:58 -07:00
uiexample Use window.confirm instead of confirm 2014-12-30 02:55:12 -08:00