├── README
├── docs
├── 76071_2.jpg
├── heic0506a.jpg
├── index.html
├── ksmoothdock.jpg
└── opo0501a.jpg
└── src
├── CMakeLists.txt
├── cmake_uninstall.cmake.in
├── ksd.ksmoothdock.desktop
├── main.cc
├── model
├── application_menu_config.cc
├── application_menu_config.h
├── application_menu_config_test.cc
├── config_helper.cc
├── config_helper.h
├── multi_dock_model.cc
├── multi_dock_model.h
└── multi_dock_model_test.cc
├── utils
├── command_utils.h
├── draw_utils.h
├── font_utils.h
├── task_helper.cc
├── task_helper.h
├── wallpaper_helper.cc
└── wallpaper_helper.h
└── view
├── add_panel_dialog.cc
├── add_panel_dialog.h
├── add_panel_dialog.ui
├── add_panel_dialog_test.cc
├── appearance_settings_dialog.cc
├── appearance_settings_dialog.h
├── appearance_settings_dialog.ui
├── appearance_settings_dialog_test.cc
├── application_menu.cc
├── application_menu.h
├── application_menu_settings_dialog.cc
├── application_menu_settings_dialog.h
├── application_menu_settings_dialog.ui
├── application_menu_settings_dialog_test.cc
├── calendar.cc
├── calendar.h
├── clock.cc
├── clock.h
├── desktop_selector.cc
├── desktop_selector.h
├── desktop_selector_test.cc
├── dock_item.h
├── dock_panel.cc
├── dock_panel.h
├── dock_panel_test.cc
├── edit_launchers_dialog.cc
├── edit_launchers_dialog.h
├── edit_launchers_dialog.ui
├── edit_launchers_dialog_test.cc
├── icon_based_dock_item.cc
├── icon_based_dock_item.h
├── iconless_dock_item.cc
├── iconless_dock_item.h
├── multi_dock_view.cc
├── multi_dock_view.h
├── program.cc
├── program.h
├── separator.cc
├── separator.h
├── task_manager_settings_dialog.cc
├── task_manager_settings_dialog.h
├── task_manager_settings_dialog.ui
├── tooltip.cc
├── tooltip.h
├── wallpaper_settings_dialog.cc
├── wallpaper_settings_dialog.h
└── wallpaper_settings_dialog.ui
/README:
--------------------------------------------------------------------------------
1 | KSmoothDock is now DEPRECATED, please use Crystal Dock instead: https://github.com/dangvd/crystal-dock
2 |
--------------------------------------------------------------------------------
/docs/76071_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dangvd/ksmoothdock/d350b35ac2c6efc37d6a1be9c145bcde7ddbb0d8/docs/76071_2.jpg
--------------------------------------------------------------------------------
/docs/heic0506a.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dangvd/ksmoothdock/d350b35ac2c6efc37d6a1be9c145bcde7ddbb0d8/docs/heic0506a.jpg
--------------------------------------------------------------------------------
/docs/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
31 |
32 |
KSmoothDock - A cool desktop panel for KDE Plasma 5
33 |
34 |
35 |
36 |
37 |
38 |
39 | KSmoothDock is a cool desktop panel with parabolic zooming effect for KDE Plasma 5, with the focus on smooth zooming effect and being simple and easy to use.
40 |
41 |
42 |
43 | -
44 | Download: For latest releases, please visit KSmoothDock's page at the
45 | KDE Store
46 |
47 |
48 | -
49 | Documentation: Please visit Documentation
50 |
51 |
52 | -
53 | Screenshots: Please visit Screenshots
54 |
55 |
56 | -
57 | Bugs/feature requests: Please visit Issues page. Please check if the issue has already been filed before creating a new one.
58 |
59 |
60 | -
61 | Code: The source code is hosted at GitHub
62 |
63 |
64 | -
65 | Licence: KSmoothDock is free, open-source software released under GPLv3 licence
67 |
68 |
69 | -
70 | FAQs: Please visit FAQs
72 |
73 |
74 | -
75 | About the author: Please visit
76 | About
77 | the author
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
--------------------------------------------------------------------------------
/docs/ksmoothdock.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dangvd/ksmoothdock/d350b35ac2c6efc37d6a1be9c145bcde7ddbb0d8/docs/ksmoothdock.jpg
--------------------------------------------------------------------------------
/docs/opo0501a.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dangvd/ksmoothdock/d350b35ac2c6efc37d6a1be9c145bcde7ddbb0d8/docs/opo0501a.jpg
--------------------------------------------------------------------------------
/src/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.16)
2 |
3 | project(ksmoothdock)
4 |
5 | set(CMAKE_CXX_STANDARD 17)
6 | set(CMAKE_CXX_STANDARD_REQUIRED ON)
7 | add_compile_options(-Wall -Werror)
8 | add_definitions(-DQT_DEPRECATED_WARNINGS)
9 | set(CMAKE_INCLUDE_CURRENT_DIR ON)
10 | set(CMAKE_AUTOMOC ON)
11 | set(CMAKE_AUTOUIC ON)
12 |
13 | find_package(ECM REQUIRED NO_MODULE)
14 | set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
15 |
16 | find_package(Qt5 5.11 REQUIRED COMPONENTS DBus Gui Test Widgets)
17 | find_package(KF5 5.7 REQUIRED COMPONENTS Activities Config CoreAddons DBusAddons I18n
18 | IconThemes XmlGui WidgetsAddons WindowSystem)
19 |
20 | set(SRCS
21 | model/application_menu_config.cc
22 | model/config_helper.cc
23 | model/multi_dock_model.cc
24 | view/add_panel_dialog.cc
25 | view/appearance_settings_dialog.cc
26 | view/application_menu_settings_dialog.cc
27 | view/application_menu.cc
28 | view/calendar.cc
29 | view/clock.cc
30 | view/desktop_selector.cc
31 | view/dock_panel.cc
32 | view/edit_launchers_dialog.cc
33 | view/icon_based_dock_item.cc
34 | view/iconless_dock_item.cc
35 | view/multi_dock_view.cc
36 | view/program.cc
37 | view/separator.cc
38 | view/task_manager_settings_dialog.cc
39 | view/tooltip.cc
40 | view/wallpaper_settings_dialog.cc
41 | utils/task_helper.cc
42 | utils/wallpaper_helper.cc)
43 | add_library(ksmoothdock_lib ${SRCS})
44 |
45 | set(LIBS Qt5::DBus Qt5::Gui Qt5::Widgets KF5::Activities KF5::ConfigCore KF5::ConfigGui
46 | KF5::CoreAddons KF5::DBusAddons KF5::I18n KF5::IconThemes KF5::XmlGui
47 | KF5::WidgetsAddons KF5::WindowSystem stdc++fs)
48 | target_link_libraries(ksmoothdock_lib ${LIBS})
49 |
50 | add_executable(ksmoothdock main.cc)
51 | target_link_libraries(ksmoothdock ksmoothdock_lib ${LIBS})
52 |
53 | # Install
54 |
55 | install(TARGETS ksmoothdock RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
56 | install(FILES ksd.ksmoothdock.desktop DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications)
57 |
58 | # Uninstall
59 |
60 | configure_file(
61 | "${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"
62 | "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
63 | IMMEDIATE @ONLY)
64 |
65 | add_custom_target(uninstall COMMAND ${CMAKE_COMMAND}
66 | -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)
67 |
68 | # Test
69 |
70 | enable_testing()
71 |
72 | add_executable(appearance_settings_dialog_test
73 | view/appearance_settings_dialog_test.cc)
74 | target_link_libraries(appearance_settings_dialog_test
75 | Qt5::Test ksmoothdock_lib ${LIBS})
76 | add_test(appearance_settings_dialog_test appearance_settings_dialog_test)
77 |
78 | add_executable(desktop_selector_test view/desktop_selector_test.cc)
79 | target_link_libraries(desktop_selector_test Qt5::Test ksmoothdock_lib ${LIBS})
80 | add_test(desktop_selector_test desktop_selector_test)
81 |
82 | add_executable(edit_launchers_dialog_test view/edit_launchers_dialog_test.cc)
83 | target_link_libraries(edit_launchers_dialog_test Qt5::Test ksmoothdock_lib
84 | ${LIBS})
85 | add_test(edit_launchers_dialog_test edit_launchers_dialog_test)
86 |
87 | add_executable(dock_panel_test view/dock_panel_test.cc)
88 | target_link_libraries(dock_panel_test Qt5::Test ksmoothdock_lib ${LIBS})
89 | add_test(dock_panel_test dock_panel_test)
90 |
91 | add_executable(application_menu_config_test model/application_menu_config_test.cc)
92 | target_link_libraries(application_menu_config_test Qt5::Test ksmoothdock_lib ${LIBS})
93 | add_test(application_menu_config_test application_menu_config_test)
94 |
95 | add_executable(add_panel_dialog_test view/add_panel_dialog_test.cc)
96 | target_link_libraries(add_panel_dialog_test Qt5::Test ksmoothdock_lib ${LIBS})
97 | add_test(add_panel_dialog_test add_panel_dialog_test)
98 |
99 | add_executable(application_menu_settings_dialog_test
100 | view/application_menu_settings_dialog_test.cc)
101 | target_link_libraries(application_menu_settings_dialog_test
102 | Qt5::Test ksmoothdock_lib ${LIBS})
103 | add_test(application_menu_settings_dialog_test
104 | application_menu_settings_dialog_test)
105 |
106 | add_executable(multi_dock_model_test model/multi_dock_model_test.cc)
107 | target_link_libraries(multi_dock_model_test Qt5::Test ksmoothdock_lib ${LIBS})
108 | add_test(multi_dock_model_test multi_dock_model_test)
109 |
--------------------------------------------------------------------------------
/src/cmake_uninstall.cmake.in:
--------------------------------------------------------------------------------
1 | if(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
2 | message(FATAL_ERROR "Cannot find install manifest:
3 | @CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
4 | endif(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
5 |
6 | file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
7 | string(REGEX REPLACE "\n" ";" files "${files}")
8 | foreach(file ${files})
9 | message(STATUS "Uninstalling $ENV{DESTDIR}${file}")
10 | if(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}")
11 | exec_program(
12 | "@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
13 | OUTPUT_VARIABLE rm_out
14 | RETURN_VALUE rm_retval
15 | )
16 | if(NOT "${rm_retval}" STREQUAL 0)
17 | message(FATAL_ERROR "Problem when removing $ENV{DESTDIR}${file}")
18 | endif(NOT "${rm_retval}" STREQUAL 0)
19 | else(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}")
20 | message(STATUS "File $ENV{DESTDIR}${file} does not exist.")
21 | endif(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}")
22 | endforeach(file)
23 |
--------------------------------------------------------------------------------
/src/ksd.ksmoothdock.desktop:
--------------------------------------------------------------------------------
1 | [Desktop Entry]
2 | Type=Application
3 | Name=KSmoothDock
4 | GenericName=Desktop Panel
5 | Icon=user-desktop
6 | Exec=ksmoothdock
7 | Terminal=false
8 | Categories=Qt;KDE;Utility;
9 |
--------------------------------------------------------------------------------
/src/main.cc:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of KSmoothDock.
3 | * Copyright (C) 2017 Viet Dang (dangvd@gmail.com)
4 | *
5 | * KSmoothDock is free software: you can redistribute it and/or modify
6 | * it under the terms of the GNU General Public License as published by
7 | * the Free Software Foundation, either version 3 of the License, or
8 | * (at your option) any later version.
9 | *
10 | * KSmoothDock is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | * GNU General Public License for more details.
14 | *
15 | * You should have received a copy of the GNU General Public License
16 | * along with KSmoothDock. If not, see