Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggestion about the mouse behaviors #7

Open
trmdi opened this issue Nov 7, 2018 · 6 comments
Open

Suggestion about the mouse behaviors #7

trmdi opened this issue Nov 7, 2018 · 6 comments
Labels
enhancement New feature or request partial fix

Comments

@trmdi
Copy link

trmdi commented Nov 7, 2018

It should behave like Latte's panel: double click to maximize/restore, support dragging.

@psifidotos could help you in this issue.

@kupiqu
Copy link
Owner

kupiqu commented Nov 7, 2018

Yes. I have actually talked to @psifidotos. Goods news for users is that he has a very nice roadmap for improving this applet, including this very mouse behavior, and UI and more (https://www.reddit.com/r/kde/comments/9uh5yc/window_buttons_applet_v01/e96ma92). Soon I will transfer the ownership of the applet to him to boost development. In the meantime, I will try to focus on issue #5.

@kupiqu kupiqu added the enhancement New feature or request label Nov 7, 2018
@kupiqu
Copy link
Owner

kupiqu commented Nov 8, 2018

It should behave like Latte's panel: double click to maximize/restore

Done in master (commit 8ec650b; keeping middle click to close, and no minimize option anymore). Dragging will have to wait... Leaving this issue open.

@trmdi
Copy link
Author

trmdi commented Nov 8, 2018

If you want, you could make an option like "Mouse handled by this applet"

  • Default: on -> use your own implementation. This is for the case users use this applet on a Plasma panel.
  • When the option is off -> set [MouseArea].enabled = false -> Latte panel handles the mouse events

There could be a better option. What do you think about this @psifidotos ?

@psifidotos
Copy link

psifidotos commented Nov 8, 2018

What do you think about this @psifidotos ?

ok... Let me explain you the architecture and how I think it must be implemented...

Latte in git version provides an Communicator Engine in order to communicate with applets:
the files are:
Communicator Engine->Latte Bridge->Actions

the Communicator is the main class and can be found at: https://phabricator.kde.org/source/latte-dock/browse/master/containment/package/contents/ui/applet/communicator/Engine.qml

the Latte Bridge is the object that is passed as it is in any applet that has set
property QtObject latteBridge: null
at its root item. the latte bridge is located at: https://phabricator.kde.org/source/latte-dock/browse/master/containment/package/contents/ui/applet/communicator/LatteBridge.qml

and finally Actions is just a way to send events from any applet to LatteBridge and then at Engine etc. etc....

Actions is located at: https://phabricator.kde.org/source/latte-dock/browse/master/containment/package/contents/ui/applet/communicator/Actions.qml


The plan is to add in the Actions item some functions for dragging....
An example about how latteBridge can be used for another use case is the Window Buttons applet... check out the main.qml file and search for Latte in order to see the magic behind it...

@kupiqu
Copy link
Owner

kupiqu commented Nov 9, 2018

mmm, @psifidotos, if you don't mind, I think I'll leave this to you ;-)

@psifidotos
Copy link

mmm, @psifidotos, if you don't mind, I think I'll leave this to you ;-)

yeah dont worry...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request partial fix
Projects
None yet
Development

No branches or pull requests

3 participants