aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/gitlab/gitlabprojectsettings.cpp
diff options
context:
space:
mode:
authorChristian Stenger <[email protected]>2022-05-12 13:54:00 +0200
committerChristian Stenger <[email protected]>2022-05-31 10:47:11 +0000
commitdd27901759e3f03edfb7926fbd63fc821d509760 (patch)
tree22bd4bb11e05997f4c75ec4cdc9fd30b7e249a53 /src/plugins/gitlab/gitlabprojectsettings.cpp
parentcd1af2864bf79c4cc8c7b79c4dae0d1ca51402c0 (diff)
GitLab: Allow fetching events
Projects that are linked to a GitLab instance will now fetch notifications for this project and print them to the vcs output pane. Change-Id: Ifb960e64b30a260327efb28a3dfd26f6457503a0 Reviewed-by: <[email protected]> Reviewed-by: David Schulz <[email protected]>
Diffstat (limited to 'src/plugins/gitlab/gitlabprojectsettings.cpp')
-rw-r--r--src/plugins/gitlab/gitlabprojectsettings.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/plugins/gitlab/gitlabprojectsettings.cpp b/src/plugins/gitlab/gitlabprojectsettings.cpp
index 22921e229de..e24b4699829 100644
--- a/src/plugins/gitlab/gitlabprojectsettings.cpp
+++ b/src/plugins/gitlab/gitlabprojectsettings.cpp
@@ -49,6 +49,7 @@ namespace GitLab {
const char PSK_LINKED_ID[] = "GitLab.LinkedId";
const char PSK_SERVER[] = "GitLab.Server";
const char PSK_PROJECT[] = "GitLab.Project";
+const char PSK_LAST_REQ[] = "GitLab.LastRequest";
static QString accessLevelString(int accessLevel)
{
@@ -106,6 +107,7 @@ void GitLabProjectSettings::load()
m_id = Utils::Id::fromSetting(m_project->namedSettings(PSK_LINKED_ID));
m_host = m_project->namedSettings(PSK_SERVER).toString();
m_currentProject = m_project->namedSettings(PSK_PROJECT).toString();
+ m_lastRequest = m_project->namedSettings(PSK_LAST_REQ).toDateTime();
// may still be wrong, but we avoid an additional request by just doing sanity check here
if (!m_id.isValid() || m_host.isEmpty())
@@ -124,6 +126,7 @@ void GitLabProjectSettings::save()
m_project->setNamedSettings(PSK_SERVER, QString());
}
m_project->setNamedSettings(PSK_PROJECT, m_currentProject);
+ m_project->setNamedSettings(PSK_LAST_REQ, m_lastRequest);
}
GitLabProjectSettingsWidget::GitLabProjectSettingsWidget(ProjectExplorer::Project *project,
@@ -184,6 +187,7 @@ void GitLabProjectSettingsWidget::unlink()
m_projectSettings->setLinked(false);
m_projectSettings->setCurrentProject({});
updateEnabledStates();
+ GitLabPlugin::linkedStateChanged(false);
}
void GitLabProjectSettingsWidget::checkConnection(CheckMode mode)
@@ -245,6 +249,7 @@ void GitLabProjectSettingsWidget::onConnectionChecked(const Project &project,
m_projectSettings->setCurrentServerHost(remote);
m_projectSettings->setLinked(true);
m_projectSettings->setCurrentProject(projectName);
+ GitLabPlugin::linkedStateChanged(true);
}
updateEnabledStates();
}
@@ -282,8 +287,10 @@ void GitLabProjectSettingsWidget::updateUi()
m_hostCB->setCurrentIndex(m_hostCB->findData(QVariant::fromValue(serverHost)));
m_linkedGitLabServer->setCurrentIndex(
m_linkedGitLabServer->findData(QVariant::fromValue(server)));
+ GitLabPlugin::linkedStateChanged(true);
} else {
m_projectSettings->setLinked(false);
+ GitLabPlugin::linkedStateChanged(false);
}
}
updateEnabledStates();