From f7c78a24064e13ece435d786dd62776f13f75899 Mon Sep 17 00:00:00 2001
From: Sebastião Guerra <sebastiao.luiz.guerra@gmail.com>
Date: Tue, 1 Sep 2026 23:10:36 -0300
Subject: Ask about autostart when quitting
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Sebastião Guerra <sebastiao.luiz.guerra@gmail.com>
---
 tdenetworkmanager/src/tdenetman-tray.cpp | 16 ++++++++++++++++
 tdenetworkmanager/src/tdenetman-tray.h   |  1 +
 2 files changed, 17 insertions(+)

diff --git a/tdenetworkmanager/src/tdenetman-tray.cpp b/tdenetworkmanager/src/tdenetman-tray.cpp
index d054435..5d027c2 100644
--- a/tdenetworkmanager/src/tdenetman-tray.cpp
+++ b/tdenetworkmanager/src/tdenetman-tray.cpp
@@ -170,6 +170,21 @@ void Tray::slotEditConnections()
 	dlg->show();
 }
 
+void Tray::slotQuitSelected()
+{
+	int autostart = KMessageBox::questionYesNo(
+		this,
+		i18n("Start TDENetworkManager automatically when you log in?"),
+		i18n("Question"),
+		KGuiItem(i18n("Start Automatically")),
+		KGuiItem(i18n("Do Not Start")));
+
+	TDEConfig* config = TDEGlobal::config();
+	config->setGroup("General");
+	config->writeEntry("Autostart", autostart == KMessageBox::Yes);
+	config->sync();
+}
+
 
 void Tray::slotEnableWireless()
 {
@@ -1077,6 +1092,7 @@ Tray::Tray() : KSystemTray()
   d->helpMenu = new KHelpMenu(0, TDEGlobal::instance()->aboutData(), false);
   
 	connect(&d->signalMapper, TQ_SIGNAL(mapped(int)), this, TQ_SLOT(slotDeactivateConnection(int)));
+	connect(this, TQ_SIGNAL(quitSelected()), this, TQ_SLOT(slotQuitSelected()));
 
 	setPixmap (m_pixmapCache["tdenetworkmanager"]);
 	setMouseTracking (true);
diff --git a/tdenetworkmanager/src/tdenetman-tray.h b/tdenetworkmanager/src/tdenetman-tray.h
index 49b43db..42115b7 100644
--- a/tdenetworkmanager/src/tdenetman-tray.h
+++ b/tdenetworkmanager/src/tdenetman-tray.h
@@ -112,6 +112,7 @@ class Tray : public KSystemTray
 		void resizeEvent(TQResizeEvent *);
 
 	private slots:
+		void slotQuitSelected();
 		void slotGenericDeviceAdded(TDEGenericDevice*);
 		void slotGenericDeviceRemoved(TDEGenericDevice*);
 		void slotVPNEventHandler(TDENetworkVPNEventType::TDENetworkVPNEventType event, TQString message);
-- 
cgit v1.2.3

