Search Symbols by Repository, not Project
Summary: Fixes T7977. - Move Indexed Languages and See Symbols From config to Repository - Make symbol search skip projects This also makes the default languages to Everything instead of Nothing. Test Plan: - Browse files, click symbols. - Use quick search to find symbols - Browse revision, click symbols Reviewers: joshuaspence, epriestley, #blessed_reviewers Reviewed By: epriestley, #blessed_reviewers Subscribers: Korvin, epriestley Maniphest Tasks: T7977 Differential Revision: https://secure.phabricator.com/D12687
This commit is contained in:
@@ -62,6 +62,10 @@ final class DiffusionRepositoryEditMainController
|
||||
$encoding_properties =
|
||||
$this->buildEncodingProperties($repository, $encoding_actions);
|
||||
|
||||
$symbols_actions = $this->buildSymbolsActions($repository);
|
||||
$symbols_properties =
|
||||
$this->buildSymbolsProperties($repository, $symbols_actions);
|
||||
|
||||
$hosting_properties = $this->buildHostingProperties(
|
||||
$repository,
|
||||
$this->buildHostingActions($repository));
|
||||
@@ -157,6 +161,10 @@ final class DiffusionRepositoryEditMainController
|
||||
->setHeaderText(pht('Text Encoding'))
|
||||
->addPropertyList($encoding_properties);
|
||||
|
||||
$boxes[] = id(new PHUIObjectBoxView())
|
||||
->setHeaderText(pht('Symbols'))
|
||||
->addPropertyList($symbols_properties);
|
||||
|
||||
if ($branches_properties) {
|
||||
$boxes[] = id(new PHUIObjectBoxView())
|
||||
->setHeaderText(pht('Branches'))
|
||||
@@ -1187,6 +1195,53 @@ final class DiffusionRepositoryEditMainController
|
||||
return $mirror_list;
|
||||
}
|
||||
|
||||
private function buildSymbolsActions(PhabricatorRepository $repository) {
|
||||
$viewer = $this->getRequest()->getUser();
|
||||
|
||||
$view = id(new PhabricatorActionListView())
|
||||
->setObjectURI($this->getRequest()->getRequestURI())
|
||||
->setUser($viewer);
|
||||
|
||||
$edit = id(new PhabricatorActionView())
|
||||
->setIcon('fa-pencil')
|
||||
->setName(pht('Edit Symbols'))
|
||||
->setHref(
|
||||
$this->getRepositoryControllerURI($repository, 'edit/symbol/'));
|
||||
$view->addAction($edit);
|
||||
|
||||
return $view;
|
||||
}
|
||||
|
||||
private function buildSymbolsProperties(
|
||||
PhabricatorRepository $repository,
|
||||
PhabricatorActionListView $actions) {
|
||||
|
||||
$viewer = $this->getRequest()->getUser();
|
||||
|
||||
$view = id(new PHUIPropertyListView())
|
||||
->setUser($viewer)
|
||||
->setActionList($actions);
|
||||
|
||||
$languages = $repository->getSymbolLanguages();
|
||||
|
||||
if ($languages) {
|
||||
$languages = implode(', ', $languages);
|
||||
} else {
|
||||
$languages = phutil_tag('em', array(), pht('Any'));
|
||||
}
|
||||
$view->addProperty(pht('Languages'), $languages);
|
||||
|
||||
$sources = $repository->getSymbolSources();
|
||||
if ($sources) {
|
||||
$handles = $viewer->loadHandles($sources);
|
||||
$sources = $handles->renderList();
|
||||
} else {
|
||||
$sources = phutil_tag('em', array(), pht('This Repository Only'));
|
||||
}
|
||||
$view->addProperty(pht('Use Symbols From'), $sources);
|
||||
return $view;
|
||||
}
|
||||
|
||||
private function getEnvConfigLink() {
|
||||
$config_href = '/config/edit/environment.append-paths/';
|
||||
return phutil_tag(
|
||||
|
||||
Reference in New Issue
Block a user