Kolourpaint has hidden "Tools" menu, which would show up in
global menu otherwise.
Moreover, don't `void*` cast so QML can access the `QAction`
BUG: 443505
In Wayland session data sources for modifier keys might be unavailable,
in which case the whole `source.data.Alt` is undefined. Standard
JavaScript try-catch didn't help much, because short-circuiting
operator && simply returns left-hand-side `undefined` value which is
falsy. It used to spam error messages to a console at a rate
proportional to the number of top-level menu items:
file:///usr/share/plasma/plasmoids/org.kde.plasma.appmenu/contents/ui/main.qml:112:17:
Unable to assign [undefined] to bool
Amends 156415f377
The global menu applet now looks more like a regular menubar, due to
- Using the new menubaritem SVG element introduced in frameworks/plasma-framework!89
- Removing spacing between menu items
AppMenu is using it's own way to remove mnemonics but then they still are being processed by Kirigami's MnemonicAttached.
This commit adapts AppMenu for use with writable active property to show mnemonics underlines based on own logic.
The context property version is slower to access and won't be supported
in Qt6. Let's port away from it and use the singleton version instead.
Here was my full process for making this change:
1. Made the change with `find . -name '*.qml' | xargs perl -pi -e 's/units\./PlasmaCore\.Units\./g'`
2. Verified no more occurrences with `grep -r " units."`
3. Made sure this didn't change any comments in a silly way by inspecting the output of `git diff | grep "+ " | grep "//"`
4. Manually inspected the full git diff to make sure there were no other unintentional or silly changes (there were none)
5. verified that all changed files have the PlasmaCore import with the correct name with `for FILE in `git status | grep modified | cut -d ":" -f 3`; do grep -q "as PlasmaCore" $FILE || echo "$FILE needs the PlasmaCore import"; done`
This begins the process of porting plasma-workspace to PlasmaComponents3. At
this point, only the relatively easy work is done. Every file not ported
now has been given the reason for still using PC2 in a comment on the import
line so you can see at a glance what the blocker is by running
`grep -r "org.kde.plasma.components 2.0"` in the repo.
Everything is tested and there are no breakages or functional regressions. In
the process, a few unused imports are removed.
Here are the remaining PC3 omissions blocking what's left from getting easily
ported:
- No Highlight
- No ListItem
- No PageStack
- No ContextMenu
- No QueryDialog
- No ModelContextMenu
- TabBar has no left and right tab states
- ToolButton has no built-in method to show a menu when clicked
Summary: The appmenu applet now accurately replicates the hover behaviour of a regular menubar.
Test Plan:
Before: you need to click to engage all menus.
After: the appmenu applet copies the behaviour of a QMenuBar when it comes to clicks and hovers.
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D29465
Summary:
The TableView in digital clock widget time zone configuration is replaced with ListView. Other UI didn't change.
{F7635385}
Reviewers: #plasma, #plasma_workspaces, ngraham
Reviewed By: ngraham
Subscribers: GB_2, ahiemstra, broulik, kmaterka, ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D24798
Summary:
Before this patch if you had no active menu and configured your plasmoid
it would be invisible.
After this patch a placeholder is shown in that configuration.
BUG: 403232
Test Plan:
* Window with menu - menu shown, no placeholder (as before)
* Window without menu - state is hidden so nothing is shown (as before)
* Window with menu whilst configuring - menu shown (as before)
* Window without menu whilst configuring - placeholder shown (new)
* Compact represenation remains the same
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D18481
Summary: setting an icon via i18n makes no sense
Test Plan: Put in vertical panel, had an icon
Reviewers: #plasma, broulik, ngraham
Reviewed By: #plasma, broulik, ngraham
Subscribers: ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D18480
Summary:
--as @mart requested we can rename "menuHidden" property
to "visible" in order to follow Qt naming
Test Plan:
--check that global menu applet is functioning the same
way as when using removed menuHidden property
Reviewers: #plasma, mart, davidedmundson
Reviewed By: #plasma, mart
Subscribers: mart, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D17107
Summary:
--a new screenGeometry property is added in the
AppMenuModel in order to be used for filtering
windows based on their geometry.
BUG: 384895, 395853
Test Plan:
--validate that when moving a window between different screens the global menu applet is updated accordingly
--checkout that nothing has broke because of this new behavior
Reviewers: #plasma, broulik, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: mart, davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D16768
Adds a MouseArea so it opens on press like QMenu does.
It just forward to clicked since this is called from various places (keyboard nav, Alt activation, etc)
Differential Revision: https://phabricator.kde.org/D13108
Applications could place actions in the main menu bar that do not have a menu.
Also restore the checked binding when clicked to avoid it highlighting even though there is no menu.
This might also fix some spurious highlighting that I've seen when switching between windows.
Differential Revision: https://phabricator.kde.org/D11168
Summary:
--add NeedsAttention status when a menu is showing, and
Passive status when the menu is not available
--remove status updates from plasmoid interface
Test Plan:
I used debug messages to confirm the status changes and
also Latte to check that dynamic background now works ok
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10710
This makes for a less cluttered appearance and is what Breeze does by default.
BUG: 389118
FIXED-IN: 5.13.0
Differential Revision: https://phabricator.kde.org/D9948
Summary:
drop the internal settings InApp,Menu, Decoration
but instead export the menu based on the presence of a dbus service called
org.kde.appmenuview, exported by either the menubar applet or the
kwin decoration button
let the decoration button and the globalmenubar work at the same time
not necessary anymore to have the setting in the kcm
Test Plan:
adding an appmenu applet causes apps started afterwards
to export their menubar, removing it causes new apps to
have their menubar internal again
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, ngraham, mvourlakos, broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D9215
Since Qt 5.8 for some reason the Connections {} on plasmoid.nativeInterface breaks.
BUG: 375535
FIXED-IN: 5.10.3
Differential Revision: https://phabricator.kde.org/D6335
Summary:
In retrospect there's no need to fill the width, if people want that
effect they can add a spacer; whereas you can't do the opposite.
Also set the size to 0 when it's empty. This mean using status as
normally PanelContainment ensures plasmoid's are a minimum of a square.
BUG: 374996
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D4115
Summary:
In retrospect there's no need to fill the width, if people want that
effect they can add a spacer; whereas you can't do the opposite.
Also set the size to 0 when it's empty. This mean using status as
normally PanelContainment ensures plasmoid's are a minimum of a square.
BUG: 374996
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D4115
Some changes made to global menu applet:
1. Use "application-menu" icon in compact view.
2. Show a warning sign when global menu style is not set to "Widget".
3. When in a vertical panel force use compact view.
4. And some minor changes and cleanup.
Differential Revision: https://phabricator.kde.org/D4070
Summary:
This restores the global menu applet which you can place in panel.
The applet provides two views namely Compact and Full View.
Views can be switched from applet's settings.{F859590}
* Compact View provides a single button for accessing the application's
menu
{F859505}
* Full View shows the full application menu in panel
{F859566}
See https://phabricator.kde.org/D3156
Reviewers: #plasma, broulik, chinmoyr
Subscribers: andreaska, davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D3706