Page MenuHomePhabricator

Convert Create/Edit Column pages to dialogs
ClosedPublic

Authored by chad on Feb 14 2016, 4:44 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Apr 27, 2:33 AM
Unknown Object (File)
Thu, Apr 25, 1:16 AM
Unknown Object (File)
Tue, Apr 9, 8:44 PM
Unknown Object (File)
Mar 5 2024, 11:41 AM
Unknown Object (File)
Mar 5 2024, 11:41 AM
Unknown Object (File)
Mar 5 2024, 11:41 AM
Unknown Object (File)
Mar 5 2024, 11:41 AM
Unknown Object (File)
Mar 5 2024, 11:41 AM
Subscribers

Details

Reviewers
epriestley
Commits
Restricted Diffusion Commit
rP3fdaf229a70f: Convert Create/Edit Column pages to dialogs
Summary

Makes these pages a dialog endpoint, keeping you on the Workboard when possible.

Test Plan

Create a Column, Edit a Column, visit hard page. Test letters in the points field.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

chad retitled this revision from to Convert Create/Edit Column pages to dialogs.
chad updated this object.
chad edited the test plan for this revision. (Show Details)
chad added a reviewer: epriestley.
epriestley edited edge metadata.

It seems weird for me for the edit screen to be a dialog, but see inline.

src/applications/project/controller/PhabricatorProjectColumnEditController.php
142

Slightly better in modern code is to continue using AphrontFormView, then use appendForm() here.

I think there should be no more cases where PHUIFormLayoutView needs to be used directly.

144–145

This one is a little tricky. You probably either want:

  • do all the work to preserve board state, plus do this; or
  • don't do any of the work, and don't do this.

Specifically, the current behavior will probably be:

  • change priority and filter on board;
  • click "add column";
  • click "cancel";
  • page reloads, losing your sort/filter.

If you remove this, we'll no longer reload in the case above. However, you'll still lose your state when you actually add a column, or when you right-click-open-in-new-window the dialog and then cancel it.

To fix these, you need to do a lot more work to preserve state -- all the getPassthroughRequestData() stuff that controllers like PhabricatorProjectDefaultController and PhabricatorProjectColumnHideController do. In this case, because the controller also has real parameters of its own, things get more complex.

I think if you just delete this setDisablewWorkflowOnCancel() call for now things should be mostly OK, and I can go hook up all the passthrough stuff later if it's really an issue.

This revision is now accepted and ready to land.Feb 14 2016, 3:29 PM
chad marked 2 inline comments as done.
chad edited edge metadata.
  • per comments
This revision was automatically updated to reflect the committed changes.