US10412131B2 - Systems and methods for gesture-based sharing of data between separate electronic devices - Google Patents

Systems and methods for gesture-based sharing of data between separate electronic devices Download PDF

Info

Publication number
US10412131B2
US10412131B2 US14/173,934 US201414173934A US10412131B2 US 10412131 B2 US10412131 B2 US 10412131B2 US 201414173934 A US201414173934 A US 201414173934A US 10412131 B2 US10412131 B2 US 10412131B2
Authority
US
United States
Prior art keywords
computing device
sharing
file
user
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active, expires
Application number
US14/173,934
Other languages
English (en)
Other versions
US20140282106A1 (en
Inventor
Robin Smith
Sunil Anant Gupta
Michael Stapleton
Benjamin James Davis
Amy Annette Hahn
Jordan Haneil Shatsoff
Joshua Benjamin Wakefield
Biying Huang
Shadrack Cgar Frazier, SR.
Brandon William Arther Graham
Beau Guy Tremblay
Sonal Shashikant Kulkarni
Daniel Oberlin
Julie E. Nelson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Revvity Signals Software Inc
Original Assignee
PerkinElmer Informatics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PerkinElmer Informatics Inc filed Critical PerkinElmer Informatics Inc
Priority to US14/173,934 priority Critical patent/US10412131B2/en
Assigned to CAMBRIDGESOFT CORPORATION reassignment CAMBRIDGESOFT CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SMITH, ROBIN, DAVIS, BENJAMIN JAMES, GUPTA, SUNIL ANANT, NELSON, JULIE E., OBERLIN, DANIEL, SHATSOFF, JORDAN HANEIL, STAPLETON, MICHAEL, TREMBLAY, BEAU GUY, FRAZIER, SHADRACK CGAR, SR., HAHN, AMY ANNETTE, HUANG, BIYING, KULKARNI, SONAL SHASHIKANT, WAKEFIELD, JOSHUA BENJAMIN, GRAHAM, BRANDON WILLIAM ARTHER
Publication of US20140282106A1 publication Critical patent/US20140282106A1/en
Assigned to PERKINELMER INFORMATICS, INC. reassignment PERKINELMER INFORMATICS, INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: CAMBRIDGESOFT CORPORATION
Application granted granted Critical
Publication of US10412131B2 publication Critical patent/US10412131B2/en
Assigned to REVVITY SIGNALS SOFTWARE, INC. reassignment REVVITY SIGNALS SOFTWARE, INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: PERKINELMER INFORMATICS, INC.
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72412User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • H04M1/7253
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/80Data visualisation
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/90Programming languages; Computing architectures; Database systems; Data warehousing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/22Details of telephonic subscriber devices including a touch pad, a touch sensor or a touch detector
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/64Details of telephonic subscriber devices file transfer between terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • H04W4/21Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications

Definitions

  • Chemical structure rendering software is widely used by research and educational institutions to depict chemical structures and chemical reactions of interest. Unlike chemical formulas or chemical names, structural formulas provide a graphical representation of the molecular structure. A graphical chemical structure representation is capable of indicating the arrangements of atoms in a way that a chemical formula cannot.
  • Described herein are various embodiments of systems, methods, and apparatus that allow a user to share data, such as one or more files from within an application with one or more other (not necessarily co-located) computing devices using a gesture-based sharing function.
  • systems, methods, and apparatus described herein may be used to share graphical representations of chemical structures within a chemical structure rendering application between two or more user devices.
  • the systems, methods, and apparatus described herein provide efficient and engaging tools for sharing work product in real time between two or more users.
  • the systems, methods, and apparatus utilize or include a tablet computer, a mobile phone device, or any other computer device or system capable of receiving gesture-based input.
  • the systems, methods, and apparatus have applications in a wide variety of environments and/or industries that involve collaborative review and/or editing by users who are not necessarily co-located.
  • the systems, methods, and apparatus have applications in a wide variety of industries that create and edit structural formulas, such as the reagent industry, the publishing industry, and/or the web search industry.
  • the invention is directed to a method comprising: receiving, via a user interface, selection of at least one file for sharing with a separate computing device; identifying, by a processor of a computing device, one or more members for sharing; causing, by the processor, presentation of one or more graphical identifiers within a display area of the computing device, wherein each graphical identifier of the one or more graphical identifiers is representative of a respective member of the one or more members, wherein the one or more graphical identifiers represent at least a portion of the one or more members; identifying, by the processor, a user input gesture indicative of moving the at least one file towards at least a first graphical identifier of the one or more graphical identifiers; responsive to identifying the user input gesture, causing, by the processor, presentation of a graphical representation of the at least one file moving towards the at least the first graphical identifier, and issuing, by the processor, via a network, a request for data sharing, wherein the request for data
  • the gesture is a “flick” or “fling” gesture (e.g., a sweeping gesture) made, for example, with a finger (or fingers), hand, head, or other body part(s) of the user.
  • the gesture indicative of moving the at least one file towards at least a first graphical identifier is distinguished from a “drag and drop” gesture in that the at least one file continues to move toward the first graphical identifier after completion of the gesture by the user and/or after the end of contact between the user and the (a) touchscreen or display screen (e.g., the file continues to move in the direction of the gesture after the user's finger(s) lifts off the surface of the touchscreen).
  • the graphical identifiers are sufficiently far apart to prevent inadvertent transmission of a file to an unintended recipient.
  • receiving selection of the at least one file comprises identifying a user input gesture indicative of selection of the at least one file.
  • identifying one or more members for sharing comprises: issuing, via the network, an availability request; and responsive to the availability request, receiving indication of one or more member identifiers, wherein each member identifier of the one or more member identifiers is associated with a respective computing device executing a sharing application in communication with the network.
  • causing presentation of the one or more graphical identifiers comprises, for each graphical identifier of the one or more graphical identifiers, causing presentation of at least one of a name, an icon, and an image associated with the respective member represented by the respective graphical identifier.
  • the one or more graphical identifiers are arranged radially surrounding a graphical representation of the at least one file.
  • causing presentation of the one or more graphical identifiers comprises identifying the portion of the one or more members based at least in part on one or more of a frequency and a recency of file sharing with the computing device.
  • causing presentation of the one or more graphical identifiers comprises identifying the portion of the one or more members based at least in part on a determination of co-location of the computing device with respective computing devices of at least one of the portion of the one or more members. In some embodiments, co-location is determined based in part upon near field communications. In some embodiments, causing presentation of the one or more graphical identifiers comprises identifying selection of a particular group of users.
  • At least one of the one or more members comprises a device selected from the group consisting of a printer, a television, a smart TV, a projector, a media player, and a facsimile.
  • the at least one file is selected within a software application; and the method is performed by a sub-application configured to execute within the software application.
  • the sub-application is configured to execute within two or more software applications installed upon the computing device.
  • identifying the user input gesture comprises identifying a sweeping gesture across a touch screen.
  • the graphical representation of the at least one file moving towards at least the first graphical identifier comprises a spinning animation. In some embodiments, the graphical representation of the at least one file moving towards at least the first graphical identifier comprises a gradual size reduction.
  • the information associated with the at least one file comprises an identification of a network file location.
  • the method further comprises, responsive to receiving the acknowledgment, causing presentation, within the display area, of a notification indicative of success of sharing.
  • the method further comprises, after receiving the acknowledgement: receiving, via the network, an alert regarding data availability, wherein the alert is associated with a modified version of a first file of the at least one file; issuing, by the processor via the network, responsive to the alert, a request for the modified version of the first file; receiving, via the network, the modified version of the first file, wherein the first file has been modified by a first member of the one or more members; and causing presentation of the modified version of the first file within the display area.
  • causing presentation of the modified version of the first file comprises causing presentation of an indication of the first member.
  • the alert comprises a session identifier; and the request for the modified version of the first file comprises the session identifier.
  • the invention is directed to a method comprising: receiving, via a network from a first data share application installed on a first user computing device, a request for data share, wherein the request comprises at least one file and at least one target user; determining, by a processor of a computing device, an identification of a second user computing device, wherein the second user computing device is associated with a first target user of the at least one target user; issuing, by the processor, via the network, an alert to the target user regarding data availability, wherein the alert is issued through a second sharing application installed on a second user computing device; responsive to the alert, receiving, from the second user computing device, a request for available data; and responsive to the request for available data, retrieving, by the processor, the at least one file, and providing, via the network, the at least one file, wherein the at least one file is provided to the second sharing application.
  • the method further comprises, prior to receiving the request for data share: receiving, via the network from the first data share application, a request to identify members available for sharing; and identifying, by the processor, one or more members available for sharing, wherein each member of the one or more members are associated with a user of the first user computing device.
  • the sharing application comprises a sub-application in communication with a software application; and identifying the one or more members for sharing comprises identifying respective ability of each computing device associated with the one or more member identifiers to view a file type associated with the software application.
  • the invention is directed to a system comprising: a processor; and a memory having instructions stored thereon, wherein the instructions, when executed by the processor, cause the processor to: receive, via a user interface, selection of at least one file for sharing with a separate computing device; identify one or more members for sharing; cause presentation of one or more graphical identifiers within a display area of the computing device, wherein each graphical identifier of the one or more graphical identifiers is representative of a respective member of the one or more members, wherein the one or more graphical identifiers represent at least a portion of the one or more members; identify a user input gesture indicative of moving the at least one file towards at least a first graphical identifier of the one or more graphical identifiers; responsive to identifying the user input gesture, cause presentation of a graphical representation of the at least one file moving towards the at least the first graphical identifier, and issue, via a network, a request for data sharing, wherein the request for data sharing comprises a member
  • the gesture is a “flick” or “fling” gesture (e.g., a sweeping gesture) made, for example, with a finger (or fingers), hand, head, or other body part(s) of the user.
  • the gesture indicative of moving the at least one file towards at least a first graphical identifier is distinguished from a “drag and drop” gesture in that the at least one file continues to move toward the first graphical identifier after completion of the gesture by the user and/or after the end of contact between the user and the (a) touchscreen or display screen (e.g., the file continues to move in the direction of the gesture after the user's finger(s) lifts off the surface of the touchscreen).
  • the graphical identifiers are sufficiently far apart to prevent inadvertent transmission of a file to an unintended recipient.
  • the invention is directed to a non-transitory computer readable medium having instructions stored thereon, wherein the instructions, when executed by a processor, cause the processor to: receive, via a user interface, selection of at least one file for sharing with a separate computing device; identify one or more members for sharing; cause presentation of one or more graphical identifiers within a display area of the computing device, wherein each graphical identifier of the one or more graphical identifiers is representative of a respective member of the one or more members, wherein the one or more graphical identifiers represent at least a portion of the one or more members; identify a user input gesture indicative of moving the at least one file towards at least a first graphical identifier of the one or more graphical identifiers; responsive to identifying the user input gesture, cause presentation of a graphical representation of the at least one file moving towards the at least the first graphical identifier, and issue, via a network, a request for data sharing, wherein the request for data sharing comprises a member identifie
  • the gesture is a “flick” or “fling” gesture (e.g., a sweeping gesture) made, for example, with a finger (or fingers), hand, head, or other body part(s) of the user.
  • the gesture indicative of moving the at least one file towards at least a first graphical identifier is distinguished from a “drag and drop” gesture in that the at least one file continues to move toward the first graphical identifier after completion of the gesture by the user and/or after the end of contact between the user and the (a) touchscreen or display screen (e.g., the file continues to move in the direction of the gesture after the user's finger(s) lifts off the surface of the touchscreen).
  • the graphical identifiers are sufficiently far apart to prevent inadvertent transmission of a file to an unintended recipient.
  • the invention is directed to a system comprising: a processor; and a memory having instructions stored thereon, wherein the instructions, when executed by the processor, cause the processor to: receive, via a network from a first data share application installed on a first user computing device, a request for data share, wherein the request comprises at least one file and at least one target user; determine an identification of a second user computing device, wherein the second user computing device is associated with a first target user of the at least one target user; issue, via the network, an alert to the target user regarding data availability, wherein the alert is issued through a second sharing application installed on a second user computing device; responsive to the alert, receive, from the second user computing device, a request for available data; and responsive to the request for available data, retrieve the at least one file, and provide, via the network, the at least one file, wherein the at least one file is provided to the second sharing application.
  • the invention is directed to a non-transitory computer readable medium having instructions stored thereon, wherein the instructions, when executed by a processor, cause the processor to: receive, via a network from a first data share application installed on a first user computing device, a request for data share, wherein the request comprises at least one file and at least one target user; determine an identification of a second user computing device, wherein the second user computing device is associated with a first target user of the at least one target user; issue, via the network, an alert to the target user regarding data availability, wherein the alert is issued through a second sharing application installed on a second user computing device; responsive to the alert, receive, from the second user computing device, a request for available data; and responsive to the request for available data, retrieve the at least one file, and provide, via the network, the at least one file, wherein the at least one file is provided to the second sharing application.
  • FIG. 1 is an example system for gesture-based sharing of data between computing devices
  • FIG. 2 is a flow diagram of an example method for gesture-based sharing of data between computing devices
  • FIGS. 3A through 3F illustrate screen shots of an example data sharing operation using gesture-based sharing of a chemical structure
  • FIGS. 4A through 4D illustrate screen shots of an example data sharing operation for sharing multiple chemical structure renderings
  • FIG. 5 is a screen shot of an example graphical user interface for identifying one or more recipients in a gesture-based data sharing operation
  • FIGS. 6A and 6B illustrate a flow chart of an example method for gesture-based sharing of data between computing devices
  • FIG. 7 is a block diagram of an example network environment.
  • FIG. 8 is a block diagram of an example computing device and an example mobile computing device.
  • apparatus, systems, and methods of the claimed invention encompass variations and adaptations developed using information from the embodiments described herein. Adaptation and/or modification of the apparatus, systems, and methods described herein may be performed by those of ordinary skill in the relevant art.
  • the present invention pertains to apparatus, systems, and methods for gesture-based sharing of data between separate computing devices.
  • the computing device may be, for example, a personal computer, a workstation, a tablet computer (e.g., an Apple® IPad® by Apple Inc. of Cupertino, Calif.), computerized eye glasses, or a mobile phone device.
  • the term “molecular scaffold” refers to a portion (e.g., a fragment) of a graphical representation of a chemical structure.
  • an example system 100 for gesture-based sharing of data between separate computing devices includes a first computing device 102 sharing information (e.g., a graphical rendering of a chemical structure 124 ) with a second computing device 104 over a network 106 via data share sub-applications 108 configured to communicate with a server 110 providing a network-based sharing service.
  • Users of the first computing device 102 and the second computing device 104 may be registered as members of the network-based sharing service (e.g., member information may be stored in a member device database 120 included in and/or in communication with the server 110 ).
  • a user of the first computing device 102 may identify the chemical structure 124 for sharing with one or more members of the network-based sharing service. For example, the user may select a share function (not illustrated) to open the data share sub-application 108 a functionality within a presently executing application.
  • the data share sub-application 108 a in some implementations, is configured to execute as an overlay to one or more applications installed upon the computing device 102 .
  • the applications for example, are configured for creation, editing, and/or manipulation of data files such as, in some examples, word processing software, presentation software, spreadsheet software, program development software, graphic editing software, graphical chemical structure software, graphical biological structure software, photo manipulation software, and video manipulation software.
  • the data share sub-application 108 a executing upon the first computing device 102 (e.g., a mobile computing device such as a smart phone or computerized eye glasses), may identify one or more members 122 eligible for sharing the chemical structure 124 .
  • the members may be identified, in some examples, based upon one or more of a recency of sharing with the computing device 102 (e.g., same day, same week, same month, etc.), a frequency of sharing with the computing device 102 , a total number of shares between the computing device 102 and a computing device associated with the respective member, an indication by the user of the computing device 102 designating the respective member as a favorite, a status of the respective member (e.g., identified by a user identifier feature 114 of the server 110 as being “online,” “active,” or otherwise available for sharing), and an indication from the user of the computing device 102 designating a particular group for sharing (e.g., engineering team, managerial team, immediate family, relatives, social club, etc.).
  • one or more eligible members may be identified based in part upon a proximity of a computing device associated with the respective user and the computing device 102 (e.g., same room, same building, etc.).
  • the data share sub-application 108 a through a peripheral communication feature of the computing device 102 (e.g., Bluetooth®, Wi-FiTM, NFC, etc.), may attempt to locate one or more member computing devices within range.
  • a user of the computing device 102 may identify team members within a conference room for sharing and collaboration.
  • eligible members can include non-user computing devices such as, in some examples, a printer, a facsimile, a television, a smart TV, a projector, or a media player.
  • the data share sub-application 108 a may identify, via a peripheral communication feature, nearby computing equipment configured to share files via the data share sub-application 108 .
  • the data share sub-application 108 a identifies a subset of the members 122 for presentation within a display area 128 of the computing device 102 .
  • the data share sub-application 108 a may identify members 122 to display radially surrounding the chemical structure 124 .
  • the data share sub-application 108 a may identify up to four members 122 to display within the four corners of the display area 128 and/or up to four members (not illustrated) to display along the four edges of the display area 128 (e.g., as illustrated in a screen shot 420 of FIG. 4B ).
  • the data share sub-application 108 a may arrange two or more members along a single edge of the display area 128 as illustrated in relation to FIG. 5 .
  • the user is presented with two or more file format options for sharing data such as the chemical structure 124 .
  • the user of the computing device 102 can choose to share the chemical structure 124 as a variety of file types 126 such as a CDXML file, a MOL file, or an image file.
  • the chemical structure 124 may be loaded presently as a CDXML file.
  • Selection of a different file type 126 causes conversion of the chemical structure 124 into a different file type prior to sharing.
  • the data share sub-application 108 a may call into a “save as” function of the presently executing software application (e.g., a chemical structure drawing and manipulation program) to modify the file type of the chemical structure 124 prior to sharing with one or both of the users 122 .
  • a “save as” function of the presently executing software application e.g., a chemical structure drawing and manipulation program
  • the data share sub-application 108 a determines a file type for sharing based in part upon the capabilities of member computing devices, such as the computing device 104 . For example, if the computing device 104 has an image file presentation application installed, but not a chemical structure drawing and manipulation program, the data share sub-application 108 a may identify that the chemical structure 124 should be converted to an image file prior to sharing with the second computing device 104 .
  • the data share sub-application 108 b executing upon the second computing device 104 , in some implementations, indicates to the server 110 a list of eligible file types (e.g., file types renderable by one or more applications interfacing with the data share sub-application 108 b ).
  • the server 110 may provide this information to the first computing device 102 , for example, upon presentation of the members 122 .
  • the user of the first computing device 102 “pushes” the chemical structure 124 towards one or both of the graphical representations of the members 122 .
  • the user may “flick” or “fling” the image of the chemical structure 124 towards the upper right corner of the display 128 with a sweeping gesture across a touch screen display to share the chemical structure 124 with user 2 122 b .
  • the user may “flick” or “fling” the image of the chemical structure 124 towards the upper left hand corner of the display 128 with a sweeping head or hand gesture made using a computerized eye glasses to share the chemical structure 124 with user 122 a .
  • the user may “flick” or “fling” the image of the chemical structure 124 towards the upper left hand corner of the display 128 with a sweeping gesture made using a stylus to share the chemical structure 124 with user 122 a.
  • the data share sub-application 108 a illustrates the chemical structure 124 as moving across the display 128 towards the intended member(s) 122 .
  • the chemical structure 124 may be illustrated as floating or flying towards the intended member(s) 122 .
  • the chemical structure 124 may be animated as spinning, flipping, morphing, and/or shrinking while moving towards the intended member(s) 122 .
  • the data share sub-application 108 a Upon performing the sweeping gesture, in some implementations, the data share sub-application 108 a provides a member identifier associated with the intended member(s) 122 and an indication of the chemical structure 124 (e.g., a file, a network file location, etc.) to a share manager 112 of the server 110 .
  • the user identifier 114 of the server 110 may identify account information (e.g., computing device identifier, user name, IP address, etc.) of the provided member identifier.
  • the share manager 112 may proceed to share the chemical structure 124 with the data share sub-application 108 b of the second computing device 104 .
  • the share manager 112 issues an alert to the second computing device 104 regarding availability of the shared chemical structure 124 to the data share sub-application 108 b of the second computing device 104 .
  • the alert may include a file name, brief file description, identification of the sharing member (e.g., the user of the first computing device 102 ), a file type, and/or a recommended software application for viewing the chemical structure 124 (e.g., so that the user of the first computing device 102 and the user of the second computing device 104 are reviewing the file within the same software application, if possible).
  • a data server 116 of the server 110 stores a copy of the chemical structure 124 in a data cache 118 along with a session identifier associated with the offer to share.
  • the share manager 112 may issue the session identifier in the alert to the data share sub-application 108 b.
  • the data share sub-application 108 a Upon sharing the chemical structure 124 with the user of the second computing device 104 , in some implementations, the data share sub-application 108 a presents a notification within the display area 128 of the first computing device 102 , alerting the user to the sharing of the chemical structure 124 .
  • the notification may include one or more of an indication of status (e.g., acceptance or rejection of the offer to share, success or failure in file transfer, etc.), an intended member (e.g., user 1 122 a , etc.), a file name, a time stamp, and information regarding the user of the second computing device 104 .
  • the notification may identify a user name of the user of the second computing device and an indication of status, as illustrated in the notification message 332 within a screenshot 330 of FIG. 3C .
  • the data share sub-application 108 b upon receipt of the alert, presents a notification within a display region 130 of the second computing device 104 .
  • the notification may provide the second user with the option to review the shared file (e.g., download from the server 110 and open within a software application configured to present the indicated file type).
  • the notification in some examples, may include one or more of a file name, a file type, information regarding the user of the first computing device 102 , a file size, and a timestamp of the notification.
  • the notification may identify a user name of the user of the first computing device, a file type, and a time of share, as illustrated in a notification message 342 in a screenshot 340 of FIG. 3D .
  • the notification may identify the user name of the user of the first computing device, the file type, and options to download or decline the offer to share, as illustrated in a notification message 352 within a screenshot 350 of FIG. 3E .
  • the data share sub-application 108 b upon acceptance of the offer to share (e.g., positive response to the presented notification) by the user of the second computing device 104 , retrieves the shared file of the chemical structure 124 from the data server 116 (e.g., retrieved from the data cache 118 ).
  • the data share sub-application 108 b in some implementations, causes presentation of a shared version of the chemical structure 124 ′ within the display area 130 of the second computing device 104 .
  • the users of the first computing device 102 and the second computing device 104 may continue to develop the chemical structure 124 by sharing, modifying, and sharing again.
  • features provided by the data share sub-application 108 may allow the users of the computing devices 102 , 104 to communicate directly about the shared file, for example using text, voice, and/or video communication.
  • FIG. 2 is a flow diagram of an example method 200 for gesture-based sharing of data between a first computing device 202 and a second computing device 208 via a network-based sharing service 204 .
  • the method 200 may be performed by the system 100 for gesture-based sharing of data between separate computing devices as described in relation to FIG. 1 .
  • the method 200 begins with selecting, upon the first computing device 202 , data to share with one or more target users ( 210 ).
  • the data may include one or more files, such as the chemical structure 124 described in relation to FIG. 1 .
  • the data may be selected, for example, by opening a data sharing dialogue within a software application.
  • the data sharing dialogue for example, may be provided by the data share sub-application 108 a of FIG. 1 (e.g., as a sub-application feature layer on top of a presently executing software application).
  • the underlying software application may be configured for creation, editing, and/or manipulation of data files such as, in some examples, word processing software, presentation software, spreadsheet software, program development software, graphic editing software, graphical chemical structure software, graphical biological structure software, photo manipulation software, and video manipulation software.
  • a sharing session may be opened, in a particular example, through selecting a sharing option 306 within a display region 304 of a computing device 302 , as illustrated in a screen shot 300 of FIG. 3A .
  • a user may select multiple files 406 (e.g., file 406 c , file 406 e , and file 4061 ) to share with one or more members by sending the multiple files to a Launchpad region 442 , as illustrated in a screen shot 440 of FIG. 4D .
  • files 406 e.g., file 406 c , file 406 e , and file 4061
  • the user is presented with two or more file format options for sharing data such as the chemical structure 124 as illustrated in FIG. 1 .
  • the data share sub-application of the first computing device 202 may determine a file type for sharing based in part upon the capabilities of member computing devices, such as the computing device 208 . For example, if the computing device 208 has an image file presentation application installed, but not a chemical structure drawing and manipulation program, the data share sub-application of the second computing device 208 may identify that the data, such as a chemical structure, should be converted to an image file prior to sharing with the second computing device 208 .
  • the data share sub-application of the second computing device 208 indicates to the share service 204 a list of eligible file types (e.g., file types renderable by one or more applications interfacing with the data share sub-application of the second computing device 208 ).
  • the share service 204 may provide this information to the first computing device 202 , for example, upon presentation of the users from whom the user of the first computing device may select to share the data.
  • one or more target users are identified along with the data ( 210 ).
  • target users are identified when the user of the first computing device 202 “pushes” the data to be shared towards one or more graphical representations of target users, as illustrated in FIG. 1 .
  • the user may “flick” or “fling” the data to be shared (e.g., touch gesture on a touch screen, stylus gesture, sweeping gesture made with a wearable computing device such as computerized glasses, etc.) towards one or more graphical representations of users with whom the user wishes to share the data.
  • the user may pull back and release on a graphical representation of the data like releasing a sling shot.
  • the user may “flick” or “fling” an image of a chemical structure 308 towards the upper left hand corner of the display region (e.g., with a general movement from point 324 a to point 324 b ) to share the chemical structure 308 with user Alan 328 a , as illustrated in a screen shot 320 of FIG. 3B .
  • a user of a computing device 302 may “push” the chemical structure 324 in the direction of any member to share the chemical structure 324 with the member.
  • the data share sub-application illustrates the data as moving across the display of the first computing device towards the graphical representations of member(s) intended as recipients of the data.
  • the data may be illustrated as floating or flying towards the intended user(s).
  • the data may be animated as spinning, flipping, morphing, and/or shrinking while moving towards the intended user(s).
  • an audible indication is provided during sharing.
  • an “in motion” noise may be followed by an “impact” noise to indicate that the flung data has “hit” a target (e.g., graphical representation of a member).
  • a visual indication may be displayed upon sharing data with a target member via a sweeping gesture.
  • the graphical indicator representing the target member may enlarge, change color, light up, and/or animate (e.g., spin, flip, tilt back & forth, etc.) to indicate that the data has been shared with (and/or offered to via the sharing service) the target member.
  • animate e.g., spin, flip, tilt back & forth, etc.
  • data and target user(s) are provided ( 212 ) to the share service 204 .
  • the data share sub-application of the first computing device 202 provides a user identifier associated with the target user(s) and an indication of the data (e.g., a file, a network file location of the data, etc.) to the share service 204 .
  • the share service 204 creates a session identifier associated with the targeted user(s) and an indication of the data ( 214 ).
  • the communication between the first computing device 202 and the share service 204 is via HTTP communication.
  • the share service 204 may include one or more servers.
  • the server(s) may be JAVATM-based servers.
  • the share service 204 caches the data ( 216 ) in a database 206 .
  • the share service 204 in some implementations, caches a copy of the data along with the account information, including the session identifier associated with the offer to share in the database 206 .
  • the database 206 for example, can include one or more of the data cache 118 and the member device database 120 , described in relation to FIG. 1 .
  • the share service 204 looks up the target users ( 218 ) in the database 206 .
  • the database 206 returns the identification of the target user(s) ( 220 ) in response to the lookup request.
  • the share service 204 issues an alert ( 222 ) regarding availability of the data to the data share sub-application of the second computing device 208 .
  • the alert in some examples, may include a file name, brief file description, identification of the sharing member (e.g., the user of the first computing device 202 ), a file type, and/or a recommended software application for viewing the data (e.g., so that the user of the first computing device 202 and the user of the second computing device 208 are reviewing the file within the same software application, if possible).
  • the alert in some implementations, is issued to the target users based on the identification information obtained in step 220 . In some implementations, the alert is communicated to a push notification service provider.
  • the communication between the server(s) of the share service 204 and the push notification service provider may be HTTP communications.
  • the push notification service provider communicates with a push notification management system.
  • the push notification management system may be specific to the computing device.
  • the push notification management system communicates with the computing device to provide push notifications.
  • the push notification management system in some implementations, communicates via Raw TCP with the computing device to provide push notifications.
  • the push notification system communicates with the second computing device 208 to issue the alert to the target user regarding the availability of the data the user of the first computing device 202 has shared.
  • the data share sub-application associated with the second computing device 208 Upon receipt of the alert, the data share sub-application associated with the second computing device 208 , in some implementations, presents a notification within a display region of the second computing device.
  • the notification may provide the second user with the option to review the shared file (e.g., download via the share service 204 and open within a software application configured to present the indicated file type).
  • the notification in some examples, may include one or more of a file name, a file type, information regarding the user of the first computing device, a file size, and a timestamp of the notification.
  • the notification may identify a user name of the user of the first computing device, a file type, and a time of share, as illustrated in a notification message 342 in a screenshot 340 of a computing device 344 , as illustrated in FIG. 3D .
  • the notification may identify the user name of the user of the first computing device, the file type, and options to download or decline the offer to share, as illustrated in a notification message 352 within a screenshot 350 of computing device 344 , as illustrated in FIG. 3E .
  • the second computing device 208 requests the data ( 224 ) selected by the first user to be shared with the target user(s), including the user of the second computing device 208 .
  • the request includes the session identifier associated with the requested data.
  • the user of the second computing device 208 may select to review the shared file (e.g., download and open the shared file) to initiate a request for the data ( 224 ).
  • the user of the second computing device 208 may accept the offer to share by providing a positive response to the presented notification.
  • the share service 204 upon acceptance of the offer to share (e.g., positive response to the presented notification) by the user of the second computing device 208 , requests the cached data ( 226 ) from the database 206 .
  • the request includes the session identifier associated with the cached data.
  • the session identifier in some implementations, is matched to account information stored in the database 206 .
  • the share service 204 retrieves the cached data ( 228 ) from the database 206 upon requesting the data and/or matching the session identifier provided by the second computing device 208 with the account information stored in the database 206 .
  • the share service 204 shares the data with the target user ( 230 ) (e.g., the user of the second computing device 208 ). For example, upon successfully matching the session identifier to account information stored in the database 206 , the share service 204 may proceed to share the data with the data share sub-application of the second computing device 208 , such as the chemical structure 124 described in relation to FIG. 1 .
  • the data share sub-application of the second computing device 208 causes presentation of a shared version of the data ( 236 ) within the display area of the second computing device 208 .
  • a shared version 308 ′ of the chemical structure 308 provided by the computing device 302 is presented upon the computing device 344 .
  • a notification is presented in relation to the shared file.
  • a notification message 362 alerts the user of the computing device 344 that “CDXML file successfully imported” (as illustrated in FIG. 3F ).
  • the share service 204 acknowledges, to the first computing device 202 , the data has been shared ( 234 ) with the second computing device 208 .
  • the acknowledgement includes the session identifier.
  • the first computing device 202 upon receiving the acknowledgement, presents, within the display area of the first computing device 202 , a notification indicative of success of sharing. For example, turning to FIG. 3C , a notification message 332 alerts the user of computing device 302 that “You successfully shared this file with Alan” (e.g., chemical structure 308 with user Alan 328 a ).
  • FIGS. 3A through 3F illustrate screen shots of an example data sharing operation using gesture-based sharing of a chemical structure.
  • FIG. 3A illustrates a screen shot 300 of an example graphical user interface for performing a sharing operation using gesture-based sharing of a chemical structure.
  • the first computing device includes an underlying software program that may be used to perform various functions and/or edit the underlying data via the user interface.
  • the underlying software application may be configured for creation, editing, and/or manipulation of data files such as, in some examples, word processing software, presentation software, spreadsheet software, program development software, graphic editing software, graphical chemical structure software, graphical biological structure software, photo manipulation software, and video manipulation software.
  • a sharing session may be opened, in a particular example, through selecting the sharing option 306 within the display region 304 , as illustrated in the screen shot 300 of FIG. 3A .
  • the sharing option 306 is found within the underlying software program.
  • the sharing option may be provided by a data share sub-application (e.g., as a sub-application feature layer on top of a presently executing software application), such as data share sub-application 108 a of FIG. 1 .
  • a sharing session begins with selecting, upon the computing device 302 , data to share with one or more target users.
  • the data may include one or more files, such as the chemical structure 308 .
  • the sharing option 306 is selected prior to identifying the data (e.g., chemical structure 308 ) to share and/or the targeted user(s) with whom the data will be shared.
  • FIG. 3B illustrates a screen shot 320 of an example graphical user interface of the computing device 302 of FIG. 3A for performing a sharing operation using gesture-based sharing of the chemical structure 308 .
  • one or more members eligible for sharing the chemical structure 308 such as the chemical structure 124 as shown in FIG. 1
  • a data share sub-application such as data share sub-application 108 a as shown in FIG. 1 , may identify one or more members eligible for sharing the chemical structure 308 .
  • the members may be identified, in some examples, based upon one or more of a recency of sharing with the computing device 302 (e.g., same day, same week, same month, etc.), a frequency of sharing with the computing device 302 , a total number of shares between the computing device 302 and a computing device associated with the respective member, an indication by the user of the computing device 302 designating the respective member as a favorite, a status of the respective member (e.g., identified by a user identifier feature of the server as being “online,” “active,” or otherwise available for sharing), and an indication from the user of the computing device 302 designating a particular group for sharing (e.g., engineering team, managerial team, immediate family, relatives, social club, etc.).
  • a recency of sharing with the computing device 302 e.g., same day, same week, same month, etc.
  • a frequency of sharing with the computing device 302 e.g., a frequency of sharing with the computing device 302
  • one or more eligible members may be identified based in part upon a proximity of a computing device associated with the respective user and the computing device 302 (e.g., same room, same building, etc.).
  • the data share sub-application through a peripheral communication feature of the computing device 302 (e.g., Bluetooth®, Wi-FiTM NFC, etc.), may attempt to locate one or more member computing devices within range.
  • a user of the computing device 302 may identify team members within a conference room for sharing and collaboration.
  • the eligible members may include non-user computing devices such as, in some examples, a printer, a facsimile, a television, a smart TV, a projector, or a media player.
  • the data share sub-application may identify, via a peripheral communication feature, nearby computing equipment configured to share files via the data share sub-application.
  • the eligible members may include business entities such as corporations, partnerships, sole proprietorships, academic institutions, or departments or specific groups within business entities.
  • the data share sub-application identifies a subset of the members for presentation within the display region 304 .
  • the data share sub-application may identify members 328 to display radially surrounding the chemical structure 324 .
  • the data share sub-application may identify up to four members 328 to display within the four corners of the display region 304 .
  • the user of the first computing device 302 “pushes” the chemical structure 308 towards one or both of the graphical representations of the members 328 .
  • the user may “flick” or “fling” the image of the chemical structure 308 towards the upper left corner of the display of computing device 302 with a sweeping gesture across a touch screen display (e.g., from a first point 324 a to a second point 324 b ) to share the chemical structure 308 with user 328 a .
  • a user of the computing device 302 may “push” the chemical structure 308 in the direction of any member 328 to share the chemical structure 308 with the particular member 328 .
  • the data share sub-application illustrates the chemical structure 308 as moving across the display towards the intended member(s) 328 .
  • the chemical structure 308 may be illustrated as floating or flying towards member Alan 328 a .
  • the chemical structure 308 may be animated as spinning, flipping, morphing, and/or shrinking while moving towards the intended member(s) 328 .
  • a user may press and hold chemical structure 308 to activate the “flick” feature.
  • the user upon activating the “flick” feature, the user can drag the chemical structure 308 around the graphical user interface until the user “flicks” the chemical structure 308 to a member 328 .
  • a member 328 is a group of two or more members 328 d .
  • a list of other members eligible for sharing is provided in the display region 304 for selection by the user.
  • FIG. 3C illustrates a screenshot 330 of an example graphical user interface of the computing device 302 upon sharing the chemical structure 308 with the member Alan 328 a .
  • a notification message 332 may be provided to a user of the computing device 302 .
  • the notification message 332 may include one or more of an indication of status (e.g., acceptance or rejection of the offer to share, success or failure in file transfer, etc.), an intended member(s) (e.g., Alan, etc.), a file name, a time stamp, and information regarding the intended member(s).
  • the notification may identify a user name of the user of the second computing device and an indication of status, as illustrated in the notification message 332 which reads “You successfully shared this file with Alan”.
  • FIG. 3D illustrates a screenshot 340 of a graphical user interface of the second computing device 344 upon receipt of a shared file.
  • the data share sub-application of the second computing device 344 upon receipt of the alert, as described in relation to FIGS. 1 and 2 , presents a notification message 342 within a display region 346 (e.g., main menu view) of the second computing device 344 .
  • the notification message 342 may provide the second user with the option to review the shared file (e.g., download from the server and open within a software application configured to present the indicated file type).
  • the notification message 342 may include one or more of a file name, a file type, information regarding the user of the first computing device 302 , a file size, and a timestamp of the notification.
  • the notification may identify a user name of the user of the first computing device 302 , a file type, and a time of share, as illustrated in the notification message 342 in the screenshot 340 of FIG. 3D .
  • the notification message 342 appears as a drop down in the display area 346 .
  • the notification message 342 appears regardless of which application the second computing device 344 is running when the alert is received.
  • a file share notification message may identify the user name of the user of the first computing device, the file type, and options to download or decline the offer to share, as illustrated in a notification message 352 within a screenshot 350 of FIG. 3E .
  • the notification message 352 is presented as a pop-up window.
  • the notification message 352 indicates to the user of the computing device 344 “jsmith has shared a CDXML file” as well as “Would you like to download and open it?”
  • the user is further presented with controls 352 configured to allow the user of the computing device 344 to accept or decline the offer to share the CDXML file from jsmith.
  • FIG. 3F illustrates an example screenshot 360 of a graphical user interface of the second computing device 344 , confirming a shared version of the chemical structure 308 (as illustrated, for example, within the display region 304 of the first computing device 302 in FIG. 3B ) has been successfully imported by the second computing device 344 .
  • the notification message 362 is presented in a display region 356 of the second computing device 344 .
  • the notification message 362 confirms the file was successfully imported, as identified in the message “CDXML file successfully imported”.
  • FIGS. 4A through 4D illustrate screen shots of an example data sharing operation for sharing multiple files using gesture-based sharing of a chemical structure.
  • an underlying software application 404 operates on a first computing device 402 illustrated in screen shot 400 in FIG. 4A .
  • the underlying software application 404 provides, in one example, one or more chemical structures 406 .
  • the underlying software application 404 may be configured for creation, editing, and/or manipulation of data files such as, in some examples, word processing software, presentation software, spreadsheet software, program development software, graphic editing software, graphical chemical structure software, graphical biological structure software, photo manipulation software, and video manipulation software.
  • FIG. 4B illustrates a screenshot 420 of an example data sharing operation using gesture-based sharing of a chemical structure.
  • a sharing session may be opened, in a particular example, through selecting a sharing option within a user interface of the first computing device 402 .
  • a sharing option may be initiated by selecting and/or holding 424 the file the user wishes to share, such as, for example, chemical structure 406 g.
  • one or more members eligible for sharing the chemical structure 406 g are displayed within a display region 422 .
  • a data share sub-application such as data share sub-application 108 a as described in relation to FIG. 1 , may identify one or more members eligible for sharing the chemical structure 406 g .
  • the members may be identified, in some examples, based upon one or more of a recency of sharing with the computing device 402 (e.g., same day, same week, same month, etc.), a frequency of sharing with the computing device 402 , a total number of shares between the computing device 402 and a computing device associated with the respective member, an indication by the user of the computing device 402 designating the respective member as a favorite, a status of the respective member (e.g., identified by a user identifier feature of the server as being “online,” “active,” or otherwise available for sharing), and an indication from the user of the computing device 402 designating a particular group for sharing (e.g., engineering team, managerial team, immediate family, relatives, social club, etc.).
  • a recency of sharing with the computing device 402 e.g., same day, same week, same month, etc.
  • a frequency of sharing with the computing device 402 e.g., a frequency of sharing with the computing device 402
  • one or more eligible members may be identified based in part upon a proximity of a computing device associated with the respective user and the computing device 402 (e.g., same room, same building, etc.).
  • the data share sub-application through a peripheral communication feature of the computing device 402 (e.g., Bluetooth®, Wi-FiTM NFC, etc.), may attempt to locate one or more member computing devices within range.
  • a user of the computing device 402 may identify team members within a conference room for sharing and collaboration.
  • the eligible members may include non-user computing devices such as, in some examples, a printer, a facsimile, a television, a smart TV, a projector, or a media player.
  • the data share sub-application may identify, via a peripheral communication feature, nearby computing equipment configured to share files via the data share sub-application.
  • the eligible members may include business entities such as corporations, partnerships, sole proprietorships, academic institutions, or departments or specific groups within business entities.
  • the data share sub-application identifies a subset of the members for presentation within the display region 422 .
  • the data share sub-application may identify members 428 to display radially surrounding the chemical structure 406 g .
  • the data share sub-application may identify up to four members 428 to display along the four edges of the display region 422 , as illustrated in a screen shot 420 of FIG. 4B .
  • member EXP-1001 428 b may refer to a particular piece of laboratory equipment, document rendering equipment (e.g., printer, facsimile, etc.) or data presentation equipment (e.g., projector, television, smart TV, etc.).
  • member Launchpad 428 d may refer to a “member” that allows for selection of two or more files for sharing at once with one or more target members.
  • FIG. 4C illustrates a screenshot 430 of the computing device 402 demonstrating a data sharing operation using gesture-based sharing.
  • the user of the first computing device 402 “pushes” a selected chemical structure (e.g., chemical structure 406 g as illustrated in reference to FIG. 4B ) towards one or more graphical representations of the members 428 .
  • the user may “flick” or “fling” the image of the chemical structure 406 g towards the top of the display of computing device 402 with a sweeping gesture across a touch screen display to share the chemical structure 406 g with user 428 a .
  • the user may “flick” or “fling” the image of the chemical structure 406 g towards the top of the display with a sweeping gesture made using a wearable computing device such as computerized eye glasses, a stylus, or another input device.
  • a wearable computing device such as computerized eye glasses, a stylus, or another input device.
  • the data share sub-application illustrates the chemical structure a graphical representation 434 of the chemical structure 406 g as moving across the display towards the intended member 428 a .
  • the graphical representation 434 may be illustrated as floating or flying (e.g., in stages 434 a , 434 b , and 434 c ) towards member Josh Wakefiled 428 a .
  • the graphical representation 434 may be animated as spinning, flipping, morphing, and/or shrinking while moving towards member Josh Wakefiled 428 a.
  • FIG. 4D illustrates an example screenshot 440 of a graphical user interface on the computing device 402 for sharing multiple chemical structure renderings.
  • the user of computing device 402 may “push” one or more chemical structures 406 towards the launch pad 442 .
  • the launch pad 442 is activated when a user selects or swipes upon the launch pad.
  • launch pad is activated when a user “pushes” a chemical structure 406 to the launch pad 442 .
  • a launch pad interface is displayed on the computing device 402 .
  • the launch pad interface may allow a user to view a collection of one or more chemical structures that have been sent to the launch pad 442 for sharing with one or more members.
  • the launch pad 442 provides a graphical user interface that enables a user of the computing device 402 to identify members with whom the user would like to share one or more of the chemical structures on the launch pad 442 .
  • FIG. 5 is a screen shot 500 of an example graphical user interface for identifying one or more recipients in a gesture-based data sharing operation on a computing device 502 .
  • a display region 512 of the computing device 502 includes one or more files, such as chemical structures 524 previously identified (e.g., selected) by the user of the computing device 502 for sharing with one or more target members.
  • a user may “push” the chemical structure 524 towards one or more members 504 to share the chemical structure 524 .
  • the user is presented with two or more file format options 510 for sharing data such as the chemical structure 524 .
  • the user of a computing device 502 can choose to share the chemical structure 524 as a variety of file types such as a CDXML file, a MOL file, or an image file.
  • the chemical structure 524 may be loaded presently as a CDXML file.
  • Selection of a different file type 510 causes conversion of the chemical structure 524 into a different file type prior to sharing.
  • the data share sub-application such as 108 a as shown in FIG. 1 , for example, may call into a “save as” function of the presently executing software application (e.g., a chemical structure drawing and manipulation program) to modify the file type of the chemical structure 524 prior to sharing with other users.
  • the data share sub-application determines a file type for sharing based in part upon the capabilities of member computing devices, such as the computing device of the member with whom the user of the computing device 502 wants to share the chemical structure 524 . For example, if the computing device of the member has an image file presentation application installed, but no chemical structure drawing and manipulation program, the data share sub-application of the computing device 502 may identify that the chemical structure 524 should be converted to an image file prior to sharing with the computing device of the target member.
  • the data share sub-application executing upon the computing device of the member, in some implementations, indicates to a server, such as server 110 as shown in FIG.
  • a list of eligible file types (e.g., file types renderable by one or more applications interfacing with, for example, a data share sub-application such as data share sub-application 108 b as shown in FIG. 1 ).
  • the server may provide this information to the computing device 502 , for example, upon presentation of the members 504 .
  • a data share sub-application such as data share sub-application 108 a as shown in FIG. 1 , executing upon the computing device 502 , may identify one or more members 504 eligible for sharing the chemical structure 524 , as described, for example, with reference to FIG. 1 .
  • the data share sub-application may arrange two or more members along a single edge of the display region 512 of the first computing device 502 as illustrated in relation to FIG. 5 .
  • the user of the computing device 502 may use a contacts panel 506 to add additional members to the upper display area (e.g., the members 504 along the top edge of the display area) where the user may then share the chemical structure 524 with the members 504 .
  • the members with whom the user of the first computing device 502 would like to share the chemical structure 524 with are displayed at the upper display area (e.g, members 504 ).
  • the contact panel displays one or more contacts with whom the user may share the chemical structure 524 .
  • the user of the first computer device 502 may remove a member 504 , such as member 504 a , by “pushing” member 504 a to the contacts panel 506 .
  • the user can adjust the members shown in contacts panel 506 by selecting the category 514 of members the user would like to see, such as recent, neighbors 514 a , contacts 514 b , experiments 514 c , peripherals 514 d , and applications 514 e .
  • the user in some implementations, can be presented with one or more members of a particular category 514 within the upper area of the display region 512 upon selection of the particular category 514 .
  • the present members 504 a through 504 d may be replaced with one or more target members categorized as neighbors.
  • a particular member in some implementations, may belong to two or more categories.
  • member Sunil Gupta 514 a may belong to both the recent category 514 a and the contacts category 514 c .
  • the user may share with members in the contacts panel 506 by “pushing” the chemical structure 524 to the graphical representations of a member 516 in the contacts panel 506 .
  • the members may be identified, in some examples, based upon one or more of a recency of sharing with the computing device 502 (e.g., same day, same week, same month, etc.), a frequency of sharing with the computing device 502 , a total number of shares between the computing device 502 and a computing device associated with the respective member, an indication by the user of the computing device 502 designating the respective member as a favorite, a status of the respective member (e.g., identified by a user identifier feature of the server as being “online,” “active,” or otherwise available for sharing), and an indication from the user of the computing device 502 designating a particular group for sharing (e.g., engineering team, managerial team, immediate family, relatives, social club, etc.).
  • a recency of sharing with the computing device 502 e.g., same day, same week, same month, etc.
  • a frequency of sharing with the computing device 502 e.g., a frequency of sharing with the computing device 502
  • one or more eligible members may be identified based in part upon a proximity of a computing device associated with the respective user and the computing device 502 (e.g., same room, same building, etc.).
  • the data share sub-application through a peripheral communication feature of the computing device 502 (e.g., Bluetooth®, Wi-FiTM, NFC, etc.), may attempt to locate one or more member computing devices within range.
  • a user of the computing device 502 may identify team members within a conference room for sharing and collaboration.
  • eligible members can include non-user computing devices such as, in some examples, a printer, a facsimile, a television, a smart TV, a projector, or a media player.
  • the data share sub-application may identify, via a peripheral communication feature, nearby computing equipment configured to share files via the data share sub-application.
  • the user of the computing device 502 may select a share more option 508 .
  • the share more option 508 may provide the user with a graphical user interface, such as the graphical user interface shown in FIG. 3A or 4A , where the user may select one or more, for example, chemical structures to share with one or more members.
  • FIGS. 6A and 6B illustrate a flow chart of an example method 600 for gesture-based sharing of data between computing devices.
  • the method for example, may be performed by the sub-application 108 , as described in relation to FIG. 1 .
  • the method 600 begins with receiving, via a user interface, selection of at least one file for sharing with a separate computing device ( 602 ).
  • Receiving selection of the at least one file may include identifying a user input gesture indicative of selection of the at least one file.
  • the file may be selected within a software application.
  • the method may be performed by a sub-application configured to execute within the software application.
  • the sub-application may be configured to execute within two or more software applications installed upon the computing device.
  • the method 600 includes identifying one or more members for sharing the at least one file ( 604 ). Identifying one or more members for sharing may include issuing, via the network, an availability request and, responsive to the availability request, receiving indication of one or more member identifiers. Each member identifier may be associated with a respective computing device executing a sharing sub-application in communication with the network.
  • the members may be identified, in some examples, based upon one or more of a recency of sharing with the computing device (e.g., same day, same week, same month, etc.), a frequency of sharing with the computing device, a total number of shares between the computing device and a computing device associated with the respective member, an indication by the user of the computing device designating the respective member as a favorite, a status of the respective member (e.g., identified by a user identifier feature of the server as being “online,” “active,” or otherwise available for sharing), and an indication from the user of the computing device designating a particular group for sharing (e.g., engineering team, managerial team, immediate family, relatives, social club, etc.).
  • a recency of sharing with the computing device e.g., same day, same week, same month, etc.
  • a frequency of sharing with the computing device e.g., a frequency of sharing with the computing device
  • a total number of shares between the computing device and a computing device associated with the respective member e
  • one or more eligible members may be identified based in part upon a proximity of a computing device associated with the respective user and the computing device (e.g., same room, same building, etc.).
  • the application through a peripheral communication feature of the computing device (e.g., Bluetooth®, Wi-FiTM, NFC, etc.), may attempt to locate one or more member computing devices within range.
  • a user of the computing device may identify team members within a conference room for sharing and collaboration.
  • eligible members can include non-user computing devices such as, in some examples, a printer, a facsimile, a television, a smart TV, a projector, or a media player.
  • the application may identify, via a peripheral communication feature, nearby computing equipment configured to share files via the application.
  • the method 600 includes presenting of one or more graphical identifiers within a display area of the computing device ( 606 ).
  • Each graphical identifier may be representative of a respective member of the members identified for sharing.
  • the identifiers may represent a portion of the members identified for sharing.
  • the portion of the members represented may be based on or partially based on frequency, recency of file sharing with the computing device, and/or co-location of the computing device with respective computing devices of members.
  • the co-location of the two devices may be based in part upon near field communications.
  • each graphical identifier includes a name, an icon, and/or an image associated with the respective member represented by the respective graphical identifier.
  • the graphical identifiers are arranged radially surrounding a graphical representation of the file(s) the user wants to share.
  • the method 600 includes determining if two or more file formats are possible ( 608 ).
  • the application may determine a file type for sharing based in part upon the capabilities of member computing devices. For example, if the computing device of the member with whom the user would like to share the file has an image file presentation application installed, but not a chemical structure drawing and manipulation program, the application may identify that the file, such as a chemical structure, should be converted to an image file prior to sharing with the member's computing device.
  • the application executing upon the member's computing device, in some implementations, indicates to a server a list of eligible file types (e.g., file types renderable by one or more applications interfacing with a local share application).
  • the server may provide this information to the first computing device, for example, upon presentation of the members.
  • the method includes presenting, to a user, two or more file format options for sharing file ( 610 ) such as the chemical structure as shown in FIG. 1 .
  • the application may call into a “save as” function of the presently executing software application (e.g., a chemical structure drawing and manipulation program) to modify the file type of the file prior to sharing with members identified for sharing by the user.
  • the method 600 includes receiving, responsive to presentation of the file format options ( 610 ), an indication of the selection of the file format ( 612 ).
  • the method 600 includes determining whether the file requires reformatting ( 614 ) and subsequently formatting the file if formatting is required ( 616 ).
  • the method 600 includes identifying a user input gesture indicative of moving the file towards a first graphical identifier ( 618 ) responsive to identifying the user input gesture.
  • the identifying the user input gesture may include identifying a sweeping gesture across a touch screen.
  • the user may “flick” or “fling” the data to be shared (e.g., touch gesture on a touch screen, stylus gesture, sweeping gesture made with a wearable computing device such as computerized glasses, etc.) towards one or more graphical representations of users with whom the user wishes to share the data.
  • the user may pull back and release on a graphical representation of the data like releasing a sling shot.
  • the method 600 includes, upon identifying a user input gesture indicative of moving the file towards a graphical identifier, presenting a graphical representation of the at least one file moving towards the at least the first graphical identifier ( 620 ).
  • the file may be illustrated as floating or flying towards the intended member(s).
  • the file may be animated as spinning, flipping, morphing, and/or shrinking while moving towards the intended member(s).
  • the method 600 includes issuing, via a network, a request for data sharing to a computing device associated with the first graphical identifier ( 622 ).
  • the request for data sharing may include a member identifier associated with the first graphical identifier.
  • the request for data sharing may include information associated with the at least one file.
  • the information associated with the file may include an identification of a network file location.
  • the method 600 includes receiving, via the network, responsive to the request for data sharing, an acknowledgment of data sharing ( 624 ).
  • the acknowledgment may include the member identifier.
  • the method 600 includes, responsive to receiving the acknowledgment, causing presentation, within the display area, of a notification indicative of success of sharing ( 626 ).
  • the notification in some examples, may include one or more of an indication of status (e.g., acceptance or rejection of the offer to share, success or failure in file transfer, etc.), an intended member, a file name, a time stamp, and information regarding the intended member.
  • An example of a notification indicative of success of sharing is shown in FIG. 3C (e.g., notification 332 ).
  • the method 600 includes, after receiving the acknowledgement, receiving, via the network, an alert regarding data availability ( 628 ).
  • the alert may be associated with a modified version of a first file of the at least one file.
  • the alert may include a session identifier.
  • the session identifier may be used to identify the file and/or users with who the file is shared.
  • the session identifier may be used to identify, to the user who receives the alert, the file that has been modified, the users with whom the file is shared, and/or the user that modified the file.
  • a group of users may be using, viewing, and/or modifying a particular file during a given period of time. Users within the group may receive notifications when the file is modified.
  • one or more users of the group may be alerted of modification based upon the modifying member initiating a share operation.
  • the method 600 may include issuing, via the network, responsive to the alert, a request for the modified version of the first file ( 630 ).
  • the request for the modified version of the first file may include the session identifier.
  • the users in the group from the previous example may request the user who modified the file share the file with them and/or the rest of the group.
  • the method 600 may also include receiving, via the network, the modified version of the first file ( 632 ).
  • the method 600 includes determining whether the modified file requires reformatting ( 634 ) and subsequently formatting the modified file ( 636 ) if formatting is required.
  • the modified format will be reformatted to a file type that is viewable by the user.
  • the file may be reformatted to the file type of the original first file if the user requesting the modified version has the software necessary to view the file type of the original first file.
  • the user's preferred file type for a particular file may be stored and the file may be automatically converted when the user requests the modified version.
  • the user selects the desired file type for the modified version.
  • the method 600 includes presenting the modified version of the first file within the display area of the computing device of the user that requested the modified version of the first file ( 638 ).
  • the presentation of the modified version of the first file may include an indication of the member who originally created the file, members who subsequently modified the file, and/or the member who is responsible for the most recent modification of the file.
  • an indication of the members who modified the first file are presented in the display area of the computing device and the user of the computing device can select the members who modified the first file to see the modifications that each user made to the file.
  • the method 600 may be performed with more or fewer steps, or some of the steps of the method 600 may be performed in a different order.
  • one or more members may be identified ( 604 ) and presented within the display area ( 606 ) prior to selection of a file for sharing ( 602 ).
  • the request may identify availability of a file (as though it is a completely different file).
  • the user upon presentation of the modified version of the first file, may be presented with the opportunity to “link” the modified version with the original version of the file (e.g., overwrite, save as a new version, etc.).
  • Other modifications of the method 600 are possible.
  • the system is implemented with a cloud computing system.
  • An underlying application or a data sharing sub-application may interact with a cloud computing server.
  • Computing devices running the underlying application and/or the data sharing sub-application may communicate with the cloud services via HTTP communication.
  • communications from computing devices pass through a network firewall and/or a load balancer prior to arriving at the cloud computing system.
  • the cloud computing system may include one or more databases.
  • the database(s) may communicate with a push notification manager.
  • the push notification manager may be part of the cloud computing system or may be separate from the cloud computing system.
  • the push notification manager may communicate with a push notification service provider. Communication between the push notification manager and the push notification service provider may be via HTTP communication.
  • the push notification service provider communicates with a push notification management system.
  • the push notification management system may be specific to the computing device.
  • the push notification management system communicates with the computing device to provide push notifications.
  • the push notification management system in some implementations, communicates via Raw TCP with the computing device to provide push notifications.
  • the cloud computing environment 700 may include one or more resource providers 702 a , 702 b , 702 c (collectively, 702 ).
  • Each resource provider 702 may include computing resources.
  • computing resources may include any hardware and/or software used to process data.
  • computing resources may include hardware and/or software capable of executing algorithms, computer programs, and/or computer applications.
  • exemplary computing resources may include application servers and/or databases with storage and retrieval capabilities.
  • Each resource provider 702 may be connected to any other resource provider 702 in the cloud computing environment 700 .
  • the resource providers 702 may be connected over a computer network 708 .
  • Each resource provider 702 may be connected to one or more computing device 704 a , 704 b , 704 c (collectively, 704 ), over the computer network 708 .
  • the cloud computing environment 700 may include a resource manager 706 .
  • the resource manager 706 may be connected to the resource providers 702 and the computing devices 704 over the computer network 708 .
  • the resource manager 706 may facilitate the provision of computing resources by one or more resource providers 702 to one or more computing devices 704 .
  • the resource manager 706 may receive a request for a computing resource from a particular computing device 704 .
  • the resource manager 706 may identify one or more resource providers 702 capable of providing the computing resource requested by the computing device 704 .
  • the resource manager 706 may select a resource provider 702 to provide the computing resource.
  • the resource manager 706 may facilitate a connection between the resource provider 702 and a particular computing device 704 .
  • the resource manager 706 may establish a connection between a particular resource provider 702 and a particular computing device 704 . In some implementations, the resource manager 706 may redirect a particular computing device 704 to a particular resource provider 702 with the requested computing resource.
  • FIG. 8 shows an example of a computing device 800 and a mobile computing device 850 that can be used to implement the techniques described in this disclosure.
  • the computing device 800 is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers.
  • the mobile computing device 850 is intended to represent various forms of mobile devices, such as personal digital assistants, computerized eye glasses, cellular telephones, smart-phones, and other similar computing devices.
  • the components shown here, their connections and relationships, and their functions, are meant to be examples only, and are not meant to be limiting.
  • the computing device 800 includes a processor 802 , a memory 804 , a storage device 806 , a high-speed interface 808 connecting to the memory 804 and multiple high-speed expansion ports 810 , and a low-speed interface 812 connecting to a low-speed expansion port 814 and the storage device 806 .
  • Each of the processor 802 , the memory 804 , the storage device 806 , the high-speed interface 808 , the high-speed expansion ports 810 , and the low-speed interface 812 are interconnected using various busses, and may be mounted on a common motherboard or in other manners as appropriate.
  • the processor 802 can process instructions for execution within the computing device 800 , including instructions stored in the memory 804 or on the storage device 806 to display graphical information for a GUI on an external input/output device, such as a display 816 coupled to the high-speed interface 808 .
  • an external input/output device such as a display 816 coupled to the high-speed interface 808 .
  • multiple processors and/or multiple buses may be used, as appropriate, along with multiple memories and types of memory.
  • multiple computing devices may be connected, with each device providing portions of the necessary operations (e.g., as a server bank, a group of blade servers, or a multi-processor system).
  • the memory 804 stores information within the computing device 800 .
  • the memory 804 is a volatile memory unit or units.
  • the memory 804 is a non-volatile memory unit or units.
  • the memory 804 may also be another form of computer-readable medium, such as a magnetic or optical disk.
  • the storage device 806 is capable of providing mass storage for the computing device 800 .
  • the storage device 806 may be or contain a computer-readable medium, such as a floppy disk device, a hard disk device, an optical disk device, or a tape device, a flash memory or other similar solid state memory device, or an array of devices, including devices in a storage area network or other configurations.
  • Instructions can be stored in an information carrier.
  • the instructions when executed by one or more processing devices (for example, processor 802 ), perform one or more methods, such as those described above.
  • the instructions can also be stored by one or more storage devices such as computer- or machine-readable mediums (for example, the memory 804 , the storage device 806 , or memory on the processor 802 ).
  • the high-speed interface 808 manages bandwidth-intensive operations for the computing device 800 , while the low-speed interface 812 manages lower bandwidth-intensive operations.
  • the high-speed interface 808 is coupled to the memory 804 , the display 816 (e.g., through a graphics processor or accelerator), and to the high-speed expansion ports 810 , which may accept various expansion cards (not shown).
  • the low-speed interface 812 is coupled to the storage device 806 and the low-speed expansion port 814 .
  • the low-speed expansion port 814 which may include various communication ports (e.g., USB, Bluetooth®, Ethernet, wireless Ethernet) may be coupled to one or more input/output devices, such as a keyboard, a pointing device, a scanner, or a networking device such as a switch or router, e.g., through a network adapter.
  • input/output devices such as a keyboard, a pointing device, a scanner, or a networking device such as a switch or router, e.g., through a network adapter.
  • the computing device 800 may be implemented in a number of different forms, as shown in the figure. For example, it may be implemented as a standard server 820 , or multiple times in a group of such servers. In addition, it may be implemented in a personal computer such as a laptop computer 822 . It may also be implemented as part of a rack server system 824 . Alternatively, components from the computing device 800 may be combined with other components in a mobile device (not shown), such as a mobile computing device 850 . Each of such devices may contain one or more of the computing device 800 and the mobile computing device 850 , and an entire system may be made up of multiple computing devices communicating with each other.
  • the mobile computing device 850 includes a processor 852 , a memory 864 , an input/output device such as a display 854 , a communication interface 866 , and a transceiver 868 , among other components.
  • the mobile computing device 850 may also be provided with a storage device, such as a micro-drive or other device, to provide additional storage.
  • a storage device such as a micro-drive or other device, to provide additional storage.
  • Each of the processor 852 , the memory 864 , the display 854 , the communication interface 866 , and the transceiver 868 are interconnected using various buses, and several of the components may be mounted on a common motherboard or in other manners as appropriate.
  • the processor 852 can execute instructions within the mobile computing device 850 , including instructions stored in the memory 864 .
  • the processor 852 may be implemented as a chipset of chips that include separate and multiple analog and digital processors.
  • the processor 852 may provide, for example, for coordination of the other components of the mobile computing device 850 , such as control of user interfaces, applications run by the mobile computing device 850 , and wireless communication by the mobile computing device 850 .
  • the processor 852 may communicate with a user through a control interface 858 and a display interface 856 coupled to the display 854 .
  • the display 854 may be, for example, a TFT (Thin-Film-Transistor Liquid Crystal Display) display or an OLED (Organic Light Emitting Diode) display, or other appropriate display technology.
  • the display interface 856 may comprise appropriate circuitry for driving the display 854 to present graphical and other information to a user.
  • the control interface 858 may receive commands from a user and convert them for submission to the processor 852 .
  • an external interface 862 may provide communication with the processor 852 , so as to enable near area communication of the mobile computing device 850 with other devices.
  • the external interface 862 may provide, for example, for wired communication in some implementations, or for wireless communication in other implementations, and multiple interfaces may also be used.
  • the memory 864 stores information within the mobile computing device 850 .
  • the memory 864 can be implemented as one or more of a computer-readable medium or media, a volatile memory unit or units, or a non-volatile memory unit or units.
  • An expansion memory 874 may also be provided and connected to the mobile computing device 850 through an expansion interface 872 , which may include, for example, a SIMM (Single In Line Memory Module) card interface.
  • SIMM Single In Line Memory Module
  • the expansion memory 874 may provide extra storage space for the mobile computing device 850 , or may also store applications or other information for the mobile computing device 850 .
  • the expansion memory 874 may include instructions to carry out or supplement the processes described above, and may include secure information also.
  • the expansion memory 874 may be provide as a security module for the mobile computing device 850 , and may be programmed with instructions that permit secure use of the mobile computing device 850 .
  • secure applications may be provided via the SIMM cards, along with additional information, such as placing identifying information on the SIMM card in a non-hackable manner.
  • the memory may include, for example, flash memory and/or NVRAM memory (non-volatile random access memory), as discussed below.
  • instructions are stored in an information carrier. that the instructions, when executed by one or more processing devices (for example, processor 852 ), perform one or more methods, such as those described above.
  • the instructions can also be stored by one or more storage devices, such as one or more computer- or machine-readable mediums (for example, the memory 864 , the expansion memory 874 , or memory on the processor 852 ).
  • the instructions can be received in a propagated signal, for example, over the transceiver 868 or the external interface 862 .
  • the mobile computing device 850 may communicate wirelessly through the communication interface 866 , which may include digital signal processing circuitry where necessary.
  • the communication interface 866 may provide for communications under various modes or protocols, such as GSM voice calls (Global System for Mobile communications), SMS (Short Message Service), EMS (Enhanced Messaging Service), or MMS messaging (Multimedia Messaging Service), CDMA (code division multiple access), TDMA (time division multiple access), PDC (Personal Digital Cellular), WCDMA (Wideband Code Division Multiple Access), CDMA2000, or GPRS (General Packet Radio Service), among others.
  • GSM voice calls Global System for Mobile communications
  • SMS Short Message Service
  • EMS Enhanced Messaging Service
  • MMS messaging Multimedia Messaging Service
  • CDMA code division multiple access
  • TDMA time division multiple access
  • PDC Personal Digital Cellular
  • WCDMA Wideband Code Division Multiple Access
  • CDMA2000 Code Division Multiple Access
  • GPRS General Packet Radio Service
  • a GPS (Global Positioning System) receiver module 870 may provide additional navigation- and location-related wireless data to the mobile computing device 850 , which may be used as appropriate by applications running on the mobile computing device 850 .
  • the mobile computing device 850 may also communicate audibly using an audio codec 860 , which may receive spoken information from a user and convert it to usable digital information.
  • the audio codec 860 may likewise generate audible sound for a user, such as through a speaker, e.g., in a handset of the mobile computing device 850 .
  • Such sound may include sound from voice telephone calls, may include recorded sound (e.g., voice messages, music files, etc.) and may also include sound generated by applications operating on the mobile computing device 850 .
  • the mobile computing device 850 may be implemented in a number of different forms, as shown in the figure. For example, it may be implemented as a cellular telephone 880 . It may also be implemented as part of a smart-phone 882 , personal digital assistant, or other similar mobile device.
  • implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof.
  • ASICs application specific integrated circuits
  • These various implementations can include implementation in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
  • machine-readable medium and computer-readable medium refer to any computer program product, apparatus and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal.
  • machine-readable signal refers to any signal used to provide machine instructions and/or data to a programmable processor.
  • the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer.
  • a display device e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor
  • a keyboard and a pointing device e.g., a mouse or a trackball
  • Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.
  • the systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back end, middleware, or front end components.
  • the components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.
  • LAN local area network
  • WAN wide area network
  • the Internet the global information network
  • the computing system can include clients and servers.
  • a client and server are generally remote from each other and typically interact through a communication network.
  • the relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
  • embodiments of the present disclosure may be provided as one or more computer-readable programs embodied on or in one or more articles of manufacture.
  • the article of manufacture may be any suitable hardware apparatus, such as, for example, a floppy disk, a hard disk, a CD ROM, a CD-RW, a CD-R, a DVD ROM, a DVD-RW, a DVD-R, a flash memory card, a PROM, a RAM, a ROM, or a magnetic tape.
  • the computer-readable programs may be implemented in any programming language. Some examples of languages that may be used include C, C++, or JAVATM.
  • the software programs may be further translated into machine language or virtual machine instructions and stored in a program file in that form. The program file may then be stored on or in one or more of the articles of manufacture.
  • systems, methods, and apparatus for gesture-based sharing of data between two or more computing devices are provided. Having described certain implementations of methods and apparatus for gesture-based sharing of data between two or more computing devices, it will now become apparent to one of skill in the art that other implementations incorporating the concepts of the disclosure may be used. Therefore, the disclosure should not be limited to certain implementations, but rather should be limited only by the spirit and scope of the following claims.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
US14/173,934 2013-03-13 2014-02-06 Systems and methods for gesture-based sharing of data between separate electronic devices Active 2035-04-03 US10412131B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/173,934 US10412131B2 (en) 2013-03-13 2014-02-06 Systems and methods for gesture-based sharing of data between separate electronic devices

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361780849P 2013-03-13 2013-03-13
US14/173,934 US10412131B2 (en) 2013-03-13 2014-02-06 Systems and methods for gesture-based sharing of data between separate electronic devices

Publications (2)

Publication Number Publication Date
US20140282106A1 US20140282106A1 (en) 2014-09-18
US10412131B2 true US10412131B2 (en) 2019-09-10

Family

ID=50231517

Family Applications (1)

Application Number Title Priority Date Filing Date
US14/173,934 Active 2035-04-03 US10412131B2 (en) 2013-03-13 2014-02-06 Systems and methods for gesture-based sharing of data between separate electronic devices

Country Status (5)

Country Link
US (1) US10412131B2 (fr)
EP (1) EP2973005A1 (fr)
AU (1) AU2014250074B2 (fr)
CA (1) CA2895567C (fr)
WO (1) WO2014163749A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10838502B2 (en) * 2016-03-29 2020-11-17 Microsoft Technology Licensing, Llc Sharing across environments

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011140148A1 (fr) 2010-05-03 2011-11-10 Cambridgesoft Corporation Systèmes, procédés et appareil de traitement de documents pour identifier des structures chimiques
US9977876B2 (en) 2012-02-24 2018-05-22 Perkinelmer Informatics, Inc. Systems, methods, and apparatus for drawing chemical structures using touch and gestures
KR102022042B1 (ko) * 2012-09-28 2019-09-18 삼성전자주식회사 데이터 전송 방법 및 시스템
US9535583B2 (en) 2012-12-13 2017-01-03 Perkinelmer Informatics, Inc. Draw-ahead feature for chemical structure drawing applications
US8854361B1 (en) 2013-03-13 2014-10-07 Cambridgesoft Corporation Visually augmenting a graphical rendering of a chemical structure representation or biological sequence representation with multi-dimensional information
US10126927B1 (en) 2013-03-15 2018-11-13 Study Social, Inc. Collaborative, social online education and whiteboard techniques
US9430127B2 (en) 2013-05-08 2016-08-30 Cambridgesoft Corporation Systems and methods for providing feedback cues for touch screen interface interaction with chemical and biological structure drawing applications
US9751294B2 (en) 2013-05-09 2017-09-05 Perkinelmer Informatics, Inc. Systems and methods for translating three dimensional graphic molecular models to computer aided design format
KR20140143971A (ko) * 2013-06-10 2014-12-18 삼성전자주식회사 홈 화면 공유 장치 및 방법
US20150113068A1 (en) * 2013-10-18 2015-04-23 Wesley John Boudville Barcode, sound and collision for a unified user interaction
WO2015168295A1 (fr) * 2014-04-29 2015-11-05 Schrodinger, Inc. Système de découverte de médicament collaborative
US9880718B1 (en) 2014-06-06 2018-01-30 Massachusetts Mutual Life Insurance Company Systems and methods for customizing sub-applications and dashboards in a digital huddle environment
US11294549B1 (en) * 2014-06-06 2022-04-05 Massachusetts Mutual Life Insurance Company Systems and methods for customizing sub-applications and dashboards in a digital huddle environment
US11270264B1 (en) 2014-06-06 2022-03-08 Massachusetts Mutual Life Insurance Company Systems and methods for remote huddle collaboration
US9729591B2 (en) * 2014-06-24 2017-08-08 Yahoo Holdings, Inc. Gestures for sharing content between multiple devices
KR102411890B1 (ko) 2014-09-02 2022-06-23 삼성전자주식회사 컨텐츠를 처리하는 방법 및 이를 위한 전자 장치
CN104504152B (zh) * 2015-01-09 2017-08-29 常州三泰科技有限公司 提高化学工艺效率和促进化学信息分享的装置和方法
GB2535980A (en) * 2015-02-11 2016-09-07 Apps Interactive Ltd A communication interface
WO2016203096A1 (fr) * 2015-06-18 2016-12-22 Fastfingers Oy Système et procédé de partage de contenu de données entre applications
US9860145B2 (en) 2015-07-02 2018-01-02 Microsoft Technology Licensing, Llc Recording of inter-application data flow
US9733993B2 (en) 2015-07-02 2017-08-15 Microsoft Technology Licensing, Llc Application sharing using endpoint interface entities
US9733915B2 (en) 2015-07-02 2017-08-15 Microsoft Technology Licensing, Llc Building of compound application chain applications
US10198252B2 (en) 2015-07-02 2019-02-05 Microsoft Technology Licensing, Llc Transformation chain application splitting
US9658836B2 (en) 2015-07-02 2017-05-23 Microsoft Technology Licensing, Llc Automated generation of transformation chain compatible class
US9785484B2 (en) 2015-07-02 2017-10-10 Microsoft Technology Licensing, Llc Distributed application interfacing across different hardware
US9712472B2 (en) 2015-07-02 2017-07-18 Microsoft Technology Licensing, Llc Application spawning responsive to communication
US10261985B2 (en) 2015-07-02 2019-04-16 Microsoft Technology Licensing, Llc Output rendering in dynamic redefining application
US10198405B2 (en) 2015-07-08 2019-02-05 Microsoft Technology Licensing, Llc Rule-based layout of changing information
US10031724B2 (en) 2015-07-08 2018-07-24 Microsoft Technology Licensing, Llc Application operation responsive to object spatial status
US10277582B2 (en) 2015-08-27 2019-04-30 Microsoft Technology Licensing, Llc Application service architecture
US10549173B2 (en) * 2016-03-28 2020-02-04 Apple Inc. Sharing updatable graphical user interface elements
CN107357600B (zh) * 2016-05-10 2022-05-13 中兴通讯股份有限公司 一种应用分享装置及方法
US11032698B2 (en) * 2016-10-27 2021-06-08 International Business Machines Corporation Gesture based smart download
US11019162B2 (en) * 2016-11-16 2021-05-25 Dell Products L.P. System and method for provisioning a user interface for sharing
US10346014B2 (en) 2016-11-16 2019-07-09 Dell Products L.P. System and method for provisioning a user interface for scaling and tracking
US10667134B2 (en) 2016-11-21 2020-05-26 International Business Machines Corporation Touch-share credential management on multiple devices
WO2018160205A1 (fr) 2017-03-03 2018-09-07 Perkinelmer Informatics, Inc. Systèmes et procédés de recherche et d'indexation de documents comprenant des informations chimiques
WO2021018389A1 (fr) * 2019-07-30 2021-02-04 Unify Patente Gmbh & Co. Kg Procédé de capture d'au moins une partie d'un écran, plateforme de communication et de collaboration sur le web en temps réel, et client d'une plateforme de communication et de collaboration sur le web en temps réel
US11562549B2 (en) * 2019-12-20 2023-01-24 Shenzhen Jingtai Technology Co., Ltd. System and method for user interaction in complex web 3D scenes
CN113449136A (zh) * 2020-03-26 2021-09-28 华为技术有限公司 一种数据共享的方法、电子设备和系统
CN113784337B (zh) * 2021-10-20 2022-08-26 清华大学 数据传输方法及装置、数据传输系统

Citations (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4967372A (en) 1986-05-16 1990-10-30 The United States Of America As Represented By The Department Of Health And Human Services Automatic orientation and interactive addressing of display
US5386507A (en) 1991-07-18 1995-01-31 Teig; Steven L. Computer graphics system for selectively modelling molecules and investigating the chemical and physical properties thereof
US5434971A (en) 1991-06-28 1995-07-18 Digital Equipment Corp. System for constructing a table data structure based on an associated configuration data structure and loading it with chemical sample physical data
US6017390A (en) 1996-07-24 2000-01-25 The Regents Of The University Of California Growth of oriented crystals at polymerized membranes
US6151643A (en) * 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US6304869B1 (en) 1994-08-10 2001-10-16 Oxford Molecular Group, Inc. Relational database management system for chemical structure storage, searching and retrieval
US20020049548A1 (en) 2000-04-03 2002-04-25 Libraria, Inc. Chemistry resource database
US20020107359A1 (en) 1998-02-06 2002-08-08 P. Mark Hogarth Three dimensional structures and models of fc receptors and uses thereof
US6434490B1 (en) 1994-09-16 2002-08-13 3-Dimensional Pharmaceuticals, Inc. Method of generating chemical compounds having desired properties
US20020161599A1 (en) 2000-09-05 2002-10-31 Faerman Carlos H. Electronic database of enzyme substrate and enzyme inhibitor structures
US20030194687A1 (en) 1999-05-14 2003-10-16 Clark John D. Apparatus and method for monitoring the validity of a molecular model
US20040003000A1 (en) 2001-01-29 2004-01-01 Smith Robin Young Systems, methods and computer program products for determining parameters for chemical synthesis
US20040006742A1 (en) 2002-05-20 2004-01-08 Slocombe David N. Document structure identifier
US20040024493A1 (en) 2000-05-08 2004-02-05 Magnus Fagrell Method, system, and sub-system, for processing a chemical reaction
US20040068524A1 (en) * 2002-04-03 2004-04-08 Aboulhosn Amir L. Peer-to-peer file sharing
US20040122641A1 (en) 2002-12-20 2004-06-24 Lab2Plant, Inc. (An Indiana Corporation) System and method for chemical process scale-up and preliminary design and analysis
US20040236740A1 (en) 2000-12-08 2004-11-25 Ingenuity Systems, Inc. Method and system for performing information extraction and quality control for a knowledgebase
US20040249791A1 (en) 2003-06-03 2004-12-09 Waters Michael D. Method and system for developing and querying a sequence driven contextual knowledge base
EP1526471A1 (fr) 2003-10-24 2005-04-27 Microsoft Corporation Système et procédé de partage des fichiers dans des espaces partagés par des groupes pair-à-pair
US20050091672A1 (en) * 2003-10-24 2005-04-28 Microsoft Corporation Facilitating presentation functionality through a programming interface media namespace
US20050094205A1 (en) 2003-10-15 2005-05-05 Canon Kabushiki Kaisha Selective preview and proofing of documents or layouts containing variable data
US20050102313A1 (en) 2003-04-08 2005-05-12 Newriver, Inc. System for locating data elements within originating data sources
US20050123993A1 (en) 2003-12-09 2005-06-09 Stephan Brunner Methods of determining ligand residue binding affinity
US20050131894A1 (en) 2003-12-11 2005-06-16 Vuong Chau M. System and method for providing identification and search information
US20050177280A1 (en) 2002-03-22 2005-08-11 Morphochem Aktiengesellschaft Fur Kombinatorische Chemie Methods and systems for discovery of chemical compounds and their syntheses
US20050212759A1 (en) 2004-03-23 2005-09-29 Marvit David L Environmental modeling for motion controlled handheld devices
US20050226495A1 (en) 2004-04-02 2005-10-13 Li Jonathan Q System and method for processing training data for a statistical application
EP1613009A1 (fr) 2004-06-30 2006-01-04 Microsoft Corporation Messagerie Etat-libre
US20060061595A1 (en) 2002-05-31 2006-03-23 Goede Patricia A System and method for visual annotation and knowledge representation
US20060123113A1 (en) 2004-12-03 2006-06-08 Bellsouth Intellectual Property Corporation System, method, apparatus, and product for resource sharing
US20060277201A1 (en) 2001-01-05 2006-12-07 Symyx Technologies, Inc. Laboratory database system and method for combinatorial materials research
US20070016853A1 (en) 2005-07-14 2007-01-18 Molsoft, Llc Structured documents and systems, methods and computer programs for creating, producing and displaying three dimensional objects and other related information in those structured documents
US20070146347A1 (en) 2005-04-22 2007-06-28 Outland Research, Llc Flick-gesture interface for handheld computing devices
US20070174765A1 (en) 2003-11-18 2007-07-26 Gh, Llc Content communication system and methods
WO2007092842A2 (fr) 2006-02-06 2007-08-16 Abacalab, Inc. Dispositif et procédé de chimie informatique graphique mobile
US20070260583A1 (en) 2004-03-05 2007-11-08 Applied Research Systems Ars Holding N.V. Method for fast substructure searching in non-enumerated chemical libraries
US20080140616A1 (en) 2005-09-21 2008-06-12 Nicolas Encina Document processing
US20080136785A1 (en) 2006-12-07 2008-06-12 Microsoft Corporation Operating touch screen interfaces
US20080177885A1 (en) * 2007-01-22 2008-07-24 Jeffrey Scott Pierce Multi-device communication method and system
US20080189293A1 (en) * 2007-02-07 2008-08-07 Toni Strandel Sharing of media using contact data
US20080195664A1 (en) * 2006-12-13 2008-08-14 Quickplay Media Inc. Automated Content Tag Processing for Mobile Media
US20080213663A1 (en) 2001-09-28 2008-09-04 Cambrios Technologies Corporation Digital alloys and methods for forming the same
US20080228774A1 (en) 2007-03-15 2008-09-18 Accenture Global Services Gmbh Collaboration system
US20090006411A1 (en) 2007-03-27 2009-01-01 Slc Consultants, Inc. Strategic Business Management System
US20090063427A1 (en) 2007-09-03 2009-03-05 Marc Zuta Communications System and Method
US20090171975A1 (en) 2007-03-06 2009-07-02 Mcconnell Robert S Method and system for tracking carbon credits and other carbon valuation units
US20090234876A1 (en) 2008-03-14 2009-09-17 Timothy Schigel Systems and methods for content sharing
US20090244015A1 (en) 2008-03-31 2009-10-01 Sengupta Uttam K Device, system, and method of wireless transfer of files
US7613574B2 (en) 2005-10-28 2009-11-03 S-Matrix System and method for automating scientific and engineering experimentation for deriving surrogate response data
US20090273571A1 (en) 2008-05-01 2009-11-05 Alan Bowens Gesture Recognition
US7650327B2 (en) 2002-03-01 2010-01-19 Marine Biological Laboratory Managing taxonomic information
US20100137027A1 (en) 2008-11-28 2010-06-03 Bong Soo Kim Control of input/output through touch
US20100156812A1 (en) * 2008-12-22 2010-06-24 Verizon Data Services Llc Gesture-based delivery from mobile device
US7805437B1 (en) 2002-05-15 2010-09-28 Spotfire Ab Interactive SAR table
US20100257239A1 (en) * 2009-04-02 2010-10-07 Qualcomm Incorporated Method and apparatus for establishing a social network through file transfers
US20100257457A1 (en) 2009-04-07 2010-10-07 De Goes John A Real-time content collaboration
WO2011041427A2 (fr) 2009-10-02 2011-04-07 Qualcomm Incorporated Gestes pour interface d'utilisateur et procédés de fourniture d'une fonctionnalité de partage de fichier
US20110163944A1 (en) 2010-01-05 2011-07-07 Apple Inc. Intuitive, gesture-based communications with physics metaphors
US20110221656A1 (en) 2010-02-28 2011-09-15 Osterhout Group, Inc. Displayed content vision correction with electrically adjustable lens
US20110276589A1 (en) 2010-05-03 2011-11-10 Smith Robin Y Systems, methods, and apparatus for processing documents to identify structures
US8099445B1 (en) * 2002-12-06 2012-01-17 Adobe Systems Incorporated File dispatcher for multiple application targets
US20120019488A1 (en) 2009-12-14 2012-01-26 Mccarthy John P Stylus for a touchscreen display
US20120078853A1 (en) 2010-09-21 2012-03-29 Cambridgesoft Corporation Systems, methods, and apparatus for facilitating chemical analyses
US20120110486A1 (en) 2010-10-01 2012-05-03 Imerj LLC Universal clipboard
WO2012068548A1 (fr) 2010-11-19 2012-05-24 Tivo Inc. Balayage rapide pour envoyer ou afficher un contenu
US20120173622A1 (en) 2011-01-04 2012-07-05 Samsung Electronics Co., Ltd. Social screen casting
US20120188147A1 (en) 2010-12-31 2012-07-26 Ebay, Inc. Methods and systems for displaying content on multiple networked devices with a simple command
US20120216153A1 (en) * 2011-02-22 2012-08-23 Acer Incorporated Handheld devices, electronic devices, and data transmission methods and computer program products thereof
US20120246228A1 (en) 2011-03-21 2012-09-27 Microsoft Corporation Sharing channels
EP2509286A2 (fr) 2011-04-04 2012-10-10 QNX Software Systems Limited Système et procédé de transfert de documents
US20120272163A1 (en) * 2004-05-06 2012-10-25 Apple Inc. Application-Specific Group Listing
US20120284638A1 (en) 2011-05-06 2012-11-08 Kibits Corp. System and method for social interaction, sharing and collaboration
US20120311038A1 (en) 2011-06-06 2012-12-06 Trinh Trung Tim Proximity Session Mobility Extension
US20120324368A1 (en) 2011-06-14 2012-12-20 Logmein, Inc. Object transfer method using gesture-based computing device
GB2493830A (en) 2011-08-17 2013-02-20 Integrated Chemistry Design Inc Using finger gestures to create and modify a chemical structure on a touch screen device
US20130044042A1 (en) 2011-08-18 2013-02-21 Google Inc. Wearable device with input and output structures
US20130222265A1 (en) 2012-02-24 2013-08-29 Robin Young Smith Systems, Methods, and Apparatus for Drawing Chemical Structures Using Touch and Gestures
WO2013126077A1 (fr) 2012-02-24 2013-08-29 Cambridgesoft Corporation Systèmes, procédés et appareil pour dessiner des structures chimiques au moyen de contacts et de gestes
US20140071488A1 (en) * 2012-09-13 2014-03-13 Michitaka Fukuda Information providing device, information providing method, and information providing system
US20140089329A1 (en) 2012-09-27 2014-03-27 International Business Machines Corporation Association of data to a biological sequence
US20140143302A1 (en) * 2012-11-20 2014-05-22 Institute For Information Industry File-opening system and method
US20140181219A1 (en) * 2012-12-20 2014-06-26 Microsoft Corporation Suggesting related items
US8782774B1 (en) * 2013-03-07 2014-07-15 Cloudflare, Inc. Secure session capability using public-key cryptography without access to the private key
US20140267240A1 (en) 2013-03-13 2014-09-18 Cambridgesoft Corporation Visually augmenting a graphical rendering of a chemical structure representation or biological sequence representation with multi-dimensional information
US20140324960A1 (en) * 2011-12-12 2014-10-30 Samsung Electronics Co., Ltd. Method and apparatus for experiencing a multimedia service
US20140337725A1 (en) 2013-05-08 2014-11-13 Cambridgesoft Corporation Systems and Methods for Providing Feedback Cues for Touch Screen Interface Interaction with Chemical and Biological Structure Drawing Applications

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050212753A1 (en) * 2004-03-23 2005-09-29 Marvit David L Motion controlled remote controller
US7779069B2 (en) * 2005-09-09 2010-08-17 Soonr Corporation Network adapted for mobile devices

Patent Citations (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4967372A (en) 1986-05-16 1990-10-30 The United States Of America As Represented By The Department Of Health And Human Services Automatic orientation and interactive addressing of display
US5434971A (en) 1991-06-28 1995-07-18 Digital Equipment Corp. System for constructing a table data structure based on an associated configuration data structure and loading it with chemical sample physical data
US5386507A (en) 1991-07-18 1995-01-31 Teig; Steven L. Computer graphics system for selectively modelling molecules and investigating the chemical and physical properties thereof
US6304869B1 (en) 1994-08-10 2001-10-16 Oxford Molecular Group, Inc. Relational database management system for chemical structure storage, searching and retrieval
US6434490B1 (en) 1994-09-16 2002-08-13 3-Dimensional Pharmaceuticals, Inc. Method of generating chemical compounds having desired properties
US6151643A (en) * 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US6017390A (en) 1996-07-24 2000-01-25 The Regents Of The University Of California Growth of oriented crystals at polymerized membranes
US20020107359A1 (en) 1998-02-06 2002-08-08 P. Mark Hogarth Three dimensional structures and models of fc receptors and uses thereof
US20030194687A1 (en) 1999-05-14 2003-10-16 Clark John D. Apparatus and method for monitoring the validity of a molecular model
US20020049548A1 (en) 2000-04-03 2002-04-25 Libraria, Inc. Chemistry resource database
US20040024493A1 (en) 2000-05-08 2004-02-05 Magnus Fagrell Method, system, and sub-system, for processing a chemical reaction
US20020161599A1 (en) 2000-09-05 2002-10-31 Faerman Carlos H. Electronic database of enzyme substrate and enzyme inhibitor structures
US20040236740A1 (en) 2000-12-08 2004-11-25 Ingenuity Systems, Inc. Method and system for performing information extraction and quality control for a knowledgebase
US7676499B2 (en) 2001-01-05 2010-03-09 Symyx Solutions, Inc. Management of data from combinatorial materials experiments
US20060277201A1 (en) 2001-01-05 2006-12-07 Symyx Technologies, Inc. Laboratory database system and method for combinatorial materials research
US7250950B2 (en) 2001-01-29 2007-07-31 Symyx Technologies, Inc. Systems, methods and computer program products for determining parameters for chemical synthesis
US20040003000A1 (en) 2001-01-29 2004-01-01 Smith Robin Young Systems, methods and computer program products for determining parameters for chemical synthesis
US20080213663A1 (en) 2001-09-28 2008-09-04 Cambrios Technologies Corporation Digital alloys and methods for forming the same
US7650327B2 (en) 2002-03-01 2010-01-19 Marine Biological Laboratory Managing taxonomic information
US20050177280A1 (en) 2002-03-22 2005-08-11 Morphochem Aktiengesellschaft Fur Kombinatorische Chemie Methods and systems for discovery of chemical compounds and their syntheses
US20040068524A1 (en) * 2002-04-03 2004-04-08 Aboulhosn Amir L. Peer-to-peer file sharing
US7805437B1 (en) 2002-05-15 2010-09-28 Spotfire Ab Interactive SAR table
US20040006742A1 (en) 2002-05-20 2004-01-08 Slocombe David N. Document structure identifier
US20060061595A1 (en) 2002-05-31 2006-03-23 Goede Patricia A System and method for visual annotation and knowledge representation
US8099445B1 (en) * 2002-12-06 2012-01-17 Adobe Systems Incorporated File dispatcher for multiple application targets
US20040122641A1 (en) 2002-12-20 2004-06-24 Lab2Plant, Inc. (An Indiana Corporation) System and method for chemical process scale-up and preliminary design and analysis
US20050102313A1 (en) 2003-04-08 2005-05-12 Newriver, Inc. System for locating data elements within originating data sources
US20040249791A1 (en) 2003-06-03 2004-12-09 Waters Michael D. Method and system for developing and querying a sequence driven contextual knowledge base
US20050094205A1 (en) 2003-10-15 2005-05-05 Canon Kabushiki Kaisha Selective preview and proofing of documents or layouts containing variable data
US20050091672A1 (en) * 2003-10-24 2005-04-28 Microsoft Corporation Facilitating presentation functionality through a programming interface media namespace
US20050091289A1 (en) * 2003-10-24 2005-04-28 Microsoft Corporation File sharing in P2P group shared spaces
EP1526471A1 (fr) 2003-10-24 2005-04-27 Microsoft Corporation Système et procédé de partage des fichiers dans des espaces partagés par des groupes pair-à-pair
US20070174765A1 (en) 2003-11-18 2007-07-26 Gh, Llc Content communication system and methods
US20050123993A1 (en) 2003-12-09 2005-06-09 Stephan Brunner Methods of determining ligand residue binding affinity
US20050131894A1 (en) 2003-12-11 2005-06-16 Vuong Chau M. System and method for providing identification and search information
US20070260583A1 (en) 2004-03-05 2007-11-08 Applied Research Systems Ars Holding N.V. Method for fast substructure searching in non-enumerated chemical libraries
US20050212759A1 (en) 2004-03-23 2005-09-29 Marvit David L Environmental modeling for motion controlled handheld devices
US20050226495A1 (en) 2004-04-02 2005-10-13 Li Jonathan Q System and method for processing training data for a statistical application
US20120272163A1 (en) * 2004-05-06 2012-10-25 Apple Inc. Application-Specific Group Listing
EP1613009A1 (fr) 2004-06-30 2006-01-04 Microsoft Corporation Messagerie Etat-libre
US20060123113A1 (en) 2004-12-03 2006-06-08 Bellsouth Intellectual Property Corporation System, method, apparatus, and product for resource sharing
US20070146347A1 (en) 2005-04-22 2007-06-28 Outland Research, Llc Flick-gesture interface for handheld computing devices
US20070016853A1 (en) 2005-07-14 2007-01-18 Molsoft, Llc Structured documents and systems, methods and computer programs for creating, producing and displaying three dimensional objects and other related information in those structured documents
US7707206B2 (en) 2005-09-21 2010-04-27 Praxeon, Inc. Document processing
US20080140616A1 (en) 2005-09-21 2008-06-12 Nicolas Encina Document processing
US7613574B2 (en) 2005-10-28 2009-11-03 S-Matrix System and method for automating scientific and engineering experimentation for deriving surrogate response data
WO2007092842A2 (fr) 2006-02-06 2007-08-16 Abacalab, Inc. Dispositif et procédé de chimie informatique graphique mobile
US20080136785A1 (en) 2006-12-07 2008-06-12 Microsoft Corporation Operating touch screen interfaces
US20080195664A1 (en) * 2006-12-13 2008-08-14 Quickplay Media Inc. Automated Content Tag Processing for Mobile Media
US20080177885A1 (en) * 2007-01-22 2008-07-24 Jeffrey Scott Pierce Multi-device communication method and system
US20080189293A1 (en) * 2007-02-07 2008-08-07 Toni Strandel Sharing of media using contact data
US20090171975A1 (en) 2007-03-06 2009-07-02 Mcconnell Robert S Method and system for tracking carbon credits and other carbon valuation units
US20080228774A1 (en) 2007-03-15 2008-09-18 Accenture Global Services Gmbh Collaboration system
US20090006411A1 (en) 2007-03-27 2009-01-01 Slc Consultants, Inc. Strategic Business Management System
US20090063427A1 (en) 2007-09-03 2009-03-05 Marc Zuta Communications System and Method
US20090234876A1 (en) 2008-03-14 2009-09-17 Timothy Schigel Systems and methods for content sharing
US20090244015A1 (en) 2008-03-31 2009-10-01 Sengupta Uttam K Device, system, and method of wireless transfer of files
US20090273571A1 (en) 2008-05-01 2009-11-05 Alan Bowens Gesture Recognition
US20100137027A1 (en) 2008-11-28 2010-06-03 Bong Soo Kim Control of input/output through touch
US20100156812A1 (en) * 2008-12-22 2010-06-24 Verizon Data Services Llc Gesture-based delivery from mobile device
US20100257239A1 (en) * 2009-04-02 2010-10-07 Qualcomm Incorporated Method and apparatus for establishing a social network through file transfers
US20100257457A1 (en) 2009-04-07 2010-10-07 De Goes John A Real-time content collaboration
US20110083111A1 (en) * 2009-10-02 2011-04-07 Babak Forutanpour User interface gestures and methods for providing file sharing functionality
WO2011041427A2 (fr) 2009-10-02 2011-04-07 Qualcomm Incorporated Gestes pour interface d'utilisateur et procédés de fourniture d'une fonctionnalité de partage de fichier
US20120019488A1 (en) 2009-12-14 2012-01-26 Mccarthy John P Stylus for a touchscreen display
US20110163944A1 (en) 2010-01-05 2011-07-07 Apple Inc. Intuitive, gesture-based communications with physics metaphors
US20110221656A1 (en) 2010-02-28 2011-09-15 Osterhout Group, Inc. Displayed content vision correction with electrically adjustable lens
WO2011140148A1 (fr) 2010-05-03 2011-11-10 Cambridgesoft Corporation Systèmes, procédés et appareil de traitement de documents pour identifier des structures chimiques
US20110276589A1 (en) 2010-05-03 2011-11-10 Smith Robin Y Systems, methods, and apparatus for processing documents to identify structures
US20130218878A1 (en) 2010-05-03 2013-08-22 Cambridgesoft Corporation Systems, methods, and apparatus for processing documents to identify structures
US8433723B2 (en) 2010-05-03 2013-04-30 Cambridgesoft Corporation Systems, methods, and apparatus for processing documents to identify structures
US20120078853A1 (en) 2010-09-21 2012-03-29 Cambridgesoft Corporation Systems, methods, and apparatus for facilitating chemical analyses
US8538983B2 (en) 2010-09-21 2013-09-17 Cambridgesoft Corporation Systems, methods, and apparatus for facilitating chemical analyses
US20120110486A1 (en) 2010-10-01 2012-05-03 Imerj LLC Universal clipboard
WO2012068548A1 (fr) 2010-11-19 2012-05-24 Tivo Inc. Balayage rapide pour envoyer ou afficher un contenu
US20120188147A1 (en) 2010-12-31 2012-07-26 Ebay, Inc. Methods and systems for displaying content on multiple networked devices with a simple command
US20120173622A1 (en) 2011-01-04 2012-07-05 Samsung Electronics Co., Ltd. Social screen casting
US20120216153A1 (en) * 2011-02-22 2012-08-23 Acer Incorporated Handheld devices, electronic devices, and data transmission methods and computer program products thereof
US20120246228A1 (en) 2011-03-21 2012-09-27 Microsoft Corporation Sharing channels
EP2509286A2 (fr) 2011-04-04 2012-10-10 QNX Software Systems Limited Système et procédé de transfert de documents
US20120284638A1 (en) 2011-05-06 2012-11-08 Kibits Corp. System and method for social interaction, sharing and collaboration
US20120311038A1 (en) 2011-06-06 2012-12-06 Trinh Trung Tim Proximity Session Mobility Extension
US20120324368A1 (en) 2011-06-14 2012-12-20 Logmein, Inc. Object transfer method using gesture-based computing device
GB2493830A (en) 2011-08-17 2013-02-20 Integrated Chemistry Design Inc Using finger gestures to create and modify a chemical structure on a touch screen device
US20130061163A1 (en) 2011-08-17 2013-03-07 Integrated Chemistry Design, Inc. Systems and methods of editing a chemical structure on a touch-screen
US20130044042A1 (en) 2011-08-18 2013-02-21 Google Inc. Wearable device with input and output structures
US20140324960A1 (en) * 2011-12-12 2014-10-30 Samsung Electronics Co., Ltd. Method and apparatus for experiencing a multimedia service
US20130222265A1 (en) 2012-02-24 2013-08-29 Robin Young Smith Systems, Methods, and Apparatus for Drawing Chemical Structures Using Touch and Gestures
WO2013126077A1 (fr) 2012-02-24 2013-08-29 Cambridgesoft Corporation Systèmes, procédés et appareil pour dessiner des structures chimiques au moyen de contacts et de gestes
US20140071488A1 (en) * 2012-09-13 2014-03-13 Michitaka Fukuda Information providing device, information providing method, and information providing system
US20140089329A1 (en) 2012-09-27 2014-03-27 International Business Machines Corporation Association of data to a biological sequence
US20140143302A1 (en) * 2012-11-20 2014-05-22 Institute For Information Industry File-opening system and method
US20140181219A1 (en) * 2012-12-20 2014-06-26 Microsoft Corporation Suggesting related items
US8782774B1 (en) * 2013-03-07 2014-07-15 Cloudflare, Inc. Secure session capability using public-key cryptography without access to the private key
US20140267240A1 (en) 2013-03-13 2014-09-18 Cambridgesoft Corporation Visually augmenting a graphical rendering of a chemical structure representation or biological sequence representation with multi-dimensional information
US20140337725A1 (en) 2013-05-08 2014-11-13 Cambridgesoft Corporation Systems and Methods for Providing Feedback Cues for Touch Screen Interface Interaction with Chemical and Biological Structure Drawing Applications

Non-Patent Citations (53)

* Cited by examiner, † Cited by third party
Title
Algorri et al., Reconstruction of Chemical Molecules from Images, 2007 Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC '07), Lyon, France, Aug. 22-26, 2007, in Conjunction with the Biennial Conference of the Societe Francaise de Genie Biologique et Medical (SFGB), Aug. 22, 2007, pp. 4609-4612.
Australian Patent Application No. 2011248243, APO Examination Report No. 1, dated Nov. 5, 2013, 3 pages.
Bennett, Samsung's AllShare Play pushes pictures from phone to cloud and TV, <http://news.cnet.com/8301-1035_3-57391735-94/samsungs-allshare-play-pushes-pictures-from-phone-to-cloud-and-tv/> [retrieved Oct. 24, 2013], Mar. 6, 2012, 9 pages.
Carmingniani, J. et al., Augmented Reality Technologies, Systems and Applications, Multimedia Tools and Applications 51:341-377, (2011).
Casey et al., Optical Recognition of Chemical Graphics, Document Analysis and Recognition, 1993, Proceedings of the Second International Conference on, Tsukuba Science City, Japan, Oct. 20-22, 1993, Los Alamitos, CA, USA, IEEE Comput. Soc., Oct. 20, 1993, pp. 627-631.
Clark A. M., Basic Primitives for Molecular Diagram Sketching, Journal of Cheminformatics 2:8 (2010).
European Search Report for 13275308.8, dated Apr. 9, 2014, 4 pages.
European Search Report for 13275308.8, dated Aug. 13, 2014, 8 pages.
Filippov et al., Optical Structure Recognition Software to Recover Chemical Information: OSRA, An Open Source Solution, Journal of Chemical Information and Modeling, vol. 49, No. 3, Mar. 23, 2009, pp. 740-743.
First Office Action, Chinese Application No. 201190000597.X, dated May 29, 2013, 4 pages Including Translation.
Flick-Simply the easiest way to share, <http://getflick.io/> [retrieved Aug. 23, 2013], 4 pages.
Flick—Simply the easiest way to share, <http://getflick.io/> [retrieved Aug. 23, 2013], 4 pages.
Furlon, Rod, Build Your Own Google Glass, Resources Hands On, IEEE Spectrum, IEEE Inc., vol. 50, No. 1, pp. 20-21, (Jan. 1, 2013).
Giudice N. A. et al., Learning Non-Visual Graphical Information Using a Touch-Based Vibro-Audio Interface, Proceedings of the 14th International ACM Sigaccess Conference on Computers and Accessibility, Assets '12, 103-110 (Jan. 1, 2012).
Gonzalez-Villanueva et al., WallShare: A Collaborative Multi-pointer System for Portable Devices, Nov. 19, 2012, 7 pages.
International Search Report for PCT/US2014/015131, dated Aug. 21, 2014, 6 pages.
International Search Report for PCT/US2014/016249, dated Aug. 13, 2014, 4 pages.
International Search Report for PCT/US2014/035685, dated Aug. 4, 2014, 4 pages.
International Search Report, PCT/US2011/035070, dated Oct. 6, 2011, 4 pages.
International Search Report, PCT/US2011/061534, dated Mar. 16, 2012, 2 pages.
International Search Report, PCT/US2012/026574, dated Mar. 20, 2013, 4 pgs.
iTunes Preview, Flick for iPhone, iPad, and iPod touch on the iTunes App Store, <https://itunes.apple.com/us/app/flick/id644265534?mt=8> [retrieved Oct. 28, 2013], 2 pages.
Jun. 7, 2019-(EP) Communication pursuant to Rule 164(2)(b) and Article 94(3)-App 14708158.2.
Jun. 7, 2019—(EP) Communication pursuant to Rule 164(2)(b) and Article 94(3)—App 14708158.2.
Jurach T., Microsoft Outlook Quick Start Email Guide!, 1-3 (2006).
Kim et al., Development of a Gesture-Based Molecular Visualization Tool Based on Virtual Reality for Molecular Docking, Bull. Korean Chem. Soc. 2004, vol. 25, No. 10 pp. 1571-1574.
Layar, What is Layar?, <http://www.layar.com/features/> [retrieved Nov. 14, 2012], 7 pages.
Li et al., Personal Experience with Four Kinds of Chemical Structure Drawing Software: Review on ChemDraw, ChemWindow, ISIS/Draw, and ChemSketch, J. Chem. Inf. Comput. Sci. 44:1886-1890 (2004).
Lorensen et al., Marching Cubes: A high resolution 3D surface construction algorithm. In: Computer Graphics, vol. 21, Nr. 4, Jul. 1987.
Lucero et al., Pass-Them-Around: Collaborative Use of Mobile Phones for Photo Sharing, CHI 2011-Session: Photo Sharing, May 7-11, 2011, Vancouver, BC, Canada, 10 pages.
Lucero et al., Pass-Them-Around: Collaborative Use of Mobile Phones for Photo Sharing, CHI 2011—Session: Photo Sharing, May 7-11, 2011, Vancouver, BC, Canada, 10 pages.
Microsoft Lync How to Guie, 2012. *
Park et al., Automated Extraction of Chemical Structure Information From Digital Raster Images, Chemistry Central Journal, Biomed Central Ltd., vol. 3, No. 1, Feb. 5, 2009, pp. 1-16.
Park et al., Tunable Machine Vision-Based Strategy for Automated Annotation of Chemical Databases, Journal of Chemical Information and Modeling, vol. 49, No. 8, 2009, pp. 1993-2001.
Pering et al., Enabling Pervasive Collaboration with Platform Composition, Intel Research Santa Clara, 2009, 18 pages.
Pering et al., Spontaneous Marriages of Mobile Devices and Interactive Spaces, Communications of the ACM, Sep. 2005, vol. 48, No. 9, pp. 53-59, 7 pages.
Scheible et al., MobiToss: A Novel gesture based interface for creating and sharing mobile multimedia art on large public displays, MM'08, Oct. 26-31, 2008 Vancouver British Columbia, Canada, pp. 957-960, 4 pages.
Shine et al., ChemPad3 a tutorial, May 21, 2008, 10 pages.
Toennies J. L. et al., Toward Haptic/Aural Touchscreen Display of Graphical Mathematics for the Education of Blind Students, WHC, IEEE, 373:378 (2011).
TSOTSIS, Word Lens Translates Words Inside of Images. Yes Really., <http://techcrunch.com/2010/12/16/world-lens-translates-words-inside-of-images-yes-really/> [retrieved Nov. 14, 2012], Dec. 16, 2010, 3 pages.
Valko et al., CLiDE Pro: The Latest Generation of CLiDE, a Tool for Optical Chemical Structure Recognition, Journal of Chemical Information and Modeling, vol. 94, No. 4, 27 Apr. 2009, pp. 780-787.
Weinberg et al., ZooZBeat: a Gesture-based Mobile Music Studio, NIME 2009, pp. 312-315, 4 pages.
Williams et al., Mobile apps for chemistry in the world of drug discovery, Drug Discovery Today, vol. 16. Nos. 21/22, Nov. 2011, pp. 928-939.
Williams et al., Smart Phones, a Powerful Tool in the Chemistry Classroom, Journal of Chemical Education, 2011, pp. 683-686.
WindowsNetworking, 2011. *
Wobbrock et al., User-Defined Gestures for Surface Computing, CHI-Tabletop Gestures, Apr. 7, 2009, pp. 1083-1092.
Wobbrock et al., User-Defined Gestures for Surface Computing, CHI—Tabletop Gestures, Apr. 7, 2009, pp. 1083-1092.
Written Opinion for PCT/US2014/015131, dated Aug. 21, 2014, 10 pages.
Written Opinion for PCT/US2014/016249, dated Aug. 13, 2014, 7 pages.
Written Opinion for PCT/US2014/035685, dated Aug. 4, 2014, 8 pages.
Written Opinion, PCT/US2011/035070, dated Oct. 6, 2011, 9 pages.
Written Opinion, PCT/US2011/061534, dated Mar. 16, 2012, 5 pages.
Written Opinion, PCT/US2012/026574, dated Mar. 20, 2013, 8 pgs.

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10838502B2 (en) * 2016-03-29 2020-11-17 Microsoft Technology Licensing, Llc Sharing across environments

Also Published As

Publication number Publication date
WO2014163749A1 (fr) 2014-10-09
AU2014250074B2 (en) 2019-04-04
US20140282106A1 (en) 2014-09-18
CA2895567C (fr) 2023-10-10
CA2895567A1 (fr) 2014-10-09
EP2973005A1 (fr) 2016-01-20
AU2014250074A1 (en) 2015-07-09

Similar Documents

Publication Publication Date Title
US10412131B2 (en) Systems and methods for gesture-based sharing of data between separate electronic devices
US9800711B2 (en) System, method and device-readable medium for communication event interaction within a unified event view
KR102033198B1 (ko) 제스처 또는 터치를 통해 사용자 인터페이스를 제어하는 최적화 기법
US8117555B2 (en) Cooperating widgets
US11321640B2 (en) Distributing a user interface for accessing files
US10528234B2 (en) System, method and device-readable medium for last-viewed communication event interaction within a unified event view
US11157148B2 (en) System, method and device-readable medium for message composition within a unified event view
US20230262015A1 (en) Smart attachment of cloud-based files to communications
JP2016508245A (ja) アプリケーションとしての人々
US11477315B2 (en) Contact information exchanging and content system and method for networking and marketing
US20170090705A1 (en) Conversation and version control for objects in communications
TW201445422A (zh) 筆記頁面共享及通知特徵
US11734631B2 (en) Filtering records on a unified display
US11271884B2 (en) Providing social insight in email
US20160026953A1 (en) In-line creation of activities on a unified display
US10554598B2 (en) Accessibility processing when making content available to others
US20230297961A1 (en) Operating system facilitation of content sharing
CN106415626B (zh) 从单个项目发起的组选择
TW202022661A (zh) 提示方法及裝置

Legal Events

Date Code Title Description
AS Assignment

Owner name: CAMBRIDGESOFT CORPORATION, MASSACHUSETTS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SMITH, ROBIN;GUPTA, SUNIL ANANT;STAPLETON, MICHAEL;AND OTHERS;SIGNING DATES FROM 20130314 TO 20130327;REEL/FRAME:032156/0186

AS Assignment

Owner name: PERKINELMER INFORMATICS, INC., MASSACHUSETTS

Free format text: CHANGE OF NAME;ASSIGNOR:CAMBRIDGESOFT CORPORATION;REEL/FRAME:035495/0021

Effective date: 20150212

STCV Information on status: appeal procedure

Free format text: BOARD OF APPEALS DECISION RENDERED

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4

AS Assignment

Owner name: REVVITY SIGNALS SOFTWARE, INC., MASSACHUSETTS

Free format text: CHANGE OF NAME;ASSIGNOR:PERKINELMER INFORMATICS, INC.;REEL/FRAME:066797/0597

Effective date: 20230707