Summary:
This patch makes the "devilces unavailable" page follow the general style used in other
similar views throughout Plasma and other KDE software. It also improves the wording
of various buttons and headers to make them more context-sensitive and thus more relevant
to what the user needs to do to solve the problem.
Test Plan:
{F8149680}
{F8149679}
Reviewers:
#VDG, #kde-connect
Subscribers:
Summary:
Change the three dotted menu to use PlasmaComponents ContextMenu.
This prevents menu from staying open on other system tray's applets.
Wayland still has that issue, happens in other menus too.
BUG: 415142
And change menu icon into a hamburger menu.
Test Plan:
Before:
Open the menu, and then open an other applet. Menu will stay open on
the left. Even if change windows and open the system tray, will still
be there.
After:
Use X11. By clicking, for example volume applet, menu will minimize.
Will need to click again to open the applet.
If you already have kdeconnect on your phone, the call to action to install
it doesn't make sense.
This doesn't add a string because it reuses one that was already in the
plasmoid
Summary:
A DropArea has been added to the ListItem representing a device in the
plasmoid based on what is done in the Quickshare plasmoid. This enables
Drag n Drop of files onto a section of the plasmoid to transfer files.
The DropArea has the size of the ListItem which is a rectangle
including the title of the device down to the button to share text.
Additionally, there is a tooltip area covering the DropArea to indicate
that it is possible to drop a file to send it to the device. Multiple files
can be sent at once.
Ref T8288
Test Plan: Drag and Drop one or many files onto the widget, the files should be transferred to the connected device.
Reviewers: #kde_connect, sredman
Reviewed By: #kde_connect, sredman
Subscribers: sredman, kdeconnect
Tags: #kde_connect
Maniphest Tasks: T8288
Differential Revision: https://phabricator.kde.org/D17611
Summary:
This also fixes a bug where the box could be too small.
BUG: 400862
Reviewers: #kde_connect, nicolasfella
Reviewed By: #kde_connect, nicolasfella
Subscribers: nicolasfella, sredman, apol, kdeconnect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D16782
Summary: Extract RemoteKeyboard.qml into declarativeplugin to be able to use it from both plasmoid and app without code duplication
Reviewers: #kde_connect, hkaelberer, apol
Reviewed By: #kde_connect, apol
Subscribers: kdeconnect, mtijink, apol, #kde_connect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D12670
Summary:
This allows you to enter text in the plasmoid and it be sent
to the connected device.
Reviewers: #vdg, #kde_connect, albertvaka
Reviewed By: #kde_connect, albertvaka
Subscribers: apol, kdeconnect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D16696
Summary: This allows you to share a local file on your device to a remote device running kde connect.
Reviewers: nicolasfella
Reviewed By: nicolasfella
Subscribers: kdeconnect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D16552
Summary: This patch adds a button to the plasmoid to allow adding commands by opening the menu on the remote device.
Reviewers: #vdg, nicolasfella, albertvaka
Reviewed By: nicolasfella
Subscribers: kdeconnect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D16535
Summary:
The code for visually disabling the input field is not needed any more since the field is completely hidden when not needed. Also drop the custom available property from the text field.
More cleanups will follow. My long-term goal is to reuse the code in the app to enable remote keyboard input on non-Plasma DEs
Test Plan: (De)activate the remote keyboard on Android.
Reviewers: #kde_connect, apol
Reviewed By: #kde_connect, apol
Subscribers: apol, #kde_connect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D12669
Summary: This is a supplement for D11352.
Reviewers: #plasma, #kde_connect, nicolasfella
Reviewed By: #kde_connect, nicolasfella
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D11751
Summary: It also makes it clearer that the top line is not a notification, but a header.
Reviewers: #kde_connect, apol
Reviewed By: #kde_connect, apol
Subscribers: #kde_connect
Differential Revision: https://phabricator.kde.org/D11646
Summary: This adds a refresh button to the plasmoid if no device is connected.
Test Plan: Refreshing works, and the button only appears when no devices are connected.
Reviewers: #kde_connect, nicolasfella
Reviewed By: #kde_connect, nicolasfella
Subscribers: apol, nicolasfella, #kde_connect
Differential Revision: https://phabricator.kde.org/D11501
Summary:
Change all member variables to the form m_fooBar because it is the preferred form in Qt (it was half and half between this and mFooBar, and a minority didn't have anything).
Place all references and pointers on the side of the type since it is the majority.
Basically:
- mFoo -> m_foo
- foo -> m_foo (if it is a member variable)
- Type &ref -> Type& ref
- Type *ptr -> Type* ptr
Reviewers: #kde_connect, nicolasfella, albertvaka
Reviewed By: #kde_connect, nicolasfella, albertvaka
Subscribers: albertvaka, #kde_connect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D7312
Summary: Like we do for the notifications in the plugin already. Passing the title and text separately to the plasmoid could be useful later as well.
Reviewers: #kde_connect, albertvaka
Reviewed By: #kde_connect, albertvaka
Subscribers: #kde_connect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D7457
Summary:
Make the plasmoid content transparent
Include battery info in header
Only show remotekeyboard input if available
Make header always centered
before:
{F3820966}
after:
{F3820965}
Reviewers: #kde_connect, apol
Reviewed By: #kde_connect, apol
Subscribers: jeanv, albertvaka, apol, #kde_connect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D6943
Summary:
Make the plasmoid content transparent
Include battery info in header
Only show remotekeyboard input if available
Make header always centered
before:
{F3820966}
after:
{F3820965}
Reviewers: #kde_connect, apol
Reviewed By: #kde_connect, apol
Subscribers: jeanv, albertvaka, apol, #kde_connect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D6943
Summary:
Notifications, QML Text and QLabel accept a HTML subset,
which does not make sense for device names.
BUG: 382243
Test Plan:
Sent a pair request and accepted it, device name
now shown as plain text everywhere.
Reviewers: #kde_connect, albertvaka
Reviewed By: #kde_connect, albertvaka
Subscribers: #kde_connect
Differential Revision: https://phabricator.kde.org/D6640
Summary:
Show an icon for each notification which has an icon.
Show a toolbutton which can be used to reply to notifications which offer a quick reply.
Reviewers: #kde_connect, albertvaka
Reviewed By: #kde_connect, albertvaka
Subscribers: albertvaka
Maniphest Tasks: T4674, T4658
Differential Revision: https://phabricator.kde.org/D6058
Also ensure that it wraps instead of overflowing in case the text gets too long on translated system.
Differential Revision: https://phabricator.kde.org/D4478
Allow to inject keypress events to remote peers (most notably Android devices)
Notes / open issues / possible improvements:
- For the json-payload I used the syntax of the key-events as sent by mousepad-plugin with the addition of a "sendAck"-flag. If "sendAck" is set to true the remote peer should echo a key-event if it could be handled, thus allowing the local client to find out whether the key was accepted. For performance reasons, it's allowed to send multi-char strings in the "key" property (performs much better if you send a whole string via "echo '...' | kdeconnect-cli ..." e.g.)
- kdeconnect-cli: For now takes a string and transforms it into single key-events for visible characters only. In a first implementation I used a kbhit() helper that used termios.h to catch and relay keypresses interactively (including some special-events), which was not optimal. A better approch might be to use linux input-api directly. Would this be an option regarding cross-platform compatibility or can I assume to develop for Linux only? Being a command-line guy, I'd really like to have a fully featured kdeconnect-cli interface ;-)
- Factor out the Qt::Key-to-internal keymap to some core-helper because it corresponds to the mapping in the mousepad-plugin?
- The plasmoid is not perfect as it is: A single line containing a non-echoing TextField (i.e. it eats all the KeyPress events), and only ack-ed keypress-packets from the peer device are injected if they contain visible keys. Advantage: the user sees whether his key-presses are accepted by the peer device. Disadvantage: The echoed text does not correspond 1:1 to what is shown on the peer's display, user might be confused when typing without success. I played around with different variations each of which with its proper shortcomings:
1. An echoing Textfield for typing: Has the advantage that the user can directly see what he is typing, which makes interaction in the typing field easier, BUT messes up interaction if the Editor on the peer is changed silently and does not notify the user if his keypresses are not handled by the peer.
2. A non-echoing TextField for typing PLUS a readonly one for printing visible echoed keys. Disadvantage: same as for the previous one and uses more space on the plasmoid.
Comments? Ideas?
REVIEW: 129727
BUG: 370919
No need to show the FullRepresentation to figure out the status of the
plasmoid.
Moves the code back to the main.qml file so that we're always tracking if
there's actually paired devices.
REVIEW: 122912
Provide a good initial size
Use compact representation when on a panel, full when on the desktop (this
prevented the icon to show on the system tray).
Reviewed by Albert Vaca