WO2012108129A1 - 端末移行システム - Google Patents

端末移行システム Download PDF

Info

Publication number
WO2012108129A1
WO2012108129A1 PCT/JP2012/000310 JP2012000310W WO2012108129A1 WO 2012108129 A1 WO2012108129 A1 WO 2012108129A1 JP 2012000310 W JP2012000310 W JP 2012000310W WO 2012108129 A1 WO2012108129 A1 WO 2012108129A1
Authority
WO
WIPO (PCT)
Prior art keywords
display
terminal
position information
information
screen
Prior art date
Application number
PCT/JP2012/000310
Other languages
English (en)
French (fr)
Inventor
由佳 小澤
稲見 聡
良浩 氏家
Original Assignee
パナソニック株式会社
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 パナソニック株式会社 filed Critical パナソニック株式会社
Publication of WO2012108129A1 publication Critical patent/WO2012108129A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation

Definitions

  • the present invention when taking over the use of an application between terminals having different display screen sizes and screen resolutions, the user's operation or attention in the display screen of the migration source terminal is continuously reproduced on the display screen of the migration destination terminal.
  • the present invention relates to a terminal migration system that can be used.
  • PCs desktop PCs
  • PDAs personal digital assistants
  • mobile phones and smartphones. Therefore, a plurality of information communication terminals are properly used according to the situation. Then, when switching usage between multiple information communication terminals, the application contents used in the switching source transfer source terminal are transmitted to the switching destination transfer destination terminal, thereby continuing the application in the transfer destination terminal.
  • a seamless terminal migration method that can be used is disclosed in Patent Document 1. Further, Patent Document 1 also mentions processing for optimizing the contents displayed on the screen in accordance with the screen resolution of the transfer destination terminal by enlarging or reducing, or excluding data that cannot be reproduced.
  • the migration source terminal is a tablet PC
  • the migration destination terminal is a mobile phone
  • the display screen size ratio is about 4: 1.
  • the user needs to take an action of temporarily enlarging the reduced display content to a size that is easy to see, and then searching for and moving to the part that was viewed on the tablet PC by moving the screen such as a scroll operation.
  • the object of the present invention is to specify the location that the user has been operating or paying attention on the display screen of the migration source terminal, so that the location that the user has operated or focused on on the display screen of the migration source terminal is transferred. It is to provide a terminal migration system that can be reproduced on the display screen of a destination terminal.
  • the present invention is directed to a terminal migration system capable of continuously using an application from a first terminal to a second terminal. And in order to achieve the said objective, in the terminal transfer system of this invention, the 1st terminal acquires the specific position on the program displayed on a screen by an application based on the user's action with respect to an application.
  • a display position information acquisition unit that acquires the display position of the program on the screen of the second terminal based on the specific position, and an information transmission unit that transmits information indicating the display position and the program to the second terminal,
  • An information receiving unit that receives information from the first terminal, an application control unit that displays the program indicated in the information on the screen by the application, and a position of the program displayed on the screen is corrected according to the display position indicated in the information
  • a display position correction unit is provided.
  • the first terminal further includes an input receiving unit that receives an operation on the application by the user, and a holding unit that holds an operation performed by the user via the input receiving unit as an operation history.
  • An acquisition part is comprised so that the operation position by the user on the program displayed on the screen by an application may be acquired as a specific position based on the operation history.
  • the first terminal is further provided with a specifying unit that specifies a viewpoint on the program that the user watches, and a holding unit that holds the viewpoint of the user specified by the specifying unit as a viewpoint history.
  • the position information acquisition unit is configured to acquire, as a specific position, the position of interest by the user on the program displayed on the screen by the application based on the viewpoint history.
  • the position information acquisition unit preferably acquires the operation position or the target position based on the latest operation history or viewpoint history.
  • the display position information acquisition unit is configured to determine an object position that is at least closest to the operation position or the target position among objects included in the program, or a position of another object that changes in accordance with the operation of the object at the operation position. It is preferable to obtain it as a display position.
  • the display position correction unit corrects the scale for displaying the program and / or the display start position so that an object at least closest to the operation position or the target position or another object is within the screen of the second terminal. It is desirable.
  • the user's operation and the location that the user was paying attention on the display screen of the transfer source terminal can be easily displayed on the transfer destination terminal. Can be made. Therefore, when resuming the processing performed on the migration source terminal at the migration destination terminal, the user does not need to take an action of searching for a point of interest on the migration source terminal by expanding / reducing the display contents or scrolling the screen. Smooth terminal transition is possible.
  • FIG. 1 is a diagram showing a configuration example of a terminal migration system including an information communication terminal provided by the present invention.
  • FIG. 2 is a diagram illustrating a display content example for one screen of a Web site using a Web browser.
  • FIG. 3 is a diagram illustrating an example of display contents on the display screens of the tablet PC and the mobile phone.
  • FIG. 4 is a diagram illustrating a configuration of a migration source terminal and a migration destination terminal that configure the terminal migration system according to the first embodiment of the present invention.
  • FIG. 5 is a diagram illustrating an example of an HTML document acquired from the Web server by the application control unit.
  • FIG. 6 is a diagram schematically illustrating an example of the operation history information list.
  • FIG. 7 is a diagram schematically illustrating an example of the object information list.
  • FIG. 1 is a diagram showing a configuration example of a terminal migration system including an information communication terminal provided by the present invention.
  • FIG. 2 is a diagram illustrating a display content example for one screen of a
  • FIG. 8A is a diagram schematically illustrating an example of screen display information.
  • FIG. 8B is a diagram schematically illustrating another example of the screen display information.
  • FIG. 9A is a diagram illustrating an example of the operation position information list.
  • FIG. 9B is a diagram illustrating another example of the operation position information list.
  • FIG. 10A is a diagram schematically illustrating an example of a display position information list.
  • FIG. 10B is a diagram schematically illustrating another example of the display position information list.
  • FIG. 11 is a diagram illustrating an example of application reproduction information.
  • FIG. 12 is a diagram illustrating an example of the migration destination terminal information.
  • FIG. 13 is a flowchart showing an example of various information creation processing and terminal migration processing procedures executed by the migration source terminal according to the first embodiment of the present invention.
  • FIG. 13 is a flowchart showing an example of various information creation processing and terminal migration processing procedures executed by the migration source terminal according to the first embodiment of the present invention.
  • FIG. 13 is
  • FIG. 14A is a flowchart illustrating an example of a processing procedure in which the operation position information acquisition unit acquires the operation position information list.
  • FIG. 14B is another flowchart illustrating an example of a processing procedure in which the operation position information acquisition unit acquires the operation position information list.
  • FIG. 15A is a flowchart illustrating an example of a processing procedure in which the display position information acquisition unit acquires the display position information list.
  • FIG. 15B is a flowchart illustrating another example of a processing procedure in which the display position information acquisition unit acquires the display position information list.
  • FIG. 16 is a flowchart illustrating an example of a processing procedure in which the display position information acquisition unit specifies the closest object.
  • FIG. 17 is a flowchart showing an example of a terminal migration processing procedure of the migration destination terminal according to the first embodiment of the present invention.
  • FIG. 18 is a flowchart illustrating an example of a display position correction processing procedure executed by the display position correction unit.
  • FIG. 19 is a diagram illustrating an example of a method for correcting the display position.
  • FIG. 20 is a diagram illustrating a configuration of a migration source terminal and a migration destination terminal that configure a terminal migration system according to the second embodiment of the present invention.
  • FIG. 21 is a diagram illustrating an example of a camera unit installed in a tablet PC.
  • FIG. 22 is a diagram schematically illustrating a viewpoint history information list.
  • FIG. 23 is a diagram illustrating an example of the attention position information list.
  • FIG. 24 is a flowchart showing an example of various information creation processing and terminal migration processing procedures executed by the migration source terminal according to the second embodiment of the present invention.
  • FIG. 25A is a flowchart illustrating an example of a processing procedure in which the attention position information acquisition unit acquires the attention position information list.
  • FIG. 25B is a flowchart illustrating another example of the processing procedure for the attention position information acquisition unit to acquire the attention position information list.
  • FIG. 26A is a flowchart illustrating an example of a processing procedure in which the display position information acquisition unit acquires the display position information list.
  • FIG. 26B is a flowchart illustrating another example of the processing procedure in which the display position information acquisition unit acquires the display position information list.
  • a user owns two or more information communication terminals having the same resolution and different screen sizes, and the information communication terminal to be used is changed from one terminal (hereinafter referred to as a migration source terminal) to another terminal (hereinafter referred to as a transition).
  • a migration source terminal For the case of switching to a destination terminal, it is assumed that the application used in the migration source terminal is continuously used in the migration destination terminal.
  • the present invention transmits, to the migration destination terminal, information indicating a location that the user has focused on by an operation or the like on the display screen of the migration source terminal, in addition to the work contents of the application in the migration source terminal. .
  • the application used by the user on the migration source terminal is reproduced together with the work contents on the migration source terminal, and the location that the user has focused on on the screen of the migration source terminal is displayed. Is done.
  • FIG. 1 is a diagram showing a configuration example of a terminal migration system including an information communication terminal provided by the present invention.
  • one user has a plurality of information communication terminals that can be connected to the network 40 such as the tablet PC 10, the mobile phone 20, and the notebook PC 30. And the user uses these information communication terminals properly according to the situation.
  • a notebook PC 30 or a tablet PC 10 is used at home, and the mobile phone 20 is used when going out.
  • FIG. 2 shows an example of display contents for one screen of a website that can be viewed using a web browser when viewing Internet news.
  • An example of display contents on the display screen 11 of the tablet PC 10 and the display screen 21 of the mobile phone 20 is shown in FIG.
  • the Web browser acquires the HTML document and displays the Web site.
  • a website for one screen is created by laying out characters and objects according to the size of the display screen and determining the size of the character font and objects. Further, when the created website for one screen does not fit on the display screen, only a part of the website is displayed on the display screen, and the user performs a scrolling operation or the like for the part that does not fit on the display screen. Can be viewed. Since such a technique is a general technique of a Web browser, description of an implementation method is omitted.
  • the website page 200 shown in FIG. 2 is the display content of one screen of the website whose URL is “http://internetnews.co.jp”.
  • the screen size is limited and only a part of the website page 200 is displayed at a time.
  • the display screen 21 of the mobile phone 20 has a smaller screen size than the display screen 11 of the tablet PC 10
  • the content displayed by the mobile phone 20 is reduced.
  • the display ranges 201 and 202 of FIG. 2 can be displayed at once, and in the size of the display screen 21 of the mobile phone 20, the display range 203 of FIG. It can be displayed.
  • FIG. 3 shows an example in which the display range 202 in FIG. 2 is displayed on the display screen 11 of the tablet PC 10 and an example in which the display range 203 in FIG. 2 is displayed on the display screen 21 of the mobile phone 20.
  • control is performed to display a portion on which the user has focused on the screen so as not to hinder the work after the handover even if the content displayed on the screen of the transfer destination terminal is reduced.
  • the transfer source terminal is the tablet PC 10
  • the transfer destination terminal is the mobile phone 20
  • the application is a Web browser
  • the program displayed by the application is a Web site
  • Internet news is generated using the Web browser on the tablet PC 10.
  • the present invention will be described in detail by taking as an example a case where a user viewing a website changes the terminal to be used to the mobile phone 20 (expressed as terminal transition).
  • the terminal transition from the tablet PC 10 to the mobile phone 20 may be performed in accordance with an instruction via a physical button 14 (FIG. 3) or a software key provided on the tablet PC 10, or a predetermined state change is detected. May be done automatically.
  • FIG. 4 is a diagram showing the configuration of the migration source terminal 100 and the migration destination terminal 110 constituting the terminal migration system according to the first embodiment of the present invention.
  • the migration source terminal 100 includes a terminal migration device 300, an input reception unit 301, an application control unit 302, an operation information holding unit 303, a display information holding unit 304, an external connection unit 309, and a display unit 101.
  • the terminal transition apparatus 300 includes an operation position information acquisition unit 305, a display position information acquisition unit 306, a reproduction information acquisition unit 307, and an information transmission unit 308.
  • the migration destination terminal 110 includes an input reception unit 310, an information reception unit 311, an application control unit 312, a display position correction unit 313, an external connection unit 315, and a display unit 111.
  • a schematic input receiving unit 301 having a configuration included in the migration source terminal 100 is an input device such as a keyboard, a cross key, a mouse, and a touch panel, and receives an input by a user. If the input from the user is a terminal transition request, the input reception unit 301 instructs the information transmission unit 308 in accordance with the terminal transition request. On the other hand, when the input from the user is not a terminal migration request, the input reception unit 301 creates user input information based on the input from the user, and transmits the created user input information to the application control unit 302. This user input information is information indicating at least the operation position and the operation content on the screen of the display unit 101.
  • the application control unit 302 controls execution of one or more applications in accordance with user input information acquired from the input receiving unit 301.
  • An example of the application in the present embodiment is a web browser that displays a website on the Internet.
  • the application control unit 302 connects to a Web server on the Internet via the external connection unit 309 by specifying a URL, and acquires an HTML document that is a markup language for describing the Web site page 200. Then, the application control unit 302 analyzes the acquired HTML document, determines the layout of objects (moving images, still images, sounds, buttons, character strings, etc.) to be displayed on the display unit 101, or focuses on the objects.
  • the Web site page 200 is created by acquiring processing operation information when an object is applied or an object is selected. Then, the application control unit 302 displays a part of the website page 200, for example, the display range 202 shown in FIG. 2 on the display unit 101 according to the screen size of the display unit 101.
  • the application control unit 302 displays information related to the layout of each object arranged on the website page 200 displayed on the display unit 101 as an object information list (FIG. 7, details will be described later). Hold on. Further, the application control unit 302 displays information indicating which part of the website page 200 is displayed on the display unit 101 as screen display information (FIGS. 8A and 8B, details will be described later). Hold on.
  • the application control unit 302 determines the user's operation intention and the pointing object based on the user input information, and executes the corresponding input operation.
  • Input operations include, for example, cursor movement, screen scrolling, clicking, and gestures.
  • the gesture is a function for executing a specific operation registered in an application or a terminal by performing a specific input operation. For example, on a touch panel capable of multi-touch input, “Pinch In”, which reduces the screen size by reducing the distance between two fingers placed on the touch panel, and increases the screen size by increasing the distance between the two fingers.
  • the gesture of “pinch out” is known. What input operation is interpreted as user input information differs depending on the application.
  • the application control unit 302 holds the input operation for a certain period according to the user input information in the operation information holding unit 303 as an operation history information list (FIG. 6, details will be described later).
  • the operation history is a history of screen operations performed by the user, and is obtained by determining a user's operation intention and a pointing object from user input information. Note that when the range of the Web site displayed on the display unit 101 is changed by an input operation or script processing, the screen display information held in the display information holding unit 304 is changed.
  • the operation position information acquisition unit 306 When the operation position information acquisition unit 306 receives an operation position information acquisition request from the display position information acquisition unit 306, the operation position information acquisition unit 305 receives at least one operation position information from the operation information holding unit 303 in order to acquire operation position information. Get operation history of. Then, the operation position information acquisition unit 305 generates an operation position information list (FIGS. 9A and 9B, details will be described later) from the acquired operation history, and transmits it to the display position information acquisition unit 306.
  • the operation position information list is information for indicating which part of the Web site page 200 has been operated.
  • the display position information acquisition unit 306 When there is a display position information acquisition request from the information transmission unit 308, the display position information acquisition unit 306 requests the operation position information acquisition unit 305 for an operation position information list.
  • the display position information acquisition unit 306 acquires the object information list and the screen display information from the display information holding unit 304.
  • the display position information acquisition unit 306 generates a display position information list (FIGS. 10A and 10B, details will be described later) from the operation position information list, the object information list, and the screen display information, and transmits the list to the information transmission unit 308.
  • the display position information list is information for indicating which part of the website page 200 is to be displayed on the migration destination terminal 110.
  • the reproduction information acquisition unit 307 receives application reproduction information from the application control unit 302 so that the application can continue to be used in the migration destination terminal 110 (see FIG. 11 for details). Is acquired and transmitted to the information transmitting unit 308.
  • the application reproduction information includes at least an application name.
  • the application is a Web browser, at least the URL of the Web site being displayed is included. The content of the application reproduction information depends on the application.
  • the information transmission unit 308 acquires a display position information list from the display position information acquisition unit 306, acquires application reproduction information from the reproduction information acquisition unit 307, and transfers destination terminal information (FIG. 12).
  • the display position information list and the application reproduction information are transmitted to the transfer destination terminal 110 based on the details described later.
  • the transfer destination terminal information is information for identifying a terminal required for specifying a transfer destination terminal and establishing communication, for example, a network address, a MAC address, a terminal ID, etc. of the transfer destination terminal 110 Corresponds.
  • the contents of the destination terminal information are not limited as long as the terminal can be specified and communication can be established. Further, the communication means with the transfer destination terminal is not limited.
  • the transfer destination terminal information may be always held in the information transmission unit 308, or may be acquired when a terminal transfer request is made.
  • the external connection unit 309 has a communication function with an external line and acquires information from the Internet.
  • the display unit 101 is a display device having a screen for displaying information such as a liquid crystal display.
  • the display screen 11 included in the tablet PC 10 corresponds.
  • a schematic input receiving unit 310 having a configuration included in the migration destination terminal 110 has the same function as the input receiving unit 301 and receives input from the user.
  • the information receiving unit 311 acquires application reproduction information and a display position information list from the migration source terminal 100. Then, the information reception unit 311 transmits application reproduction information to the application control unit 312, instructs execution of the application, and transmits a display position information list to the display position correction unit 313.
  • the application control unit 312 has the same function as the application control unit 302. Furthermore, the application control unit 312 activates an application based on the application reproduction information, and reproduces the work content of the migration source terminal 100.
  • An example of the application in the present embodiment is a web browser that displays a website on the Internet.
  • to reproduce the work content of the migration source terminal 100 is to display at least the website equivalent to the website displayed on the migration source terminal 100 on the migration destination terminal 110.
  • the equivalent website may be the website with the same URL, or when the website prepares a plurality of websites with the same content for different terminals for different operating environments, It may be a website. Further, not only the displayed Web site but also bookmark and history back information may be taken over by the transfer destination terminal 110.
  • the display position correction unit 313 displays the display start position and display of the website page 200 so that the part specified in the display position information list among the website pages 200 created by the application control unit 312 is displayed on the display unit 111.
  • the application control unit 312 is instructed to correct the range.
  • the external connection unit 315 has the same function as the external connection unit 309, and acquires information from the Internet.
  • the display unit 111 is a display device having a screen for displaying information such as a liquid crystal display. In the present embodiment, the display screen 21 included in the mobile phone 20 corresponds to the display unit 111.
  • FIG. 5 is a diagram illustrating an example of an HTML document that the application control unit 302 acquires from the Web server in order to create the Web site page 200.
  • the format of the HTML document 500 and the meaning of each tag are standardized by the World Wide Web Consortium (W3C) and are generally known, so detailed description thereof will be omitted.
  • W3C World Wide Web Consortium
  • FIG. 6 is a diagram schematically showing an example of the operation history information list 600 held by the operation information holding unit 303.
  • the operation history information list 600 is a set of operation histories for a certain period, and each row of the operation history information list 600 indicates one operation history (for example, operation history 601).
  • the operation history information list 600 includes an “operation content” indicating how the user input information is interpreted and assigned to which operation, and an “argument” necessary for executing the operation described in the operation content. 1 ”and“ argument 2 ”. Although the number of arguments differs depending on the operation content, the number of arguments is two in this embodiment.
  • the operation history information list 600 may include an “operation time” indicating the time when the operation described in the operation content is executed. In the operation history information list 600 shown in FIG. 6, 8-digit date information representing the year, month, day, 6-digit time information representing hour, minute, second, and 3-digit millisecond information representing 1/100 second are hyphenated. The operation time in the form of connecting with is illustrated.
  • the application control unit 302 interprets user input information, determines the operation content, and performs an input operation on the application.
  • the operation content determination method depends on the application.
  • processes in which user input information is interpreted in a Web browser and operations such as “cursor movement”, “pinch-in / pinch-out”, “click”, and “scroll” are performed on an application are generally known. Therefore, the description is omitted.
  • FIG. 7 is a diagram schematically illustrating an example of the object information list 700 held by the display information holding unit 304.
  • the display information holding unit 304 for one or more Web sites being displayed on the display unit 101 or being read by the application control unit 302, information listing the layout information of all the objects included in each Web site is displayed as object information.
  • the list 700 is retained. Therefore, each row of the object information list 700 is layout information of one object (for example, object information 701, 702, 703).
  • the object information list 700 illustrated in FIG. 7 is a part of the object information list included in the website page 200.
  • the object information list 700 includes a “tag name” indicating a tag name in the HTML document corresponding to the object and an “in document” indicating the number of the same tag in the HTML document.
  • Tag index ".
  • in-page display start position X coordinate (Xpd)” and Y coordinate indicating the X coordinate of the display start position in the website page 200 are set.
  • “In-page display start position Y coordinate (Ypd)” is included.
  • page display range width (Wpd) indicating the width of the display range within the website page 200 and “page indicating the height of the display range”.
  • page display range height (Hpd) ".
  • the “related tag” is information for specifying another object whose state is updated when a certain object is operated by the user.
  • the state for example, when a certain object is a button object, a change such as the start of playback of a video that is another object is started when the user presses the button.
  • the related tag since the object whose state is to be updated is specified by the tag name and the in-document index, the related tag is a character string in which the tag name and the in-document index are separated by a comma (,).
  • the units of “in-page display start position X coordinate”, “in-page display start position Y coordinate”, “in-page display range width”, and “in-page display range height” are dots.
  • Each tag of the HTML document 500 is analyzed to determine “in-page display start position X coordinate”, “in-page display start position Y coordinate”, “in-page display range width”, and “in-page display range height”.
  • the means for creating the Web site page 200 is known as a general Web browser technology, and thus description thereof is omitted.
  • a means for specifying another object whose state is updated when an object obtained by analyzing a script of the HTML document 500 is operated by a user is known as a general Web browser technique.
  • a function can be acquired by referring to the onclick attribute of a certain object, and the object handled by the analysis of the function can be specified. For example, document. If there is an Id that is an argument of getElementById, it can be seen that the tag of this Id is handled in the function.
  • FIG. 8A is a diagram schematically illustrating an example of the screen display information 800 held in the display information holding unit 304.
  • the screen display information 800 is information indicating which part of the website page 200 that is a website is displayed on the display unit 101 at what magnification.
  • the screen display information 800 includes “website page width” and “website page height” describing the width and height of the web site page 200 that indicate the actual size of the web site displayed on the display unit 101. Including.
  • the unit of “Web site page width” and “Web site page height” is a dot.
  • the screen display information 800 indicates which part of the website page 200 is displayed on the display unit 101, the Web corresponding to the display start position on the display unit 101, that is, the position on the upper left of the screen of the display unit 101. It includes “Web site page display start position X coordinate” and “Web site page display start position Y coordinate” describing the X coordinate and Y coordinate of the position of the site page 200.
  • the unit of “Web site page display start X coordinate” and “Web site page display start Y coordinate” is a dot. If there is no particular designation when a new website is opened, the upper left corner of the website is set as the display start position, so the “website page display start position X coordinate” and the “website page display start position Y coordinate”. The initial value of is “0”.
  • the website page 200 may be enlarged / reduced from the initial screen size by a user pinch-in / pinch-out operation or the like.
  • the screen display information 800 may include a “website page display magnification” describing the enlargement / reduction ratio from the initial screen size. If there is no specific designation when a new website is opened, the magnification from the initial display is used, so the initial value of “website page display magnification” is “1.00”. Further, the screen display information 800 may include a “terminal screen width” and a “terminal screen height” describing the width and height of the screen indicating the screen size of the display unit 101.
  • the screen display information 800 includes a “display screen width” and a “display screen height” describing the width and height of the display size indicating the display size of the window displaying the website page 200 on the display unit 101. Including.
  • the unit of “display screen width” and “display screen height” is a dot. When a window is displayed on the display unit 101 in full screen, “terminal screen width” and “display screen width” are equal, and “terminal screen height” and “display screen height” are equal.
  • the screen display information 800 indicates where the window for displaying the website page 200 is displayed on the screen of the display unit 101 and corresponding to the upper left position of the window for displaying the website page 200.
  • FIG. 8B shows the display state of the display unit 101 after the Web page 200 is displayed on the display unit 101 according to the screen display information 800 described with reference to FIG. It is a figure which shows the screen display information 801 which described.
  • the value of the website page display start position Y coordinate that was “0” in the screen display information 800 is updated to “200” in the screen display information 801.
  • FIGS. 9A and 9B are diagrams illustrating examples of operation position information lists 900 and 902 transmitted from the operation position information acquisition unit 305 to the display position information acquisition unit 306.
  • the operation position information lists 900 and 902 are information for specifying the operation position of the user on the website page 200, and “operation position X coordinate describing the X coordinate and the Y coordinate of the operation position on the website page 200. (Xop) ”and“ operation position Y coordinate (Yop) ”.
  • the unit of “operation position X coordinate” and “operation position Y coordinate” is a dot.
  • the operation position information lists 900 and 902 may include “operation contents” indicating what kind of input operation was performed.
  • Each line such as the operation position information 901 is one operation position information
  • the operation position information lists 900 and 902 are a collection of one or more operation position information.
  • FIG. 10A and 10B are diagrams schematically illustrating an example of the display position information lists 1000 and 1002 that the display position information acquisition unit 306 transmits to the information transmission unit 308.
  • FIG. Each row such as the display position information 1001 is one display position information, and a list of one or more display position information is a display position information list 1000 and 1002.
  • the display position information lists 1000 and 1002 are information for specifying the display position of the Web site page 200 in the migration destination terminal 110.
  • the display position of the website page 200 is designated by designating the tag of the HTML document 500 that creates the website page 200.
  • the display position information 1001 exemplified in FIG. 10A specifies the tag of the object information 702 shown in FIG.
  • the display position correction unit 313 instructs the application control unit 312 to correct the display position of the website page 200 so that an object corresponding to the designated tag is displayed on the screen of the display unit 111.
  • the display position information lists 1000 and 1002 may include a “tag specifying method” indicating a tag specifying method. Note that when the tag identification method is fixed between the migration source terminal 100 and the migration destination terminal 110, the information of the “tag identification method” is not necessary.
  • the display position information list 1000 shows “tag name” indicating the tag name to identify the tag. And an “in-document tag index” indicating the appearance number of the same tag in the HTML document 500.
  • the display position information list 1002 includes “id name” indicating the name of the id for specifying the tag.
  • the tag specifying method is not limited to this.
  • the tag may be specified by the number of bytes in which the tag appears, or the tag may be specified by a tag name, an attribute name, or an element.
  • the display position in the transfer destination terminal 110 is designated by the tag of the HTML document 500, you may use methods other than tag designation.
  • the display position on the transfer destination terminal 110 may be designated by the coordinate position of the website page 200.
  • FIG. 11 is a diagram illustrating an example of the application reproduction information 1100 acquired by the reproduction information acquisition unit 307 so that the Web browser being used by the migration source terminal 100 can be continuously used by the migration destination terminal 110.
  • the application reproduction information 1100 is acquired from the application control unit 302 by the reproduction information acquisition unit 307.
  • the application reproduction information 1100 includes an “application name” that identifies an application to be activated on the migration destination terminal 110.
  • the application reproduction information 1100 includes “URL” that specifies a Web site to be displayed when the Web browser is activated.
  • the application reproduction information 1100 may include reproduction information of the plurality of applications.
  • a plurality of “URLs” may be described in the application reproduction information 1100, or displayed on a specific page, for example, the forefront. Only the “URL” of the current website page may be described.
  • the content of the application reproduction information 1100 depends on the content of the application. For this reason, the reproduction information acquisition unit 307 stores information necessary for configuring the application reproduction information 1100 for each application that can be executed by the migration source terminal 100 in advance, and is necessary when executing the terminal migration processing. Such information may be acquired from the application control unit 302. Further, the reproduction information acquisition unit 307 may transmit information necessary for the application control unit 302 to the reproduction information acquisition unit 307 without holding information necessary for configuring the application reproduction information 1100.
  • FIG. 12 is a diagram illustrating an example of the migration destination terminal information 1200 that is used by the information transmission unit 308 to identify the terminal that is the migration destination and establish communication.
  • the network address is used as the migration destination terminal information 1200.
  • the transfer destination terminal information 1200 may be registered in advance and held by the information transmission unit 308 or the like, or may be input by the user when executing the terminal transfer process.
  • the transfer destination terminal information 1200 is registered in advance, the transfer destination terminal information 1200 of a plurality of terminals is registered, and the user is allowed to specify which terminal to transfer to when executing the terminal transfer process. May be.
  • FIG. 13 is a flowchart showing an example of various information creation processing and terminal migration processing procedures executed by the migration source terminal 100 according to the first embodiment of the present invention.
  • the application control unit 302 obtains a new HTML document and obtains an object information list when the target displayed on the display unit 101 is changed in an application activation or an already activated application (movement to another site). 700 and screen display information 800 are created and held in the display information holding unit 304 (step S1302).
  • the input reception unit 301 stands by in a state where it can accept user input (step S1303).
  • the input reception unit 301 determines whether the user input is a terminal migration request (step S1304). If the user input is not a terminal migration request (step S1304: No), the application control unit 302 analyzes the user input information received by the input receiving unit 301 and responds to the user input because it is an input to the application being executed. Application control is performed (step S1305).
  • the target displayed on the display unit 101 is changed by a user input such as clicking on a link destination (such as moving to another site)
  • the terminal migration process is performed in step S1302.
  • the application control unit 302 newly acquires an HTML document, creates the object information list 700 and the screen display information 800, and stores it in the display information holding unit 304 (step S1302).
  • the application control unit 302 determines whether or not the content and / or range displayed on the display unit 101 has been changed by the application control performed in step S1305 (step S1306).
  • the change of the display content is, for example, when a new window is opened and a new screen is created, when an existing window is closed and the screen disappears, or when the display content is updated.
  • the display range is changed, for example, when the window size is changed or when the display content is reduced / enlarged by pinch-in / pinch-out.
  • step S1306 When the display content is changed in step S1306, the application control unit 302 updates the object information list 700 held by the display information holding unit 304 (step S1307). If the display content has not been changed, the process of step S1307 is not necessary.
  • step S1308 When the display range is changed in step S1306, the application control unit 302 updates the screen display information 800 held by the display information holding unit 304 (step S1308). If the display range has not been changed, the process of step S1308 is not necessary. Then, the application control unit 302 adds the user operation that causes a change in the content or range displayed on the display unit 101 to the operation history information list 600 held by the operation information holding unit 303 (step S1309).
  • the application control unit 302 instructs the information transmission unit 308 to request a terminal migration (step S1310).
  • the information transmission unit 308 receives the instruction of the terminal transition request, instructs the display position information acquisition unit 306 to acquire the display position information list 1000, and the display position information acquisition unit 306 instructs the operation position information acquisition unit 305 to operate the operation position.
  • An instruction to acquire the information list 900 is given. Receiving this instruction, the operation position information acquisition unit 305 acquires the operation history information list 600 and generates the operation position information list 900 (step S1311).
  • the process in which the operation position information acquisition unit 305 generates the operation position information list 900 will be described later with reference to FIG. 14A.
  • the display position information acquisition unit 306 receives the operation position information list 900 from the operation position information acquisition unit 305, and generates the display position information list 1000 (step S1312).
  • the process in which the display position information acquisition unit 306 generates the display position information list 1000 will be described later with reference to FIG. 15A.
  • the information transmission unit 308 instructs the reproduction information acquisition unit 307 to acquire the application reproduction information 1100, and the reproduction information acquisition unit 307 acquires the application reproduction information 1100 from the application control unit 302 (step S1313). Then, the information transmission unit 308 acquires the transfer destination terminal information 1200, establishes communication with the transfer destination terminal 110, and acquires the application reproduction information 1100 acquired from the reproduction information acquisition unit 307 and the display position information acquisition unit 306. The display position information list 1000 is transmitted to the migration destination terminal 110, and the process is terminated (step S1314).
  • the migration source terminal 100 displays the Web site page 200 (FIG. 2) with the URL “http://internetnews.co.jp” as the display screen of the Web browser, and after the user scrolls the display screen, after scrolling
  • the process of transferring the display screen to the transfer destination terminal 110 will be described.
  • the application control unit 302 acquires the HTML document 500 (FIG. 5) with the URL “http://internetnews.co.jp” from the Web server. Then, the application control unit 302 interprets the HTML document, determines the layout information of each object, and creates the website page 200. In the present embodiment, when a new website is opened, a display range 201 based on the upper left part of the website page 200 is displayed. In the process of creating the website page 200, the object information list 700 is created, and the width “800” and the height “1200” of the website page 200 are the “website page width” of the screen display information 800. And “Website page height”.
  • the initial value “0” is set as the “Web site page display start position Y”.
  • the initial value “1.00” is described in the “display screen width” and the display screen height, respectively, the screen width “800” and the height “600” of the display unit 101 (step S1302).
  • step S1303 in order for the user to view the content of the website page 200 that does not fit on the display unit 101, it is determined that there is a user input by the input receiving unit 301 for the operation of scrolling the screen (step S1303: Yes). Since this user input is not a terminal migration request (step S1304: No), the application control unit 302 scrolls the website page 200 upward by 200 dots in accordance with the user input (step S1305). As a result, the content displayed on the display unit 101 is changed from the display range 201 to the display range 202 (FIG. 2).
  • the application control unit 302 displays the website page display start position Y coordinate of the screen display information 800 (FIG. 8A). Is changed from “0” to “200”, that is, updated to the screen display information 801 (FIG. 8B) (step S1308). It should be noted that the object to be displayed 700 is not updated because the display target does not change to the Web site page 200 even when scrolling. Then, the scroll operation history 601 is added to the operation history information list 600 (step S1309).
  • the information transmitting unit 308 acquires the operation position information list 900 and the display position information list 1000 (steps S1311 and S1312).
  • Application reproduction information 1100 in which the application name “Web browser” and URL “http://internetnews.co.jp” are described is generated (step S1313).
  • the information transmission unit 308 acquires the migration destination terminal information 1200, accesses the migration destination terminal 110 whose network address is “192.168.1.10.”, Establishes communication, and sets the application reproduction information 1100 and The display position information list 1000 is transmitted (step S1314).
  • FIG. 14A is a flowchart illustrating an example of a processing procedure in which the operation position information acquisition unit 305 acquires the operation position information list 900.
  • the operation position information acquisition unit 305 acquires the screen display information 800 from the display information holding unit 304 when there is an operation position information acquisition instruction from the display position information acquisition unit 306 (step S1401). Further, the operation position information acquisition unit 305 extracts a valid (or important) operation history from the operation history information list 600 (step S1402). In the present embodiment, one operation history 601 with the latest “operation time” is set as an effective operation history. A plurality of operation histories having operation times included in a certain period, operation histories included in a predetermined number, and operation histories satisfying predetermined conditions (such as operation contents) may be used as effective operation histories. .
  • an effective operation history may be determined from the operation history for the application. For example, since “argument 1” and “argument 2” in the operation history include coordinate information on the display screen of the migration source terminal, is this coordinate included in the window displaying the application? Determine whether or not. Specifically, from the “display screen width”, “display screen height”, “window X axis information”, and “window Y axis information” of the screen display information, the display range of the application on the display screen of the migration source terminal And the coordinate information of “argument 1” and “argument 2” in the operation history is determined to be included in the display range.
  • the operation position information acquisition unit 305 displays the “operation contents” of the extracted effective operation history by scrolling (step S1403), pinching in or out (step S1405), moving the cursor (step S1407), and clicking (step S1407). S1409) is determined.
  • step S1403 When the operation content is “scroll” (step S1403: Yes), the operation position information acquisition unit 305 is described in the information described in “argument 2” of the valid operation history and the screen display information 800. The operation position information is obtained based on the information and described in the operation position information list 900 (step S1404). The “operation position” of the operation position information is obtained as in the following equations [1] and [2].
  • the operation position information acquisition unit 305 displays the information described in “argument 1” of the valid operation history and the screen display information 800.
  • the operation position information is obtained based on the information described in (1) and described in the operation position information list 900 (step S1406).
  • the “operation position” of the operation position information can be obtained by replacing the argument 2 in the above equations [1] and [2] with the argument 1.
  • step S1407 When the operation content is “cursor movement” (step S1407: Yes), the operation position information acquisition unit 305 is described in the information described in “argument 2” of the valid operation history and the screen display information 800. The operation position information is obtained based on the information and described in the operation position information list 900 (step S1408).
  • the “operation position” of the operation position information can be obtained by the above equations [1] and [2].
  • step S1409: Yes When the operation content is “click” (step S1409: Yes), the operation position information acquisition unit 305 is described in the information described in “argument 1” of the valid operation history and the screen display information 800.
  • the operation position information is obtained based on the information and described in the operation position information list 900 (step S1410).
  • the “operation position” of the operation position information can be obtained by replacing the argument 2 in the above equations [1] and [2] with the argument 1.
  • the operation position information corresponding to the valid operation history can be acquired, and the operation position information list 900 can be generated.
  • the generated operation position information list 900 is transmitted to the display position information acquisition unit 306 (step S1411).
  • step S1403 to S1410 An operation position information acquisition process (steps S1403 to S1410) according to the above is performed. However, it goes without saying that operation position information acquisition processing can be appropriately inserted in the same manner for other operation contents.
  • steps S1403 to S1410 are repeated for the number of effective operation histories. For example, as shown in FIG. 14B, steps S1451 to S1454 may be added to the flowchart of FIG. 14A, and steps S1403 to S1410 may be repeated. Even if a plurality of pieces of operation position information can be acquired, there is a possibility that effective display position information cannot be created from the plurality of pieces of operation position information. For this reason, the importance may be determined from the operation content, “time” information of the operation history, and the like, and this importance may be given to each operation position information.
  • the transfer source terminal 100 holds the history of the screen display information 800 together with the information of the time when the screen display information is valid, and when acquiring the operation position information list 900, the “operation time” of the operation history. May be selected, and the “window X coordinate” and “window Y coordinate” of the selected screen display information 800 may be used.
  • FIG. 15A is a flowchart illustrating an example of a processing procedure in which the display position information acquisition unit 306 acquires the display position information list 1000.
  • tags identification method describe “tag index in document”, and in “tag name”, refer to “tag name” and “tag index in document” from the object information of the closest object. Describe. For example, when the object indicated by the object information 702 in FIG. 7 is specified, “tag identification method” is set to “in-document tag index”, “tag name” is set to “p”, and “in-document tag index” is specified. "Is added display position information 1001 describing" 5 "to the display position information list 1000 (FIG. 10A).
  • the display position information acquisition unit 306 determines whether or not the operation content of the operation position information is clicked and the display range of the object closest to the coordinates of the operation position information is included (step S1505).
  • the determination that the display range of the object closest to the coordinates of the operation position information is included, specifically, the X-coordinate Xpd and Y-coordinate Ypd of the in-page display start position described in the object information 702, the page Based on the width Wpd and height Hpd of the inner display range, and the X coordinate Xop and Y coordinate Yop of the operation position of the operation position information 901, it is determined by satisfying all four conditions shown in the following formula [3].
  • Step S1505 the display position information acquisition unit 306 identifies the object that has changed due to the click (Step S1506).
  • the object changed by the click is identified by referring to the object information list 700 and determining whether or not the object is described in the “related tag” of the clicked object.
  • the object changed by clicking is identified by referring to the onclick attribute of the closest object from the HTML document of the Web site being displayed, and determining whether the object is handled by the function. . For example, if there is “Id” which is an argument of “document.getElementById” in the function, it is understood that the tag of this Id is handled in the function.
  • the application control unit 302 grasps the object that has changed due to the click, the application control unit 302 may be notified of the changed object.
  • the capture screen of the display unit 101 is periodically acquired, the screen position of the display unit 101 that has changed before and after the time of the click operation is specified, and the object that has changed due to the click is specified from there. May be.
  • the display position information acquisition unit 306 acquires the display position information from the object that has been changed by the identified click, and adds it to the display position information list 1000 (step S1507). Then, the display position information acquisition unit 306 transmits the acquired display position information list 1000 to the information transmission unit 308 (step S1508).
  • steps S1503 to S1507 are repeated by the number of operation position information. For example, as shown in FIG. 15B, steps S1551 to S1554 may be added to the flowchart of FIG. 15A, and steps S1503 to S1507 may be repeated. Even if a plurality of pieces of display position information can be acquired, the display unit 111 of the migration destination terminal 110 may not be able to display all the positions corresponding to the display position information at a time. Therefore, you may give importance to display position information.
  • the importance level may be acquired from the operation position information acquisition unit 305 or may be determined based on the distance between the operation position described in the operation position information list 900 and the closest object. Further, the importance may be set higher as the operation position information is created from operation history information with a new operation time. In addition, when the display position information is acquired in steps S1504 and S1507 from the same operation history information, the importance of either one of the display position information may be increased. Moreover, you may devise how to arrange in the display position information list instead of giving importance. In addition, the display position information acquisition unit 306 may delete a plurality of pieces of operation position information before transmitting the information to the information transmission unit 308, if there is information that overlaps.
  • the operation position information list 902 (FIG. 9B) is transmitted from the operation position information acquisition unit 305
  • the display position information list 1002 is acquired from the object information list 700. The operation will also be described.
  • the display position information acquisition unit 306 obtains the operation position information 903 from the “X coordinate (Xop)” and “Y coordinate (Yop)” of the operation position information 903 described in the operation position information list 902 and the object information list 700.
  • the object has object information 703.
  • the display position information acquisition unit 306 acquires display position information from the nearest object and adds it to the display position information list 1000.
  • “id” is used as the tag identification method.
  • “id” is described in “tag identification method” of the display position information
  • “play” that is an id attribute of the object is described in “id name”.
  • “id” information is not included in the object information list 700, but “id” information may be added to the object information list and held, or “id” information is required. Only from an HTML document.
  • the display position information acquisition unit 306 determines whether or not the operation content of the operation position information is clicked and the display range of the object closest to the coordinates of the operation position information is included (step S1505). Specifically, it is determined whether or not all four conditions shown in the above equation [3] are satisfied. 50 (Xpd) ⁇ 100 (Xop) 100 (Xop) ⁇ 50 (Xpd) +100 (Wpd) 450 (Ypd) ⁇ 480 (Yop) 480 (Yop) ⁇ 450 (Ypd) +50 (Hpd)
  • the display position information acquisition unit 306 identifies an object that has changed due to a click (step S1506).
  • the display position information acquisition unit 306 determines whether there is a related tag in an object whose id name is “play” determined to be the closest object. Since the object whose id name is “play” is the object information 703, the tag name that appears first in the HTML document 500 from the value of “(video, 1)” described in the related tag column is “ An object of “video”, that is, an object whose id name is “topnews” is specified.
  • the display position information list 1004 having the tag specifying method “id” and id name “topnews” is acquired from the specified object, and added to the display position information list 1002.
  • Step S1507 another method for specifying an object changed by clicking will be described.
  • the display position information acquisition unit 306 acquires the HTML document 500 of the Web site page 200 being displayed, refers to the onclick attribute of the object whose id name is “play” determined to be the closest object, The name “playVideo” is acquired. Then, the display position information acquisition unit 306 identifies an object whose id name is “topnews” from the Id that is an argument of “document.getElementById” in the function.
  • the display position information list 1004 having the tag identification method “id” and id name “topnews” is acquired from the identified object, and added to the display position information list 1002. (Step S1507).
  • FIG. 16 is a flowchart illustrating an example of a processing procedure in which the display position information acquisition unit 306 specifies the closest object.
  • the display position information acquisition unit 306 determines whether or not the value of “in-page display start position X coordinate” of the acquired object information is smaller than the value of “operation position X coordinate” (step S1604). If the determination result in this step S1604 is No, the value of “in-page display start position X coordinate” ⁇ “operation position X coordinate” is substituted for the variable XD, and the process proceeds to step S1608 (step S1605). On the other hand, if the determination result in step S1604 is Yes, the display position information acquisition unit 306 obtains the value of “operation position X coordinate” by “in-page display start position X-coordinate” + “in-page display range width”. It is determined whether or not the value is smaller (step S1606).
  • step S1606 determines whether the value of “operation position X coordinate” ⁇ “in-page display start position X coordinate” + “in-page display range width” is substituted for variable XD, and the process proceeds to step S1608 (step S1608).
  • step S1607 if the determination result in step S1606 is Yes, or if the processing in step S1605 or S1607 is completed, the display position information acquisition unit 306 indicates that the “in-page display start position Y coordinate” is “operation position Y coordinate”. It is determined whether it is smaller than the value (step S1608).
  • step S1608 determines whether the value of “in-page display start position Y coordinate” is “in-page display start position Y-coordinate” + “in-page display range height”. It is determined whether it is smaller than the obtained value (step S1610).
  • step S1610 If the determination result in step S1610 is No, the value of “operation position Y coordinate” ⁇ “in-page display start position Y coordinate” + “in-page display range height” is substituted for variable YD, and the flow proceeds to step S1612. (Step S1611). On the other hand, if the determination result in step S1610 is Yes, or the processing in step S1609 or S1611 is completed, the display position information acquisition unit 306 stores the value of (XD ⁇ XD + YD ⁇ YD) in association with the object (step S1612).
  • steps S1603 to S1612 are repeatedly executed for all object information described in the object information list 700 (steps S1601, S1602, S1613, and S1614).
  • the display position information acquisition unit 306 identifies the object having the smallest object information (XD ⁇ XD + YD ⁇ YD) as the closest object (step S1615). .
  • step S1604 is Yes and step S1606 is No, “130”, which is a value of “500” ⁇ (“50” + “320”), is assigned to the variable XD.
  • Step S1608 is Yes and Step S1610 is No, “130”, which is a value of “560” ⁇ (“250” + “180”), is substituted for the variable YD.
  • the value of the variable XD is “130” and the value of the variable YD is “130”, “33800”, which is the value of (XD ⁇ XD + YD ⁇ YD), is associated with the object represented by the object information 701. Is remembered.
  • FIG. 17 is a flowchart illustrating an example of a terminal migration processing procedure of the migration destination terminal 110 according to the first embodiment of the present invention.
  • step S17 is started when the transfer destination terminal 110 receives data from the transfer source terminal 100.
  • the information receiving unit 311 determines whether application reproduction information is included in the received data (step S1702).
  • step S1702 Yes
  • the application control unit 312 activates the application specified by the application reproduction information (step S1703) and controls the application (step 1704).
  • the application control unit 312 acquires the HTML document 500 from the Web server, interprets the HTML document, and layouts of the objects. Information is determined and a website page 200 is created. Note that the object information list and the screen display information may also be created in this process by the same method as the migration source terminal 100.
  • the information receiving unit 311 determines whether display position information is included in the received data (step S1705).
  • the application control unit 312 controls the display position based on the display position information (step S1706). The display position control will be described later with reference to FIG.
  • the terminal migration process is terminated without being executed.
  • FIG. 18 is a flowchart illustrating an example of a display position correction processing procedure executed by the display position correction unit 313.
  • Step S1801 “1” is assigned to the variable N, “0” is assigned to the variable minX, “0” is assigned to the variable minY, “0” is assigned to the variable maxX, “0” is assigned to the variable maxY, and “1” is assigned to the variable scale.
  • the display position correction unit 313 acquires the Nth display position information (step S1802), and the “in-page display start position X coordinate (Xpd)” and “in-page display” of the object corresponding to the Nth display position information.
  • the “start position Y coordinate (Ypd)”, “in-page display range width (Wpd)”, and “in-page display range height (Hpd)” are acquired (step S1803).
  • the display position correction unit 313 determines whether or not “maxX ⁇ in-page display start position X coordinate + in-page display range width” is satisfied (step S1808). If the determination result in step S1808 is Yes, the value of “in-page display start position X coordinate (Xpd) + in-page display range width (Wpd)” is substituted for variable maxX (step S1809). Finally, the display position correcting unit 313 determines whether or not “maxY ⁇ in-page display start position Y coordinate + in-page display range height” is satisfied (step S1810). If the determination result in step S1810 is Yes, the value of “in-page display start position Y coordinate (Ypd) + in-page display range height (Hpd)” is substituted for variable maxY (step S1811).
  • steps S1803 to S1811 are repeatedly executed for the number of display position information (steps S1802, S1803, S1812, and S1813).
  • the display position correction unit 313 determines whether or not “screen display width / (maxX ⁇ minX) ⁇ scale” is satisfied (step S1813: No).
  • Step S1814 determines whether or not “screen display width / (maxX ⁇ minX)” is substituted into the variable scale (step S1815).
  • the display position correction unit 313 determines whether or not “screen display height / (maxY ⁇ minY) ⁇ scale” is satisfied (step S1816). If the determination result in step S1816 is Yes, the value “screen display height / (maxY ⁇ minY)” is substituted into the variable scale (step S1817).
  • the processes in steps S1803 to S1811 are repeated for the number of display position information, so that all objects specified by the display position information are displayed at the edge of the display screen.
  • the size of the Web site required for displaying all without being missing can be obtained as the width “maxX-minX” and the height “maxY-minY”.
  • the processing required in steps S1814 to S1818 described above is necessary for displaying all objects specified by the display screen width and height of the destination terminal 110 and the display position information. By comparing the site width “maxX ⁇ minX” and the height “maxY ⁇ minY”, it is determined whether or not all objects specified by the display position information can be displayed on the display screen.
  • the display start position of the website is corrected and displayed. If all objects cannot be displayed, in this example, the display of the Web site is reduced and displayed on the display screen, whereby all objects specified by the display position information are displayed on the display screen.
  • the part of the migration source terminal 100 that the user has focused on can be displayed on the migration destination terminal 110.
  • in-page display range width (Wpd)” used in steps S1808 and S1809 and “page used in steps S1810 and S1811”.
  • Inside display range height (Hpd)” may be replaced with arbitrary values of “0” or more.
  • the display may be corrected by a method different from that in step S1819.
  • the display position may be corrected by searching a display range in which as many objects as possible are displayed among the objects specified by the method A) display position information.
  • Method B) The display position may be corrected by searching for a display range in which as many objects specified as display position information at the top of the display position information list or as display information with high priority are displayed.
  • Method C) The object specified as the display position information at the top or the highest priority of the display position information list is displayed, and the objects specified as other display position information are displayed with fewer user operations.
  • the display position may be corrected by searching for a possible display range.
  • the scale of the website may not be performed in the correction using the methods A, B, and C, or the website may be scaled with a value different from the variable scale.
  • FIG. 19 is a diagram illustrating an example of a method of correcting the display position by the method C.
  • the object 1901 of the character string “Overseas” is the object designated as the display position information with the highest priority in the display position information list
  • the object 1902 of the character string “Economy” is the display position information list. It is assumed that the object is designated as display position information with a low priority.
  • the display range 1903 is set so that the object 1901 comes to the lower right.
  • the object 1902 can be displayed with fewer scroll operations than when the display range is set so that the object 1901 comes to the upper left.
  • the display location that the user has operated or viewed on the display unit 101 of the migration source terminal 100 is migrated. It is also displayed on the display unit 111 of the previous terminal 110. This eliminates the need for the user to perform actions such as enlargement / reduction of the display contents and screen scrolling when restarting the processing performed at the migration source terminal 100 at the migration destination terminal 110, enabling smooth terminal migration. Become.
  • FIG. 20 is a diagram showing the configuration of the migration source terminal 120 and the migration destination terminal 110 that constitute the terminal migration system according to the second embodiment of the present invention.
  • the migration source terminal 120 includes a terminal migration device 320, an input reception unit 301, an application control unit 302, an operation information holding unit 303, a display information holding unit 304, an external connection unit 309, a display unit 101, and a camera unit 326.
  • the terminal transition device 320 includes a target position information acquisition unit 325, a display position information acquisition unit 306, a reproduction information acquisition unit 307, and an information transmission unit 308.
  • the terminal migration system according to the second embodiment includes the terminal migration system according to the first embodiment, and the configuration of the camera unit 326 and the attention position information acquisition unit 325 in the migration source terminal 120. Is different. Since the other configuration in the terminal migration system according to the second embodiment is the same as that of the terminal migration system according to the first embodiment, description thereof is omitted. In the second embodiment, the operation information holding unit 303 can be omitted because the operation information is not used.
  • the camera unit 326 is an imaging device including an image sensor such as a CMOS or a CCD, and is provided at a position where the face of the user who is looking at the display unit 101 can be photographed as shown in FIG.
  • the camera unit 326 shoots at regular intervals, and based on the orientation of the user's eyeball (line of sight) in the photographed photo and the positional relationship between the camera and the screen of the display unit 101, Specify whether you are looking at a position (viewpoint).
  • the camera unit 326 holds the viewpoint of the user specified by each photograph as a viewpoint history information list.
  • description is abbreviate
  • FIG. 22 is a diagram schematically illustrating the viewpoint history information list 2200 held by the camera unit 326.
  • the viewpoint history information list 2200 is information in which viewpoint positions on the user's screen are stored in a time series for a certain period.
  • the viewpoint history information list 2200 includes “viewpoint coordinates” that indicate the coordinate position of the viewpoint on the display unit 101 in XY coordinates.
  • the unit of viewpoint coordinates is a dot.
  • the viewpoint history information list 2200 may include “time” indicating the time when the viewpoint history is input.
  • 8-digit date information representing the year, month, day, 6-digit time information representing hour, minute and second, and 3-digit millisecond information representing 1/100 second are represented by hyphens. The time of the connected form is illustrated.
  • the information transmission unit 308 receives a terminal shift request instruction from the input reception unit 301 and instructs the display position information acquisition unit 306 to acquire a display position information list.
  • the display position information acquisition unit 306 instructs the attention position information acquisition unit 325 to acquire the attention position information list.
  • the attention position information acquiring unit 325 acquires one or more viewpoints necessary for acquiring viewpoint information from the viewpoint history information list 2200 held by the camera unit 326. Get history.
  • the attention position information acquisition unit 325 generates a attention position information list from the acquired viewpoint history and transmits the attention position information list to the display position information acquisition unit 306.
  • FIG. 23 is a diagram illustrating an example of the attention position information list 2300 held by the attention position information acquisition unit 325.
  • the attention position information list 2300 is information for specifying a user's attention position on the website page 200, that is, a viewpoint, and the “X coordinate (Xop)” and “Y coordinate ( Yop) ".
  • the unit of the X coordinate and the Y coordinate is a dot.
  • Each row of the attention position information list 2300 is one attention position information.
  • the display position information acquisition unit 306 acquires the attention position information list 2300 from the attention position information acquisition unit 325
  • the display position information acquisition unit 306 acquires the object information list 700 and the screen display information 800 from the display information holding unit 304. Then, the display position information acquisition unit 306 generates a display position information list 1000 from the attention position information list 2300, the object information list 700, and the screen display information 800, and transmits the display position information list 1000 to the information transmission unit 308.
  • FIG. 24 is a flowchart showing an example of various information creation processing and terminal migration processing procedures executed by the migration source terminal 120 according to the second embodiment of the present invention.
  • steps that perform the same processing as the processing shown in FIG. 13 are denoted by the same reference numerals, and description thereof is omitted.
  • step S1304 when the input reception unit 301 determines that the user input is a terminal migration request (step S1304: Yes), the application control unit 302 instructs the information transmission unit 308 to make a terminal migration request (step S1310).
  • the information transmission unit 308 receives the instruction of the terminal shift request, instructs the display position information acquisition unit 306 to acquire the display position information list 1000, and the display position information acquisition unit 306 instructs the attention position information acquisition unit 325 to acquire the attention position.
  • An instruction to acquire the information list 2300 is given.
  • the attention position information acquisition unit 325 acquires the viewpoint history information list 2200, and generates the attention position information list 2300 (step S2411).
  • the display position information acquisition unit 306 inputs the attention position information list 2300 from the attention position information acquisition unit 325, and generates the display position information list 1000 (step S2412).
  • the process in which the display position information acquisition unit 306 generates the display position information list 1000 will be described later with reference to FIG. 26A.
  • FIG. 25A is a flowchart illustrating an example of a processing procedure for the attention position information acquisition unit 325 to acquire the attention position information list 2300.
  • the attention position information acquisition unit 325 acquires the screen display information 800 from the display information holding unit 304 when there is an instruction to acquire the attention position information from the display position information acquisition unit 306 (step S2501).
  • the attention position information acquisition unit 325 determines an effective viewpoint history from the viewpoint history information list 2200 (step S2502).
  • one viewpoint history with the latest “time” is set as an effective viewpoint history.
  • an effective viewpoint history a viewpoint history having a time included in a certain period, a viewpoint history included in a predetermined number, and a viewpoint history satisfying a predetermined condition (concentrated in a certain area of the display unit 101). A plurality of may be used.
  • the attention position information acquisition unit 325 acquires attention position information from the effective viewpoint history, and adds it to the attention position information list 2300 (step 2503).
  • the “attention position” of the attention position information is obtained as in the following equations [4] and [5].
  • “X coordinate” (X coordinate of “viewpoint coordinate” ⁇ “window X coordinate”) / (“Web site page display magnification”) + “Web site page display start position X coordinate” [4]
  • “Y coordinate” (Y coordinate of “viewpoint coordinate” ⁇ “window Y coordinate”) / (“Web site page display magnification”) + “Web site page display start position Y coordinate” [5]
  • attention position information corresponding to an effective viewpoint history can be acquired, and the attention position information list 2300 can be generated.
  • the generated attention position information list 2300 is transmitted to the display position information acquisition unit 306 (step S2504).
  • step S2503 is repeated for the number of effective viewpoint histories. For example, as shown in FIG. 25B, steps S2551 to S2554 may be added to the flowchart of FIG. 25A, and step S2503 may be repeated. Even if a plurality of viewpoint position information can be acquired, there is a possibility that effective display position information cannot be created from the plurality of viewpoint position information. Therefore, the importance may be determined from the time of the viewpoint history and the importance may be assigned to each operation position information.
  • FIG. 26A is a flowchart illustrating an example of a processing procedure in which the display position information acquisition unit 306 acquires the display position information list 1000.
  • the procedure for identifying the closest object from the attention position information is the same as the procedure described with reference to FIG. 16 in the first embodiment, and can be realized by replacing “operation position” with “attention position”. Then, the display position information acquisition unit 306 acquires the display position information from the closest object and adds it to the display position information list 1000 (step S2604).
  • the tag specifying method using the in-document tag index or id name is the same as in the first embodiment.
  • the display position information acquisition unit 306 transmits the display position information list 1000 to the information transmission unit 308 (step S2605).
  • the display position information is acquired from the object closest to the target position indicated by the target position information. After the closest object is specified, the display is performed next to the specified closest object. Display position information may be acquired from the object to be displayed. This is because, depending on the user, since the part viewed on the source terminal 100 immediately before the transition has already been viewed, it may be possible to view the Web site page 200 thereafter.
  • the object displayed next to the specified closest object is an object corresponding to the tag described next to the tag corresponding to the closest object in the HTML document 500, or a website page.
  • Reference numeral 200 denotes an object displayed adjacent to the closest object.
  • the display position information is acquired from the object closest to the target position indicated by the target position information or the display position information is acquired from the object displayed next to the specified closest object depends on the viewpoint of the user. It may be determined from the history. For example, since it is considered that a user whose coordinate position of the viewpoint history has moved more than a certain amount is being scanned, the display position information is obtained from the object displayed next to the closest object identified, and the display unit If there are many viewpoint histories in a certain area on the screen 101, the user is gazing at one point, and thus the display position information may be acquired from the identified nearest object.
  • the display location that the user has focused on on the display unit 101 of the migration source terminal 120 is the migration destination terminal. It is also displayed on the display unit 111 of 110. This eliminates the need for the user to perform actions such as enlargement / reduction of the display contents and screen scrolling when restarting the processing performed at the migration source terminal 100 at the migration destination terminal 110, enabling smooth terminal migration. Become.
  • the functional blocks constituting the terminal migration system in each embodiment of the present invention are a central processing unit (CPU), a storage device (memory (ROM, RAM, etc.), hard disk, etc.), and an input / output device.
  • Such hardware resources are typically implemented as an integrated circuit IC (also referred to as an LSI, a system LSI, a super LSI, an ultra LSI, or the like).
  • IC integrated circuit
  • LSI system LSI
  • super LSI ultra LSI
  • these functional blocks may be individually made into one chip, or may be made into one chip so as to include a part or all of them.
  • the method of circuit integration is not limited to ICs, and implementation using dedicated circuitry or general purpose processors is also possible.
  • an FPGA Field Programmable Gate Array
  • a reconfigurable processor that can reconfigure the connection and setting of the circuit cells inside the IC may be used.
  • integrated circuit technology such as biotechnology
  • functional blocks may naturally be integrated using this technology.
  • predetermined program data that can execute the procedure of the terminal migration method stored in the storage device is interpreted and executed by the CPU. It may be realized with.
  • the program data may be introduced into the storage device via a recording medium such as a CD-ROM or a flexible disk, or may be directly executed from the recording medium.
  • the recording medium refers to a semiconductor memory such as a ROM, a RAM, or a flash memory, a magnetic disk memory such as a flexible disk or a hard disk, an optical disk memory such as a CD-ROM, a DVD, or a BD, and a memory card.
  • the recording medium is a concept including a communication medium such as a telephone line or a conveyance path.
  • the terminal migration system of the present invention can be used when taking over the use of an application between terminals having different display screen sizes and screen resolutions, and in particular, where the user has operated or focused on the display screen of the migration source terminal. This is useful when you want to continue to display on the display screen of the destination terminal.

Abstract

 移行元端末(100)は、ユーザによるWebブラウザの操作履歴を保存する保存部(303)、操作履歴に基づいてWebブラウザによって画面表示されるWebサイト上の操作位置を取得する取得部(305)、操作位置に基づいて移行先端末(110)の画面上におけるWebサイトの表示位置を取得する取得部(306)、および表示位置とWebサイトを示す情報を移行先端末(110)へ送信する送信部(308)を備える。移行先端末(110)は、移行元端末(100)から情報を受信する受信部(311)、情報に示されたWebサイトをWebブラウザによって画面表示する制御部(302)、および情報に示された表示位置に従って画面表示されるWebサイトの位置を補正する補正部(313)を備える。

Description

端末移行システム
 本発明は、表示画面サイズや画面解像度の異なる端末間でアプリケーションの利用を引き継ぐ際、移行元端末の表示画面内でユーザが操作や注目していた箇所を移行先端末の表示画面で引き続き再現させることが可能な端末移行システムに関する。
 近年では、多くの人がデスクトップPCパーソナルコンピュータ(以下、PCと記す)、ノートPC、タブレットPC、PDA(personal digital assistant)、携帯電話、およびスマートフォンなど、アプリケーションを実行可能な情報通信端末を複数所有しており、状況に応じて複数の情報通信端末の使い分けがなされている。そして、複数の情報通信端末間で利用を切り替える際に、切り替え元の移行元端末で使用しているアプリケーションの作業内容を切り替え先の移行先端末に送信することで、移行先端末でアプリケーションを継続使用可能とするシームレスな端末移行方法が、特許文献1にて開示されている。また、特許文献1では、移行先端末の画面解像度に合わせて画面に表示させる内容を拡大または縮小して最適化したり、再生できないデータを除外したりする処理についても言及されている。
特開2003-242106号公報
 しかしながら、上記特許文献1に記載された従来の端末移行方法では、移行元端末と移行先端末との表示画面サイズや解像度が大きく異なる場合、表示させる内容を拡大または縮小してしまうと移行先端末では画面が見づらいため、ユーザが見やすい大きさに拡大または縮小するというアクションが必要であった。さらに、表示させる内容が文字列だった場合、表示画面サイズの比率によっては、フォントサイズが準備されておらず、表示ができないという課題もある。
 例えば、移行元端末がタブレットPC、移行先端末が携帯電話とし、表示画面サイズの比率が4:1程度である場合を想定する。この場合、タブレットPCから携帯電話への移行処理時にタブレットPCの画面で表示されている内容を表示画面サイズの比率で縮小してしまうと、携帯電話の画面では内容が見づらい。このため、ユーザは、縮小された表示内容を見やすい大きさに一旦拡大し、その後、スクロール操作等の画面移動によって、タブレットPCで見ていた箇所を探して移動するというアクションが必要となる。
 また、タブレットPCから携帯電話への移行処理時に拡大または縮小などの最適化処理がなされない場合であっても、タブレットPCの画面では表示されていたが携帯電話の画面では表示されず隠れてしまった内容は、スクロール操作等の画面移動によって、タブレットPCで見ていた箇所や操作していた箇所を探して移動するというアクションが必要であった。
 それ故に、本発明の目的は、移行元端末の表示画面内でユーザが操作や注目していた箇所を特定することで、移行元端末の表示画面においてユーザが操作や注目していた箇所を移行先端末の表示画面で再現させることができる端末移行システムを提供することである。
 本発明は、第1端末から第2端末へのアプリケーションの継続利用が可能な端末移行システムに向けられている。そして、上記目的を達成するために、本発明の端末移行システムでは、第1端末が、アプリケーションに対するユーザの行為に基づいて、アプリケーションによって画面表示されるプログラム上の特定位置を取得する位置情報取得部、特定位置に基づいて、第2端末の画面上におけるプログラムの表示位置を取得する表示位置情報取得部、および表示位置およびプログラムを示す情報を第2端末へ送信する情報送信部を備え、第2端末が、第1端末から情報を受信する情報受信部、情報に示されたプログラムをアプリケーションによって画面表示するアプリケーション制御部、および情報に示された表示位置に従って、画面表示されるプログラムの位置を補正する表示位置補正部を備える。
 より具体的には、第1端末に、ユーザによるアプリケーションに対する操作を受け付ける入力受付部、および入力受付部を介してユーザが行った操作を操作履歴として保持する保持部をさらに備えさせて、位置情報取得部が、操作履歴に基づいて、アプリケーションによって画面表示されるプログラム上のユーザによる操作位置を、特定位置として取得するように構成する。
 または、より具体的には、第1端末に、ユーザが注視するプログラム上の視点を特定する特定部、および特定部で特定されたユーザの視点を視点履歴として保持する保持部をさらに備えさせて、位置情報取得部が、視点履歴に基づいて、アプリケーションによって画面表示されるプログラム上のユーザによる注目位置を、特定位置として取得するように構成する。
 位置情報取得部は、最新の操作履歴または視点履歴に基づいて操作位置または注目位置を取得することが好ましい。
 また、表示位置情報取得部は、プログラムに含まれるオブジェクトのうち、操作位置または注目位置に少なくとも一番近いオブジェクトの位置、または操作位置にあるオブジェクトの操作に伴って変化する別のオブジェクトの位置を表示位置として取得することが好ましい。
 さらには、表示位置補正部は、操作位置または注目位置に少なくとも一番近いオブジェクトまたは別のオブジェクトが第2端末の画面内に収まるように、プログラムを表示する縮尺および/または表示開始位置を補正することが望ましい。
 上記本発明によれば、表示画面サイズや画面解像度の異なる端末間で利用を引き継いだ場合でも、移行元端末の表示画面内でユーザが操作や注目していた箇所を移行先端末で簡単に表示させることができる。よって、ユーザは、移行元端末で行っていた処理を移行先端末で再開するにあたり、表示内容の拡大/縮小や画面スクロールなどによって移行元の端末で注目していた箇所を探すというアクションが不要となり、スムーズな端末移行が可能となる。
図1は、本発明が提供する情報通信端末を含めた端末移行システムの構成例を示す図である。 図2は、Webブラウザを利用したWebサイトの一画面分の表示内容例を示す図である。 図3は、タブレットPCおよび携帯電話の表示画面における表示内容例を示す図である。 図4は、本発明の第1の実施形態に係る端末移行システムを構成する移行元端末および移行先端末の構成を示す図である。 図5は、アプリケーション制御部がWebサーバから取得するHTML文書の一例を示す図である。 図6は、操作履歴情報一覧の一例を模式的に示す図である。 図7は、オブジェクト情報一覧の一例を模式的に示す図である。 図8Aは、画面表示情報の一例を模式的に示す図である。 図8Bは、画面表示情報の他の一例を模式的に示す図である。 図9Aは、操作位置情報一覧の一例を示す図である。 図9Bは、操作位置情報一覧の他の一例を示す図である。 図10Aは、表示位置情報一覧の一例を模式的に示す図である。 図10Bは、表示位置情報一覧の他の一例を模式的に示す図である。 図11は、アプリケーション再現情報の一例を示す図である。 図12は、移行先端末情報の一例を示す図である。 図13は、本発明の第1の実施形態に係る移行元端末が実行する各種情報作成処理および端末移行処理手順の一例を示すフローチャートである。 図14Aは、操作位置情報取得部が操作位置情報一覧を取得する処理手順の一例を示すフローチャートである。 図14Bは、操作位置情報取得部が操作位置情報一覧を取得する処理手順の一例を示す他のフローチャートである。 図15Aは、表示位置情報取得部が表示位置情報一覧を取得する処理手順の一例を示すフローチャートである。 図15Bは、表示位置情報取得部が表示位置情報一覧を取得する処理手順の他の一例を示すフローチャートである。 図16は、表示位置情報取得部が一番近いオブジェクトを特定する処理手順の一例を示すフローチャートである。 図17は、本発明の第1の実施形態に係る移行先端末の端末移行処理手順の一例を示すフローチャートである。 図18は、表示位置補正部が実行する表示位置補正処理手順の一例を示すフローチャートである。 図19は、表示位置を補正する方法の一例を示す図である。 図20は、本発明の第2の実施形態に係る端末移行システムを構成する移行元端末および移行先端末の構成を示す図である。 図21は、タブレットPCに設置されたカメラ部の一例を示す図である。 図22は、視点履歴情報一覧を模式的に例示した図である。 図23は、注目位置情報一覧の一例を示す図である。 図24は、本発明の第2の実施形態に係る移行元端末が実行する各種情報作成処理および端末移行処理手順の一例を示すフローチャートである。 図25Aは、注目位置情報取得部が注目位置情報一覧を取得する処理手順の一例を示すフローチャートである。 図25Bは、注目位置情報取得部が注目位置情報一覧を取得する処理手順の他の一例を示すフローチャートである。 図26Aは、表示位置情報取得部が表示位置情報一覧を取得する処理手順の一例を示すフローチャートである。 図26Bは、表示位置情報取得部が表示位置情報一覧を取得する処理手順の他の一例を示すフローチャートである。
 以下、本発明の実施の形態について、図面を参照しながら説明する。
 本発明では、ユーザは解像度が同等で画面サイズが異なる2つ以上の情報通信端末を所有し、使用する情報通信端末をある端末(以下、移行元端末と記す)から別の端末(以下、移行先端末と記す)に切り替える場合において、移行元端末で利用していたアプリケーションを移行先端末でも継続して利用する場面を想定している。本発明は、このような場面において、移行元端末におけるアプリケーションの作業内容に加え、移行元端末の表示画面内でユーザが操作等により注目していた箇所を示す情報を、移行先端末に送信する。これにより、移行先端末の画面では、移行元端末においてユーザが利用していたアプリケーションが移行元端末での作業内容と共に再現され、かつ、移行元端末の画面でユーザが注目していた箇所が表示される。
 図1は、本発明が提供する情報通信端末を含めた端末移行システムの構成例を示す図である。この図1に示す例では、1人のユーザが、タブレットPC10、携帯電話20、ノートPC30など、ネットワーク40に接続可能な複数の情報通信端末を所有している。そして、ユーザは、状況に応じてこれらの情報通信端末を使い分けている。例えば、自宅ではノートPC30やタブレットPC10を使用し、外出時には携帯電話20を利用する。例えば、タブレットPC10にてWebサイトのインターネットニュースを見ていたユーザが出勤時間となり、携帯電話20にてインターネットニュースの続きを見る、という利用が想定される。
 インターネットニュースを視聴する場合における、Webブラウザを利用して視聴可能なWebサイトの一画面分の表示内容例を、図2に示す。また、タブレットPC10の表示画面11および携帯電話20の表示画面21における表示内容例を、図3に示す。
 Webブラウザは、URLを指定するとHTML文書を取得してWebサイトを表示する。その際、表示画面の大きさに応じて文字やオブジェクトをレイアウトしたり、文字フォントやオブジェクトの大きさを決定したりして、一画面分のWebサイトを作成する。また、作成した一画面分のWebサイトが表示画面に収まりきらない場合には、Webサイトの一部分のみを表示画面に表示し、表示画面に収まりきらない部分については、ユーザがスクロール操作等を行うことによって視聴可能とする。このような技術は、Webブラウザの一般的な技術であるため、実現方法については説明を省略する。
 図2に示すWebサイトページ200は、URLが「http://internetnews.co.jp」であるWebサイトの一画面分の表示内容であるとする。このWebサイトをタブレットPC10および携帯電話20で表示する場合、画面サイズに制限されてWebサイトページ200の一部しか一度に表示されない。特に、携帯電話20の表示画面21は、タブレットPC10の表示画面11よりも画面サイズが小さいため、携帯電話20による表示内容は少なくなる。例えば、タブレットPC10の表示画面11のサイズでは、図2の表示範囲201や202などが一度に表示可能であり、携帯電話20の表示画面21のサイズでは、図2の表示範囲203などが一度に表示可能である。図3は、図2の表示範囲202をタブレットPC10の表示画面11に表示させた例、および図2の表示範囲203を携帯電話20の表示画面21に表示させた例である。
 このように、大きな画面サイズの端末から小さい画面サイズの端末へ利用端末を移行する場合には、移行先端末の画面で表示される内容が少なくなる。そこで、本発明では、移行先端末の画面で表示される内容が少なくなっても引き継ぎ後の作業に支障が生じないように、ユーザが注目していた箇所を画面表示する制御を行う。
 下記の各実施形態では、移行元端末をタブレットPC10、移行先端末を携帯電話20、アプリケーションをWebブラウザとし、アプリケーションによって表示されるプログラムをWebサイトとし、タブレットPC10においてWebブラウザを利用してインターネットニュースというWebサイトを視聴しているユーザが、利用する端末を携帯電話20に切り替えた場合(端末移行と表現する)を一例に、本発明を詳細に説明する。
 なお、タブレットPC10から携帯電話20への端末移行は、タブレットPC10に備えられる物理的なボタン14(図3)やソフトウェアキーを介した指示に従って行われてもよいし、所定の状態変化を検出して自動的に行われてもよい。
  <第1の実施形態>
 図4は、本発明の第1の実施形態に係る端末移行システムを構成する移行元端末100および移行先端末110の構成を示す図である。
 移行元端末100は、端末移行装置300、入力受付部301、アプリケーション制御部302、操作情報保持部303、表示情報保持部304、外部接続部309、および表示部101を備える。端末移行装置300は、操作位置情報取得部305、表示位置情報取得部306、再現情報取得部307、および情報送信部308を備える。
 移行先端末110は、入力受付部310、情報受信部311、アプリケーション制御部312、表示位置補正部313、外部接続部315、および表示部111を備える。
1.移行元端末100が備える構成の概略
 入力受付部301は、キーボード、十字キー、マウス、タッチパネルなどの入力装置であり、ユーザによる入力を受け付ける。入力受付部301は、ユーザからの入力が端末移行要求であった場合には、情報送信部308に端末移行要求に応じた指示を行う。一方、ユーザからの入力が端末移行要求でない場合は、入力受付部301は、ユーザからの入力に基づいてユーザ入力情報を作成し、作成したユーザ入力情報をアプリケーション制御部302に送信する。このユーザ入力情報は、少なくとも表示部101の画面における操作位置と操作内容とを示す情報である。
 アプリケーション制御部302は、入力受付部301から取得したユーザ入力情報に従って、1つ以上のアプリケーションの実行を制御する。本実施形態におけるアプリケーションの一例は、インターネット上のWebサイトを表示するWebブラウザである。アプリケーション制御部302は、URLを指定することにより外部接続部309を経由してインターネット上のWebサーバに接続し、Webサイトページ200を記述するためのマークアップ言語であるHTML文書を取得する。そして、アプリケーション制御部302は、取得したHTML文書解析をして、表示部101に表示すべきオブジェクト(動画、静止画、音声、ボタン、文字列など)のレイアウトを決定したり、オブジェクトにフォーカスが当てられる、オブジェクトが選択されるなどした場合の処理動作情報を取得したりすることで、Webサイトページ200を作成する。そして、アプリケーション制御部302は、表示部101の画面サイズに合わせて、Webサイトページ200の一部、例えば図2に示した表示範囲202を、表示部101に表示する。
 この際、アプリケーション制御部302は、表示部101で表示するWebサイトページ200に配置されている各オブジェクトのレイアウトに関する情報を、オブジェクト情報一覧(図7、詳細は後述する)として表示情報保持部304に保持する。また、アプリケーション制御部302は、Webサイトページ200のうちどの部分を表示部101で表示しているかという情報を、画面表示情報(図8Aや図8B、詳細は後述する)として表示情報保持部304に保持する。
 さらに、アプリケーション制御部302は、ユーザから入力があるたびに、ユーザ入力情報に基づいて、ユーザの操作意図やポインティングされているオブジェクトを判定して、対応する入力操作を実行する。入力操作とは、例えば、カーソルの移動、画面のスクロール、クリック、ジェスチャーなどである。そして、入力操作によって、オブジェクトのフォーカス切り替えやオブジェクトのクリック動作に伴うスクリプト処理が発生した場合には、発生したスクリプト処理を実行する。ここでジェスチャーとは、特定の入力動作を行うことで、アプリケーションや端末に登録された特定の操作を実行する機能のことである。例えば、マルチタッチ入力が可能なタッチパネル上で、タッチパネル上に乗せた2つの指の間隔を縮めることで画面サイズを縮小させる「ピンチイン」や、その2つの指の間隔を伸ばすことで画面サイズを拡大させる「ピンチアウト」というジェスチャーが知られている。ユーザ入力情報をどのような入力操作と解釈するかは、アプリケーションによって異なる。
 アプリケーション制御部302は、このユーザ入力情報に応じた一定期間の入力操作を、操作履歴情報一覧(図6、詳細は後述する)として操作情報保持部303に保持する。操作履歴とは、ユーザによって行われた画面操作の履歴であり、ユーザ入力情報からユーザの操作意図やポインティングされているオブジェクトを判定することによって得られる。なお、入力操作やスクリプト処理などによって、表示部101に表示されるWebサイトの範囲が変更された場合には、表示情報保持部304に保持される画面表示情報が変更される。
 なお、Webブラウザにおいて、HTML文書を読み込んで文書解析を行い、オブジェクトをレイアウトしてWebサイトを表示したり、ユーザ入力情報を解釈して入力操作を行ったり、スクリプト処理動作を実行したりする技術は一般的に知られており、本発明の主眼ではないため詳しい説明を省略する。
 操作位置情報取得部305は、表示位置情報取得部306から操作位置情報の取得要求があると、操作情報保持部303から操作履歴情報一覧のうち操作位置情報を取得するために必要な1つ以上の操作履歴を取得する。そして、操作位置情報取得部305は、取得した操作履歴から操作位置情報一覧(図9Aや図9B、詳細は後述する)を生成して、表示位置情報取得部306に送信する。ここで操作位置情報一覧とは、Webサイトページ200のどの部分が操作されたかを示すための情報である。
 表示位置情報取得部306は、情報送信部308から表示位置情報の取得要求があると、操作位置情報取得部305に操作位置情報一覧を要求する。操作位置情報取得部305から操作位置情報一覧を取得すると、表示位置情報取得部306は、表示情報保持部304からオブジェクト情報一覧と画面表示情報とを取得する。そして、表示位置情報取得部306は、操作位置情報一覧とオブジェクト情報一覧と画面表示情報から表示位置情報一覧(図10Aや図10B、詳細は後述する)を生成して、情報送信部308に送信する。ここで表示位置情報一覧とは、移行先端末110でWebサイトページ200のどの部分を表示するかを示すための情報である。
 再現情報取得部307は、情報送信部308からアプリケーション再現情報の取得要求があると、アプリケーション制御部302からアプリケーションを移行先端末110で引き続き利用可能とするためのアプリケーション再現情報(図11、詳細は後述する)を取得し、情報送信部308に送信する。アプリケーション再現情報には、少なくともアプリケーション名が含まれる。アプリケーションがWebブラウザであった場合、これに加えて、少なくとも表示中のWebサイトのURLが含まれる。アプリケーション再現情報の内容は、アプリケーションに依存する。
 情報送信部308は、ユーザから端末移行要求があると、表示位置情報取得部306から表示位置情報一覧を取得し、再現情報取得部307からアプリケーション再現情報を取得し、移行先端末情報(図12、詳細は後述する)に基づいて表示位置情報一覧とアプリケーション再現情報とを移行先端末110に送信する。ここで、移行先端末情報とは、移行先となる端末を特定して通信を確立するために必要な端末を識別する情報であり、例えば移行先端末110のネットワークアドレス、MACアドレス、端末IDなどが相当する。端末の特定と通信の確立が可能であれば移行先端末情報の内容は限定しない。また、移行先端末との通信手段についても限定しない。移行先端末情報は、情報送信部308にて常に保持していてもよいし、端末移行要求があった際に取得してもよい。
 外部接続部309は、外部回線との通信機能を持ち、インターネットから情報を取得する。表示部101は、液晶ディスプレイなどの情報を表示する画面を有した表示装置である。本実施形態では、タブレットPC10が有する表示画面11が該当する。
2.移行先端末110が備える構成の概略
 入力受付部310は、入力受付部301と同様の機能を有し、ユーザによる入力を受け付ける。
 情報受信部311は、移行元端末100からアプリケーション再現情報と表示位置情報一覧とを取得する。そして、情報受信部311は、アプリケーション再現情報をアプリケーション制御部312に送信して、アプリケーションの実行を指示し、表示位置情報一覧を表示位置補正部313に送信する。
 アプリケーション制御部312は、アプリケーション制御部302と同等の機能を有する。さらに、アプリケーション制御部312は、アプリケーション再現情報に基づいてアプリケーションを起動し、移行元端末100の作業内容を再現する。本実施形態におけるアプリケーションの一例は、インターネット上のWebサイトを表示するWebブラウザである。その場合、移行元端末100の作業内容を再現するとは、少なくとも、移行元端末100で表示していたWebサイトと同等のWebサイトを移行先端末110で表示することである。同等のWebサイトとは、同じURLのWebサイトでもよいし、当該Webサイトが動作環境の異なる端末ごとに別々のURLにて同等の内容のWebサイトを複数準備しているときには、同等の内容のWebサイトであってもよい。また、表示していたWebサイトだけでなく、ブックマークやヒストリーバックの情報を移行先端末110に引き継いでもよい。
 表示位置補正部313は、アプリケーション制御部312が作成したWebサイトページ200のうち、表示位置情報一覧で指定された箇所が表示部111に表示されるよう、Webサイトページ200の表示開始位置や表示範囲の補正をアプリケーション制御部312に指示する。
 外部接続部315は外部接続部309と同様の機能を有し、インターネットから情報を取得する。
 表示部111は、液晶ディスプレイなどの情報を表示する画面を有した表示装置である。本実施形態では、携帯電話20が有する表示画面21が表示部111に該当する。
3.移行元端末100が保持する各種の情報
 図5は、Webサイトページ200を作成するためにアプリケーション制御部302がWebサーバから取得するHTML文書の一例を示す図である。HTML文書500のフォーマットや各タグの意味はW3C(World Wide Web Consortium)で標準化されており、一般的に知られているため詳しい説明を省略する。
 図6は、操作情報保持部303が保持している操作履歴情報一覧600の一例を模式的に示す図である。操作履歴情報一覧600は、一定期間の操作履歴の集合であり、操作履歴情報一覧600の各行が、それぞれ1つの操作履歴(例えば操作履歴601)を示している。操作履歴情報一覧600は、ユーザ入力情報をどのように解釈してどのような操作に割り当てたかを示す「操作内容」と、この操作内容に記載されている操作を実行するために必要な「引数1」および「引数2」とを含む。引数の数は操作内容によって異なるが、本実施形態では2つとしている。また、操作履歴情報一覧600は、操作内容に記載されている操作が実行された時刻を示す「操作時刻」を含んでもよい。図6に示す操作履歴情報一覧600では、西暦年月日を表す8桁の日付情報、時分秒を表す6桁の時間情報、および1/100秒を表す3桁のミリ秒情報を、ハイフンで結んだ形式の操作時刻を例示している。
 まず、操作内容について説明する。
 操作内容はアプリケーションにより異なるが、アプリケーションがWebブラウザである場合、操作内容として「カーソル移動」、「ピンチイン/ピンチアウト」、「クリック」、および「スクロール」などが考えられる。
 アプリケーション制御部302は、ユーザ入力情報を解釈して操作内容を判定し、アプリケーションに対して入力操作を行う。操作内容の判定方法は、アプリケーションに依存する。また、Webブラウザにおいてユーザ入力情報を解釈し、アプリケーションに対して「カーソル移動」、「ピンチイン/ピンチアウト」、「クリック」、および「スクロール」などの操作が行われる処理は、一般的に知られているため説明を省略する。
 次に、各操作内容の引数を説明する。
 操作内容が「カーソル移動」の場合、「引数1」はカーソル移動前のカーソル位置(XY座標)を、「引数2」はカーソル移動後のカーソル位置(XY座標)を表す。操作内容が「ピンチイン」および「ピンチアウト」の場合、「引数1」はピンチインおよびピンチアウト操作時の中心となる位置(XY座標)を表す。「引数2」は変更前の表示画面から変更後の表示画面への拡大/縮小率を表す。操作内容が「クリック」の場合、「引数1」はクリック位置(XY座標)を表す。なお、「引数2」はないため空欄である。操作内容が「スクロール」の場合、「引数1」はスクロール移動前のカーソル位置(XY座標)を、「引数2」はスクロール移動後のカーソル位置(XY座標)を表す。なお、上記各XY座標の単位はドットである。
 図7は、表示情報保持部304が保持しているオブジェクト情報一覧700の一例を模式的に示す図である。表示情報保持部304では、表示部101に表示中またはアプリケーション制御部302に読み込み中の1つ以上のWebサイトについて、それぞれWebサイトに含まれる全てのオブジェクトのレイアウト情報を列挙した情報を、オブジェクト情報一覧700として保持する。従って、オブジェクト情報一覧700の各行が、それぞれ1つのオブジェクトのレイアウト情報(例えばオブジェクト情報701、702、703)である。
 図7に例示したオブジェクト情報一覧700は、Webサイトページ200に含まれるオブジェクト情報一覧の一部である。オブジェクト情報一覧700は、各オブジェクトを特定するため、オブジェクトに対応するHTML文書内でのタグ名を示す「タグ名」と、HTML文書内で同一タグのうち何番目であるかを示す「文書内タグインデックス」とを含む。また、オブジェクトをWebサイトページ200のどの部分にレイアウトするかを示すため、Webサイトページ200内での表示開始位置のX座標を示す「ページ内表示開始位置X座標(Xpd)」およびY座標を示す「ページ内表示開始位置Y座標(Ypd)」を含む。また、オブジェクトのWebサイトページ200内での表示範囲を示すため、Webサイトページ200内での表示範囲の幅を示す「ページ内表示範囲幅(Wpd)」と表示範囲の高さを示す「ページ内表示範囲高さ(Hpd)」とを含む。
 「関連タグ」は、あるオブジェクトがユーザにより操作されることに伴って、状態が更新される別のオブジェクトを特定するための情報である。ここで、状態が更新されるとは、例えば、あるオブジェクトがボタンオブジェクトである場合、ユーザがボタン押下することによって、別のオブジェクトであるビデオの再生が開始されるなどの変化を指す。本実施形態例では、状態が更新されるオブジェクトをタグ名と文書内インデックスとで特定するため、関連タグはタグ名と文書内インデックスとをカンマ(,)で区切った文字列となっている。
 なお、「ページ内表示開始位置X座標」、「ページ内表示開始位置Y座標」、「ページ内表示範囲幅」、および「ページ内表示範囲高さ」の単位は、ドットである。
 HTML文書500の各タグを解析して「ページ内表示開始位置X座標」、「ページ内表示開始位置Y座標」、「ページ内表示範囲幅」、および「ページ内表示範囲高さ」を決定して、Webサイトページ200を作成する手段は、一般的なWebブラウザの技術として知られているため説明は省略する。
 また、HTML文書500のスクリプトを解析してあるオブジェクトがユーザにより操作された場合に、状態が更新される別のオブジェクトを特定する手段は、一般的なWebブラウザの技術として知られている。具体的には、あるオブジェクトのonclick属性を参照して関数を取得し、その関数の解析によって取り扱われているオブジェクトを特定することができる。例えば、関数内でdocument.getElementByIdの引数にとなっているIdがあれば、このIdのタグが関数内で取り扱われていることが分かる。
 図8Aは、表示情報保持部304に保持されている画面表示情報800の一例を模式的に示す図である。画面表示情報800は、WebサイトであるWebサイトページ200のどの部分がどのような倍率で表示部101に表示されているかを示す情報である。
 画面表示情報800は、表示部101に表示されるWebサイトの実際の大きさを示す、Webサイトページ200の幅および高さを記述した「Webサイトページ幅」および「Webサイトページ高さ」を含む。「Webサイトページ幅」および「Webサイトページ高さ」の単位は、ドットである。
 また、画面表示情報800は、Webサイトページ200のどの部分が表示部101に表示されているかを示す、表示部101上での表示開始位置、すなわち表示部101の画面左上の位置に対応するWebサイトページ200の位置の、X座標およびY座標を記述した「Webサイトページ表示開始位置X座標」および「Webサイトページ表示開始位置Y座標」を含む。「Webサイトページ表示開始X座標」および「Webサイトページ表示開始Y座標」の単位は、ドットである。新規にWebサイトが開かれた場合に特に指定がない場合は、Webサイトの左上を表示開始位置とするため、「Webサイトページ表示開始位置X座標」および「Webサイトページ表示開始位置Y座標」の初期値は、「0」である。
 また、Webサイトページ200は、ユーザのピンチイン/ピンチアウト操作などにより、初期画面サイズから拡大/縮小されている場合がある。この場合、画面表示情報800は、初期画面サイズからの拡大/縮小率を記述した「Webサイトページ表示倍率」を含んでもよい。新規にWebサイトが開かれた場合に特に指定がない場合は、初期表示からの倍率となるため、「Webサイトページ表示倍率」の初期値は「1.00」である。また、画面表示情報800は、表示部101の画面サイズを示す、画面の幅および高さを記述した「端末画面幅」および「端末画面高さ」を含んでもよい。
 また、画面表示情報800は、表示部101上でWebサイトページ200を表示するウィンドウの表示サイズを示す、表示サイズの幅および高さを記述した「表示画面幅」および「表示画面高さ」を含む。「表示画面幅」および「表示画面高さ」の単位は、ドットである。表示部101上にウィンドウを全画面表示する場合には、「端末画面幅」と「表示画面幅」が、また「端末画面高さ」と「表示画面高さ」がそれぞれ等しい。
さらに、画面表示情報800は、Webサイトページ200を表示するウィンドウが表示部101の画面上のどこに表示されているかを示す、Webサイトページ200を表示するウィンドウの左上の位置に対応する表示部101のX座標およびY座標を記述した「ウィンドウX座標」および「ウィンドウY座標」を含んでもよい。表示部101上にウィンドウを全画面表示する場合には、「ウィンドウX座標」および「ウィンドウY座標」の値は「0」である。
 図8Bは、図8Aで説明した画面表示情報800に従ってWebサイトページ200を表示部101で表示していた状態から、ユーザ操作によって上方向に200ドット分スクロールさせた後の表示部101の表示状態を記述した画面表示情報801を示す図である。図8Bでは、画面表示情報800において「0」であったWebサイトページ表示開始位置Y座標の値が、画面表示情報801で「200」に更新されている。
 図9Aおよび図9Bは、操作位置情報取得部305が表示位置情報取得部306に送信する操作位置情報一覧900および902の一例を示す図である。操作位置情報一覧900および902は、Webサイトページ200におけるユーザの操作位置を特定するための情報であり、Webサイトページ200上での操作位置のX座標およびY座標を記述した「操作位置X座標(Xop)」および「操作位置Y座標(Yop)」を含む。「操作位置X座標」および「操作位置Y座標」の単位は、ドットである。また、操作位置情報一覧900および902は、どのような入力操作であったかを示す「操作内容」を含んでもよい。操作位置情報901など各行が1つの操作位置情報であり、1つ以上の操作位置情報をまとめたものが操作位置情報一覧900および902である。
 図10Aおよび図10Bは、表示位置情報取得部306が情報送信部308に送信する表示位置情報一覧1000および1002の一例を模式的に示す図である。表示位置情報1001などの各行が1つの表示位置情報であり、1つ以上の表示位置情報をまとめたものが表示位置情報一覧1000および1002である。
 表示位置情報一覧1000および1002は、移行先端末110におけるWebサイトページ200の表示位置を指定する情報である。本実施形態では、Webサイトページ200を作成するHTML文書500のタグを指定することで、Webサイトページ200の表示位置を指定する。図10Aに例示する表示位置情報1001は、図7に示したオブジェクト情報702のタグを指定している。移行先端末110では、指定されたタグに対応するオブジェクトが表示部111の画面に表示されるように、表示位置補正部313がWebサイトページ200の表示位置の補正をアプリケーション制御部312に指示する。
 HTML文書500内のタグを指定するため、表示位置情報一覧1000および1002は、タグの特定方法を示す「タグ特定方法」を含んでもよい。なお、移行元端末100と移行先端末110との間でタグの特定方法が固定である場合は、「タグ特定方法」の情報は不要である。図10Aのように、タグ特定情報として図7に示した「文書内タグインデックス」が指定された場合、表示位置情報一覧1000には、タグを特定するためにタグの名前を示す「タグ名」とHTML文書500内での同一タグの出現番号を示す「文書内タグインデックス」が含まれる。また、図10Bのように、タグ特定情報として「id」が指定された場合、表示位置情報一覧1002は、タグを特定するためにidの名前を示す「id名」が含まれる。
 なお、上記実施形態では、タグ特定方法として文書内のタグの出現番号やid名を用いた例を説明したが、タグ特定方法はこれに限定されない。例えば、HTML文書500において、タグが出現するバイト数によってタグを特定してもよいし、タグ名や属性名や要素によってタグを特定してもよい。また、HTML文書を構成している文字列によってタグを特定してもよい。また、上記実施形態では、移行先端末110での表示位置を、HTML文書500のタグによって指定しているが、タグ指定以外の方法を用いてもよい。例えば、Webサイトページ200の座標位置によって移行先端末110での表示位置を指定してもよい。
 図11は、移行元端末100で利用中のWebブラウザを移行先端末110で引き続き利用可能とするために、再現情報取得部307が取得するアプリケーション再現情報1100の一例を示す図である。アプリケーション再現情報1100は、再現情報取得部307がアプリケーション制御部302から取得する。アプリケーション再現情報1100は、移行先端末110で起動すべきアプリケーションを特定する「アプリケーション名」を含む。また、アプリケーション再現情報1100は、アプリケーション名がWebブラウザである場合、Webブラウザを起動する際に表示すべきWebサイトを指定する「URL」を含む。移行元端末100が複数のアプリケーションを起動させている場合には、アプリケーション再現情報1100に、この複数のアプリケーションの再現情報が含まれてもよい。例えば、表示部101に複数のWebサイトページが表示されている場合は、アプリケーション再現情報1100に、複数の「URL」が記述されていてもよいし、特定のページ、例えば一番前面に表示されているWebサイトページの「URL」だけが記述されていてもよい。
アプリケーション再現情報1100の内容は、アプリケーションの内容に依存する。このため、再現情報取得部307は、移行元端末100が実行可能な各アプリケーションについて、アプリケーション再現情報1100を構成するのに必要な情報を予め保持しておき、端末移行処理を実行する際に必要な情報をアプリケーション制御部302から取得してもよい。また、再現情報取得部307は、アプリケーション再現情報1100を構成するのに必要な情報を保持せず、アプリケーション制御部302が必要な情報を再現情報取得部307に送信してもよい。
 図12は、情報送信部308が移行先となる端末特定して通信を確立するために使用する、移行先端末情報1200の一例を示す図である。本実施形態では、ネットワークアドレスを移行先端末情報1200として使用する。移行先端末情報1200は、予め登録しておいて情報送信部308等で保持していてもよいし、端末移行処理を実行する際にユーザに入力させてもよい。また、移行先端末情報1200を予め登録しておく場合、複数の端末の移行先端末情報1200を登録しておいて、端末移行処理を実行する際にどの端末に移行するかをユーザに指定させてもよい。
4.移行元端末100で実行される処理
 次に、図13~図16を用いて、本発明の第1の実施形態に係る端末移行システムを構成する移行元端末100が実行する端末移行処理を説明する。図13は、本発明の第1の実施形態に係る移行元端末100が実行する各種情報作成処理および端末移行処理手順の一例を示すフローチャートである。
 アプリケーション制御部302は、アプリケーションの起動やすでに起動しているアプリケーションにおいて表示部101に表示される対象が変更された場合(別サイトへの移動など)、新たにHTML文書を取得してオブジェクト情報一覧700および画面表示情報800を作成し、表示情報保持部304に保持する(ステップS1302)。
 入力受付部301は、ユーザ入力を受付可能な状態で待機する(ステップS1303)。ユーザ入力があった場合(ステップS1303:Yes)、入力受付部301は、ユーザ入力が端末移行要求であるか否かを判定する(ステップS1304)。ユーザ入力が端末移行要求ではない場合(ステップS1304:No)、実行中のアプリケーションに対する入力であるため、アプリケーション制御部302は、入力受付部301が受け付けたユーザ入力情報を解析し、ユーザ入力に応じたアプリケーション制御を行う(ステップS1305)。
 なお、図13に示していないが、リンク先をクリックする等のユーザ入力により、表示部101に表示される対象が変更される場合(別サイトへの移動など)は、端末移行処理がステップS1302に戻り、アプリケーション制御部302は、新たにHTML文書を取得してオブジェクト情報一覧700および画面表示情報800を作成し、表示情報保持部304に保持する(ステップS1302)。
 アプリケーション制御部302は、上記ステップS1305で行ったアプリケーション制御により、表示部101に表示される内容および/または範囲が変更されたか否かを判断する(ステップS1306)。表示内容の変更とは、例えば、新しいウィンドウが開かれて新しい画面が作成された場合、既存のウィンドウが閉じられて画面がなくなった場合や、表示内容が更新された場合などである。表示範囲の変更とは、例えば、ウィンドウの大きさが変更された場合や、ピンチイン/ピンチアウトにより表示内容の縮小/拡大がなされた場合などである。
 上記ステップS1306において表示内容が変更された場合、アプリケーション制御部302は、表示情報保持部304が保持するオブジェクト情報一覧700を更新する(ステップS1307)。なお、表示内容が変更されていない場合には、このステップS1307の処理は不要である。また、上記ステップS1306において表示範囲が変更された場合、アプリケーション制御部302は、表示情報保持部304が保持する画面表示情報800を更新する(ステップS1308)。なお、表示範囲が変更されていない場合には、このステップS1308の処理は不要である。そして、アプリケーション制御部302は、表示部101に表示される内容や範囲の変更を生じさせたユーザ操作を、操作情報保持部303が保持する操作履歴情報一覧600に追加する(ステップS1309)。
 一方、ユーザ入力が端末移行要求であると入力受付部301が判定した場合(ステップS1304:Yes)、アプリケーション制御部302は、情報送信部308に端末移行要求を指示する(ステップS1310)。情報送信部308は、端末移行要求の指示を受けて、表示位置情報取得部306に表示位置情報一覧1000の取得を指示し、表示位置情報取得部306は、操作位置情報取得部305に操作位置情報一覧900の取得を指示する。この指示を受けた操作位置情報取得部305は、操作履歴情報一覧600を取得し、操作位置情報一覧900を生成する(ステップS1311)。操作位置情報取得部305が操作位置情報一覧900を生成する処理については、図14Aを用いて後述する。表示位置情報取得部306は、操作位置情報取得部305から操作位置情報一覧900を入力して、表示位置情報一覧1000を生成する(ステップS1312)。表示位置情報取得部306が表示位置情報一覧1000を生成する処理については、図15Aを用いて後述する。
 次に、情報送信部308は、再現情報取得部307にアプリケーション再現情報1100の取得を指示し、再現情報取得部307は、アプリケーション制御部302からアプリケーション再現情報1100を取得する(ステップS1313)。そして、情報送信部308は、移行先端末情報1200を取得して移行先端末110との通信を確立し、再現情報取得部307から取得したアプリケーション再現情報1100と表示位置情報取得部306から取得した表示位置情報一覧1000とを、移行先端末110に送信して処理を終了する(ステップS1314)。
 ここで、図13に示す処理を、具体例を挙げて説明する。
 以下、移行元端末100がWebブラウザの表示画面としてURL「http://internetnews.co.jp」のWebサイトページ200(図2)を表示し、ユーザが表示画面をスクロール操作した後に、スクロール後の表示画面を移行先端末110に端末移行する処理について説明する。
 アプリケーション制御部302は、URL「http://internetnews.co.jp」のHTML文書500(図5)をWebサーバから取得する。そして、アプリケーション制御部302は、HTML文書を解釈し、各オブジェクトのレイアウト情報を決定して、Webサイトページ200を作成する。本実施形態では、新規にWebサイトが開かれた場合に、Webサイトページ200の左上部を基準とした表示範囲201が表示される。このWebサイトページ200が作成される過程で、オブジェクト情報一覧700が作成されると共に、Webサイトページ200の幅「800」および高さ「1200」が、画面表示情報800の「Webサイトページ幅」および「Webサイトページ高さ」にそれぞれ記述される。また、画面表示情報800の「Webサイトページ表示開始位置X座標」および「Webサイトページ表示開始位置Y座標」には、それぞれ初期値である「0」が、「Webサイトページ表示倍率」には初期値である「1.00」が、「表示画面幅」および表示画面高さには表示部101の画面幅「800」および高さ「600」が、それぞれ記述される(ステップS1302)。
 次に、ユーザが表示部101に収まりきらないWebサイトページ200の内容を見るため、画面をスクロールさせる操作は、入力受付部301によってユーザ入力があると判定される(ステップS1303:Yes)。このユーザ入力は端末移行要求ではないため(ステップS1304:No)、アプリケーション制御部302は、ユーザ入力に従ってWebサイトページ200を上方向へ200ドット分スクロールさせる(ステップS1305)。これにより、表示部101に表示される内容は、表示範囲201から表示範囲202に変更される(図2)。
 表示部101の表示がWebサイトページ200の上方向へ200ドット分スクロールされたため(ステップS1306:Yes)、アプリケーション制御部302は、画面表示情報800(図8A)のWebサイトページ表示開始位置Y座標を「0」から「200」に変更する、つまり画面表示情報801(図8B)に更新される(ステップS1308)。なお、スクロールしても表示対象はWebサイトページ200に変わりないため、オブジェクト情報一覧700は更新されない。そして、このスクロールの操作履歴601が、操作履歴情報一覧600に追加される(ステップS1309)。
 その後、入力受付部301によってユーザから端末移行要求が受け付けられると(ステップS1304:Yes)、情報送信部308は、操作位置情報一覧900および表示位置情報一覧1000を取得し(ステップS1311、S1312)、アプリケーション名「Webブラウザ」およびURL「http://internetnews.co.jp」が記述されたアプリケーション再現情報1100を生成する(ステップS1313)。そして、情報送信部308は、移行先端末情報1200を取得して、ネットワークアドレスが「192.100.1.10」である移行先端末110にアクセスして通信を確立し、アプリケーション再現情報1100および表示位置情報一覧1000を送信する(ステップS1314)。
 次に、操作位置情報取得部305が実行する操作位置情報一覧900の取得処理(図13、ステップS1311)を説明する。図14Aは、操作位置情報取得部305が操作位置情報一覧900を取得する処理手順の一例を示すフローチャートである。
 操作位置情報取得部305は、表示位置情報取得部306から操作位置情報取得の指示があると、表示情報保持部304から画面表示情報800を取得する(ステップS1401)。また、操作位置情報取得部305は、操作履歴情報一覧600の中から有効な(または重要な)操作履歴を抽出する(ステップS1402)。本実施形態では、「操作時刻」が最新の1つの操作履歴601を有効な操作履歴とする。なお、有効な操作履歴として、一定の期間に含まれる操作時刻を持つ操作履歴や、所定数に含まれる操作履歴や、所定の条件(操作内容など)を満たす操作履歴を、複数用いてもよい。また、ユーザがWebブラウザなどのアプリケーションに対してではない操作を表示部101上で行う場合には、当該アプリケーションへの操作履歴から有効な操作履歴を決定してもよい。例えば、操作履歴の「引数1」および「引数2」には移行元端末の表示画面上における座標情報が含まれているため、当該アプリケーションを表示しているウィンドウ内にこの座標が含まれているか否かを判定する。具体的には、画面表示情報の「表示画面幅」、「表示画面高さ」、「ウィンドウX軸情報」、「ウィンドウY軸情報」から、移行元端末の表示画面上における当該アプリケーションの表示範囲を特定し、操作履歴の「引数1」および「引数2」の座標情報が、表示範囲内に含まれているかどうかを判定する。次に、操作位置情報取得部305は、抽出した有効な操作履歴の「操作内容」が、スクロール(ステップS1403)、ピンチインまたはピンチアウト(ステップS1405)、カーソル移動(ステップS1407)、およびクリック(ステップS1409)のいずれであるか判定する。
 操作内容が「スクロール」であった場合(ステップS1403:Yes)、操作位置情報取得部305は、有効な操作履歴の「引数2」に記述されている情報および画面表示情報800に記述されている情報に基づいて操作位置情報を求め、操作位置情報一覧900に記述する(ステップS1404)。操作位置情報の「操作位置」は、次式[1]および[2]のようにして求められる。
 「操作位置X座標」=(「引数2」のX座標-「ウィンドウX座標」)/「Webサイトページ表示倍率」+「Webサイトページ表示開始位置X座標」 …[1]
 「操作位置Y座標」=(「引数2」のY座標-「ウィンドウY座標」)/「Webサイトページ表示倍率」+「Webサイトページ表示開始位置Y座標」 …[2]
 図6の操作履歴601で具体的に説明すると、以下の値が求められる。
 「操作位置X座標」=(500-0)/1.00+0=500
 「操作位置Y座標」=(360-0)/1.00+200=560
 操作内容が「ピンチイン」または「ピンチアウト」であった場合(ステップS1405:Yes)、操作位置情報取得部305は、有効な操作履歴の「引数1」に記述されている情報および画面表示情報800に記述されている情報に基づいて操作位置情報を求め、操作位置情報一覧900に記述する(ステップS1406)。なお、操作位置情報の「操作位置」は、上式[1]および[2]における引数2を引数1に置き換えることで、求めることができる。
 操作内容が「カーソル移動」あった場合(ステップS1407:Yes)、操作位置情報取得部305は、有効な操作履歴の「引数2」に記述されている情報および画面表示情報800に記述されている情報に基づいて操作位置情報を求め、操作位置情報一覧900に記述する(ステップS1408)。なお、操作位置情報の「操作位置」は、上式[1]および[2]で求めることができる。
 操作内容が「クリック」であった場合(ステップS1409:Yes)、操作位置情報取得部305は、有効な操作履歴の「引数1」に記述されている情報および画面表示情報800に記述されている情報に基づいて操作位置情報を求め、操作位置情報一覧900に記述する(ステップS1410)。なお、操作位置情報の「操作位置」は、上式[1]および[2]における引数2を引数1に置き換えることで、求めることができる。
 このようにして、有効な操作履歴に対応する操作位置情報を取得し、操作位置情報一覧900を生成することができる。生成された操作位置情報一覧900は、表示位置情報取得部306へ送信される(ステップS1411)。
 なお、本実施形態では、操作内容が「スクロール」、「ピンチイン」、「ピンチアウト」、「カーソル移動」、および「クリック」のいずれかである場合を一例に説明しているため、これらの操作に応じた操作位置情報の取得処理(ステップS1403~S1410)が行われている。しかし、これ以外の操作内容についても、同様に操作位置情報の取得処理を適宜挿入することが可能であることは言うまでもない。
 また、本実施形態では、有効な操作履歴が1つである場合を説明したが、上述したように有効な操作履歴が複数であってもよい。この場合、複数の操作位置情報を取得することとなるため、ステップS1403~S1410による処理が有効な操作履歴の数だけ繰り返して行われる。例えば、図14Bに示すように、図14AのフローチャートにステップS1451~S1454を追加して、ステップS1403~S1410を繰り返し行えばよい。なお、複数の操作位置情報を取得できたとしても、複数の操作位置情報から効果的な表示位置情報を作成できない可能性がある。そのため、操作内容や操作履歴の「時刻」情報などから重要度を決定して、この重要度を各操作位置情報に付与してもよい。
 なお、本実施形態では、「操作時刻」が最新の操作履歴を有効な操作履歴としているため、移行元端末100が保持している最新の画面表示情報800の「ウィンドウX座標」および「ウィンドウY座標」の値を使用している。しかし、ユーザ操作によって「ウィンドウX座標」および「ウィンドウY座標」の値は変化するため、最新の操作履歴以外の操作履歴を有効な操作履歴とする場合には、操作履歴の「操作時刻」における「ウィンドウX座標」および「ウィンドウY座標」を使用する必要がある。そのため、移行元端末100は、画面表示情報800の履歴をその画面表示情報が有効である時刻の情報と共に保持しておき、操作位置情報一覧900を取得する際に、操作履歴の「操作時刻」に対応する画面表示情報800を選択して、その選択された画面表示情報800の「ウィンドウX座標」および「ウィンドウY座標」を利用してもよい。
 次に、表示位置情報取得部306が実行する表示位置情報一覧1000の取得処理(図13、ステップS1312)を説明する。図15Aは、表示位置情報取得部306が表示位置情報一覧1000を取得する処理手順の一例を示すフローチャートである。
 表示位置情報取得部306は、情報送信部308から表示位置情報一覧取得の指示があると、表示情報保持部304からオブジェクト情報一覧700を、操作位置情報取得部305から操作位置情報901を、それぞれ取得する(ステップS1501、S1502)。次に、表示位置情報取得部306は、操作位置情報901の「X座標(Xop)」および「Y座標(Yop)」とオブジェクト情報一覧700から、操作位置情報901の操作位置(図9Aに示す例では(Xop,Yop)=(500,560)となる)に一番近いオブジェクトを特定する(ステップS1503)。操作位置情報から一番近いオブジェクトを特定する手順は、図16を用いて後述する。そして、表示位置情報取得部306は、一番近いオブジェクトから表示位置情報を取得して、表示位置情報一覧1000に追加する(ステップS1504)。
 ここで、タグ特定方法として「文書内タグインデックス」を用いる場合に、オブジェクトから表示位置情報を取得する方法について説明する。
 表示位置情報の「タグ特定方法」には「文書内タグインデックス」を記述し、「タグ名」には一番近いオブジェクトのオブジェクト情報から「タグ名」および「文書内タグインデックス」を参照して記述する。例えば、図7のオブジェクト情報702で示されるオブジェクトが特定された場合は、「タグ特定方法」には「文書内タグインデックス」を、「タグ名」には「p」を、「文書内タグインデックス」には「5」を記述した表示位置情報1001が、表示位置情報一覧1000に追加される(図10A)。
次に、表示位置情報取得部306は、操作位置情報の操作内容がクリック、かつ、操作位置情報の座標に一番近いオブジェクトの表示範囲が含まれるか否かを判定する(ステップS1505)。
 ここで、操作位置情報の座標に一番近いオブジェクトの表示範囲が含まれるという判定は、具体的には、オブジェクト情報702に記述されるページ内表示開始位置のX座標XpdおよびY座標Ypd、ページ内表示範囲の幅Wpdおよび高さHpd、および操作位置情報901の操作位置のX座標XopおよびY座標Yopに基づいて、次の式[3]に示す4つの条件を全て満足することで判定される。
  Xpd≦Xop
  Xop≦Xpd+Wpd
  Ypd≦Yop
  Yop≦Ypd+Hpd   ‥‥[3]
 上記ステップS1505における判定結果がYesである場合、表示位置情報取得部306は、クリックにより変化したオブジェクトを特定する(ステップS1506)。このクリックにより変化したオブジェクトの特定は、オブジェクト情報一覧700を参照し、クリックされたオブジェクトの「関連タグ」に記述されているオブジェクトか否かで行われる。
 または、クリックにより変化したオブジェクトの特定は、表示中のWebサイトのHTML文書から一番近いオブジェクトのonclick属性を参照して関数名を取得し、その関数で扱っているオブジェクトか否かで行われる。例えば、関数内で「document.getElementById」の引数にとなっている「Id」があれば、このIdのタグが関数内で取り扱われていることが分かる。
なお、アプリケーション制御部302では、クリックによって変化のあったオブジェクトを把握しているため、アプリケーション制御部302から変化のあったオブジェクトを通知してもらってもよい。
 さらには、クリックによって表示部101の画面に変化があったかどうかは、表示部101をキャプチャすることによっても検出できる。よって、例えば、定期的に表示部101のキャプチャ画面を取得し、クリック操作のあった時刻の前後で変化のあった表示部101の画面位置を特定し、そこからクリックにより変化したオブジェクトを特定してもよい。
 表示位置情報取得部306は、特定されたクリックにより変化したオブジェクトから表示位置情報を取得して、表示位置情報一覧1000に追加する(ステップS1507)。そして、表示位置情報取得部306は、取得した表示位置情報一覧1000を、情報送信部308へ送信する(ステップS1508)。
 なお、本実施形態では、操作位置情報が1つである場合を説明したが、操作位置情報が複数であってもよい。この場合、複数の表示位置情報を取得することとなるため、上記ステップS1503~S1507による処理が操作位置情報の数だけ繰り返して行われる。例えば、図15Bに示すように、図15AのフローチャートにステップS1551~S1554を追加して、ステップS1503~S1507を繰り返し行えばよい。なお、複数の表示位置情報を取得できたとしても、移行先端末110の表示部111では全ての表示位置情報に対応する箇所を一度に表示できない可能性がある。そのため、重要度を表示位置情報に付与してもよい。その場合、重要度は、操作位置情報取得部305から取得してもよいし、操作位置情報一覧900に記述された操作位置と一番近いオブジェクトとの距離によって決定してもよい。また、重要度は、操作時刻が新しい操作履歴情報から作成された操作位置情報ほど高くしてもよい。また、同一の操作履歴情報からステップS1504およびステップS1507でそれぞれ表示位置情報が取得されるような場合には、どちらか一方の表示位置情報の重要度を高くするとよい。また、重要度を付与する代わりに、表示位置情報一覧内における並び方を工夫してもよい。また、表示位置情報取得部306は、複数の操作位置情報のうち情報が重複しているものがあれば、情報送信部308に送信する前に削除してもよい。
 ここで、複数の表示位置情報を取得する一例として、操作位置情報取得部305から操作位置情報一覧902(図9B)が送信された場合に、オブジェクト情報一覧700から表示位置情報一覧1002を取得する動作についても、説明する。
 表示位置情報取得部306は、操作位置情報一覧902に記述された操作位置情報903の「X座標(Xop)」および「Y座標(Yop)」とオブジェクト情報一覧700とから、操作位置情報903の操作位置(Xop,Yop)=(100,480)に一番近いオブジェクトを特定する(ステップS1503)。この例では、オブジェクト情報703を有するオブジェクトとなる。次に、表示位置情報取得部306は、一番近いオブジェクトから表示位置情報を取得して、表示位置情報一覧1000に追加する。ここでは、タグ特定方法として「id」を用いる。この場合、表示位置情報の「タグ特定方法」には「id」を記述し、「id名」にはオブジェクトのid属性である「play」を記述する。なお、本実施形態では、オブジェクト情報一覧700に「id」情報は含まれないが、オブジェクト情報一覧に「id」情報を追加して保持していてもよいし、「id」情報が必要な場合のみ、HTML文書から取得してもよい。
 次に、表示位置情報取得部306は、操作位置情報の操作内容がクリック、かつ、操作位置情報の座標に一番近いオブジェクトの表示範囲が含まれるか否かを判定する(ステップS1505)。具体的には、上記式[3]に示した4つの条件を全て満足するか否かを判定する。
  50(Xpd)≦100(Xop)
  100(Xop)≦50(Xpd)+100(Wpd)
  450(Ypd)≦480(Yop)
  480(Yop)≦450(Ypd)+50(Hpd)
 本実施形態では、上記の通り4つの条件を全て満足するので、表示位置情報取得部306は、クリックにより変化したオブジェクトを特定する(ステップS1506)。表示位置情報取得部306は、一番近いオブジェクトであると判定されたid名が「play」のオブジェクトに、関連タグがあるかどうかを判定する。id名が「play」のオブジェクトは、オブジェクト情報703であるため、関連タグ欄に記載された「(video,1)」の値から、HTML文書500内で1番目に出現する、タグ名が「video」のオブジェクト、すなわちid名が「topnews」であるオブジェクトを特定する。特定したオブジェクトからタグ特定方法「id」およびid名「topnews」である表示位置情報一覧1004を取得して、表示位置情報一覧1002に追加する。(ステップS1507)。
 ここで、クリックにより変化したオブジェクトの別の特定方法について説明する。表示位置情報取得部306は、表示中のWebサイトページ200のHTML文書500を取得し、一番近いオブジェクトであると判定されたid名が「play」のオブジェクトのonclick属性を参照して、関数名である「playVideo」を取得する。そして、表示位置情報取得部306は、その関数の中で「document.getElementById」の引数にとなっているIdから、id名が「topnews」であるオブジェクトを特定する。特定したオブジェクトからタグ特定方法「id」、id名「topnews」である表示位置情報一覧1004を取得して、表示位置情報一覧1002に追加する。(ステップS1507)。
 次に、表示位置情報取得部306が実行する操作位置情報から一番近いオブジェクトを特定する処理(図15A、S1503)を説明する。図16は、表示位置情報取得部306が一番近いオブジェクトを特定する処理手順の一例を示すフローチャートである。
 表示位置情報取得部306は、オブジェクト情報一覧700から任意の1つのオブジェクト情報について、ページ内表示開始位置のX座標(Xpd)およびY座標(Ypd)、ページ内表示範囲の幅(Wpd)および高さ(Hpd)を取得し、また操作位置情報901の操作位置のX座標(Xop)およびY座標(Yop)を取得する(ステップS1602)。また、変数XDと変数YDに「0」が代入される(ステップS1603)。
 次に、表示位置情報取得部306は、取得したオブジェクト情報の「ページ内表示開始位置X座標」の値が「操作位置X座標」の値より小さいか否かを判定する(ステップS1604)。このステップS1604の判定結果がNoであれば、変数XDに「ページ内表示開始位置X座標」-「操作位置X座標」の値が代入され、ステップS1608に進む(ステップS1605)。一方、ステップS1604の判定結果がYesであれば、表示位置情報取得部306は、「操作位置X座標」の値が「ページ内表示開始位置X座標」+「ページ内表示範囲幅」によって得られた値より小さいか否かを判定する(ステップS1606)。
 上記ステップS1606の判定結果がNoであれば、変数XDに「操作位置X座標」-「ページ内表示開始位置X座標」+「ページ内表示範囲幅」の値が代入され、ステップS1608に進む(ステップS1607)。一方、上記ステップS1606の判定結果がYes、もしくはステップS1605またはS1607の処理を終了した場合、表示位置情報取得部306は、「ページ内表示開始位置Y座標」の値が「操作位置Y座標」の値より小さいか否かを判定する(ステップS1608)。
 上記ステップS1608の判定結果がNoであれば、変数YDに「ページ内表示開始位置Y座標」-「操作位置Y座標」の値が代入され、ステップS1612に進む(ステップS1609)。一方、上記ステップS1608の判定結果がYesであれば、表示位置情報取得部306は、「操作位置Y座標」の値が「ページ内表示開始位置Y座標」+「ページ内表示範囲高さ」によって得られた値より小さいか否かを判定する(ステップS1610)。
 上記ステップS1610の判定結果がNoであれば、変数YDに「操作位置Y座標」-「ページ内表示開始位置Y座標」+「ページ内表示範囲高さ」の値が代入され、ステップS1612に進む(ステップS1611)。一方、上記ステップS1610の判定結果がYes、もしくはステップS1609またはS1611の処理を終了した場合、表示位置情報取得部306は、(XD×XD+YD×YD)の値をオブジェクトと対応付けて記憶する(ステップS1612)。
 上記ステップS1603~S1612の処理は、オブジェクト情報一覧700に記述される全てのオブジェクト情報を対象として繰り返し実行される(ステップS1601、S1602、S1613、S1614)。そして、全てのオブジェクトに対して処理が完了すると、表示位置情報取得部306は、(XD×XD+YD×YD)の値が一番小さなオブジェクト情報のオブジェクトを一番近いオブジェクトと特定する(ステップS1615)。
 例えば、本実施形態では、操作位置情報901は「操作位置X座標」=「500」および「操作位置Y座標」=「560」であり、オブジェクト情報701は「ページ内表示開始位置X座標」=「50」、「ページ内表示開始位置Y座標」=「250」、「ページ内幅」=「320」、および「ページ内高さ」=「180」である。
 この場合、ステップS1604がYesかつステップS1606がNoであるため、変数XDに「500」-(「50」+「320」)の値である「130」が代入される。また、ステップS1608がYesかつステップS1610がNoであるため、変数YDに「560」-(「250」+「180」)の値である「130」が代入される。そして、変数XDの値が「130」、変数YDの値が「130」であるため、(XD×XD+YD×YD)の値である「33800」が、オブジェクト情報701で表されるオブジェクトと対応付けて記憶される。
5.移行先端末110で実行される処理
 次に、図17~図19を用いて、本発明の第1の実施形態に係る端末移行システムを構成する移行先端末110が実行する端末移行処理を説明する。
 図17は、本発明の第1の実施形態に係る移行先端末110の端末移行処理手順の一例を示すフローチャートである。
 この図17に示す処理は、移行先端末110が移行元端末100からデータを受信すると開始される。情報受信部311は、移行元端末110からデータ受信すると(ステップS1701)、受信したデータにアプリケーション再現情報が含まれているか否かを判定する(ステップS1702)。アプリケーション再現情報が含まれている場合(ステップS1702:Yes)、アプリケーション制御部312は、アプリケーション再現情報で指定されているアプリケーションを起動して、(ステップS1703)アプリケーションを制御する(ステップ1704)。本実施形態では、URL「http://internetnews.co.jp」が指定されているため、アプリケーション制御部312は、HTML文書500をWebサーバから取得してHTML文書を解釈し、各オブジェクトのレイアウト情報を決定して、Webサイトページ200を作成する。なお、移行元端末100と同様の手法で、この過程においてオブジェクト情報一覧および画面表示情報も作成してもよい。
 次に、情報受信部311は、受信したデータに表示位置情報が含まれているか否かを判定する(ステップS1705)。表示位置情報が含まれている場合(ステップS1705:Yes)、アプリケーション制御部312は、表示位置情報に基づいて表示位置を制御する(ステップS1706)。表示位置の制御については、図18を参照して後述する。
 一方、移行元端末100から受信したデータに、アプリケーション再現情報も表示位置情報も含まれていない場合には、この端末移行処理は実行されずに終了する。
 次に、表示位置補正部313が実行する表示位置補正処理(図17、ステップS1706)を説明する。図18は、表示位置補正部313が実行する表示位置補正処理手順の一例を示すフローチャートである。
 始めに、変数Nに「1」、変数minXに「0」、変数minYに「0」、変数maxXに「0」、変数maxYに「0」、変数scaleに「1」が、それぞれ代入される(ステップS1801)。表示位置補正部313は、N番目の表示位置情報を取得し(ステップS1802)、このN番目の表示位置情報に対応するオブジェクトの「ページ内表示開始位置X座標(Xpd)」、「ページ内表示開始位置Y座標(Ypd)」、「ページ内表示範囲幅(Wpd)」、および「ページ内表示範囲高さ(Hpd)」を取得する(ステップS1803)。
 次に、表示位置補正部313は、「minX>ページ内表示開始位置X座標」もしくは「N=1」のいずれかを満たすか否かを判定する(ステップS1804)。ステップS1804の判定結果がYesであれば、変数minXに「ページ内表示開始位置X座標(Xpd)」の値が代入される(ステップS1805)。
 次に、表示位置補正部313は、「minY>ページ内表示開始位置Y座標」もしくは「N=1」のいずれかを満たすか否かを判定する(ステップS1806)。ステップS1806の判定結果がYesであれば、変数minYに「ページ内表示開始位置Y座標(Ypd)」の値が代入される(ステップS1807)。
 次に、表示位置補正部313は、「maxX<ページ内表示開始位置X座標+ページ内表示範囲幅」を満たすか否かを判定する(ステップS1808)。ステップS1808の判定結果がYesであれば、変数maxXに「ページ内表示開始位置X座標(Xpd)+ページ内表示範囲幅(Wpd)」の値が代入される(ステップS1809)。
 最後に、表示位置補正部313は、「maxY<ページ内表示開始位置Y座標+ページ内表示範囲高さ」を満たすか否かを判定する(ステップS1810)。ステップS1810の判定結果がYesであれば、変数maxYに「ページ内表示開始位置Y座標(Ypd)+ページ内表示範囲高さ(Hpd)」の値が代入される(ステップS1811)
 上記ステップS1803~S1811の処理は、表示位置情報の数だけ繰り返して実行される(ステップS1802、S1803、S1812、S1813)。全てのオブジェクトについて上記ステップS1803~S1811の処理が終了すると(ステップS1813:No)、表示位置補正部313は、「画面表示幅/(maxX-minX)<scale」を満たすか否かを判定する(ステップS1814)。ステップS1814の判定結果がYesであれば、変数scaleに「画面表示幅/(maxX-minX)」の値が代入される(ステップS1815)。
 また、表示位置補正部313は、「画面表示高さ/(maxY-minY)<scale」を満たすか否かを判定する(ステップS1816)。ステップS1816の判定結果がYesであれば、変数scaleに「画面表示高さ/(maxY-minY)」の値が代入される(ステップS1817)。
 さらに、表示位置補正部313は、変数scaleの値が「1」であるか否かを判定する(ステップS1818)。ステップS1818の判定結果がYesであれば、表示位置補正部313は、Webサイトの表示開始位置を補正する、すなわち表示画面の左上位置に表示されるWebサイト内の座標位置を、X座標=minXおよびY座標=minYに設定する(ステップS1820)。一方、ステップS1818の判定結果がNoであれば、表示位置補正部313は、Webサイトの表示開始位置および縮尺を補正する、すなわち表示画面の左上位置に表示されるWebサイト内の座標位置をX座標=minXおよびY座標=minYと設定し、かつWebサイトの表示サイズをscaleの値に従って拡大または縮小させる(ステップS1819)。
 このように、本発明の表示位置補正処理では、上記ステップS1803~S1811の処理を表示位置情報の数だけ繰り返して実行することで、表示位置情報で指定された全てのオブジェクトが表示画面の端で欠けることがなく全て表示させるために必要なWebサイトのサイズが幅「maxX-minX」および高さ「maxY-minY」として求めることができる。
さらに、本発明の表示位置補正処理では、上記ステップS1814~S1818の処理により、移行先端末110の表示画面の幅および高さと、表示位置情報で指定された全てのオブジェクト表示するために必要なWebサイトの幅「maxX-minX」および高さ「maxY-minY」とを比較することで、表示位置情報で指定された全てのオブジェクトを表示画面中に表示可能かどうかを判定している。
 そして、本発明の表示位置補正処理では、全てのオブジェクトを表示可能な場合は、Webサイトの表示開始位置を補正して表示する。また、全てのオブジェクトが表示不可能な場合には、この例ではWebサイトの表示を縮小して表示画面に表示することで、表示位置情報で指定された全てのオブジェクトを表示画面に表示する。
 これにより、表示位置や縮尺を補正することで、移行元端末100でユーザが注目していた部分を移行先端末110に表示することができる。
 なお、表示位置情報で指定された全てのオブジェクトの一部が表示されればよい場合には、ステップS1808、S1809で用いる「ページ内表示範囲幅(Wpd)」およびステップS1810、S1811で用いる「ページ内表示範囲高さ(Hpd)」を、それぞれ「0」以上の任意の値に置き換えてもよい。
 なお、表示位置情報で指定された全てのオブジェクトが表示画面中に表示できない場合、変数scaleの値に従ってWebサイトを縮小すると、文字や画像が小さくなりすぎて見にくくなることがある。そのため、ステップS1819とは異なる方法で表示を補正してもよい。
 例えば、方法A)表示位置情報で指定されたオブジェクトのうち、なるべく多くのオブジェクトが表示される表示範囲を検索して、表示位置を補正してもよい。また、方法B)表示位置情報一覧の先頭もしくは優先度の高い表示位置情報として指定されたオブジェクトがなるべく多く表示される表示範囲を検索して、表示位置を補正してもよい。また、方法C)表示位置情報一覧の先頭もしくは優先度の一番高い表示位置情報として指定されたオブジェクトが表示され、かつ、それ以外の表示位置情報として指定されたオブジェクトがより少ないユーザ操作で表示可能な表示範囲を検索して、表示位置を補正してもよい。なお、上記方法A、B、およびCによる補正の際、Webサイトの縮尺は行わなくてもよいし、変数scaleとは異なる値でWebサイトを縮尺してもよい。
 図19は、上記方法Cによる表示位置を補正する方法の一例を示す図である。
 Webサイトページ200において、文字列「海外」のオブジェクト1901が表示位置情報一覧の優先度の一番高い表示位置情報として指定されたオブジェクトであり、文字列「経済」のオブジェクト1902が表示位置情報一覧の優先度が低い表示位置情報として指定されたオブジェクトであるとする。この場合、Webサイトページ200上で、オブジェクト1902はオブジェクト1901の左上にあるため、オブジェクト1901が右下に来るように表示範囲1903を設定する。これにより、オブジェクト1901が左上に来るように表示範囲を設定した場合に比べて、より少ないスクロール動作でオブジェクト1902を表示することが可能となる。
 なお、Webブラウザでは、アンカータグなどを用いて、Webサイトページ200をページの先頭ではなく、特定のタグなどから表示する技術は、一般的に知られている。よって、アプリケーション制御部312および表示位置補正部313において、表示位置情報一覧1000を用いて表示位置を補正する技術については、説明を省略する。
 以上のように、本発明の第1の実施形態に係る端末移行システムによれば、端末移行処理時には、移行元端末100の表示部101においてユーザが操作や視聴をしていた表示箇所が、移行先端末110の表示部111にも引き継いで表示される。
 これにより、移行元端末100で行っていた処理を移行先端末110で再開するにあたり、ユーザは、表示内容の拡大/縮小や画面スクロールなどのアクションを行う必要がなくなり、スムーズな端末移行が可能となる。
  <第2の実施形態>
 図20は、本発明の第2の実施形態に係る端末移行システムを構成する移行元端末120および移行先端末110の構成を示す図である。移行元端末120は、端末移行装置320、入力受付部301、アプリケーション制御部302、操作情報保持部303、表示情報保持部304、外部接続部309、表示部101、カメラ部326を備える。端末移行装置320は、注目位置情報取得部325、表示位置情報取得部306、再現情報取得部307、および情報送信部308を備える。
 図20に示すように、本第2の実施形態に係る端末移行システムは、上記第1の実施形態に係る端末移行システムと、移行元端末120におけるカメラ部326および注目位置情報取得部325の構成が異なる。第2の実施形態に係る端末移行システムにおけるその他の構成は、上記第1の実施形態に係る端末移行システムと同様であるため説明を省略する。なお、第2の実施形態では、操作情報を使用しないため操作情報保持部303を省略することが可能である。
1.移行元端末120が備える構成の概略および保持する情報
 以下、図21および図22をさらに用いて、上記第1の実施形態に係る端末移行システムと異なる構成である、カメラ部326および注目位置情報取得部325の概要およびそれらが保持する情報を説明する。
 カメラ部326は、CMOSやCCDなどのイメージセンサを備えた撮像装置であり、例えば図21に示すように、表示部101を見ているユーザの顔を撮影できる位置に設けられる。このカメラ部326は、一定時間ごとに撮影を行い、撮影された写真に写っているユーザの眼球の向き(視線)やカメラと表示部101の画面との位置関係から、ユーザが表示画面のどの位置を見ているか(視点)を特定する。そして、カメラ部326は、各写真で特定したユーザの視点を視点履歴情報一覧として保持する。なお、カメラによる視線検出の技術は一般的に知られているため、ここでは説明を省略する。
 図22は、カメラ部326が保持している視点履歴情報一覧2200を模式的に例示した図である。視点履歴情報一覧2200は、ユーザの画面上の視点位置を時系列に一定期間保存した情報である。視点履歴情報一覧2200には、視点の表示部101上での座標位置をXY座標で示す「視点座標」を含む。視点座標の単位はドットである。また、視点履歴情報一覧2200は、視点履歴が入力された時刻を示す「時刻」を含んでいてもよい。図22の視点履歴情報一覧2200では、西暦年月日を表す8桁の日付情報、時分秒を表す6桁の時間情報、および1/100秒を表す3桁のミリ秒情報を、ハイフンで結んだ形式の時刻を例示している。
 上記第1の実施形態と同様、情報送信部308は、入力受付部301から端末移行要求の指示を受けて、表示位置情報取得部306に表示位置情報一覧の取得を指示する。この指示に応じて、表示位置情報取得部306は、注目位置情報取得部325に注目位置情報一覧の取得を指示する。注目位置情報取得部325は、表示位置情報取得部306から視点情報取得の要求があると、カメラ部326が保持する視点履歴情報一覧2200から視点情報を取得するために必要な1つ以上の視点履歴を取得する。そして、注目位置情報取得部325は、取得した視点履歴から注目位置情報一覧を生成して、表示位置情報取得部306に送信する。
 図23は、注目位置情報取得部325が保持する注目位置情報一覧2300の一例を示す図である。注目位置情報一覧2300は、Webサイトページ200におけるユーザの注目位置、すなわち視点を特定するための情報であり、Webサイトページ200上での注目位置の「X座標(Xop)」および「Y座標(Yop)」を含む。X座標およびY座標の単位は、ドットである。注目位置情報一覧2300の各行が1つの注目位置情報である。
 表示位置情報取得部306は、注目位置情報取得部325から注目位置情報一覧2300を取得すると、表示情報保持部304からオブジェクト情報一覧700および画面表示情報800を取得する。そして、表示位置情報取得部306は、注目位置情報一覧2300、オブジェクト情報一覧700、および画面表示情報800から表示位置情報一覧1000を生成し、情報送信部308に送信する。
2.移行元端末120で実行される処理
 次に、図24~図26Bを用いて、本発明の第2の実施形態に係る端末移行システムを構成する移行元端末120が実行する端末移行処理を説明する。
 図24は、本発明の第2の実施形態に係る移行元端末120が実行する各種情報作成処理および端末移行処理手順の一例を示すフローチャートである。なお、図24において図13に示した処理と同一の処理を行うステップには、同一の参照符号を付して説明を省略する。
 ステップS1304において、ユーザ入力が端末移行要求であると入力受付部301が判定した場合(ステップS1304:Yes)、アプリケーション制御部302は、情報送信部308に端末移行要求を指示する(ステップS1310)。情報送信部308は、端末移行要求の指示を受けて、表示位置情報取得部306に表示位置情報一覧1000の取得を指示し、表示位置情報取得部306は、注目位置情報取得部325に注目位置情報一覧2300の取得を指示する。この指示を受けた注目位置情報取得部325は、視点履歴情報一覧2200を取得し、注目位置情報一覧2300を生成する(ステップS2411)。注目位置情報取得部325が注目位置情報一覧2300を生成する処理については、図25Aを用いて後述する。そして、表示位置情報取得部306は、注目位置情報取得部325から注目位置情報一覧2300を入力して、表示位置情報一覧1000を生成する(ステップS2412)。表示位置情報取得部306が表示位置情報一覧1000を生成する処理については、図26Aを用いて後述する。
 次に、注目位置情報取得部325が実行する注目位置情報一覧2300の取得処理(図24、ステップS2411)を説明する。図25Aは、注目位置情報取得部325が注目位置情報一覧2300を取得する処理手順の一例を示すフローチャートである。
 注目位置情報取得部325は、表示位置情報取得部306から注目位置情報取得の指示があると、表示情報保持部304から画面表示情報800を取得する(ステップS2501)。また、注目位置情報取得部325は、視点履歴情報一覧2200から有効な視点履歴を決定する(ステップS2502)。本実施形態では、「時刻」が最新の1つの視点履歴を有効な視点履歴とする。なお、有効な視点履歴として、一定の期間に含まれる時刻を持つ視点履歴や、所定数に含まれる視点履歴や、所定の条件(表示部101のある領域に多く集中するなど)を満たす視点履歴を、複数用いてもよい。
 次に、注目位置情報取得部325は、有効な視点履歴から注目位置情報を取得し、注目位置情報一覧2300に追加する(ステップ2503)。注目位置情報の「注目位置」は、次式[4]および[5]のようにして求められる。
 「X座標」=(「視点座標」のX座標-「ウィンドウX座標」)/(「Webサイトページ表示倍率」)+「Webサイトページ表示開始位置X座標」 …[4]
 「Y座標」=(「視点座標」のY座標-「ウィンドウY座標」)/(「Webサイトページ表示倍率」)+「Webサイトページ表示開始位置Y座標」 …[5]
 図22の視点履歴2201で具体的に説明すると、以下の値が求められる。
 「注目位置X座標」=(500-0)/1.00+0=500
 「注目位置Y座標」=(360-0)/1.00+200=560
 このようにして、有効な視点履歴に対応する注目位置情報を取得し、注目位置情報一覧2300を生成することができる。生成された注目位置情報一覧2300は、表示位置情報取得部306へ送信される(ステップS2504)。
 また、本実施形態では、有効な視点履歴が1つである場合を説明したが、上述したように有効な視点履歴が複数であってもよい。この場合、複数の視点位置情報を取得することとなるため、ステップS2503による処理が有効な視点履歴の数だけ繰り返して行われる。例えば、図25Bに示すように、図25AのフローチャートにステップS2551~S2554を追加して、ステップS2503を繰り返し行えばよい。なお、複数の視点位置情報を取得できたとしても、複数の視点位置情報から効果的な表示位置情報を作成できない可能性がある。そのため、視点履歴の時刻などから重要度を決定して、この重要度を各操作位置情報に付与してもよい。
 次に、表示位置情報取得部306が実行する表示位置情報一覧1000の取得処理(図24、ステップS2412)を説明する。図26Aは、表示位置情報取得部306が表示位置情報一覧1000を取得する処理手順の一例を示すフローチャートである。
 表示位置情報取得部306は、情報送信部308から表示位置情報一覧取得の指示があると、表示情報保持部304からオブジェクト情報一覧700を、注目位置情報取得部325から注目位置情報2301を、それぞれ取得する(ステップS2601、S2602)。次に、表示位置情報取得部306は、注目位置情報2301の「X座標(Xop)」および「Y座標(Yop)」とオブジェクト情報一覧700から、注目位置情報2301の注目位置(図23に示す例では(Xop,Yop)=(500,560)となる)に一番近いオブジェクトを特定する(ステップS2603)。注目位置情報から一番近いオブジェクトを特定する手順は、上記第1の実施形態において図16を用いて説明した手順と同じであり、「操作位置」を「注目位置」に置き換えることで実現できる。そして、表示位置情報取得部306は、一番近いオブジェクトから表示位置情報を取得して、表示位置情報一覧1000に追加する(ステップS2604)。なお、文書内タグインデックスまたはid名を用いるタグ特定方法は、上記第1の実施形態と同様である。表示位置情報取得部306は、表示位置情報一覧1000を情報送信部308へ送信する(ステップS2605)。
 なお、本実施形態では、注目位置情報で示される注目位置に一番近いオブジェクトから表示位置情報を取得しているが、一番近いオブジェクトを特定した後、特定した一番近いオブジェクトの次に表示されるオブジェクトから表示位置情報を取得してもよい。これは、ユーザによっては、移行直前に移行元端末100で見ていた箇所は既に視聴済みなので、それ以降のWebサイトページ200を見たいという場合も考えられるからである。
 ここで、特定した一番近いオブジェクトの次に表示されるオブジェクトとは、HTML文書500において、当該一番近いオブジェクトに対応するタグの次に記載されているタグに対応するオブジェクトや、Webサイトページ200において、当該一番近いオブジェクトに隣接して表示されているオブジェクトである。
 なお、注目位置情報で示される注目位置に一番近いオブジェクトから表示位置情報を取得するか、特定した一番近いオブジェクトの次に表示されるオブジェクトから表示位置情報を取得するかは、ユーザの視点履歴から決定してもよい。例えば、視点履歴の座標位置が一定以上移動しているユーザは流し読みをしていると考えられるので、特定した一番近いオブジェクトの次に表示されるオブジェクトから表示位置情報を取得し、表示部101の画面上のある領域に多くの視点履歴があれば、ユーザは一点を注視しているため、特定した一番近いオブジェクトから表示位置情報を取得するようにしてもよい。
 以上のように、本発明の第2の実施形態に係る端末移行システムによれば、端末移行処理時には、移行元端末120の表示部101においてユーザが注目をしていた表示箇所が、移行先端末110の表示部111にも引き継いで表示される。
 これにより、移行元端末100で行っていた処理を移行先端末110で再開するにあたり、ユーザは、表示内容の拡大/縮小や画面スクロールなどのアクションを行う必要がなくなり、スムーズな端末移行が可能となる。
 また、本発明の各実施形態における端末移行システムを構成する一部または全部の機能ブロックは、中央処理装置(CPU)、記憶装置(メモリ(ROM、RAM等)、ハードディスク等)、および入出力装置などのハードウエア資源を用いることで実現され、典型的には集積回路であるIC(LSI、システムLSI、スーパーLSI、ウルトラLSI等とも称される)として具現化される。これらの機能ブロックは、個別に1チップ化されてもよいし、一部または全部を含むように1チップ化されてもよい。
 また、集積回路化の手法は、ICに限るものではなく、専用回路または汎用プロセッサで実現してもよい。また、IC製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)や、IC内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
 さらには、半導体技術の進歩または派生する別の技術により、ICに置き換わる集積回路化の技術(バイオ技術など)が登場すれば、当然その技術を用いて機能ブロックの集積化を行ってもよい。
 また、上述した本発明の各実施形態における端末移行システムが実行する端末移行方法は、記憶装置に格納された端末移行方法の手順を実行可能な所定のプログラムデータが、CPUによって解釈実行されることで実現されてもよい。この場合、プログラムデータは、CD-ROMやフレキシブルディスク等の記録媒体を介して記憶装置内に導入されてもよいし、記録媒体上から直接実行されてもよい。なお、記録媒体は、ROMやRAMやフラッシュメモリ等の半導体メモリ、フレキシブルディスクやハードディスク等の磁気ディスクメモリ、CD-ROMやDVDやBD等の光ディスクメモリ、およびメモリカードなどをいう。また、記録媒体は、電話回線や搬送路などの通信媒体も含む概念である。
 本発明の端末移行システムは、表示画面サイズや画面解像度の異なる端末間でアプリケーションの利用を引き継ぐ場合などに利用可能であり、特に移行元端末の表示画面内でユーザが操作や注目していた箇所を移行先端末の表示画面でも引き続いて表示したい場合などに有用である。
10 タブレットPC
11、21 表示画面
14 ボタン
20 携帯電話
30 ノートPC
40 ネットワーク
100、120 移行元端末
101、111 表示部
110 移行先端末
200 Webサイトページ
201~203、1903 表示範囲300、320 端末移行装置
301、310 入力受付部
302、312 アプリケーション制御部
303 操作情報保持部
304 表示情報保持部
305 操作位置情報取得部
306 表示位置情報取得部
307 再現情報取得部
308 情報送信部
309、315 外部接続部
311 情報受信部
313 表示位置補正部
325 注目位置情報取得部
326 カメラ部
500 HTML文書
600 操作履歴情報一覧
601 操作履歴
700 オブジェクト情報一覧
701、702、703 オブジェクト情報
800、801 画面表示情報
900、902 操作位置情報一覧
901、903 操作位置情報
1000、1002 表示位置情報一覧
1001、1003、1004 表示位置情報
1100 アプリケーション再現情報
1200 移行先端末情報
1901、1902 オブジェクト
2200 視点履歴情報一覧
2201 視点履歴
2300 注目位置情報一覧
2301 注目位置情報

Claims (17)

  1.  第1端末から第2端末へのアプリケーションの継続利用が可能な端末移行システムであって、
     前記第1端末は、
      前記アプリケーションに対するユーザの行為に基づいて、前記アプリケーションによって画面表示されるプログラム上の特定位置を取得する位置情報取得部、
      前記特定位置に基づいて、前記第2端末の画面上における前記プログラムの表示位置を取得する表示位置情報取得部、および
      前記表示位置および前記プログラムを示す情報を前記第2端末へ送信する情報送信部を備え、
     前記第2端末は、
      前記第1端末から前記情報を受信する情報受信部、
      前記情報に示された前記プログラムを前記アプリケーションによって画面表示するアプリケーション制御部、および
      前記情報に示された前記表示位置に従って、画面表示される前記プログラムの位置を補正する表示位置補正部を備える、端末移行システム。
  2.  前記第1端末は、
      ユーザによる前記アプリケーションに対する操作を受け付ける入力受付部、および
      前記入力受付部を介してユーザが行った操作を操作履歴として保持する保持部をさらに備え、
     前記位置情報取得部は、前記操作履歴に基づいて、前記アプリケーションによって画面表示されるプログラム上のユーザによる操作位置を、前記特定位置として取得する、請求項1に記載の端末移行システム。
  3.  前記第1端末は、
      ユーザが注視する前記プログラム上の視点を特定する特定部、および
      前記特定部で特定されたユーザの視点を視点履歴として保持する保持部をさらに備え、
     前記位置情報取得部は、前記視点履歴に基づいて、前記アプリケーションによって画面表示されるプログラム上のユーザによる注目位置を、前記特定位置として取得する、請求項1に記載の端末移行システム。
  4.  前記位置情報取得部は、最新の操作履歴に基づいて前記操作位置を取得する、請求項2に記載の端末移行システム。
  5.  前記位置情報取得部は、最新の視点履歴に基づいて前記注目位置を取得する、請求項3に記載の端末移行システム。
  6.  前記表示位置情報取得部は、前記プログラムに含まれるオブジェクトのうち、前記操作位置に少なくとも一番近いオブジェクトの位置を前記表示位置として取得する、請求項2に記載の端末移行システム。
  7.  前記表示位置情報取得部は、前記操作履歴が複数存在する場合、前記プログラムに含まれるオブジェクトのうち、当該複数の操作履歴の1つに基づいた前記操作位置に少なくとも一番近いオブジェクトの位置を前記表示位置として取得する、請求項2に記載の端末移行システム。
  8.  前記表示位置情報取得部は、前記プログラムに含まれるオブジェクトのうち、前記操作位置にあるオブジェクトの操作に伴って変化する別のオブジェクトの位置を前記表示位置として取得する、請求項2に記載の端末移行システム。
  9.  前記表示位置情報取得部は、前記プログラムに含まれるオブジェクトのうち、前記注目位置に少なくとも一番近いオブジェクトの位置を前記表示位置として取得する、請求項3に記載の端末移行システム。
  10.  前記表示位置補正部は、前記操作位置に少なくとも一番近いオブジェクトが前記第2端末の画面内に収まるように、前記プログラムを表示する縮尺を補正する、請求項6に記載の端末移行システム。
  11.  前記表示位置補正部は、前記操作位置に少なくとも一番近いオブジェクトが前記第2端末の画面内に収まるように、前記プログラムを表示する縮尺を補正する、請求項7に記載の端末移行システム。
  12.  前記表示位置補正部は、前記別のオブジェクトが前記第2端末の画面内に収まるように、前記プログラムを表示する縮尺を補正する、請求項8に記載の端末移行システム。
  13.  前記表示位置補正部は、前記操作位置に一番近いオブジェクトが前記第2端末の画面内に収まるように、前記プログラムを表示する表示開始位置を補正する、請求項6に記載の端末移行システム。
  14.  前記表示位置補正部は、前記操作位置に少なくとも一番近いオブジェクトが前記第2端末の画面内に収まるように、前記プログラムを表示する表示開始位置を補正する、請求項7に記載の端末移行システム。
  15.  前記表示位置補正部は、前記別のオブジェクトが前記第2端末の画面内に収まるように、前記プログラムを表示する表示開始位置を補正する、請求項8に記載の端末移行システム。
  16.  前記表示位置補正部は、前記注目位置に少なくとも一番近いオブジェクトが前記第2端末の画面内に収まるように、前記プログラムを表示する縮尺を補正する、請求項9に記載の端末移行システム。
  17.  前記表示位置補正部は、前記注目位置に少なくとも一番近いオブジェクトが前記第2端末の画面内に収まるように、前記プログラムを表示する表示開始位置を補正する、請求項9に記載の端末移行システム。
PCT/JP2012/000310 2011-02-10 2012-01-19 端末移行システム WO2012108129A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-027887 2011-02-10
JP2011027887 2011-02-10

Publications (1)

Publication Number Publication Date
WO2012108129A1 true WO2012108129A1 (ja) 2012-08-16

Family

ID=46638357

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/000310 WO2012108129A1 (ja) 2011-02-10 2012-01-19 端末移行システム

Country Status (1)

Country Link
WO (1) WO2012108129A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015041111A (ja) * 2013-08-20 2015-03-02 日本電気株式会社 Webページ引き継ぎシステム、Webページ引き継ぎ方法、通信端末、Webページ表示方法およびプログラム
JP2016018345A (ja) * 2014-07-07 2016-02-01 富士通株式会社 表示制御方法、表示制御プログラム、端末装置および表示制御システム
CN108449380A (zh) * 2018-02-09 2018-08-24 上海康斐信息技术有限公司 一种路由器实现设备间游戏程序数据转移的方法及系统
JP2019040333A (ja) * 2017-08-24 2019-03-14 大日本印刷株式会社 情報処理装置、情報処理方法、コンピュータプログラム及び表示制御用の時系列データ

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002149640A (ja) * 2000-11-02 2002-05-24 Internatl Business Mach Corp <Ibm> 情報処理システム、端末装置、情報処理支援サーバ、情報処理方法、html文書、記憶媒体及びプログラム伝送装置
JP2005242899A (ja) * 2004-02-27 2005-09-08 Internatl Business Mach Corp <Ibm> コラボレーションサーバ、コラボレーションシステム、その方法及びプログラム
JP2007300452A (ja) * 2006-05-01 2007-11-15 Mitsubishi Electric Corp 画像及び音声通信機能付テレビジョン放送受像機
JP2009086082A (ja) * 2007-09-28 2009-04-23 Brother Ind Ltd 画像表示装置及び画像表示システム
JP2010165074A (ja) * 2009-01-13 2010-07-29 Nec Corp Webページ共有システム、Webページ共有方法、及びWebページ共有プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002149640A (ja) * 2000-11-02 2002-05-24 Internatl Business Mach Corp <Ibm> 情報処理システム、端末装置、情報処理支援サーバ、情報処理方法、html文書、記憶媒体及びプログラム伝送装置
JP2005242899A (ja) * 2004-02-27 2005-09-08 Internatl Business Mach Corp <Ibm> コラボレーションサーバ、コラボレーションシステム、その方法及びプログラム
JP2007300452A (ja) * 2006-05-01 2007-11-15 Mitsubishi Electric Corp 画像及び音声通信機能付テレビジョン放送受像機
JP2009086082A (ja) * 2007-09-28 2009-04-23 Brother Ind Ltd 画像表示装置及び画像表示システム
JP2010165074A (ja) * 2009-01-13 2010-07-29 Nec Corp Webページ共有システム、Webページ共有方法、及びWebページ共有プログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015041111A (ja) * 2013-08-20 2015-03-02 日本電気株式会社 Webページ引き継ぎシステム、Webページ引き継ぎ方法、通信端末、Webページ表示方法およびプログラム
JP2016018345A (ja) * 2014-07-07 2016-02-01 富士通株式会社 表示制御方法、表示制御プログラム、端末装置および表示制御システム
JP2019040333A (ja) * 2017-08-24 2019-03-14 大日本印刷株式会社 情報処理装置、情報処理方法、コンピュータプログラム及び表示制御用の時系列データ
JP7009835B2 (ja) 2017-08-24 2022-01-26 大日本印刷株式会社 情報処理装置、情報処理方法、及びコンピュータプログラム
CN108449380A (zh) * 2018-02-09 2018-08-24 上海康斐信息技术有限公司 一种路由器实现设备间游戏程序数据转移的方法及系统

Similar Documents

Publication Publication Date Title
TWI585673B (zh) 輸入裝置與使用者介面互動
US9788072B2 (en) Providing a search service convertible between a search window and an image display window
US20190354258A1 (en) Information Processing Apparatus, Information Processing Method, and Program
WO2020000973A1 (zh) 信息访问方法、客户端、装置、终端、服务器和存储介质
US10075544B2 (en) Information processing apparatus and information processing method
US20070002077A1 (en) Methods and System for Providing Information Services Related to Visual Imagery Using Cameraphones
US20130268894A1 (en) Method and system for controlling display device and computer-readable recording medium
US8498993B2 (en) Information acquiring apparatus, information acquiring program, recording medium, information acquiring method and information acquiring system
KR20150007897A (ko) 외부 기기에 디스플레이된 정보와 관련된 기능을 실행하는 휴대용 기기, 휴대용 기기에서 외부 기기에 디스플레이된 정보와 관련된 기능을 실행하는 방법 및 컴퓨터 판독 가능한 기록 매체
US9400850B2 (en) Systems and methods for providing a tailored user interface associated with a web page
US20180024976A1 (en) Annotation providing method and device
WO2012108129A1 (ja) 端末移行システム
KR20130113987A (ko) 디스플레이 디바이스 제어 방법 및 시스템과 기록 매체
US20160132478A1 (en) Method of displaying memo and device therefor
US20130055114A1 (en) Enhanced and Extended Browsing Via Companion Mobile Device
KR20160134355A (ko) 디스플레이 장치 및 이의 제어 방법
WO2015079527A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
TW201209704A (en) Image-based control method, processing method and system thereof
US8887101B2 (en) Method for moving a cursor and display apparatus using the same
JP2015114955A (ja) 情報処理装置、情報処理方法、およびプログラム
JP2021165905A (ja) 通信装置、通信装置の制御方法、及びプログラム
JP5237031B2 (ja) コンテンツ情報処理方法、コンテンツ情報処理プログラム、及びコンテンツ情報処理装置
JP2009169883A (ja) Webブラウザの簡易操作方法
US11321357B2 (en) Generating preferred metadata for content items
JP6648210B2 (ja) 情報処理装置、情報処理方法、プログラム、記憶媒体

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12744932

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12744932

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP