Page MenuHomePhabricator

Introduce "Curtain" views, panels, and extensions
ClosedPublic

Authored by epriestley on Mar 6 2016, 4:40 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Apr 11, 8:00 AM
Unknown Object (File)
Sun, Apr 7, 12:15 PM
Unknown Object (File)
Mar 10 2024, 5:06 PM
Unknown Object (File)
Mar 8 2024, 1:10 PM
Unknown Object (File)
Mar 8 2024, 1:10 PM
Unknown Object (File)
Mar 8 2024, 1:10 PM
Unknown Object (File)
Mar 4 2024, 6:11 PM
Unknown Object (File)
Feb 19 2024, 12:40 PM
Subscribers
None
Tokens
"Yellow Medal" token, awarded by avivey.

Details

Reviewers
chad
Commits
Restricted Diffusion Commit
rP61f82bb97b8a: Introduce "Curtain" views, panels, and extensions
Summary

This opens up the new action column to have specialized rendering and behavior. Briefly:

  • Converted applications (right now, only Paste) render a CurtainView to build the column content.
  • This view uses new extensions to build panels (projects, subscribers, tokens).
  • The panel extension code and rendering can be changed without breaking old stuff.

Minor changes:

  • Token awards now load their tokens, for consistency/simplicity.
  • Removed the rest of the "fork of" / "forked from" UI in Paste -- I essentially removed these features a while ago, and no one has complained.
Test Plan

UI is a bit rough, but works, and it's going to get changed now anyway:

Screen Shot 2016-03-06 at 8.32.45 AM.png (1×1 px, 220 KB)

Screen Shot 2016-03-06 at 8.33.05 AM.png (1×718 px, 137 KB)

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

epriestley retitled this revision from to Introduce "Curtain" views, panels, and extensions.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
src/applications/project/engineextension/PhabricatorProjectsCurtainExtension.php
17

You can change these buildCurtainPanel() methods to specialize how curtain panels render -- the code is only used by new curtain-aware applications. Right now it's mostly a copy/paste of the old code.

src/view/layout/PHUICurtainPanelView.php
4

This is the actual panel view. It's bare-bones right now, but you can add actions or whatever makes sense, and it isn't restrained by being a property in a property view so it can do whatever makes sense.

src/view/layout/PHUICurtainView.php
47

Panels have an explicit order now! REVOLUTIONARY.

Current order is:

  • 10000: Projects
  • 20000: Subscribers
  • 30000: Tokens

If this looks reasonable, I'll convert the rest of the two-column apps and leave fixing the panels up to you?

chad edited edge metadata.
This revision is now accepted and ready to land.Mar 6 2016, 5:26 PM
This revision was automatically updated to reflect the committed changes.