US20180109631A1 - Browsing session transfer using qr codes - Google Patents
Browsing session transfer using qr codes Download PDFInfo
- Publication number
- US20180109631A1 US20180109631A1 US15/294,701 US201615294701A US2018109631A1 US 20180109631 A1 US20180109631 A1 US 20180109631A1 US 201615294701 A US201615294701 A US 201615294701A US 2018109631 A1 US2018109631 A1 US 2018109631A1
- Authority
- US
- United States
- Prior art keywords
- browser
- session
- code
- hmd
- merged
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/148—Migration or transfer of sessions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/013—Eye tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/147—Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06037—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06046—Constructional details
- G06K19/06112—Constructional details the marking being simulated using a light source, e.g. a barcode shown on a display or a laser beam with time-varying intensity profile
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1417—2D bar codes
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/14—Display of multiple viewports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H04W4/008—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/02—Improving the quality of display appearance
- G09G2320/0261—Improving the quality of display appearance in the context of movement of objects on the screen or movement of the observer relative to the screen
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2354/00—Aspects of interface with display user
Definitions
- the present exemplary embodiments pertain to techniques for transferring a state of a browser application between devices and, more particularly, pertain to a method, system and computer program product for transferring a state of an application between devices in response to gestural input.
- the user when the user is moving between locations and switching between devices, the user may be three-quarters through reading a news article, in the middle of playing a video game, halfway through watching a YouTube® video, or partially through listening to a song.
- the user may find it inconvenient to switch between the different devices because the user may either need to relocate the information or start from the beginning again when switching between devices.
- a need exists to improve the overall user experience for users when switching between devices.
- a computer-implemented method for browsing session transfer comprising: communicating by a head mounted device (HMD) with a first browser, the first browser displaying a browser session; responsive to the first browser creating a first session QR code, capturing by the HMD the first session QR code; communicating by the HMD with a second browser; responsive to the second browser creating a second session QR code, capturing by the HMD the second session QR code; merging by the HMD the first session QR code with the second session QR code into a merged QR code; transmitting by the HMD the merged QR code to the second browser; and responsive to the second browser loading the merged QR code, the second browser displaying the browser session from the first browser.
- HMD head mounted device
- a system for browsing session transfer comprising: a head mounted device; a non-transitory storage medium that stores instructions; and a processor that executes the instructions to perform the following functions: communicate by the head mounted device (HMD) with a first browser, the first browser displays a browser session; capture by the HMD a first session QR code received from the first browser; communicate by the HMD with a second browser; responsive to the second browser creating a second session QR code, capture by the HMD a second session QR code received from the second browser; merge by the HMD the first session QR code with the second session QR code into a merged QR code; and transmit by the HMD the merged QR code to the second browser for display by the second browser the browser session from the first browser.
- HMD head mounted device
- a non-transitory storage medium that stores instructions
- a processor that executes the instructions to perform the following functions: communicate by the head mounted device (HMD) with a first browser, the first browser displays a browser session; capture by the HMD a first session QR code received
- a computer program product for browsing session transfer comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform a method comprising: communicating with a first browser, the first browser displaying a browser session; responsive to the first browser creating a first session QR code, capturing the first session QR code; communicating with a second browser; responsive to the second browser creating a second session QR code, capturing the second session QR code; merging the first session QR code with the second session QR into a merged QR code; and transmitting the merged QR code to the second browser so that the second browser displays the browser session from the first browser.
- FIG. 1 is an illustration of a head mounted device that may be used in the exemplary embodiments.
- FIG. 2 is an illustration of a block diagram of a computing device that may be present in the head mounted device of FIG. 1 .
- FIG. 3 is an illustration of the head mounted device 10 initiating a line of sight communication with a browser of another device.
- FIG. 4 is an illustration of the browser of FIG. 3 shown in more detail as having five tabs or windows opened in the browser.
- FIG. 5 is an illustration of the head mounted device establishing a line of sight communication with a browser in another device.
- FIG. 6 is an illustration of a user gazing through head mounted device at a current session QR code of the browser of FIG. 5 .
- FIG. 7 is a graphical illustration of merging session QR codes.
- FIG. 8 is an illustration of the user gazing through the head mounted device towards the browser of Figures and 6 and transmitting the merged session QR code to the browser of FIGS. 5 and 6 .
- FIG. 9 is an illustration of the browser of FIG. 8 showing the tabs of browser session of FIG. 4 .
- FIG. 10 is a flow chart illustrating the process of the exemplary embodiments.
- FIG. 1 there is shown an illustration of a head mounted device 10 that may be used in the exemplary embodiments. It should be understood that head mounted device 10 shown in FIG. 1 is only meant for purposes of illustration and not limitation and that other head mounted devices may serve the purposes of the exemplary embodiments provided these other head mounted devices have the functions and capabilities described herein.
- Head mounted device 10 may include a video display 12 for the left eye and a video display 14 for the right eye. Included within the frame 16 of the head mounted device 10 may be one or more computing devices (not shown in FIG. 1 ). Head mounted device 10 may or may not have lenses 18 which may or may not be prescription lenses.
- the head mounted device may be any head mounted device such as Google Glass (Google), Looxcie (Looxcie Inc.), iOptik (Innovega Inc.) or Goldeni (Kopin), just to name a few.
- Google Glass Google
- Looxcie Looxcie Inc.
- iOptik Innovega Inc.
- Goldeni Goldeni
- Computing device 20 may include a central processing unit (CPU) 22 , memory 24 and storage 26 , such as solid state storage. While storage 26 is shown as within computing device 20 , storage 26 may alternatively be cloud storage (i.e., storage on a remote server which may be connected to the head mounted device 10 by a network such as the internet via cellular or Wi-Fi capability in the head mounted device 10 .). In addition, the computing device 20 may have a Global Positioning System (GPS) 28 .
- GPS Global Positioning System
- the head mounted device 10 has communication capability, indicated by box 30 , to communicate with other head mounted devices as well as other computing devices such as smart phones, laptops, work stations and the like.
- the communication capability may include, but not be limited to, Wi-Fi, cellular, short range radio such as Bluetooth® and Near Field Communication, and even satellite capability.
- the computing device 20 may, in addition, have certain applications or programs 32 resident in the computing device 30 .
- These applications or programs 32 may include eye tracking 34 of the user of the head mounted device 10 and Quick Response (QR) code processing 36 . It should be understood that it is within the scope of the exemplary embodiments for these applications or programs 32 to be accessible remotely by the internet or in cloud storage.
- QR Quick Response
- the computing device 20 may be connected to video screens 12 , 14 shown in FIG. 1 .
- the computing device 20 may be connected to one or more cameras 38 (not shown in FIG. 1 ) that may be present in the head mounted device 10 .
- the cameras 38 may be facing toward the user of the head mounted device 10 to catch eye movements (described hereafter) or facing away from the user of the head mounted device or both.
- Eye tracking is a well-known technique for determining the point at which a user may be focusing on.
- One method of eye tracking is where cameras 38 in the head mounted device 10 may register eye movements of the user of the head mounted device 10 as the user focuses on a target object. These eye movements may be converted to a user's gaze by eye tracking application 34 .
- a QR code is a unique two-dimensional code that is readable by a computer device.
- computing device 20 has a QR reader 40 .
- the QR reader 40 may use cameras 38 for QR reading or QR reader 40 may be separate from cameras 38 .
- a QR code typically includes black modules arranged in a square pattern on a white background and may be created by any commercially available application which generates QR codes from data sets.
- the QR code may be defined according to an ISO standard.
- the QR code processing program in computing device 20 may take a QR code read by QR reader 40 and modify the QR code according to one or more exemplary embodiments as will be described below.
- head mounted device 10 initiates a line of sight communication 42 with a browser 44 of another device 46 .
- the device 46 shown in FIG. 3 is a smart phone but could be any other device having a browser.
- eye tracking program 34 in computing device 20 may detect a line of sight directed from the head mounted device 10 to browser 44 in smart phone 46 .
- the head mounted device 10 may send a handshake request 48 to browser 44 in smart phone 46 .
- the head mounted device 10 may receive a handshake acknowledgement 50 from browser 44 in smart phone 46 .
- the handshake request 48 and handshake acknowledgement 50 may be effective to create the handshake.
- the head mounted device 10 and browser 44 in smart phone 46 may thereafter share data.
- the head mounted device's public key may be shared with browser 44 in smart phone 46 .
- browser 44 is shown in more detail as having five tabs or windows 52 opened in the browser 44 .
- Each tab 52 may represent a different URL (Uniform Resource Locator) that is opened in the browser 44 .
- the combination of all opened tabs 52 in the browser 44 along with the sessions in the various tabs represents the state of the browser 44 .
- the browser 44 captures all of the session data associated with each browser tab 52 in the state of the browser 44 and on-the-fly creates a session QR code 54 which is displayed in the browser 44 .
- the session QR code 54 contains all of the browser session information in encoded form.
- the session QR code 54 may be encrypted with the user's public key previously shared with the browser 44 . By encrypting the session QR code 54 with the user's public key, illegitimate users may not be able to scan and decode the session QR code 54 .
- the user may gaze, indicated by 56 , at the session QR code 54 through head mounted device 10 and then do an eye-gesture, for example a “wink”.
- the gaze event 56 and eye gesture are captured by the head mounted device 10 which enables one or more cameras 38 in the head mounted device 10 to scan the displayed session QR-code 54 .
- the head mounted device 10 captures, indicated by arrow 58 , and stores in memory 24 or storage 26 the session QR code 54 which has all the session data associated with browser 44 .
- the exemplary embodiments where the session QR code 54 is absorbed by the head mounted device 10 has the following advantages:
- the user through head mounted device 10 may establish a line of sight communication with a browser in another device, in this case browser 64 in laptop 66 .
- a handshake request 60 may be sent to browser 64 of laptop 66 and a handshake acknowledgement 62 may be sent from browser 64 of laptop 66 .
- device information such as a photo of the device or device identification and the public key of the browser 64 of the laptop 66 may be transferred to the user through the head mounted device 10 .
- the purpose for receiving the public key of the browser 64 is to encrypt the information that needs to be sent to browser 64 with the public key, which can then be read only by browser 64 .
- the device information may be shown to the user through the head mounted device 10 and the user may confirm that the user desires to share session information with browser 64 of laptop 66 .
- the exemplary embodiments are also applicable to transferring state between different browsers (example Firefox and Chrome) in the same device. In this scenario, it is preferred that handshaking would also be required.
- the browser 64 is shown in more detail in FIG. 6 .
- the user through head mounted device 10 focuses on a new browser in the same device or a browser in a new device and the user wants to continue with the same state of the previous browser (such as browser 44 in smart phone 46 )
- the head mounted device 10 captures, indicated by arrow 72 , the current session QR code 68 of the new browse 64 and stores the current session QR code 68 in memory 24 or storage 26 .
- the current session QR code 68 and the previous session QR code 54 are merged into a new session QR code 74 .
- This process is graphically illustrated in FIG. 7 .
- the state of the browser session in browser 44 as embodied in session QR code 54 (graphically illustrated as session QR 1 ) is merged with the state of the browser session in browser 64 as embodied in session QR code 68 (graphically illustrated as session QR 2 ) to result in the merged session QR code 74 (graphically illustrated as session QR merge ).
- the state of the browser 44 along with the state of browser 64 is encoded in the merged QR code 74 .
- the merged session QR code 74 may be encrypted with the public key of the browser 64 .
- the browser session information of the state of the browser 44 has been encrypted with the public key of browser 64 , which can only be decrypted by the browser 64 , since only browser 64 has its private key.
- the user may gaze 78 through head mounted device 10 towards browser 64 and transmit, indicated by arrow 79 , the merged session QR code 74 to browser 64 .
- the merged session QR code 74 may then replace the previous session QR code 68 .
- the user through head mounted device 10 may receive a pop up message requesting the user to confirm that the user wishes to update the session state of browser 64 with the new session state as embodied in merged session QR code 74 . If the user confirms that the session state of browser 64 is to be updated, then the browser 64 is updated according to the session data in merged session QR code 74 .
- Browser 64 updates the displayed session QR code with the merged session QR code 74 retrieved from the head mounted device 10 . Since the currently viewed browser 64 now has the session information of the user's last focused browser, which is browser 44 in smart phone 46 , browser 64 loads all the user viewed tabs from browser 44 with the session state maintained in the new browser 64 .
- FIG. 9 is an enlarged view of browser 64 showing tabs 76 which correspond to tabs 52 in browser 44 . Tabs 76 are directed to the same URLs and in the same order as tabs 52 in browser 44 . Thus, the state of browser 44 has been effectively transferred to browser 64 .
- FIG. 10 is a flow chart illustrating the exemplary embodiments.
- the head mounted device 10 may communicate with a first browser, such as browser 44 in FIG. 3 , box 80 .
- the first browser may create a first session QR code, such as session QR code 54 in FIG. 4 , box 82 .
- the head mounted device 10 may capture the first session QR code, box 84 .
- the head mounted device 10 may communicate with a second browser, such as browser 64 in FIG. 5 , box 86 .
- the second browser may create a second session QR code, such as session QR code 68 in FIG. 6 , box 88 .
- the head mounted device 10 may capture the second session QR code, box 90 .
- the head mounted device 10 may merge the first session QR code and the second session QR code into a merged session QR code, such as merged session QR code 74 in FIGS. 7 to 9 , box 92 .
- the head mounted device 10 may transmit the merged session QR code to the second browser, box 94 .
- the second browser loads the merged session QR code and displays the merged session QR code and the browser session from the first browser, box 96 .
- the present invention may be a system, a method, and/or a computer program product at any possible technical detail level of integration
- the computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention
- the computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device.
- the computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing.
- a non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing.
- RAM random access memory
- ROM read-only memory
- EPROM or Flash memory erasable programmable read-only memory
- SRAM static random access memory
- CD-ROM compact disc read-only memory
- DVD digital versatile disk
- memory stick a floppy disk
- a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon
- a computer readable storage medium is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
- Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network.
- the network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers.
- a network adapter card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.
- Computer readable program instructions for carrying out operations of the present invention may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, configuration data for integrated circuitry, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++, or the like, and procedural programming languages, such as the “C” programming language or similar programming languages.
- the computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
- the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
- electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present invention.
- These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
- These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function/act specified in the flowchart and/or block diagram block or blocks.
- the computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
- each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s).
- the functions noted in the blocks may occur out of the order noted in the Figures.
- two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Optics & Photonics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
- The present exemplary embodiments pertain to techniques for transferring a state of a browser application between devices and, more particularly, pertain to a method, system and computer program product for transferring a state of an application between devices in response to gestural input.
- People are utilizing electronic devices for an increasing number and variety of tasks. It is not uncommon for a user to possess or have access to multiple electronic devices. Within a single day, a user may switch between multiple electronic devices: from checking the weather on a personal computer at home, looking at a mobile device on the way to the car, using the work desktop as the user arrives the office, switching back to the mobile device when the user steps out of work or is on the way home, and then getting back onto the home desktop or laptop after the user returns home. Even while a user is within his home, the user may opt to switch from his home desktop from when he is in his bedroom to the big television screen while sitting in his living room or to his portable laptop at the dining table.
- Oftentimes, when the user is moving between locations and switching between devices, the user may be three-quarters through reading a news article, in the middle of playing a video game, halfway through watching a YouTube® video, or partially through listening to a song. The user may find it inconvenient to switch between the different devices because the user may either need to relocate the information or start from the beginning again when switching between devices. There is currently no easy way for a user to switch between multiple devices easily without disrupting the user's interaction with the devices. As people continue to encounter an increasing number of electronic devices, a need exists to improve the overall user experience for users when switching between devices.
- The various advantages and purposes of the exemplary embodiments as described above and hereafter are achieved by providing, according to an aspect of the exemplary embodiments, a computer-implemented method for browsing session transfer comprising: communicating by a head mounted device (HMD) with a first browser, the first browser displaying a browser session; responsive to the first browser creating a first session QR code, capturing by the HMD the first session QR code; communicating by the HMD with a second browser; responsive to the second browser creating a second session QR code, capturing by the HMD the second session QR code; merging by the HMD the first session QR code with the second session QR code into a merged QR code; transmitting by the HMD the merged QR code to the second browser; and responsive to the second browser loading the merged QR code, the second browser displaying the browser session from the first browser.
- According to another aspect of the exemplary embodiments, there is provided a system for browsing session transfer comprising: a head mounted device; a non-transitory storage medium that stores instructions; and a processor that executes the instructions to perform the following functions: communicate by the head mounted device (HMD) with a first browser, the first browser displays a browser session; capture by the HMD a first session QR code received from the first browser; communicate by the HMD with a second browser; responsive to the second browser creating a second session QR code, capture by the HMD a second session QR code received from the second browser; merge by the HMD the first session QR code with the second session QR code into a merged QR code; and transmit by the HMD the merged QR code to the second browser for display by the second browser the browser session from the first browser.
- According to a further aspect of the exemplary embodiments, there is provided a computer program product for browsing session transfer, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform a method comprising: communicating with a first browser, the first browser displaying a browser session; responsive to the first browser creating a first session QR code, capturing the first session QR code; communicating with a second browser; responsive to the second browser creating a second session QR code, capturing the second session QR code; merging the first session QR code with the second session QR into a merged QR code; and transmitting the merged QR code to the second browser so that the second browser displays the browser session from the first browser.
- The features of the exemplary embodiments believed to be novel and the elements characteristic of the exemplary embodiments are set forth with particularity in the appended claims. The Figures are for illustration purposes only and are not drawn to scale. The exemplary embodiments, both as to organization and method of operation, may best be understood by reference to the detailed description which follows taken in conjunction with the accompanying drawings in which:
-
FIG. 1 is an illustration of a head mounted device that may be used in the exemplary embodiments. -
FIG. 2 is an illustration of a block diagram of a computing device that may be present in the head mounted device ofFIG. 1 . -
FIG. 3 is an illustration of the head mounteddevice 10 initiating a line of sight communication with a browser of another device. -
FIG. 4 is an illustration of the browser ofFIG. 3 shown in more detail as having five tabs or windows opened in the browser. -
FIG. 5 is an illustration of the head mounted device establishing a line of sight communication with a browser in another device. -
FIG. 6 is an illustration of a user gazing through head mounted device at a current session QR code of the browser ofFIG. 5 . -
FIG. 7 is a graphical illustration of merging session QR codes. -
FIG. 8 is an illustration of the user gazing through the head mounted device towards the browser of Figures and 6 and transmitting the merged session QR code to the browser ofFIGS. 5 and 6 . -
FIG. 9 is an illustration of the browser ofFIG. 8 showing the tabs of browser session ofFIG. 4 . -
FIG. 10 is a flow chart illustrating the process of the exemplary embodiments. - Referring now to
FIG. 1 , there is shown an illustration of a head mounteddevice 10 that may be used in the exemplary embodiments. It should be understood that head mounteddevice 10 shown inFIG. 1 is only meant for purposes of illustration and not limitation and that other head mounted devices may serve the purposes of the exemplary embodiments provided these other head mounted devices have the functions and capabilities described herein. - Head mounted
device 10 may include avideo display 12 for the left eye and avideo display 14 for the right eye. Included within theframe 16 of the head mounteddevice 10 may be one or more computing devices (not shown inFIG. 1 ). Head mounteddevice 10 may or may not havelenses 18 which may or may not be prescription lenses. - The head mounted device may be any head mounted device such as Google Glass (Google), Looxcie (Looxcie Inc.), iOptik (Innovega Inc.) or Goldeni (Kopin), just to name a few.
- Referring now to
FIG. 2 , there is shown a block diagram of acomputer device 20 that may be present in head mounteddevice 10.Computing device 20 may include a central processing unit (CPU) 22,memory 24 andstorage 26, such as solid state storage. Whilestorage 26 is shown as withincomputing device 20,storage 26 may alternatively be cloud storage (i.e., storage on a remote server which may be connected to the head mounteddevice 10 by a network such as the internet via cellular or Wi-Fi capability in the head mounteddevice 10.). In addition, thecomputing device 20 may have a Global Positioning System (GPS) 28. The head mounteddevice 10 has communication capability, indicated bybox 30, to communicate with other head mounted devices as well as other computing devices such as smart phones, laptops, work stations and the like. The communication capability may include, but not be limited to, Wi-Fi, cellular, short range radio such as Bluetooth® and Near Field Communication, and even satellite capability. - The
computing device 20 may, in addition, have certain applications orprograms 32 resident in thecomputing device 30. These applications orprograms 32 may includeeye tracking 34 of the user of the head mounteddevice 10 and Quick Response (QR)code processing 36. It should be understood that it is within the scope of the exemplary embodiments for these applications orprograms 32 to be accessible remotely by the internet or in cloud storage. - The
computing device 20 may be connected tovideo screens FIG. 1 . In addition, thecomputing device 20 may be connected to one or more cameras 38 (not shown inFIG. 1 ) that may be present in the head mounteddevice 10. Thecameras 38 may be facing toward the user of the head mounteddevice 10 to catch eye movements (described hereafter) or facing away from the user of the head mounted device or both. - Eye tracking is a well-known technique for determining the point at which a user may be focusing on. One method of eye tracking is where
cameras 38 in the head mounteddevice 10 may register eye movements of the user of the head mounteddevice 10 as the user focuses on a target object. These eye movements may be converted to a user's gaze byeye tracking application 34. - In general, a QR code is a unique two-dimensional code that is readable by a computer device. For this purpose,
computing device 20 has aQR reader 40. TheQR reader 40 may usecameras 38 for QR reading orQR reader 40 may be separate fromcameras 38. A QR code typically includes black modules arranged in a square pattern on a white background and may be created by any commercially available application which generates QR codes from data sets. The QR code may be defined according to an ISO standard. In one exemplary embodiment, the QR code processing program incomputing device 20 may take a QR code read byQR reader 40 and modify the QR code according to one or more exemplary embodiments as will be described below. - Referring now to
FIG. 3 , head mounteddevice 10 initiates a line ofsight communication 42 with abrowser 44 of anotherdevice 46. Thedevice 46 shown inFIG. 3 is a smart phone but could be any other device having a browser. - In one exemplary embodiment,
eye tracking program 34 incomputing device 20 may detect a line of sight directed from the head mounteddevice 10 to browser 44 insmart phone 46. The head mounteddevice 10 may send ahandshake request 48 to browser 44 insmart phone 46. The head mounteddevice 10 may receive ahandshake acknowledgement 50 frombrowser 44 insmart phone 46. The handshake request 48 and handshakeacknowledgement 50 may be effective to create the handshake. Thereafter, the head mounteddevice 10 andbrowser 44 insmart phone 46 may thereafter share data. In addition, the head mounted device's public key may be shared withbrowser 44 insmart phone 46. - Referring now to
FIG. 4 ,browser 44 is shown in more detail as having five tabs orwindows 52 opened in thebrowser 44. Eachtab 52 may represent a different URL (Uniform Resource Locator) that is opened in thebrowser 44. The combination of all openedtabs 52 in thebrowser 44 along with the sessions in the various tabs represents the state of thebrowser 44. - The
browser 44 captures all of the session data associated with eachbrowser tab 52 in the state of thebrowser 44 and on-the-fly creates asession QR code 54 which is displayed in thebrowser 44. Thesession QR code 54 contains all of the browser session information in encoded form. Thesession QR code 54 may be encrypted with the user's public key previously shared with thebrowser 44. By encrypting thesession QR code 54 with the user's public key, illegitimate users may not be able to scan and decode thesession QR code 54. - Whenever the user wants, or has the need, to switch devices, the user may gaze, indicated by 56, at the
session QR code 54 through head mounteddevice 10 and then do an eye-gesture, for example a “wink”. Thegaze event 56 and eye gesture are captured by the head mounteddevice 10 which enables one ormore cameras 38 in the head mounteddevice 10 to scan the displayed session QR-code 54. The head mounteddevice 10 captures, indicated byarrow 58, and stores inmemory 24 orstorage 26 thesession QR code 54 which has all the session data associated withbrowser 44. - The exemplary embodiments where the
session QR code 54 is absorbed by the head mounteddevice 10 has the following advantages: -
- The user's head mounted
device 10 has finer control to get session information of any browser the user is viewing based on their line of sight when there are many open browsers in the viewed device. - This greatly improves the end user experience as the user does the most intuitive step.
- The exemplary embodiments do not depend on any operating system security controls to relay control information to the right application under multiple application scenarios.
- The exemplary embodiments provide a better user trust factor since (1) the
session QR code 54 is encrypted using the public key of the user, and (2) the user cognitively knows the right browser to which the user is going to transfer the session state as the user has to gaze at the target browser which prevents unintended mistakes (such as sending wrong or other applications session data, etc.).
- The user's head mounted
- Referring now to
FIG. 5 , the user through head mounteddevice 10 may establish a line of sight communication with a browser in another device, in thiscase browser 64 inlaptop 66. As before, ahandshake request 60 may be sent tobrowser 64 oflaptop 66 and ahandshake acknowledgement 62 may be sent frombrowser 64 oflaptop 66. In addition, device information such as a photo of the device or device identification and the public key of thebrowser 64 of thelaptop 66 may be transferred to the user through the head mounteddevice 10. The purpose for receiving the public key of thebrowser 64 is to encrypt the information that needs to be sent tobrowser 64 with the public key, which can then be read only bybrowser 64. The device information may be shown to the user through the head mounteddevice 10 and the user may confirm that the user desires to share session information withbrowser 64 oflaptop 66. - It should be understood that the exemplary embodiments are applicable to transferring state between different devices. In this scenario, handshaking is required to establish communication with the second device as described above.
- The exemplary embodiments are also applicable to transferring state between different browsers (example Firefox and Chrome) in the same device. In this scenario, it is preferred that handshaking would also be required.
- The
browser 64 is shown in more detail inFIG. 6 . Whenever the user through head mounteddevice 10 focuses on a new browser in the same device or a browser in a new device and the user wants to continue with the same state of the previous browser (such asbrowser 44 in smart phone 46), the user gazes 70 through head mounteddevice 10 at the currentsession QR code 68 of thebrowser 64. The head mounteddevice 10 captures, indicated byarrow 72, the currentsession QR code 68 of thenew browse 64 and stores the currentsession QR code 68 inmemory 24 orstorage 26. - After the head mounted
device 10 captures the currentsession QR code 68, the currentsession QR code 68 and the previoussession QR code 54 are merged into a newsession QR code 74. This process is graphically illustrated inFIG. 7 . The state of the browser session inbrowser 44 as embodied in session QR code 54 (graphically illustrated as session QR1) is merged with the state of the browser session inbrowser 64 as embodied in session QR code 68 (graphically illustrated as session QR2) to result in the merged session QR code 74 (graphically illustrated as session QRmerge). Essentially, the state of thebrowser 44 along with the state ofbrowser 64 is encoded in themerged QR code 74. The mergedsession QR code 74 may be encrypted with the public key of thebrowser 64. Since themerged QR code 74 is going to be sent to thebrowser 64, the browser session information of the state of thebrowser 44 has been encrypted with the public key ofbrowser 64, which can only be decrypted by thebrowser 64, sinceonly browser 64 has its private key. - Referring now to
FIG. 8 , the user may gaze 78 through head mounteddevice 10 towardsbrowser 64 and transmit, indicated byarrow 79, the mergedsession QR code 74 tobrowser 64. The mergedsession QR code 74 may then replace the previoussession QR code 68. Before thebrowser 64 is actually updated with the new session state as embodied in mergedsession QR code 74, the user through head mounteddevice 10 may receive a pop up message requesting the user to confirm that the user wishes to update the session state ofbrowser 64 with the new session state as embodied in mergedsession QR code 74. If the user confirms that the session state ofbrowser 64 is to be updated, then thebrowser 64 is updated according to the session data in mergedsession QR code 74. -
Browser 64 updates the displayed session QR code with the mergedsession QR code 74 retrieved from the head mounteddevice 10. Since the currently viewedbrowser 64 now has the session information of the user's last focused browser, which isbrowser 44 insmart phone 46,browser 64 loads all the user viewed tabs frombrowser 44 with the session state maintained in thenew browser 64.FIG. 9 is an enlarged view ofbrowser 64 showingtabs 76 which correspond totabs 52 inbrowser 44.Tabs 76 are directed to the same URLs and in the same order astabs 52 inbrowser 44. Thus, the state ofbrowser 44 has been effectively transferred tobrowser 64. -
FIG. 10 is a flow chart illustrating the exemplary embodiments. In a first step, the head mounteddevice 10 may communicate with a first browser, such asbrowser 44 inFIG. 3 ,box 80. - The first browser may create a first session QR code, such as
session QR code 54 inFIG. 4 ,box 82. - The head mounted
device 10 may capture the first session QR code,box 84. - The head mounted
device 10 may communicate with a second browser, such asbrowser 64 inFIG. 5 ,box 86. - The second browser may create a second session QR code, such as
session QR code 68 inFIG. 6 ,box 88. - The head mounted
device 10 may capture the second session QR code,box 90. - The head mounted
device 10 may merge the first session QR code and the second session QR code into a merged session QR code, such as mergedsession QR code 74 inFIGS. 7 to 9 ,box 92. - The head mounted
device 10 may transmit the merged session QR code to the second browser,box 94. - The second browser loads the merged session QR code and displays the merged session QR code and the browser session from the first browser,
box 96. - The present invention may be a system, a method, and/or a computer program product at any possible technical detail level of integration. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention.
- The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
- Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A network adapter card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.
- Computer readable program instructions for carrying out operations of the present invention may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, configuration data for integrated circuitry, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++, or the like, and procedural programming languages, such as the “C” programming language or similar programming languages. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present invention.
- Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.
- These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function/act specified in the flowchart and/or block diagram block or blocks.
- The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
- The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the blocks may occur out of the order noted in the Figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.
- It will be apparent to those skilled in the art having regard to this disclosure that other modifications of the exemplary embodiments beyond those embodiments specifically described here may be made without departing from the spirit of the invention. Accordingly, such modifications are considered within the scope of the invention as limited solely by the appended claims.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/294,701 US9948729B1 (en) | 2016-10-15 | 2016-10-15 | Browsing session transfer using QR codes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/294,701 US9948729B1 (en) | 2016-10-15 | 2016-10-15 | Browsing session transfer using QR codes |
Publications (2)
Publication Number | Publication Date |
---|---|
US9948729B1 US9948729B1 (en) | 2018-04-17 |
US20180109631A1 true US20180109631A1 (en) | 2018-04-19 |
Family
ID=61872734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/294,701 Active US9948729B1 (en) | 2016-10-15 | 2016-10-15 | Browsing session transfer using QR codes |
Country Status (1)
Country | Link |
---|---|
US (1) | US9948729B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230012696A1 (en) * | 2021-07-19 | 2023-01-19 | EMC IP Holding Company LLC | True secure airgap |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10574644B2 (en) | 2017-05-03 | 2020-02-25 | International Business Machines Corporation | Stateful session manager |
US10893043B1 (en) * | 2018-09-12 | 2021-01-12 | Massachusetts Mutual Life Insurance Company | Systems and methods for secure display of data on computing devices |
US11044279B1 (en) | 2019-12-19 | 2021-06-22 | Capital One Services, Llc | Systems and methods for secure browser session transfer |
US20230176648A1 (en) * | 2020-05-19 | 2023-06-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Personal Device Activation and Unlocking Using Gaze Tracking |
US11644902B2 (en) * | 2020-11-30 | 2023-05-09 | Google Llc | Gesture-based content transfer |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US444795A (en) | 1891-01-13 | Compass attachment for field-glasses | ||
DE4222417C2 (en) | 1992-07-08 | 1994-06-23 | Swarovski & Co | Binoculars with additional information |
US5689619A (en) | 1996-08-09 | 1997-11-18 | The United States Of America As Represented By The Secretary Of The Army | Eyetracker control of heads-up displays |
JP3413127B2 (en) | 1999-06-11 | 2003-06-03 | キヤノン株式会社 | Mixed reality device and mixed reality presentation method |
JP2002368762A (en) | 2001-06-06 | 2002-12-20 | Olympus Optical Co Ltd | Local network system, network system and video conference system, and mobile communication unit |
US7762665B2 (en) | 2003-03-21 | 2010-07-27 | Queen's University At Kingston | Method and apparatus for communication between humans and devices |
US7401920B1 (en) | 2003-05-20 | 2008-07-22 | Elbit Systems Ltd. | Head mounted eye tracking and display system |
US7522344B1 (en) | 2005-12-14 | 2009-04-21 | University Of Central Florida Research Foundation, Inc. | Projection-based head-mounted display with eye-tracking capabilities |
US7542210B2 (en) | 2006-06-29 | 2009-06-02 | Chirieleison Sr Anthony | Eye tracking head mounted display |
WO2008141460A1 (en) | 2007-05-23 | 2008-11-27 | The University Of British Columbia | Methods and apparatus for estimating point-of-gaze in three dimensions |
US8472120B2 (en) | 2010-02-28 | 2013-06-25 | Osterhout Group, Inc. | See-through near-eye display glasses with a small scale image source |
US8482859B2 (en) | 2010-02-28 | 2013-07-09 | Osterhout Group, Inc. | See-through near-eye display glasses wherein image light is transmitted to and reflected from an optically flat film |
US9129295B2 (en) | 2010-02-28 | 2015-09-08 | Microsoft Technology Licensing, Llc | See-through near-eye display glasses with a fast response photochromic film system for quick transition from dark to clear |
US20120212484A1 (en) | 2010-02-28 | 2012-08-23 | Osterhout Group, Inc. | System and method for display content placement using distance and location information |
US8488246B2 (en) | 2010-02-28 | 2013-07-16 | Osterhout Group, Inc. | See-through near-eye display glasses including a curved polarizing film in the image source, a partially reflective, partially transmitting optical element and an optically flat film |
US8494439B2 (en) | 2010-05-04 | 2013-07-23 | Robert Bosch Gmbh | Application state and activity transfer between devices |
EP2691856A1 (en) | 2011-03-31 | 2014-02-05 | AOL Inc. | Systems and methods for transferring application state between devices based on gestural input |
US8836771B2 (en) | 2011-04-26 | 2014-09-16 | Echostar Technologies L.L.C. | Apparatus, systems and methods for shared viewing experience using head mounted displays |
US8812601B2 (en) | 2011-05-09 | 2014-08-19 | Google Inc. | Transferring application state across devices with checkpoints |
US8510166B2 (en) | 2011-05-11 | 2013-08-13 | Google Inc. | Gaze tracking system |
US8775850B2 (en) | 2011-06-28 | 2014-07-08 | Amazon Technologies, Inc. | Transferring state information between electronic devices |
JP5348192B2 (en) | 2011-07-11 | 2013-11-20 | 日本電気株式会社 | Work support system, terminal, method and program |
US8190749B1 (en) | 2011-07-12 | 2012-05-29 | Google Inc. | Systems and methods for accessing an interaction state between multiple devices |
US8608074B2 (en) | 2011-12-20 | 2013-12-17 | Seiko Epson Corporation | Method and apparatus for locating and decoding machine-readable symbols |
US8819798B2 (en) | 2011-12-29 | 2014-08-26 | Ebay Inc. | System and method for transferring states between electronic devices |
US9122321B2 (en) | 2012-05-04 | 2015-09-01 | Microsoft Technology Licensing, Llc | Collaboration environment using see through displays |
US20140173125A1 (en) | 2012-12-18 | 2014-06-19 | Salesforce.Com, Inc. | Systems and methods for transferring a session between devices in an on-demand computing environment |
US9619021B2 (en) | 2013-01-09 | 2017-04-11 | Lg Electronics Inc. | Head mounted display providing eye gaze calibration and control method thereof |
KR101786541B1 (en) | 2013-05-13 | 2017-10-18 | 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 | Line of sight initiated handshake |
US10755217B2 (en) | 2014-04-05 | 2020-08-25 | Wearable Intelligence, Inc. | Systems and methods for digital workflow and communication |
-
2016
- 2016-10-15 US US15/294,701 patent/US9948729B1/en active Active
Non-Patent Citations (1)
Title |
---|
Pandya et al. "A Survey on QR Codes: in context of Research and Application", International Journal of Emerging Technology and Advanced Engineering, Website: www.ijetae.com, ISSN 2250-2459, ISO 9001:2008 Certified Journal, Volume 4, Issue 3, March 2014 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230012696A1 (en) * | 2021-07-19 | 2023-01-19 | EMC IP Holding Company LLC | True secure airgap |
Also Published As
Publication number | Publication date |
---|---|
US9948729B1 (en) | 2018-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9948729B1 (en) | Browsing session transfer using QR codes | |
US11797249B2 (en) | Method and apparatus for providing lock-screen | |
US11112942B2 (en) | Providing content via multiple display devices | |
AU2014389509B2 (en) | Techniques to selectively capture visual media using a single interface element | |
US9794264B2 (en) | Privacy controlled network media sharing | |
US10812569B2 (en) | Eye contact-based information transfer | |
US9236911B2 (en) | Secure transfer of whiteboard content | |
US20150147961A1 (en) | Content Retrieval via Remote Control | |
US20200259779A1 (en) | Super chat | |
US10089057B2 (en) | Display redistribution between a primary display and a secondary display | |
CN112312222A (en) | Video sending method and device and electronic equipment | |
US9531703B2 (en) | Single sign-on via application or browser | |
JP2023550819A (en) | Presentation method, equipment and electronic equipment | |
JP2023515105A (en) | MULTIMEDIA CONFERENCE DATA PROCESSING METHOD, APPARATUS, AND ELECTRONIC DEVICE | |
US20180343563A1 (en) | Method and system for using a plurality of accounts in an instant messaging application | |
US20150326705A1 (en) | Mobile Device Data Transfer Using Location Information | |
CN106455128B (en) | WIFI point-to-point data transmission method and device | |
US9595020B2 (en) | Dynamic media captions in a social network environment | |
CN104268611A (en) | Webpage synchronizing method and device | |
US20180095605A1 (en) | Generating a Mixed reality Interface to Expose Object Functionality | |
US10712827B2 (en) | Client device motion control via a video feed | |
US20160125092A1 (en) | Web component display by cross device portal | |
US9660989B1 (en) | Internet-wide identity management widget | |
US20160337499A1 (en) | Data transmission device, data transmission method and program for data transmission device | |
US20150373142A1 (en) | Facilitating multiple interaction modes within a social discovery service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:EKAMBARAM, VIJAY;SREE PRAKASH, ASHOK PON KUMAR;RAKSHIT, SARBAJIT K.;SIGNING DATES FROM 20161004 TO 20161006;REEL/FRAME:040024/0783 |
|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ORDER OF INVENTORS:VIJAY EKAMBARAMASHOK PON KUMAR SREE PRAKASHSARBAJIT K. RAKSHIT PREVIOUSLY RECORDED ON REEL 040024 FRAME 0783. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNORS:EKAMBARAM, VIJAY;RAKSHIT, SARBAJIT K.;SREE PRAKASH, ASHOK PON KUMAR;SIGNING DATES FROM 20161004 TO 20161006;REEL/FRAME:041952/0163 |
|
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 |