From aaaa7ec4ffcafbce965c0b234ba281bd8c003e1a Mon Sep 17 00:00:00 2001
From: meizhigang <meizhigang@kylinsec.com.cn>
Date: Sat, 27 May 2023 19:51:46 +0800
Subject: [PATCH] fix(keybinding):Add support desktop key for GC
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

 -添加GC支持的桌面扩展快捷键

 Related #67098
---
 cmake/ksd_variables.cmake                  | 4 ++++
 data/CMakeLists.txt                        | 6 ++++++
 data/keybindings/01-desktop-extend-key.xml | 8 ++++++++
 3 files changed, 18 insertions(+)
 create mode 100644 data/keybindings/01-desktop-extend-key.xml

diff --git a/cmake/ksd_variables.cmake b/cmake/ksd_variables.cmake
index 3ea177b..46e3b7c 100644
--- a/cmake/ksd_variables.cmake
+++ b/cmake/ksd_variables.cmake
@@ -59,6 +59,10 @@ set(enable-plugin-clipboard
     "false"
     CACHE STRING "Enable plugin clipboard")
 
+set(filter-desktop-extend-key
+    "true"
+    CACHE STRING "Filter desktop extend key")
+
 # Determine the platform.
 if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
   set(OS_MACOSX 1)
diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
index cf469fb..006d1b0 100644
--- a/data/CMakeLists.txt
+++ b/data/CMakeLists.txt
@@ -127,6 +127,12 @@ if(build-session-daemon)
 
   # keybindings
   file(GLOB KEYBINDINGS_XML_FILES ${PROJECT_SOURCE_DIR}/data/keybindings/*.xml)
+
+  if(filter-desktop-extend-key)
+    list(REMOVE_ITEM KEYBINDINGS_XML_FILES
+         ${PROJECT_SOURCE_DIR}/data/keybindings/01-desktop-extend-key.xml)
+  endif()
+
   install(
     FILES ${KEYBINDINGS_XML_FILES}
     DESTINATION ${CMAKE_INSTALL_FULL_DATADIR}/${PROJECT_NAME}/keybindings/)
diff --git a/data/keybindings/01-desktop-extend-key.xml b/data/keybindings/01-desktop-extend-key.xml
new file mode 100644
index 0000000..e9b8d13
--- /dev/null
+++ b/data/keybindings/01-desktop-extend-key.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<KeyListEntries schema="org.mate.SettingsDaemon.plugins.media-keys" package="mate-settings-daemon" name="Desktop">
+
+	<KeyListEntry name="panel-kiran-menu" description="Show the panel's main menu of kiran"/>
+
+	<KeyListEntry name="show-desktop" description="Show the desktop"/>
+
+</KeyListEntries>
-- 
2.27.0

