Skip to content

Commit 09efde6

Browse files
committed
refactor: 重构代码
* 重构代码 * 合并最新 fcitx5-configtool Issues: linuxdeepin/developer-center#5701, linuxdeepin/developer-center#7752, linuxdeepin/developer-center#7753
1 parent 0138344 commit 09efde6

269 files changed

Lines changed: 18356 additions & 8303 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
*.user*
2-
*.qm
3-
build/
4-
1+
build/*
2+
*.kdev4
3+
.kdev_include_paths
4+
.directory
5+
*.kate-swp
6+
*.orig
7+
*~
8+
.*

.reuse/dep5

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ Copyright: Deepin Technology Co., Ltd.
2424
License: CC-BY-4.0
2525

2626
# desktop
27-
Files: *.desktop
27+
Files: *.desktop *.desktop.in
2828
Copyright: None
2929
License: CC0-1.0
3030

3131
# translation
32-
Files: *.ts
32+
Files: *.ts *.po *.pot **/LINGUAS
3333
Copyright: Deepin Technology Co., Ltd.
3434
License: GPL-3.0-or-later
3535

.tx/config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ minimum_perc = 80
44
mode = developer
55

66
[o:linuxdeepin:p:deepin-desktop-environment:r:deepin-fcitx5configtool-plugin]
7-
file_filter = translations/deepin-fcitx5configtool-plugin_<lang>.ts
8-
source_file = translations/deepin-fcitx5configtool-plugin.ts
7+
file_filter = src/dcc-module/translations/deepin-fcitx5configtool-plugin_<lang>.ts
8+
source_file = src/dcc-module/translations/deepin-fcitx5configtool-plugin.ts
99
source_lang = en
1010
type = QT
1111

CMakeLists.txt

Lines changed: 61 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,70 @@
1-
#cmake版本设置
2-
cmake_minimum_required(VERSION 3.7)
3-
project(deepin-fcitx5configtool-plugin VERSION 5.0.5)
1+
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
42

5-
include(GNUInstallDirs)
3+
set(CMAKE_DISABLE_IN_SOURCE_BUILD ON)
4+
set(CMAKE_DISABLE_SOURCE_CHANGES ON)
65

7-
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
8-
set(DEFAULT_XKB_RULES "evdev" CACHE STRING "Xkb rules name")
6+
if ("${CMAKE_BINARY_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}")
7+
message(FATAL_ERROR "In-source builds are disabled.
8+
Please create a subfolder and use `cmake ..` inside it.
9+
NOTE: cmake will now create CMakeCache.txt and CMakeFiles/*.
10+
You must delete them, or cmake will refuse to work.")
11+
endif()
912

10-
find_package(XKeyboardConfig REQUIRED)
13+
project(fcitx5-configtool VERSION 5.1.2)
14+
15+
set(QT_MIN_VERSION "5.12.0")
16+
find_package(ECM 1.0.0 REQUIRED NO_MODULE)
17+
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
18+
include(KDEInstallDirs)
19+
include(KDECMakeSettings)
20+
include(KDECompilerSettings)
21+
include(FeatureSummary)
22+
include(ECMSetupVersion)
23+
include(GenerateExportHeader)
24+
option(ENABLE_KCM "Enable KDE Config Module" On)
25+
option(ENABLE_CONFIG_QT "Enable fcitx5-config-qt" On)
26+
option(ENABLE_TEST "Enable test" Off)
27+
add_definitions(-DTRANSLATION_DOMAIN=\"org.fcitx.fcitx5.kcm\")
28+
add_definitions(-DFCITX_GETTEXT_DOMAIN=\"fcitx5-configtool\")
29+
add_definitions(-DQT_NO_KEYWORDS)
30+
31+
find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core Gui Widgets X11Extras Concurrent)
32+
find_package(DtkCore REQUIRED)
33+
find_package(DtkWidget REQUIRED)
34+
35+
find_package(KF5ItemViews REQUIRED)
36+
37+
find_package(Fcitx5Core 5.0.4 REQUIRED)
38+
find_package(Fcitx5Config REQUIRED)
39+
find_package(Fcitx5Utils REQUIRED)
40+
find_package(Fcitx5Qt5DBusAddons REQUIRED)
41+
find_package(Fcitx5Qt5WidgetsAddons 5.0.2 REQUIRED)
42+
find_package(Qt5Svg)
43+
set_package_properties(Qt5Svg PROPERTIES
44+
DESCRIPTION "May be used for show icons"
45+
TYPE RUNTIME)
46+
47+
get_target_property(FCITX5_QT5_GUI_WRAPPER Fcitx5Qt5::gui-wrapper IMPORTED_LOCATION)
48+
49+
find_package(KF5WidgetsAddons REQUIRED)
1150
find_package(IsoCodes REQUIRED)
51+
kde_enable_exceptions()
52+
53+
include("${FCITX_INSTALL_CMAKECONFIG_DIR}/Fcitx5Utils/Fcitx5CompilerSettings.cmake")
54+
55+
find_package(PkgConfig REQUIRED)
56+
find_package(Gettext REQUIRED)
57+
find_package(X11 REQUIRED)
58+
find_package(XKeyboardConfig REQUIRED)
59+
pkg_check_modules(XkbFile "xkbfile" REQUIRED IMPORTED_TARGET)
60+
61+
set(DEFAULT_XKB_RULES "evdev" CACHE STRING "Xkb rules name")
62+
1263
configure_file(config.h.in config.h)
1364
include_directories(${CMAKE_CURRENT_BINARY_DIR})
1465
15-
add_compile_definitions(FCITX_GETTEXT_DOMAIN="fcitx5-configtool")
16-
17-
#加载子目录
66+
add_subdirectory(po)
1867
add_subdirectory(src)
68+
add_subdirectory(layout)
1969
20-
#调用外部程序 生成qm文件
21-
execute_process(COMMAND bash translate_generation.sh
22-
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
23-
24-
## qm files
25-
file(GLOB QM_FILES "translations/*.qm")
26-
install(FILES ${QM_FILES} DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/dde-control-center/translations)
70+
feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)

Messages.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#!/bin/bash
2+
3+
gen_pot kde:appdata:desktop:ui fcitx5-configtool po/fcitx5-configtool layout/ src/configtool/ src/lib/ src/migrator/
4+
gen_pot kde:appdata:desktop:ui org.fcitx.fcitx5.kcm po/org.fcitx.fcitx5.kcm src/kcm/ src/plasmathemegenerator/

README

Whitespace-only changes.

config.h.in

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,11 @@
88

99
#cmakedefine PROJECT_VERSION "@PROJECT_VERSION@"
1010
#cmakedefine XKEYBOARDCONFIG_XKBBASE "@XKEYBOARDCONFIG_XKBBASE@"
11+
#cmakedefine DEFAULT_XKB_RULES "@DEFAULT_XKB_RULES@"
1112
#cmakedefine ISOCODES_ISO639_2_JSON "@ISOCODES_ISO639_2_JSON@"
1213
#cmakedefine ISOCODES_ISO639_3_JSON "@ISOCODES_ISO639_3_JSON@"
1314
#cmakedefine ISOCODES_ISO639_5_JSON "@ISOCODES_ISO639_5_JSON@"
1415

15-
#define XKEYBOARDCONFIG_XKBBASE "@XKEYBOARDCONFIG_XKBBASE@"
16-
#define DEFAULT_XKB_RULES "@DEFAULT_XKB_RULES@"
17-
1816
#define FCITX5_QT5_GUI_WRAPPER "@FCITX5_QT5_GUI_WRAPPER@"
1917

2018
#endif // _KCM_FCITX5_CONFIG_H_

configs/org.deepin.fcitx5.configtoolplugin.json

Lines changed: 0 additions & 94 deletions
This file was deleted.

debian/README

Lines changed: 0 additions & 6 deletions
This file was deleted.

debian/compat

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)