139 lines
7.0 KiB
Diff
139 lines
7.0 KiB
Diff
From 57d53f1253d960fe90e16dcf4b38692ec69fa122 Mon Sep 17 00:00:00 2001
|
|
From: tanyulong <tanyulong@kylinos.cn>
|
|
Date: Wed, 14 Jul 2021 10:15:09 +0800
|
|
Subject: [PATCH] Set the app name and icon for Kirin Recording
|
|
|
|
---
|
|
.../ukmedia_device_switch_widget.cpp | 46 ++++++++++++++++---
|
|
1 file changed, 40 insertions(+), 6 deletions(-)
|
|
|
|
diff --git a/ukui-volume-control-applet-qt/ukmedia_device_switch_widget.cpp b/ukui-volume-control-applet-qt/ukmedia_device_switch_widget.cpp
|
|
index 2e7ebbd..c074675 100755
|
|
--- a/ukui-volume-control-applet-qt/ukmedia_device_switch_widget.cpp
|
|
+++ b/ukui-volume-control-applet-qt/ukmedia_device_switch_widget.cpp
|
|
@@ -1465,12 +1465,18 @@ void DeviceSwitchWidget::add_stream (DeviceSwitchWidget *w, MateMixerStream *str
|
|
MateMixerAppInfo *m_pAppInfo = mate_mixer_stream_control_get_app_info(w->control);
|
|
if (m_pAppInfo != nullptr) {
|
|
const gchar *m_pAppName = mate_mixer_app_info_get_name(m_pAppInfo);
|
|
- if (strcmp(m_pAppName,"ukui-session") != 0 && strcmp(m_pAppName,"ukui-volume-control-applet-qt") != 0 && strcmp(m_pAppName,"Volume Control") && \
|
|
+ const gchar *app_icon_name = mate_mixer_app_info_get_icon(m_pAppInfo);
|
|
+ if (strstr(app_icon_name,"recording")) {
|
|
+ m_pAppName = "kylin-recorder";
|
|
+ app_icon_name = "kylin-recorder";
|
|
+ }
|
|
+
|
|
+ if (strcmp(m_pAppName,"ukui-session") != 0 && strcmp(m_pAppName,"ukui-volume-control-applet-qt") != 0 && strcmp(m_pAppName,"Volume Control") && \
|
|
strcmp(m_pAppName,"ALSA plug-in [mate-screenshot]") && strcmp(m_pAppName,"ALSA plug-in [ukui-volume-control-applet-qt]") && \
|
|
strcmp(m_pAppName,"Ukui Volume Control App") && !strstr(m_pAppName,"QtPulseAudio") && strcmp(m_pAppName,"ukuimedia-volume-control") != 0 && \
|
|
!strstr(m_pAppName,"ukui-settings-daemon")) {
|
|
if G_UNLIKELY (w->control == nullptr)
|
|
- return;
|
|
+ return;
|
|
add_application_control (w, w->control,m_pStreamControlName);
|
|
}
|
|
}
|
|
@@ -1532,7 +1538,7 @@ void DeviceSwitchWidget::add_application_control (DeviceSwitchWidget *w, MateMix
|
|
!g_strcmp0 (app_id, "org.PulseAudio.pavucontrol"))
|
|
return;
|
|
|
|
- QString app_icon_name = mate_mixer_app_info_get_icon(info);
|
|
+ const gchar *app_icon_name = mate_mixer_app_info_get_icon(info);
|
|
app_name = mate_mixer_app_info_get_name (info);
|
|
w->stream_control_list->append(name);
|
|
qDebug() << "add application control ,app name :" << app_name ;
|
|
@@ -1545,6 +1551,10 @@ void DeviceSwitchWidget::add_application_control (DeviceSwitchWidget *w, MateMix
|
|
if (app_name == nullptr) {
|
|
return;
|
|
}
|
|
+ if (strstr(app_icon_name,"recording")) {
|
|
+ app_name = "kylin-recorder";
|
|
+ app_icon_name = "kylin-recorder";
|
|
+ }
|
|
//添加应用添加到应用音量中
|
|
add_app_to_appwidget(w,app_name,app_icon_name,control);
|
|
|
|
@@ -1778,6 +1788,13 @@ void DeviceSwitchWidget::add_app_to_appwidget(DeviceSwitchWidget *w,const gchar
|
|
else if (strcmp(app_name,"Clock") == 0) {
|
|
app_icon_name = "ukui-clock";
|
|
}
|
|
+ else if (strcmp(app_name,"wechat") == 0) {
|
|
+ qDebug() << "0000000000000000000";
|
|
+ app_icon_name = "electronic-wechat";
|
|
+ }
|
|
+ else if (strcmp(app_name,"Firefox") == 0) {
|
|
+ app_icon_name = "firefox";
|
|
+ }
|
|
|
|
iconName.append(app_icon_name);
|
|
iconName.append(".desktop");
|
|
@@ -1785,7 +1802,8 @@ void DeviceSwitchWidget::add_app_to_appwidget(DeviceSwitchWidget *w,const gchar
|
|
QString pAppIcon = w->getAppIcon(iconName);
|
|
|
|
w->appWidget->app_volume_list->append(app_icon_name);
|
|
- qDebug() << "应用名为:" << pAppName << "desktop 名:" << iconName << "app icon name" << app_icon_name << "app name " << app_name;
|
|
+ qDebug() << "应用名为:" << pAppName << "desktop 名:" << iconName << "app icon name" << app_icon_name << "app name " << app_name << mate_mixer_stream_control_get_volume(control) << mate_mixer_stream_control_get_mute(control);
|
|
+
|
|
//widget显示应用音量
|
|
QWidget *app_widget = new QWidget(w->appWidget->displayAppVolumeWidget);
|
|
app_widget->setFixedSize(306,60);
|
|
@@ -1972,6 +1990,7 @@ void DeviceSwitchWidget::add_app_to_appwidget(DeviceSwitchWidget *w,const gchar
|
|
else if (w->mThemeName == UKUI_THEME_BLACK || w->mThemeName == "ukui-black" || w->mThemeName == "ukui-default") {
|
|
btn->setIcon(QIcon(w->drawLightColoredPixmap((QIcon::fromTheme(audioIconStr).pixmap(iconSize)))));
|
|
}
|
|
+ qDebug() << "应用音量更改" << audioIconStr;
|
|
Q_EMIT w->app_name_signal(appSliderStr);
|
|
});
|
|
/*应用音量同步*/
|
|
@@ -2059,7 +2078,9 @@ void DeviceSwitchWidget::add_app_to_appwidget(DeviceSwitchWidget *w,const gchar
|
|
btn->setIcon(QIcon(w->drawLightColoredPixmap((QIcon::fromTheme(audioIconStr).pixmap(iconSize)))));
|
|
}
|
|
|
|
- QPalette paleteBtn = btn->palette();
|
|
+ qDebug() << "系统音量改变" << volume << muteButtonStr;
|
|
+
|
|
+ QPalette paleteBtn = btn->palette();
|
|
paleteBtn.setColor(QPalette::Highlight,Qt::transparent);
|
|
paleteBtn.setBrush(QPalette::Button,QBrush(QColor(1,1,1,0)));
|
|
btn->setPalette(paleteBtn);
|
|
@@ -2128,6 +2149,9 @@ void DeviceSwitchWidget::update_app_volume(MateMixerStreamControl *control, QStr
|
|
else if (volume > 66) {
|
|
sliderMuteButtonStr = "audio-volume-high-symbolic";
|
|
}
|
|
+
|
|
+ qDebug() << "应用音量图标更改:" << sliderMuteButtonStr;
|
|
+
|
|
QSize iconSize(24,24);
|
|
if ( w->mThemeName == "ukui-white" || w->mThemeName == "ukui-light") {
|
|
btn->setIcon(QIcon(w->drawDarkColoredPixmap((QIcon::fromTheme(sliderMuteButtonStr).pixmap(iconSize)))));
|
|
@@ -2150,9 +2174,10 @@ void DeviceSwitchWidget::app_volume_mute (MateMixerStreamControl *control, QStri
|
|
MateMixerAppInfo *app_info = mate_mixer_stream_control_get_app_info(control);
|
|
if (app_info == nullptr)
|
|
return;
|
|
- /*bool is_mute = mate_mixer_stream_control_get_mute(control);*/
|
|
+ bool is_mute = mate_mixer_stream_control_get_mute(control);
|
|
int volume = mate_mixer_stream_control_get_volume(control);
|
|
volume = volume*100/65536.0+0.5;
|
|
+ qDebug() << "应用音量静音通知" << is_mute;
|
|
/*if (is_mute) {
|
|
w->appWidget->appMuteBtn->setIcon(QIcon("/usr/share/ukui-media/img/audio-volume-muted.svg"));
|
|
}
|
|
@@ -2745,6 +2770,15 @@ void DeviceSwitchWidget::on_control_mute_notify (MateMixerStreamControl *control
|
|
else if (direction == MATE_MIXER_DIRECTION_INPUT) {
|
|
w->updateMicrophoneIcon(volume,mute);
|
|
}
|
|
+ if (QGSettings::isSchemaInstalled(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID)) {
|
|
+ if (w->m_pVolumeSetting->keys().contains("soundstate")) {
|
|
+ w->m_pVolumeSetting->blockSignals(true);
|
|
+// w->m_pVolumeSetting->set(UKUI_VOLUME_STATE,mute);
|
|
+ w->m_pVolumeSetting->blockSignals(false);
|
|
+ }
|
|
+ }
|
|
+ w->themeChangeIcons();
|
|
+ Q_EMIT w->system_muted_signal(mute);
|
|
}
|
|
|
|
/*!
|
|
--
|
|
2.23.0
|
|
|