psifidotos / applet-window-buttons Goto Github PK
View Code? Open in Web Editor NEWPlasma 5 applet in order to show window buttons in your panels
License: GNU General Public License v2.0
Plasma 5 applet in order to show window buttons in your panels
License: GNU General Public License v2.0
After update to 0.2-1 buttons spacing increased. So I went to settings and started lowering it. I discovered few things:
Current spacing set to zero is OK for me, but what if someone wants to make it even lower?
Here is how buttons look like with spacing set to zero:
Maybe that's intended feature? As already said, the effect is good, just as I prefer, but I can imagine someone wants it to be tighter.
Also other parameters have changed. Before left margin needed to be 3 for the first button not to touch the edge of the screen. Now I set it to zero and there is still space. It's good, but I kind liked previous effects. They were logical and allowed for full customization. Zero meant zero and now zero means something else. I had control over the space and now I have a nice space which is good but is not controllable.
Is that intended feature? If so, it's not bad, but again, I liked the full control feeling I got with the old settings.
Aside from that, all looks fine, there is no longer the bug with applet not being possible to remove or move in latte edit mode.
OS: Opensuse
DE:KDE 5.58/Plasma 5.16
QT version: 5.12
When I run sh install.sh
, get this error:
CMake Error at CMakeLists.txt:17 (find_package):
Could not find a package configuration file provided by "Qt5" (requested
version 5.9.0) with any of the following names:
Qt5Config.cmake
qt5-config.cmake
Add the installation prefix of "Qt5" to CMAKE_PREFIX_PATH or set "Qt5_DIR"
to a directory containing one of the above files. If "Qt5" provides a
separate development package or SDK, be sure it has been installed.
-- Configuring incomplete, errors occurred!
See also "/home/<username>/tmp/applet-window-buttons/build/CMakeFiles/CMakeOutput.log".
make: *** No targets specified and no makefile found. Stop.
make: *** No rule to make target 'install'. Stop
In the code is explicitly set /usr/share/.....
This option is important when the plasmoid in inside a plasma panel because otherwise it cant be configured.
For the Latte case this is not needed so the plasmoid should not touch that option.
Latte provides its own implementation for borderless maximized windows because it can use multiple layouts at the same time with different configuration concerning that option.
It would be nice if the user could assign a color scheme for the buttons of c++ decorations. This already supported but it is not exposed to the user.
To compile on ubuntu, one needs to install the libs first:
sudo apt install g++ extra-cmake-modules qtbase5-dev qtdeclarative5-dev libkf5declarative-dev libkf5plasma-dev libkdecorations2-dev gettext
Hi !
I use the Window Buttons plasmoid without the "show only when active window is maximized" option, so I expect to see the applet at all times (handy to close / minimize several windows in a row).
However I noticed the applet buttons temporarily disappeared when I clicked on a tray icon like the "notification" or "volume" tray icon, which is a little annoying because if shifts the tray icon position so you have to move in order to click it again.
Cheers !
Hello,
Being interested in latte-dock, so I decided to give it a spin including the applets on a KDE Neon Testing install. I like it overall though the memory usage seem to grow over time.
This widget compiled successfully but it always crashes the latte-dock when I tried to add it. It does so specifically on this line.
This line checks if the uri is "org.kde.appletsdecoration" and aborts when if it's not. But on my system, the uri passed is "org.kde.appletdecoration" (note the absence of 's') so the assert triggers hence preventing me from ever adding this widget on a latte-dock.
The widget does work after commenting out the said line or changing the "org.kde.appletsdecoration" to "org.kde.appletdecoration".
Would changing this line be okay on the long run?
First of all, I'm very happy when I see there are lots of commits from you today. Nice work !
Then, I'm about to report the first bug I've seen.
Here is how to reproduce it:
1, Focus on a window to make it active.
2, Drag from the maximize/unmaximize button to out of Latte panel
... and Latte will crash.
Here is the backstrace:
Application: Latte Dock (latte-dock), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f9e00a1e800 (LWP 3902))]
Thread 7 (Thread 0x7f9dd50b1700 (LWP 3967)):
#0 0x00007ffff45ecb14 in clock_gettime ()
#1 0x00007f9e05920876 in clock_gettime () at /lib64/libc.so.6
#2 0x00007f9e063db401 in () at /usr/lib64/libQt5Core.so.5
#3 0x00007f9e063d9c39 in QTimerInfoList::updateCurrentTime() () at /usr/lib64/libQt5Core.so.5
#4 0x00007f9e063da235 in QTimerInfoList::timerWait(timespec&) () at /usr/lib64/libQt5Core.so.5
#5 0x00007f9e063db85e in () at /usr/lib64/libQt5Core.so.5
#6 0x00007f9e02ec2499 in g_main_context_prepare () at /usr/lib64/libglib-2.0.so.0
#7 0x00007f9e02ec2e7b in () at /usr/lib64/libglib-2.0.so.0
#8 0x00007f9e02ec306c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#9 0x00007f9e063dbadb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#10 0x00007f9e06388adb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#11 0x00007f9e061d7de6 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#12 0x00007f9dd638a8b7 in KCupsConnection::run() () at /usr/lib64/libkcupslib.so
#13 0x00007f9e061e19b7 in () at /usr/lib64/libQt5Core.so.5
#14 0x00007f9e042ba554 in start_thread () at /lib64/libpthread.so.0
#15 0x00007f9e05912ccf in clone () at /lib64/libc.so.6
Thread 6 (Thread 0x7f9dddfcd700 (LWP 3951)):
#0 0x00007ffff45ecb14 in clock_gettime ()
#1 0x00007f9e05920876 in clock_gettime () at /lib64/libc.so.6
#2 0x00007f9e063db401 in () at /usr/lib64/libQt5Core.so.5
#3 0x00007f9e063d9c39 in QTimerInfoList::updateCurrentTime() () at /usr/lib64/libQt5Core.so.5
#4 0x00007f9e063dbf45 in () at /usr/lib64/libQt5Core.so.5
#5 0x00007f9e02ec2971 in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#6 0x00007f9e02ec2ef0 in () at /usr/lib64/libglib-2.0.so.0
#7 0x00007f9e02ec306c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#8 0x00007f9e063dbadb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#9 0x00007f9e06388adb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#10 0x00007f9e061d7de6 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#11 0x00007f9e061e19b7 in () at /usr/lib64/libQt5Core.so.5
#12 0x00007f9e042ba554 in start_thread () at /lib64/libpthread.so.0
#13 0x00007f9e05912ccf in clone () at /lib64/libc.so.6
Thread 5 (Thread 0x7f9dde7ce700 (LWP 3950)):
#0 0x00007f9e02ec24a6 in g_main_context_prepare () at /usr/lib64/libglib-2.0.so.0
#1 0x00007f9e02ec2e7b in () at /usr/lib64/libglib-2.0.so.0
#2 0x00007f9e02ec306c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3 0x00007f9e063dbadb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#4 0x00007f9e06388adb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#5 0x00007f9e061d7de6 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#6 0x00007f9ddebd89e5 in () at /usr/lib64/qt5/qml/QtQuick/XmlListModel/libqmlxmllistmodelplugin.so
#7 0x00007f9e061e19b7 in () at /usr/lib64/libQt5Core.so.5
#8 0x00007f9e042ba554 in start_thread () at /lib64/libpthread.so.0
#9 0x00007f9e05912ccf in clone () at /lib64/libc.so.6
Thread 4 (Thread 0x7f9deb64d700 (LWP 3931)):
#0 0x00007f9e042c04dc in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1 0x00007f9deb953f5b in () at /usr/lib64/dri/i965_dri.so
#2 0x00007f9deb953c87 in () at /usr/lib64/dri/i965_dri.so
#3 0x00007f9e042ba554 in start_thread () at /lib64/libpthread.so.0
#4 0x00007f9e05912ccf in clone () at /lib64/libc.so.6
Thread 3 (Thread 0x7f9df6294700 (LWP 3930)):
#0 0x00007f9e05903d34 in read () at /lib64/libc.so.6
#1 0x00007f9e02f084b0 in () at /usr/lib64/libglib-2.0.so.0
#2 0x00007f9e02ec2a4b in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#3 0x00007f9e02ec2ef0 in () at /usr/lib64/libglib-2.0.so.0
#4 0x00007f9e02ec306c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#5 0x00007f9e063dbadb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#6 0x00007f9e06388adb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#7 0x00007f9e061d7de6 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#8 0x00007f9e07892485 in () at /usr/lib64/libQt5Qml.so.5
#9 0x00007f9e061e19b7 in () at /usr/lib64/libQt5Core.so.5
#10 0x00007f9e042ba554 in start_thread () at /lib64/libpthread.so.0
#11 0x00007f9e05912ccf in clone () at /lib64/libc.so.6
Thread 2 (Thread 0x7f9dfcc6e700 (LWP 3906)):
#0 0x00007f9e059082c9 in poll () at /lib64/libc.so.6
#1 0x00007f9e02ec2f46 in () at /usr/lib64/libglib-2.0.so.0
#2 0x00007f9e02ec306c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3 0x00007f9e063dbadb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#4 0x00007f9e06388adb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#5 0x00007f9e061d7de6 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#6 0x00007f9e072d5545 in () at /usr/lib64/libQt5DBus.so.5
#7 0x00007f9e061e19b7 in () at /usr/lib64/libQt5Core.so.5
#8 0x00007f9e042ba554 in start_thread () at /lib64/libpthread.so.0
#9 0x00007f9e05912ccf in clone () at /lib64/libc.so.6
Thread 1 (Thread 0x7f9e00a1e800 (LWP 3902)):
[KCrash Handler]
#4 0x00007f9ddc01b79b in KDecoration2::Decoration::update(QRect const&) () at /usr/lib64/libkdecorations2.so.5
#5 0x00007f9ddc020f54 in KDecoration2::DecorationButton::update(QRectF const&) () at /usr/lib64/libkdecorations2.so.5
#6 0x00007f9ddc02105f in KDecoration2::DecorationButton::update() () at /usr/lib64/libkdecorations2.so.5
#7 0x00007f9dd74261a0 in () at /usr/lib64/qt5/plugins/org.kde.kdecoration2/breezeenhanced.so
#8 0x00007f9e061c2f6d in QPropertyAnimation::updateCurrentValue(QVariant const&) () at /usr/lib64/libQt5Core.so.5
#9 0x00007f9e061bf9c8 in () at /usr/lib64/libQt5Core.so.5
#10 0x00007f9e061c01d0 in () at /usr/lib64/libQt5Core.so.5
#11 0x00007f9e061bcde1 in QAbstractAnimation::setCurrentTime(int) () at /usr/lib64/libQt5Core.so.5
#12 0x00007f9e061bcf19 in () at /usr/lib64/libQt5Core.so.5
#13 0x00007f9e061bb7eb in QUnifiedTimer::updateAnimationTimers(long long) () at /usr/lib64/libQt5Core.so.5
#14 0x00007f9e078abba4 in QAbstractAnimationJob::setState(QAbstractAnimationJob::State) () at /usr/lib64/libQt5Qml.so.5
#15 0x00007f9e07afa1f8 in QQuickAbstractAnimationPrivate::commence() () at /usr/lib64/libQt5Quick.so.5
#16 0x00007f9e07afa4b8 in QQuickAbstractAnimation::setRunning(bool) () at /usr/lib64/libQt5Quick.so.5
#17 0x00007f9e07afe1eb in QQuickAbstractAnimation::qt_metacall(QMetaObject::Call, int, void**) () at /usr/lib64/libQt5Quick.so.5
#18 0x00007f9e07afe7a5 in QQuickAnimationGroup::qt_metacall(QMetaObject::Call, int, void**) () at /usr/lib64/libQt5Quick.so.5
#19 0x00007f9e07844fed in () at /usr/lib64/libQt5Qml.so.5
#20 0x00007f9e077ab6f3 in () at /usr/lib64/libQt5Qml.so.5
#21 0x00007f9e077ac8b9 in () at /usr/lib64/libQt5Qml.so.5
#22 0x00007f9e077ad583 in QV4::QObjectMethod::callInternal(QV4::Value const*, QV4::Value const*, int) const () at /usr/lib64/libQt5Qml.so.5
#23 0x00007f9e077c7c15 in QV4::Runtime::method_callProperty(QV4::ExecutionEngine*, QV4::Value*, int, QV4::Value*, int) () at /usr/lib64/libQt5Qml.so.5
#24 0x00007f9dcbfbf2ee in ()
#25 0x00007f9df5655478 in ()
#26 0x00007f9df5655480 in ()
#27 0x0000562df34a1700 in ()
#28 0x0000000000000000 in ()
[Inferior 1 (process 3902) detached]
What title says makes my moved application black till I'm not resizing it.
If I have System Settings > Desktop Behaviour > Desktop Effects > Maximise unticked (so maximizing animation turned off) it works as expected.
Specs:
Operating System: Arch Linux
KDE Plasma Version: 5.15.4
KDE Frameworks Version: 5.56.0
Qt Version: 5.12.2
Kernel Version: 5.0.7-arch1-1-ARCH
When I try SierraBreezeEnhanced buttons (Decoration style: Always inactive) with Breeze colorscheme:
The same result with Breeze buttons:
I think the color should be responsive like the color of Appmenu as well as other applets. It should somehow depend on the background color.
(Plasma theme: Breeze, System color: Breeze)
Can I deleted the directory where I run install.sh? Or will it delete the installation?
Using latest latte-dock package from git master and wm-buttons from source.
If you add a second activity, the buttons no longer work. Everything else seems to work. Even after you remove the activity, they still don't work. Hopefully it can be resolved with a logout.
Hi
Thanks for this nice widget.
Please add an option to this buttons control last maximized window instead of active window
Thanks in advance.
The pop up shows this:
Error loading QML file: file:///usr/share/plasma/plasmoids/org.kde.windowbuttons/contents/ui/main.qml:28:1: module "org.kde.appletdecoration" is not installed
I installed all the dependencies listed when running sh install.sh. I am on Fedora 29 KDE.
When installed this widget on Manjaro, it worked flawlessly, but it doesn't work on Fedora for some reason.
Using default settings (default Breeze theme), buttons appear as in breeze decorations i.e. bright as breeze title bars are dark.
However, breeze panels are light so buttons are barely visible. Maybe Color scheme should be taken from inactive colors where titlebar switch to light color??
As describe also at #46 the buttons are shown even when there is NO Active window in the current screen and the user has chosen "Active window/Maximized" and enabled the screens filtering
Kubuntu 18.04
GCC 7.3.0
Frameworks 5.44 or 5.47
Qt 5.9.5
Plasma 5.12.6 or 5.12.7
[ 16%] Building CXX object libappletdecoration/CMakeFiles/appletdecorationplugin.dir/appletdecorationplugin.cpp.o
In file included from /tmp/buildd/plasma-applet-window-buttons-0.1+git20181114.1249/libappletdecoration/appletdecorationplugin.cpp:26:0:
/tmp/buildd/plasma-applet-window-buttons-0.1+git20181114.1249/libappletdecoration/previewclient.h:103:10: error: 'void Decoration::Applet::PreviewClient::requestShowToolTip(const QString&)' marked 'override', but does not override
void requestShowToolTip(const QString &text) override;
^~~~~~~~~~~~~~~~~~
/tmp/buildd/plasma-applet-window-buttons-0.1+git20181114.1249/libappletdecoration/previewclient.h:104:10: error: 'void Decoration::Applet::PreviewClient::requestHideToolTip()' marked 'override', but does not override
void requestHideToolTip() override;
^~~~~~~~~~~~~~~~~~
libappletdecoration/CMakeFiles/appletdecorationplugin.dir/build.make:62: recipe for target 'libappletdecoration/CMakeFiles/appletdecorationplugin.dir/appletdecorationplugin.cpp.o' failed
make[2]: *** [libappletdecoration/CMakeFiles/appletdecorationplugin.dir/appletdecorationplugin.cpp.o] Error 1
That button will open the system setting module for that decoration, like when you open it from Alt+F2 (Krunner)
When window is maximized, close button in window titlebar is placed in such a way that moving mouse to very corner where button is still hovers that button. As a result we can rapidly flick the mouse to the direction of that corner and click without aiming in order to close that window. This is not the case with this applet. Be great if mouse positioned like in screenshot would be able to click on the button.
this is the case even when there are visible windows
I think i have all required libs, but it still don't build. Sadly, there are no 5.13 on Ubuntu 18.04
$ cmake -DCMAKE_INSTALL_PREFIX=/usr .. -Wnodev
-- The C compiler identification is GNU 7.3.0
-- The CXX compiler identification is GNU 7.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found KF5CoreAddons: /usr/lib/x86_64-linux-gnu/cmake/KF5CoreAddons/KF5CoreAddonsConfig.cmake (found version "5.50.0")
-- Installing in the same prefix as Qt, adopting their path scheme.
-- Found KF5Declarative: /usr/lib/x86_64-linux-gnu/cmake/KF5Declarative/KF5DeclarativeConfig.cmake (found version "5.50.0")
-- Found KF5Plasma: /usr/lib/x86_64-linux-gnu/cmake/KF5Plasma/KF5PlasmaConfig.cmake (found version "5.50.0")
-- Found KF5PlasmaQuick: /usr/lib/x86_64-linux-gnu/cmake/KF5PlasmaQuick/KF5PlasmaQuickConfig.cmake (found version "5.50.0")
-- Found KF5: success (found suitable version "5.50.0", minimum required is "5.38.0") found components: CoreAddons Declarative Plasma PlasmaQuick
-- Could not set up the appstream test. appstreamcli is missing.
-- Looking for GLIBC
-- Looking for GLIBC - found
-- Performing Test _OFFT_IS_64BIT
-- Performing Test _OFFT_IS_64BIT - Success
-- Performing Test HAVE_DATE_TIME
-- Performing Test HAVE_DATE_TIME - Success
-- Found KF5WindowSystem: /usr/lib/x86_64-linux-gnu/cmake/KF5WindowSystem/KF5WindowSystemConfig.cmake (found version "5.50.0")
-- Found Gettext: /usr/bin/msgmerge (found version "0.19.8.1")
-- Found KF5I18n: /usr/lib/x86_64-linux-gnu/cmake/KF5I18n/KF5I18nConfig.cmake (found version "5.50.0")
-- Found KF5Service: /usr/lib/x86_64-linux-gnu/cmake/KF5Service/KF5ServiceConfig.cmake (found version "5.50.0")
-- Found KF5ConfigWidgets: /usr/lib/x86_64-linux-gnu/cmake/KF5ConfigWidgets/KF5ConfigWidgetsConfig.cmake (found version "5.50.0")
-- Found KF5: success (found suitable version "5.50.0", minimum required is "5.26.0") found components: Plasma WindowSystem I18n Service ConfigWidgets
CMake Warning at /usr/lib/x86_64-linux-gnu/cmake/KF5Package/KF5PackageMacros.cmake:71 (message):
warnings during generation of metainfo for org.kde.windowbuttons: KCatalog
being used without a Q*Application instance. Some translations won't work
Call Stack (most recent call first):
/usr/lib/x86_64-linux-gnu/cmake/KF5Plasma/KF5PlasmaMacros.cmake:34 (kpackage_install_package)
CMakeLists.txt:27 (plasma_install_package)
-- Configuring done
-- Generating done
-- Build files have been written to: /home/lech/Dokumenty/Prywatne/applet-window-buttons/build
lech@Lech-Dell-Latitude-E6220:~/Dokumenty/Prywatne/applet-window-buttons/build$ make
Scanning dependencies of target org.kde.windowbuttons-plasmoids-metadata-json
[ 5%] Generating org.kde.windowbuttons-plasmoids-metadata.json
About to parse service type file "/usr/share/kservicetypes5/plasma-applet.desktop"
Found property definition "X-Plasma-API" with type "QString"
Found property definition "X-Plasma-RootPath" with type "QString"
Found property definition "X-Plasma-MainScript" with type "QString"
Found property definition "X-Plasma-ContainmentType" with type "QString"
Found property definition "X-Plasma-DropMimeTypes" with type "QStringList"
Found property definition "X-Plasma-DropUrlPatterns" with type "QStringList"
Found property definition "X-Plasma-NotificationArea" with type "QString"
Found property definition "X-Plasma-NotificationAreaCategory" with type "QString"
Found property definition "X-Plasma-DBusActivationService" with type "QString"
Found property definition "X-KDE-ParentApp" with type "QString"
Found property definition "X-Plasma-Provides" with type "QStringList"
Found property definition "X-Plasma-PreloadWeight" with type "int"
Found property definition "X-Plasma-ConfigPlugins" with type "QStringList"
Found property definition "X-Plasma-StandAloneApp" with type "bool"
Found property definition "X-Plasma-RequiredExtensions" with type "QStringList"
Found property definition "NoDisplay" with type "bool"
Unknown property type for key "Keywords" -> falling back to string
Generated "/home/lech/Dokumenty/Prywatne/applet-window-buttons/build/org.kde.windowbuttons-plasmoids-metadata.json"
[ 5%] Built target org.kde.windowbuttons-plasmoids-metadata-json
Scanning dependencies of target appletdecorationplugin_autogen
[ 11%] Automatic MOC for target appletdecorationplugin
[ 11%] Built target appletdecorationplugin_autogen
Scanning dependencies of target appletdecorationplugin
[ 16%] Building CXX object libappletdecoration/CMakeFiles/appletdecorationplugin.dir/appletdecorationplugin.cpp.o
In file included from /home/lech/Dokumenty/Prywatne/applet-window-buttons/libappletdecoration/appletdecorationplugin.cpp:26:0:
/home/lech/Dokumenty/Prywatne/applet-window-buttons/libappletdecoration/previewclient.h:103:10: error: ‘void Decoration::Applet::PreviewClient::requestShowToolTip(const QString&)’ marked ‘override’, but does not override
void requestShowToolTip(const QString &text) override;
^~~~~~~~~~~~~~~~~~
/home/lech/Dokumenty/Prywatne/applet-window-buttons/libappletdecoration/previewclient.h:104:10: error: ‘void Decoration::Applet::PreviewClient::requestHideToolTip()’ marked ‘override’, but does not override
void requestHideToolTip() override;
^~~~~~~~~~~~~~~~~~
libappletdecoration/CMakeFiles/appletdecorationplugin.dir/build.make:62: recipe for target 'libappletdecoration/CMakeFiles/appletdecorationplugin.dir/appletdecorationplugin.cpp.o' failed
make[2]: *** [libappletdecoration/CMakeFiles/appletdecorationplugin.dir/appletdecorationplugin.cpp.o] Error 1
CMakeFiles/Makefile2:448: recipe for target 'libappletdecoration/CMakeFiles/appletdecorationplugin.dir/all' failed
make[1]: *** [libappletdecoration/CMakeFiles/appletdecorationplugin.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
When I click the button to show the window to all desktops, it doesn't do that, and I had to restore the window to enable it
Operating System: Kubuntu 19.04
KDE Plasma Version: 5.15.4
KDE Frameworks Version: 5.56.0
Qt Version: 5.12.2
Kernel Version: 5.0.0-13-generic
OS Type: 64-bit
Processors: 4 × Intel® Core™ i5-6500 CPU @ 3.20GHz
Memory: 15.6 GiB of RAM
I'm having this weird bug where, if I maximize PyCharm, the close buttom doesn't appear on the widget (as if I didn't add it). The other buttons appear though. It's the only application where this happens for me.
I'm using latest user edition KDE neon, latest PyCharm and your widget. The widget is being added to an application bar.
Tested with Latte dock.
Would it be at all possible to make an option for horizontal button layout on vertical panels, provided that they're wide enough?
First of all: thanks for all the great stuff you are doing for Plasma desktop!
Second: I like this plasmoid a lot, and have it set to 'Show only when active window is maximized'. I also have yakuake set to always go fullscreen via:
Apparently the buttons also hide when the active window is fullscreen, so every time yakuake loses focus and closes, the buttons jump into place (b/c I most of the time have a fullscreen window open...). Anyhow, is it possible to keep showing the buttons when the active application is fullscreen? Or maybe via a setting?
Thanks for looking into this!
Doesn't show on my widget list after installing it. I'm using:
Operating System: Kubuntu 18.04
KDE Plasma Version: 5.44.0
Qt Version: 5.9.5
Find a way to fix contrast of buttons in the config ui. SchemeColors and Aurorae background the best way
In my opinion the best multi-screen behavior is the following:
State: Default
State: Show only for active+maximized windows
SUMMARY
When the plasma applet window buttons https://github.com/psifidotos/applet-window-buttons is set to "hide window decoration when maximized" this setting is applied to all latte lay outs. Also ones where it is not wished.
STEPS TO REPRODUCE
OBSERVED RESULT
the window border disappears which is not desired.
EXPECTED RESULT
the window border will remain when the application is maximize because the whole applet shouldn't be of influence on latte lay outs where it is not applied to
SOFTWARE/OS VERSIONS
Linux/KDE Plasma:
(available in About System)
KDE Plasma Version: 5.14.3
KDE Frameworks Version: 5.51.0
Qt Version: 5.11.12
plasma applet window buttons: 02
Get the behavior filter option, like haves applet-window-title, for multi-screen setups. Actually only works correctly if the window is on the same screen that the widget.
Some themes (like e.g. SierraBreeze) vary the button color when the window is active/inactive.
This is very convenient for identifying the active window. The window-buttons applet does not support it, which inhibits the experience in multi-monitor setup.
In plain English: I have three screens and each has a maximized window. I'd like the applet to change the button colors for inactive windows so I can see which window has the focus.
When I first login to KDE the applet is not visible or is somehow resized such that it cannot be seen. However, after hitting the Plasma hamburger menu once it then appears. I have the setting "Show only when active window is maximized" as well as BorderlessMaximizedWindows=true
in my ~/.config/kwinrc
file, if that matters.
KDE Neon
KDE 5.14.3
I have a 2560x1440(QHD) resolution monitor, when I switch to a 1920x1080(FHD) TV, the size of the icons are way bigger and the margins does not match properly with the panel. I'm using a scaling factor of 1.4
I currently have an external monitor (primary display) connected to my laptop (secondary display).
I've attached some pictures below of my setup for reference:
Hi, I have enabled the option " Show when Active window is maximized" and the applet collapses when I don't have a maximized window. I wanted to know if it's possible to just hide the buttons keeping the applet's space so the other elements of the panel doesn't have to move.
Thanks, you are doing a great job.
When the applet has margins enabled such as is the default case with thick margin:2px and length margin:2px the Fitt's law is broken.
That means that when the buttons are at a screen edge then in that case moving the mouse at the far position of that edge then the buttons are not activated accordingly when hovered or pressed.
Truth to be told this is happening because these areas are out of drawn buttons but I tested with kwin titlebar and this is not the case, somehow this has been solved for maximized windows titlebars.
Fitt's law is applied to decoration buttons of titlebar when a window is maximized
It would be nice to be able to add applications to a blacklist. Blacklisted apps would not display buttons in the applet. I'm thinking of GTK apps with CSDs.
With the window title and window appmenu applets, I can hide the appmenu until I hover over the window title. Could this also be implemented for the window buttons?
Hello,
I run OpenSuse Leap 15 wit KDE 5.56. I have QT dev packages installed but I get this error:
-- Found KF5: success (found suitable version "5.56.0", minimum required is "5.38.0") found components: CoreAddons Declarative Plasma PlasmaQuick
-- Could not set up the appstream test. appstreamcli is missing.
When I move the cursor, state of buttons not change.
https://gph.is/2A8SEm7
Operating System: Arch Linux
KDE Plasma Version: 5.14.3
Qt Version: 5.12.0 Beta-4
KDE Frameworks Version: 5.52.0
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.