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)
Wed, Dec 18, 7:10 AM
Unknown Object (File)
Wed, Dec 18, 1:09 AM
Unknown Object (File)
Sun, Dec 8, 8:36 PM
Unknown Object (File)
Tue, Dec 3, 10:14 AM
Unknown Object (File)
Tue, Dec 3, 7:16 AM
Unknown Object (File)
Sun, Dec 1, 1:42 PM
Unknown Object (File)
Sun, Nov 24, 8:03 PM
Unknown Object (File)
Tue, Nov 19, 12:55 PM
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
Branch
new-column (branched from master)
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 10688
Build 13131: Run Core Tests
Build 13130: arc lint + arc unit

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

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.