Merge branch 'dbus-interface' of http://gitlab2.kylin.com/kylin-desktop/kylin-nm into up-dbus
This commit is contained in:
commit
3b786d9131
|
@ -15,6 +15,7 @@ LanListItem::LanListItem(KyConnectItem *data, QString deviceName, QWidget *paren
|
|||
m_nameLabel->setText(m_data->m_connectName);
|
||||
|
||||
if (m_data != nullptr) {
|
||||
m_netButton->setButtonIcon(QIcon::fromTheme("network-wired-connected-symbolic"));
|
||||
if (m_data->m_connectState == NetworkManager::ActiveConnection::State::Activated) {
|
||||
setIcon(true);
|
||||
m_isActive = true;
|
||||
|
@ -41,10 +42,10 @@ LanListItem::LanListItem(QWidget *parent) : ListItem(parent)
|
|||
void LanListItem::setIcon(bool isOn)
|
||||
{
|
||||
if (isOn) {
|
||||
m_netButton->setButtonIcon(QIcon::fromTheme("network-wired-connected-symbolic"));
|
||||
// m_netButton->setButtonIcon(QIcon::fromTheme("network-wired-connected-symbolic"));
|
||||
m_netButton->setActive(true); //设置图标显示不同颜色
|
||||
} else {
|
||||
m_netButton->setButtonIcon(QIcon::fromTheme("network-wired-disconnected-symbolic"));
|
||||
// m_netButton->setButtonIcon(QIcon::fromTheme("network-wired-connected-symbolic"));
|
||||
m_netButton->setActive(false);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,9 @@
|
|||
#include "../backend/dbus-interface/kylinagentinterface.h"
|
||||
|
||||
#define MAINWINDOW_WIDTH 420
|
||||
#define MAINWINDOW_HEIGHT 456
|
||||
#define MAINWINDOW_HEIGHT 476
|
||||
#define LAYOUT_MARGINS 0,0,0,0
|
||||
#define LOADING_TRAYICON_TIMER_MS 60
|
||||
#define THEME_SCHAME "org.ukui.style"
|
||||
#define COLOR_THEME "styleName"
|
||||
|
||||
|
@ -138,6 +140,7 @@ void MainWindow::initUI()
|
|||
m_centralWidget->addTab(m_lanWidget, tr(""));
|
||||
m_centralWidget->addTab(m_wlanWidget,tr(""));
|
||||
m_tabBarLayout = new QHBoxLayout(this);
|
||||
m_tabBarLayout->setContentsMargins(LAYOUT_MARGINS);
|
||||
m_lanLabel = new QLabel(tr("LAN"));
|
||||
m_lanLabel->setAlignment(Qt::AlignHCenter|Qt::AlignVCenter);
|
||||
m_wlanLabel = new QLabel(tr("WLAN"));
|
||||
|
@ -152,6 +155,21 @@ void MainWindow::initUI()
|
|||
*/
|
||||
void MainWindow::initTrayIcon()
|
||||
{
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-1"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-2"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-3"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-4"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-5"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-6"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-7"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-8"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-9"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-10"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-11"));
|
||||
loadIcons.append(QIcon::fromTheme("kylin-network-12"));
|
||||
iconTimer = new QTimer(this);
|
||||
connect(iconTimer, &QTimer::timeout, this, &MainWindow::onSetTrayIconLoading);
|
||||
|
||||
m_trayIcon = new QSystemTrayIcon();
|
||||
m_trayIconMenu = new QMenu();
|
||||
m_showMainwindowAction = new QAction(tr("Show MainWindow"),this);
|
||||
|
@ -187,17 +205,17 @@ void MainWindow::initDbusConnnect()
|
|||
connect(m_lanWidget, &LanPage::lanRemove, this, &MainWindow::lanRemove);
|
||||
connect(m_lanWidget, &LanPage::lanUpdate, this, &MainWindow::lanUpdate);
|
||||
connect(m_lanWidget, &LanPage::lanActiveConnectionStateChanged, this, &MainWindow::lanActiveConnectionStateChanged);
|
||||
connect(m_lanWidget, &LanPage::lanConnectChanged, this, &MainWindow::onRefreshTrayIcon);
|
||||
connect(m_lanWidget, &LanPage::lanConnectChanged, this, &MainWindow::onLanConnectStatusToChangeTrayIcon);
|
||||
|
||||
|
||||
connect(m_wlanWidget, &WlanPage::wlanAdd, this, &MainWindow::wlanAdd);
|
||||
connect(m_wlanWidget, &WlanPage::wlanRemove, this, &MainWindow::wlanRemove);
|
||||
connect(m_wlanWidget, &WlanPage::wlanActiveConnectionStateChanged, this, &MainWindow::wlanactiveConnectionStateChanged);
|
||||
connect(m_wlanWidget, &WlanPage::wlanConnectChanged, this, &MainWindow::onWlanConnectStatusToChangeTrayIcon);
|
||||
connect(m_wlanWidget, &WlanPage::hotspotDeactivated, this, &MainWindow::hotspotDeactivated);
|
||||
connect(m_wlanWidget, &WlanPage::hotspotActivated, this, &MainWindow::hotspotActivated);
|
||||
connect(m_wlanWidget, &WlanPage::secuTypeChange, this, &MainWindow::secuTypeChange);
|
||||
connect(m_wlanWidget, &WlanPage::signalStrengthChange, this, &MainWindow::signalStrengthChange);
|
||||
connect(m_wlanWidget, &WlanPage::wlanConnectChanged, this, &MainWindow::onRefreshTrayIcon);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -365,12 +383,42 @@ void MainWindow::onThemeChanged(const QString &key)
|
|||
void MainWindow::onRefreshTrayIcon()
|
||||
{
|
||||
//更新托盘图标显示
|
||||
iconTimer->stop();
|
||||
if (m_lanWidget->lanIsConnected()) {
|
||||
m_trayIcon->setIcon(QIcon::fromTheme("network-wired-signal-excellent-symbolic"));
|
||||
} else if (m_wlanWidget->wlanIsConnected()){
|
||||
m_trayIcon->setIcon(QIcon::fromTheme("network-wireless-signal-excellent-symbolic"));
|
||||
} else {
|
||||
m_trayIcon->setIcon(QIcon::fromTheme("network-wired-signal-excellent-symbolic"));
|
||||
m_trayIcon->setIcon(QIcon::fromTheme("network-wired-disconnected-symbolic"));
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::onSetTrayIconLoading()
|
||||
{
|
||||
if (currentIconIndex > 11) {
|
||||
currentIconIndex = 0;
|
||||
}
|
||||
m_trayIcon->setIcon(loadIcons.at(currentIconIndex));
|
||||
currentIconIndex ++;
|
||||
}
|
||||
|
||||
void MainWindow::onLanConnectStatusToChangeTrayIcon(int state)
|
||||
{
|
||||
qDebug() << "lan state:" << state << Q_FUNC_INFO << __LINE__;
|
||||
if (state==1 || state==3){
|
||||
iconTimer->start(LOADING_TRAYICON_TIMER_MS);
|
||||
} else {
|
||||
onRefreshTrayIcon();
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::onWlanConnectStatusToChangeTrayIcon(int state)
|
||||
{
|
||||
qDebug() << "wlan state:" << state << Q_FUNC_INFO << __LINE__;
|
||||
if (state==1 || state==3){
|
||||
iconTimer->start(LOADING_TRAYICON_TIMER_MS);
|
||||
} else {
|
||||
onRefreshTrayIcon();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -98,6 +98,9 @@ private:
|
|||
void initWindowTheme();
|
||||
void resetWindowTheme();
|
||||
void showControlCenter();
|
||||
int currentIconIndex=0;
|
||||
QList<QIcon> loadIcons;
|
||||
QTimer *iconTimer = nullptr;
|
||||
|
||||
//主窗口的主要构成控件
|
||||
QTabWidget * m_centralWidget = nullptr;
|
||||
|
@ -127,6 +130,9 @@ private slots:
|
|||
void onShowSettingsActionTriggled();
|
||||
void onThemeChanged(const QString &key);
|
||||
void onRefreshTrayIcon();
|
||||
void onSetTrayIconLoading();
|
||||
void onLanConnectStatusToChangeTrayIcon(int state);
|
||||
void onWlanConnectStatusToChangeTrayIcon(int state);
|
||||
};
|
||||
|
||||
#endif // MAINWINDOW_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
#define MAIN_LAYOUT_SPACING 0
|
||||
#define TITLE_FRAME_HEIGHT 52
|
||||
#define TITLE_LAYOUT_MARGINS 24,0,24,0
|
||||
#define LAN_LIST_SPACING 2
|
||||
#define LAN_LIST_SPACING 0
|
||||
#define TEXT_MARGINS 16,0,0,0
|
||||
#define SETTINGS_LAYOUT_MARGINS 24,16,24,16
|
||||
#define TRANSPARENT_COLOR QColor(0,0,0,0)
|
||||
|
@ -692,7 +692,7 @@ void LanPage::initUI()
|
|||
m_activatedNetLabel->setText(tr("Activated LAN"));
|
||||
m_activatedLanListWidget = new QListWidget(m_activatedNetFrame);
|
||||
m_activatedLanListWidget->setFrameShape(QFrame::Shape::NoFrame);
|
||||
m_activatedLanListWidget->setSpacing(LAN_LIST_SPACING);
|
||||
// m_activatedLanListWidget->setSpacing(LAN_LIST_SPACING);
|
||||
m_activatedLanListWidget->setFixedHeight(ITEM_HEIGHT); //active区域固定高度,只显示一个条目
|
||||
m_activatedLanListWidget->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||
m_activatedNetLayout->addWidget(m_activatedLanListWidget);
|
||||
|
@ -841,7 +841,7 @@ void LanPage::onUpdateLanlist(QString uuid,
|
|||
emit lanActiveConnectionStateChanged(devName, uuid, state);
|
||||
}
|
||||
|
||||
emit this->lanConnectChanged();
|
||||
emit this->lanConnectChanged(state);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -82,7 +82,7 @@ signals:
|
|||
void lanUpdate(QString devName, QStringList info);
|
||||
|
||||
void lanActiveConnectionStateChanged(QString interface, QString uuid, int status);
|
||||
void lanConnectChanged();
|
||||
void lanConnectChanged(int state);
|
||||
|
||||
private slots:
|
||||
void onUpdateLanlist(QString uuid, NetworkManager::ActiveConnection::State state, NetworkManager::ActiveConnection::Reason reason);
|
||||
|
|
|
@ -27,6 +27,7 @@ void TabPage::initUI()
|
|||
m_titleLayout = new QHBoxLayout(m_titleFrame);
|
||||
m_titleLayout->setContentsMargins(TITLE_LAYOUT_MARGINS);
|
||||
m_titleLabel = new QLabel(m_titleFrame);
|
||||
m_titleLabel->setFixedHeight(LABEL_HEIGHT);
|
||||
m_netSwitch = new SwitchButton(m_titleFrame);
|
||||
m_titleLayout->addWidget(m_titleLabel);
|
||||
m_titleLayout->addStretch();
|
||||
|
@ -40,6 +41,7 @@ void TabPage::initUI()
|
|||
m_deviceLayout->setContentsMargins(DEVICE_LAYOUT_MARGINS);
|
||||
m_deviceFrame->setLayout(m_deviceLayout);
|
||||
m_deviceLabel = new QLabel(m_deviceFrame);
|
||||
m_deviceLabel->setFixedHeight(LABEL_HEIGHT);
|
||||
m_deviceLabel->setText(tr("Current Device"));
|
||||
m_deviceComboBox = new QComboBox(m_deviceFrame);
|
||||
m_deviceComboBox->setFixedWidth(DEVICE_COMBOBOX_WIDTH);
|
||||
|
@ -55,9 +57,10 @@ void TabPage::initUI()
|
|||
m_activatedNetFrame->setMaximumHeight(ACTIVE_AREA_MAX_HEIGHT);
|
||||
m_activatedNetLayout = new QVBoxLayout(m_activatedNetFrame);
|
||||
m_activatedNetLayout->setContentsMargins(ACTIVE_NET_LAYOUT_MARGINS);
|
||||
m_activatedNetLayout->setSpacing(NET_LAYOUT_SPACING);
|
||||
// m_activatedNetLayout->setSpacing(NET_LAYOUT_SPACING);
|
||||
m_activatedNetLabel = new QLabel(m_activatedNetFrame);
|
||||
m_activatedNetLabel->setContentsMargins(TEXT_MARGINS);
|
||||
m_activatedNetLabel->setFixedHeight(LABEL_HEIGHT);
|
||||
m_activatedNetLayout->addWidget(m_activatedNetLabel);
|
||||
m_activatedNetDivider = new Divider(this);
|
||||
|
||||
|
@ -65,10 +68,11 @@ void TabPage::initUI()
|
|||
m_inactivatedNetFrame->setMinimumHeight(INACTIVE_AREA_MIN_HEIGHT);
|
||||
m_inactivatedNetLayout = new QVBoxLayout(m_inactivatedNetFrame);
|
||||
m_inactivatedNetLayout->setContentsMargins(NET_LAYOUT_MARGINS);
|
||||
m_inactivatedNetLayout->setSpacing(NET_LAYOUT_SPACING);
|
||||
// m_inactivatedNetLayout->setSpacing(NET_LAYOUT_SPACING);
|
||||
m_inactivatedNetFrame->setLayout(m_inactivatedNetLayout);
|
||||
m_inactivatedNetLabel = new QLabel(m_inactivatedNetFrame);
|
||||
m_inactivatedNetLabel->setContentsMargins(TEXT_MARGINS);
|
||||
m_inactivatedNetLabel->setFixedHeight(LABEL_HEIGHT);
|
||||
m_inactivatedNetListArea = new QScrollArea(m_inactivatedNetFrame);
|
||||
m_inactivatedNetListArea->setFrameShape(QFrame::Shape::NoFrame);
|
||||
m_inactivatedNetListArea->setWidgetResizable(true);
|
||||
|
|
|
@ -22,15 +22,16 @@
|
|||
#define DEVICE_LAYOUT_MARGINS 24,0,24,8
|
||||
#define DEVICE_COMBOBOX_WIDTH 150
|
||||
#define ACTIVE_NET_LAYOUT_MARGINS 8,8,8,8
|
||||
#define NET_LAYOUT_MARGINS 8,8,0,8
|
||||
#define NET_LAYOUT_MARGINS 8,8,0,3
|
||||
#define NET_LAYOUT_SPACING 8
|
||||
#define NET_LIST_SPACING 2
|
||||
#define NET_LIST_SPACING 0
|
||||
#define TEXT_MARGINS 16,0,0,0
|
||||
//#define SCROLL_AREA_HEIGHT 200
|
||||
#define SETTINGS_LAYOUT_MARGINS 24,16,24,16
|
||||
#define TRANSPARENT_COLOR QColor(0,0,0,0)
|
||||
#define INACTIVE_AREA_MIN_HEIGHT 150
|
||||
#define ACTIVE_AREA_MAX_HEIGHT 100
|
||||
#define INACTIVE_AREA_MIN_HEIGHT 170
|
||||
#define ACTIVE_AREA_MAX_HEIGHT 92
|
||||
#define LABEL_HEIGHT 20
|
||||
|
||||
enum KyDeviceType
|
||||
{
|
||||
|
|
|
@ -429,14 +429,12 @@ void WlanPage::initWlanArea()
|
|||
constructActivateConnectionArea();
|
||||
|
||||
m_inactivatedNetFrame->show();
|
||||
m_inactivatedNetDivider->show();
|
||||
constructWirelessNetArea();
|
||||
} else {
|
||||
m_activatedNetFrame->hide();
|
||||
m_activatedNetDivider->hide();
|
||||
|
||||
m_inactivatedNetFrame->hide();
|
||||
m_inactivatedNetDivider->hide();
|
||||
}
|
||||
|
||||
return;
|
||||
|
@ -870,7 +868,7 @@ void WlanPage::onConnectionStateChanged(QString uuid,
|
|||
updateWlanItemState(m_inactivatedNetListWidget, p_listWidgetItem, Activating);
|
||||
}
|
||||
}
|
||||
|
||||
emit this->wlanConnectChanged(state);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -975,7 +973,7 @@ void WlanPage::onWifiEnabledChanged(bool isWifiOn)
|
|||
//m_netSwitch->setSwitchStatus(isWifiOn);
|
||||
//m_netSwitch->setEnabled(isWifiOn);
|
||||
m_switchGsettings->set(WIRELESS_SWITCH, isWifiOn);
|
||||
emit this->wlanConnectChanged();
|
||||
// emit this->wlanConnectChanged();
|
||||
}
|
||||
|
||||
return;
|
||||
|
@ -1249,7 +1247,6 @@ bool WlanPage::wlanIsConnected()
|
|||
} else if (m_activateConnectionItemMap.contains(EMPTY_SSID)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -58,7 +58,7 @@ signals:
|
|||
void signalStrengthChange(QString devName, QString ssid, int strength);
|
||||
void secuTypeChange(QString devName, QString ssid, QString secuType);
|
||||
void hiddenWlanClicked();
|
||||
void wlanConnectChanged();
|
||||
void wlanConnectChanged(int state);
|
||||
|
||||
public slots:
|
||||
void onMainWindowVisibleChanged(const bool &visible);
|
||||
|
|
Loading…
Reference in New Issue