IP Library Granted Patent US 11,137,893
Granted Patent B2
US 11,137,893 · App. 16/935,681 · Granted Oct 5, 2021

Drag-and-drop on a mobile device

Inventors: Matthew Sharifi (Kilchberg, CH); David Petrou (Brooklyn, NY)
Assignee: GOOGLE LLC
G06F3/0486G06F3/0488G06F3/04842G06F3/04883G06F3/167G06F9/543G06F2203/04803
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,137,893
App. No.
16/935,681
Granted
Oct 5, 2021
Kind
B2
Abstract

Implementations provide an improved drag-and-drop operation on a mobile device. For example, a method includes identifying a drag area in a user interface of a first mobile application in response to a drag command and receiving a drop location in a second mobile application that differs from the first mobile application. The method may also include determining that a drop location is a text input control and the drag area is not text-based, performing a search for a text description of the drag area, and pasting the text description into the text input control. The method may also include determining that a drop location is an image input control and that the drag area is text based, performing a search using the drag area for a responsive image, and pasting the responsive image into the image input control.

Claims (51)

1. A method implemented by one or more processors comprising:

identifying, on a touchscreen display of a computing device, a drag area in an application operating on the computing device in response to receiving a drag command from a user of the computing device, the drag area including content displayed on the touchscreen screen of the computing device;

processing, using a trained machine learning model, the content of the drag area to predict at least one suggested drop location for the content in the application or an additional application that is also operating on the computing device;

causing the at least one suggested drop location to be rendered at the computing device of the user; and

in response to receiving a selection of the at least one suggested drop location:

using the at least one suggested drop location as a drop location for the content of the drag area.

2. The method of claim 1 , further comprising:

receiving, from a server, the trained machine learning model; and

updating, at the computing device, the trained machine learning model based on historical drag-and-drop features that are specific to the user of the computing device resulting in a personalized trained machine learning model.

3. The method of claim 2 , wherein updating the trained machine learning model comprises determining coefficients for the personalized trained machine learning model based on the historical drag-and-drop features that are specific to the user.

4. The method of claim 3 , further comprising:

transmitting, to the server, the determined coefficients for the personalized trained machine learning model; and

updating, at the server, the trained machine learning model based on the determined coefficients for the personalized trained machine learning model resulting in a global trained machine learning model.

5. The method of claim 1 , further comprising:

identifying an entity included in the content of the drag area;

wherein processing the content of the drag area to predict the at least one suggested drop location is in response to identifying the entity included in the content of the drag area.

6. The method of claim 5 , wherein the entity included in the content of the drag area is a contact entity, and wherein the contact entity includes at least a name, a phone number, and an email address.

7. The method of claim 6 , further comprising:

determining that an input field is associated with the at least one suggested drop location; and

in response to determining that the input field is associated with the at least one suggested drop location:

determining, from the contact entity, one of the name, the phone number, or the email address to include in the input field.

8. The method of claim 7 , further comprising:

in response to determining the input field is associated with an email application:

including the email address, of the contact entity, in the input field; and

in response to determining the input field is associated with a phone application:

including the phone number of the contact entity, in the input field.

9. A method implemented by one or more processors comprising:

in response to a drag command from a user of a mobile device, identifying, within a display of the mobile device, a drag area in a user interface of a first mobile application;

identifying, based on content in the drag area, at least a first entity and a second entity;

receiving a drop location in a second mobile application, the second mobile application differing from the first mobile application;

selecting, based on the drop location, the first entity over the second entity; and

performing an action in the second mobile application using the selected first entity.

10. The method of claim 9 , wherein the action includes pasting, in the drop location, text for the selected entity.

11. The method of claim 10 , further comprising:

determining the text, for the selected entity, using an entity data store.

12. The method of claim 9 , wherein selecting, based on the drop location, the first entity over the second entity, comprises selecting the first entity over the second entity based on a type assigned to the second mobile application.

13. The method of claim 12 , wherein the content included in the drag area includes a contact entry of the user of the mobile device, and wherein the contact entry includes at least a phone number entity associated with the contact entry and an email address entity associated with the contact entry.

14. The method of claim 13 , further comprising:

determining the type assigned to the second mobile application;

in response to determining the second mobile application is an email application, selecting the first entity over the second entity comprises:

selecting the email address entity as the first entity over the phone number entity as the second entity; and

in response to determining to the second mobile application is a phone application, selecting the first entity over the second entity comprises:

selecting the phone number entity as the first entity over the email address entity as the second entity.

15. A system comprising:

at least one processor; and

at least one memory storing instructions that, when executed, cause the at least one processor to:

in response to a drag command from a user of a mobile device, identify, within a display of the mobile device, a drag area in a user interface of a first mobile application;

identify, based on content in the drag area, at least a first entity and a second entity;

receive a drop location in a second mobile application, the second mobile application differing from the first mobile application;

select, based on the drop location, the first entity over the second entity; and

perform an action in the second mobile application using the selected first entity.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2020
From: SHARIFI, MATTHEW; PETROU, DAVID
To: GOOGLE INC.
Reel/Frame 053385/0280 →
CHANGE OF NAME Recorded Aug 3, 2020
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 053386/0836 →
Continuity (4)
Continuation 16295638 · Mar 7, 2019
Continuation 15432493 · Feb 14, 2017
Continuation 14522927 · Oct 24, 2014
Related Publication 20200348813A1 · Nov 5, 2020