Summary:
- Allow filter box to handle keystrokes passed to the ListView
- This is a little cheesy, but fixes T8341
- Pin filter box to always be visible
- Clear filter on Esc
Test Plan:
- Try typing a contact you would like to search for
- Before: Every time you type a new letter, the filter box would lose focus and you would have to click it to give it focus again
- Now: You can type smoothly
- Try scrolling the list
- Before: The filter box disappeared off the top of the screen
- Now: The filter box is always visible
- Try pressing escape
- Before: Nothing
- Now: Filter clears
- Bonus: When using the arrow keys to navigate, before the filter was manually handling those and the view would not loop. Now, the view loops if you try to select an item past the beginning or end (Easiest to see with highlighting from D17612)
Reviewers: #kde_connect, apol
Reviewed By: #kde_connect, apol
Subscribers: kdeconnect
Tags: #kde_connect
Maniphest Tasks: T8341
Differential Revision: https://phabricator.kde.org/D17614
Summary:
Move the "No devices available" text in smsapp from combobox to the ConversationList.
P.S.
It's a GCI task.
Test Plan:
* Build and run smsapp
* Try pairing and unpairing the device
* See the difference
Reviewers: #kde_connect, sredman
Reviewed By: #kde_connect, sredman
Subscribers: sredman, kdeconnect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D16467
Summary: QSortFilterProxyModel filters based on a regex. When the user inserts regex special characters things go bad.
Reviewers: #kde_connect, apol
Reviewed By: #kde_connect, apol
Subscribers: apol, broulik, kdeconnect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D14642
Summary:
For real usecases of SMS support, we will almost always need access to the message history in some way
Specifically resolve T8338
Incidentally resolve T6651 since Telephony shall no longer create a notification
Test Plan:
Setup:
- Build corresponding Android-side diff (D11698)
- Build this diff
Step 1: Does anything at all work?
- Put a breakpoint in the handleBatchMessages method of the telephony plugin, ideally after constructing a Message object
- Use DBus to poke /modules/kdeconnect/devices/<deviceID>/telephony.requestAllConversations()
- Verify that the constructed Message is one you sent or received and that it is the most recent in the corresponding conversation
Step 2: DBus
- Open the Interface org.kde.kdeconnect.device.conversations of /modules/kdeconnect/devices/<deviceId>
- Poke activeConversations and verify an empty array is returned
- Poke requestAllConversationThreads
- Poke activeConversations and verify that a list of numbers has been returned. These are conversationIds
- Use a conversationId to call getFirstFromConversation
- Verify that the returned Message object is one which you recognize
- Note that if the message is an MMS it will be blank and meaningless. Try a different conversationId. MMS support "coming soon!"
Step 3: SMS App
- Use ccmake (or similar) to set SMSAPP_ENABLE to ON
- Build the project
- Run ./bin/kdeconnect-sms
- Verify that the app shows a list of everyone you have an SMS conversation with (MMS messages are stripped out)
- If you have the Contacts plugin working, verify that most contacts have their name and photo instead of their phone number
Reviewers: #kde_connect, nicolasfella, apol
Reviewed By: #kde_connect, nicolasfella, apol
Subscribers: andyholmes, apol, nicolasfella, #kde_connect
Tags: #kde_connect
Maniphest Tasks: T8338, T6651
Differential Revision: https://phabricator.kde.org/D11854