Description:

KSmoothDock is a cool desktop panel with parabolic zooming effect for KDE Plasma 5. While visually it is inspired by Mac OS X's Dock, it aims to follow the traditional Linux model of desktop panel with the application menu, launchers, the pager, the taskbar and the system tray. Currently KSmoothDock only supports the application menu, launchers and the pager, and is meant to use in conjunction with a Plasma 5 panel that provides the taskbar and the system tray.

KSmoothDock is written in C++ and depends on Qt 5 and KDE Frameworks 5.

For more information, please visit KSmoothDock's homepage: https://dangvd.github.io/ksmoothdock

Note: KSmoothDock is a standalone application, not a Plasma Widget. However, it is placed in this category temporarily while waiting for a more suitable one.

---

TO INSTALL:

You can either install from a binary package or from the source code package.

Option 1. (Preferably) Download and install from a binary package: Currently there is a DEB package for the Debian distribution and its derivatives (Ubuntu, Mint etc).
- To install the DEB package, use dpkg/apt command, or, simply click on the DEB package from the file manager to launch the default package installer (e.g. QApt)
- After the installation, KSmoothDock can be launched from the Application Menu (Utilities category), or from the command line by running:
$ ksmoothdock

Option 2. If you want to install from the source code (for example, if a package for your Linux distribution is not available), download the source code package and follow the steps below:

First, make sure you have Qt 5 and KDE Frameworks 5 development packages installed.

To build, extract the ksmoothdock-5.7.tar.gz file, then, from within the extracted ksmoothdock-5.7 directory, run:
$ cmake src
$ make

You can now start the program by running the ksmoothdock binary created in that directory, i.e.:
$ ./ksmoothdock

You can also install the program by running:
$ sudo make install

After the installation, KSmoothDock can be launched from the Application Menu (Utilities category), or from the command line:
$ ksmoothdock

To uninstall, run:
$ sudo make uninstall

To execute the automated tests, run:
$ make test
Last changelog:

v5.7 4 months ago

1. New feature: Application Menu
- Traditional cascading application menu, organized by categories
- Special menus/items such as Session, Power and Search (using krunner)
- Consistent look with the dock
- Automatically showing part of the screen to improve menu readability with translucent effect.
- Supporting drag action (dragging the menu items from the application menu to other destinations)
- Automatically updating itself when the desktop entries have changed
2. Various minor improvements/bug fixes

daTerminehtor

11 years ago

SuSE 10.0.1
KDE 3.5.3
Kernel 2.6.13-15

Gonna stay away from 3.54... so do you recommend remaining with ksd 3.61 or still upgrading?

And, do you also recommend installing overtop?

btw, nice work on getting the calendar on the mouse over. :D

Thanks

Report

lucher

11 years ago

Error message:

confkickerdialog.moc.o:(.rodata._ZTV16ConfKickerDialog[vtable for ConfKickerDialog]+0x20): undefined reference to `ConfKickerDialog::~ConfKickerDialog()'
confkickerdialog.moc.o:(.rodata._ZTV16ConfKickerDialog[vtable for ConfKickerDialog]+0x24): undefined reference to `ConfKickerDialog::~ConfKickerDialog()'
confkickerdialog.moc.o:(.rodata._ZTV16ConfKickerDialog[vtable for ConfKickerDialog]+0x1cc): undefined reference to `ConfKickerDialog::pushButton3_clicked()'
confkickerdialog.moc.o:(.rodata._ZTV16ConfKickerDialog[vtable for ConfKickerDialog]+0x1d0): undefined reference to `ConfKickerDialog::languageChange()'
confkickerdialog.moc.o:(.rodata._ZTV16ConfKickerDialog[vtable for ConfKickerDialog]+0x1dc): undefined reference to `non-virtual thunk to ConfKickerDialog::~ConfKickerDialog()'
confkickerdialog.moc.o:(.rodata._ZTV16ConfKickerDialog[vtable for ConfKickerDialog]+0x1e0): undefined reference to `non-virtual thunk to ConfKickerDialog::~ConfKickerDialog()'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x20): undefined reference to `ConfDialog::~ConfDialog()'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x24): undefined reference to `ConfDialog::~ConfDialog()'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1cc): undefined reference to `ConfDialog::cbTaskbar_stateChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1d0): undefined reference to `ConfDialog::buttonQuit_clicked()'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1d4): undefined reference to `ConfDialog::cbBorders_stateChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1d8): undefined reference to `ConfDialog::buttonApply_clicked()'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1dc): undefined reference to `ConfDialog::sldOpacity_valueChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1e0): undefined reference to `ConfDialog::sldSmallIconNZ_valueChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1e4): undefined reference to `ConfDialog::sldBigIconNZ_valueChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1e8): undefined reference to `ConfDialog::sldSmallIconPZ_valueChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1ec): undefined reference to `ConfDialog::sldBigIconPZ_valueChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1f0): undefined reference to `ConfDialog::cbTooltips_stateChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1f4): undefined reference to `ConfDialog::cbXinerama_stateChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1f8): undefined reference to `ConfDialog::rbParabolicZoom_stateChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x1fc): undefined reference to `ConfDialog::cbGradualPZ_stateChanged(int)'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x200): undefined reference to `ConfDialog::languageChange()'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x20c): undefined reference to `non-virtual thunk to ConfDialog::~ConfDialog()'
confdialog.moc.o:(.rodata._ZTV10ConfDialog[vtable for ConfDialog]+0x210): undefined reference to `non-virtual thunk to ConfDialog::~ConfDialog()'
collect2: ld returned 1 exit status
m

Report

lucher

11 years ago

Oh yeah:
I use KDE 3.5.4 with Qt 3.3.6 on SuSE 10.1

Report

C

dangvd

11 years ago

Lucher, it seems that you are not using the latest version. There is no confkickerdialog.* nor confdialog.*

Please download the latest version.
Viet Dung

Report

lucher

11 years ago

Ouch! That may be right. I didn't check if I untar the archive into an existing directory. Sorry for bugging.

Report

A3XN

11 years ago

i have Mandrake 10.0 "Official" and i can't compil...
This is the message:

checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
./configure: line 1379: syntax error near unexpected token `ksmoothdock,'
./configure: line 1379: `AM_INIT_AUTOMAKE(ksmoothdock, 4.0.1)'

What is this, i need some program or...
i nedd help :-)

Report

animae13

11 years ago

What would be nice is to draw a line between the quick lunch menu and the taskbar (more like mac-os). About the system tray acually i don't think it would be a nice idea.I still have the kde panel on the top of the desktop and the system tray and the clock among some other usuful applets .it's like on the bottom i have the programs etc etc and on the top all the information. It's VERY convenient

Report

C

dangvd

11 years ago

Yeah at the moment the separator is missing, I will re-implement it very soon.

About the system tray, if it is implemented there will always be an option to turn it off, so it will not affect your current setting.

Best,
Viet Dung

Report

orychalk

11 years ago

it misses some options like automatic hiding ( it was present in previous versions )

:(

Report

C

dangvd

11 years ago

Please read the short FAQ above.
Regards,
Viet Dung

Report

orychalk

11 years ago

Oups :(
i 've read too fast .... Sorry

Report

eMDi

11 years ago

checking for KDE... configure: error:
in the prefix, you've chosen, are no KDE headers installed. This will fail.
So, check this please and use another prefix!

can u help me?

Report

C

dangvd

11 years ago

Please check that you have KDE development packages installed. And try:
./configure --prefix=/YOUR_KDE_DIR

Report

chavo

11 years ago

Runs great here the only problem is that it is not Twinview or Xinerama aware. This seems to be the case with all of the docks for Linux. When set to the bottom or top position it will open across both screens. Not too big an issue but with 2 different resolutions most of the dock is off screen.

Report

C

dangvd

11 years ago

Yes, I am aware of the problem. I will try to fix it. In the mean time, you could try setting the dock position to Left or Right.
Best,
Viet Dung

Report

animae13

11 years ago

i forgot the plain usuall but really meeningfull thank you part. Great work it is the best mac-like bars ever. Keep up the good work

Report

animae13

11 years ago

when i try to extract the files i run into a problem and it stops but some files are already extracted.
But if i run ./configure everything seems great
'Good - your configure finished. Start make now'
after make and make install if i try to start ksmoothdock it says

' bash: ksmoothbar: command not found
animae@animae-desktop:~/Desktop/ksmoothdock$ ksmoothdock
X Error: BadDevice, invalid or uninitialized input device 169
Major opcode: 147
Minor opcode: 3
Resource id: 0x0
Failed to open device
X Error: BadDevice, invalid or uninitialized input device 169
Major opcode: 147
Minor opcode: 3
Resource id: 0x0
Failed to open device
ScimInputContextPlugin()
kdeui (KRootPixmap): [/tmp/buildd/kdelibs-3.5.4/./kdeui/krootpixmap.cpp:271] activating background exports.
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = ksmoothdock path = pid = 2623
'.


and appears a window saying that ksmoothdock crashed and caused the signal11(SIGSEGV)


When i reinstall ksmoothdock 3.6.1 everything runs smoothly

Is there a problem with the ark(i have kde 3.5.4)

Report

orychalk

11 years ago

i have the same problem ;(

AAAAARRRRGGGHHHHH !!!!!

Report

C

dangvd

11 years ago

Sorry the source package I uploaded several hours ago was corrupt.

I have just uploaded the proper one so the dock v4.0 should work now.

Best,
Viet Dung

Report

animae13

11 years ago

when i try to extract the files i run into a problem and it stops but some files are already extracted.
But if i run ./configure everything seems great
'Good - your configure finished. Start make now'
after make and make install if i try to start ksmoothdock it says

' bash: ksmoothbar: command not found
animae@animae-desktop:~/Desktop/ksmoothdock$ ksmoothdock
X Error: BadDevice, invalid or uninitialized input device 169
Major opcode: 147
Minor opcode: 3
Resource id: 0x0
Failed to open device
X Error: BadDevice, invalid or uninitialized input device 169
Major opcode: 147
Minor opcode: 3
Resource id: 0x0
Failed to open device
ScimInputContextPlugin()
kdeui (KRootPixmap): [/tmp/buildd/kdelibs-3.5.4/./kdeui/krootpixmap.cpp:271] activating background exports.
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = ksmoothdock path = pid = 2623
'.


and appears a window saying that ksmoothdock crashed and caused the signal11(SIGSEGV)


When i reinstall ksmoothdock 3.6.1 everything runs smoothly

Is there a problem with the ark(i have kde 3.5.4)

Report

C

dangvd

11 years ago

Sorry the source package I uploaded several hours ago was corrupt.

I have just uploaded the proper one so the dock v4.0 should work now.

Best,
Viet Dung

Report

animae13

11 years ago

when i try to extract the files i run into a problem and it stops but some files are already extracted.
But if i run ./configure everything seems great
'Good - your configure finished. Start make now'
after make and make install if i try to start ksmoothdock it says

' bash: ksmoothbar: command not found
animae@animae-desktop:~/Desktop/ksmoothdock$ ksmoothdock
X Error: BadDevice, invalid or uninitialized input device 169
Major opcode: 147
Minor opcode: 3
Resource id: 0x0
Failed to open device
X Error: BadDevice, invalid or uninitialized input device 169
Major opcode: 147
Minor opcode: 3
Resource id: 0x0
Failed to open device
ScimInputContextPlugin()
kdeui (KRootPixmap): [/tmp/buildd/kdelibs-3.5.4/./kdeui/krootpixmap.cpp:271] activating background exports.
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = ksmoothdock path = pid = 2623
'.


and appears a window saying that ksmoothdock crashed and caused the signal11(SIGSEGV)


When i reinstall ksmoothdock 3.6.1 everything runs smoothly

Is there a problem with the ark(i have kde 3.5.4)

Report

6thpink

11 years ago

I used
./configure --prefix=/usr/kde/3.5/ --without-arts
make
su
make install

Then, it crashed. GDB reports:

[code]
This GDB was configured as "x86_64-pc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".

(gdb) run
Starting program: /usr/kde/3.5/bin/ksmoothdock
[Thread debugging using libthread_db enabled]
[New Thread 47928304030336 (LWP 22228)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 47928304030336 (LWP 22228)]
0x000000000040dc17 in KSmoothDock::updateLayout ()
(gdb) bt
#0 0x000000000040dc17 in KSmoothDock::updateLayout ()
#1 0x0000000000412dd4 in KSmoothDock::KSmoothDock ()
#2 0x000000000040daa6 in main ()
(gdb) c
Continuing.
KCrash: Application 'ksmoothdock' crashing...
KCrash cannot reach kdeinit, launching directly.

Program exited with code 0375.
[/code]

Tried also just ./configure --without-arts --prefix=/usr/ and with no prefix at all.

Report

6thpink

11 years ago

Tried also this:

./configure --prefix=/usr/ --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --with-x --enable-mitshm --without-xinerama --with-qt-dir=/usr/qt/3 --enable-mt --with-qt-libraries=/usr/qt/3/lib64 --disable-dependency-tracking --disable-debug --without-debug --without-arts --enable-libsuffix=64 --with-extra-includes=/usr/kde/3.5/include --with-extra-libs=/usr/kde/3.5/lib64 --libdir=/usr/lib64 --build=x86_64-pc-linux-gnu

That is what my gentoo ebuild uses to compile kde-misc/ksmoothdock-3.6.1, which compiles and runs fine.

But 4.0 refuses to work, the same gdb backtrace.

Report

C

dangvd

11 years ago

Sorry the source package I uploaded several hours ago was corrupt.

I have just uploaded the proper one so the dock v4.0 should work now.

Best,
Viet Dung

Report

v5.7 4 months ago

1. New feature: Application Menu
- Traditional cascading application menu, organized by categories
- Special menus/items such as Session, Power and Search (using krunner)
- Consistent look with the dock
- Automatically showing part of the screen to improve menu readability with translucent effect.
- Supporting drag action (dragging the menu items from the application menu to other destinations)
- Automatically updating itself when the desktop entries have changed
2. Various minor improvements/bug fixes

v5.6 5 months ago

1. New feature: Clock
- Can be turned on/off from the main context menu
- Left click on the clock shows calendar
- Right click on the clock shows clock's context menu with 24/12 clock format option and date&time settings
2. New: better support for multi-monitor
- If multi-screen is detected, there will be an option from the main context menu to select the screen for the dock to reside on
3. Various minor improvements/bug fixes

v5.5 5 months ago

1. New:
- Add settings for background opacity and whether to show border
- Add an Online Documentation menu item to the context menu
2. Various bug fixes and minor improvements in terms of display and UI
3. Improve automated testing

v5.4 6 months ago

1. New: Install/uninstall:
- Installing the program (by running "sudo make install") now adds an entry to the Application Menu (Utilities category) for easy access to it
- You can now uninstall the program by running "sudo make uninstall"
2. Bug fixes/Minor improvements:
- Scale the pager icons to the screen's width/height ratio if needed

v5.3 6 months ago

1. New feature: Edit Launchers dialog
- Easy to add/remove/edit the launchers
- Drag and drop within the launcher list to reorder the launchers
- You can also drag and drop from an external source such as K Menu to create new launchers
2. Bug fixes/Minor improvements:
- Add some icons to context menu
- Pager now refreshes automatically when the number of desktops has changed
- Pager: Non-zoomed items now do not clip zoomed items
- Pager: Setting wallpaper for a non-current desktop now doesn't temporarily affect the current desktop's wallpaper
- When loading launchers, the field codes (%) are now filtered out from the command

v5.2 6 months ago

1. New feature: Auto Hide
- Can be turned on/off from the context menu
- If turned on, hide the dock when the user leaves it and show it when the user moves the mouse on the edge of the screen that the dock resides
2. Bug fixes/Minor improvements:
- Corrects dock's height in vertical position with pager turned on
- Handles wallpaper loading error better
- Adds "Do-not-show-again" to wallpaper setting info message box
- If custom wallpaper is set with pager, draws a border around the pager icon for the current desktop
- Message box that recommends on the wallpaper setting feature of the pager, if it's not used (can be turned off with "Do-not-show-again")
- Corrects the icon of the default System Settings launcher item (the one created automatically when the user starts the dock for the first time)

v5.1 7 months ago

- New feature: Pager
+ Can turn on/off pager from KSmoothDock's context menu
+ Click on a desktop icon switch to that virtual desktop, or, if it's already the current desktop, show/hide the desktop
+ Can set different wallpapers for different desktops (this requires Plasma desktop widgets to stay unlocked)
+ If individual wallpapers are set, the icons will be the mini version of the wallpapers
- Bug fixed: KSmoothDock now shows on all virtual desktops even if launched from Plasma Quicklaunch

v5.0.3 7 months ago

- Bug fixed: KSmoothDock is now visible on all virtual desktops (if the user has multiple virtual desktops enabled).

v5.0.2 7 months ago

- Sync the settings to disk immediately when the user clicks Ok/Apply from the Settings dialog. Previously the sync only happened when the user exited the program.
- Use stricter compiling flags to help prevent potential bugs.

v5.0.1 7 months ago

- Bug fixed: KSmoothDock is now limited to one single instance only.
- Clean-up: Show Desktop is now more consistent with Plasma's show-desktop behavior.

v5.0 7 months ago

Major rewrite for KDE Plasma 5. Depends on Qt 5 and KDE Frameworks 5.

Currently the panel only supports launchers (including a Show Desktop item), but more features will be considered.

product-maker dequire Jun 29 2017

Excellent dock! Are there polans to provide an option to keep the dock visible on the desktop, but allow apps to cover them (i.e. when full-screen)? Either way, glad I found this. Nice work.

product-maker andrecbarros Apr 10 2017

product-maker janet Apr 03 2017

product-maker alex-l Mar 17 2017

product-maker mirkogennari Mar 02 2017

product-maker 85 279

File (click to download) Version Description Filetype Packagetype License Downloads Date Filesize OCS-Install DL
Details
version
5.7
updated Jul 11 2017
added Jun 10 2003
downloads today
14
page views today 3