!24 Set the app name and icon for Kirin Recording

From: @tanyulong2021
Reviewed-by: @dou33
Signed-off-by: @dou33
This commit is contained in:
openeuler-ci-bot 2021-07-15 05:58:55 +00:00 committed by Gitee
commit 388028ecf9
2 changed files with 144 additions and 1 deletions

View File

@ -0,0 +1,138 @@
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

View File

@ -1,6 +1,6 @@
Name: ukui-media
Version: 3.0.2
Release: 8
Release: 9
Summary: UKUI media utilities
License: GPL-2+ GPL-3+ LGPL-2+ BSD-3-Clause
URL: http://www.ukui.org
@ -39,6 +39,7 @@ patch3: 0004-update-gsetting.patch
patch4: 0005-Solve-the-problem-of-adjusting-animation-freeze.patch
patch5: 0006-fix-the-slider-to-adjust-the-microphone-volume.patch
patch6: 0007-fix-probabilistic-crash-when-keyboard-keys-are-mute.patch
patch7: 0008-Set-the-app-name-and-icon-for-Kirin-Recording.patch
%description
A simple and lightweight screensaver written by Qt5.
@ -63,6 +64,7 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%build
./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=/usr/lib64
@ -124,6 +126,9 @@ glib-compile-schemas /usr/share/glib-2.0/schemas/
%{_datadir}/glib-2.0/
%changelog
* Wen Jul 14 2021 tanyulong<tanyulong@kylinos.cn> - 3.0.2-9
- Set the app name and icon for Kirin Recording
* Tue Jul 13 2021 tanyulong<tanyulong@kylinos.cn> - 3.0.2-8
- fix probabilistic crash when keyboard keys are mute