Allow tasks to be subprioritized by drag-and-drop
Summary: Like the title says, similar to Facebook Tasks. Not sure how I really feel about this, but I guess it's kind of OK? I never used this feature in Facebook Tasks but I think some people like it. The drag-and-drop to repri across priorities feels okayish. Because subpriority is a double and we just split the difference when reprioritizing, you lose ~a bit of precision every time you repri two tasks against each other and so you can break it by swapping the priorities of two tasks ~50 times. This case is pretty silly and pathological. We can add some code to deal with this at some point if necessary. I think this also fixes the whacky task layout widths once and for all. (There are a couple of minor UI glitches like headers not vanishing and header counts not updating that I'm not fixing because I am lazy.) Test Plan: Dragged and dropped tasks around. Reviewers: btrahan Reviewed By: btrahan CC: aran, epriestley, mgummelt Maniphest Tasks: T859 Differential Revision: https://secure.phabricator.com/D1731
This commit is contained in:
		
							
								
								
									
										11
									
								
								resources/sql/patches/124.subpriority.sql
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								resources/sql/patches/124.subpriority.sql
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
			
		||||
ALTER TABLE phabricator_maniphest.maniphest_task
 | 
			
		||||
  ADD subpriority DOUBLE NOT NULL;
 | 
			
		||||
 | 
			
		||||
ALTER TABLE phabricator_maniphest.maniphest_task
 | 
			
		||||
  ADD KEY (priority, subpriority);
 | 
			
		||||
 | 
			
		||||
/* Seed the subpriority column with reasonable values that keep order stable. */
 | 
			
		||||
UPDATE phabricator_maniphest.maniphest_task
 | 
			
		||||
  SET subpriority = dateModified;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user