CROSS REFERENCE TO RELATED APPLICATIONS

This application is a National Stage of International Application No. PCT/JP2017/036633 filed on Oct. 10, 2017. The contents of the above document is incorporated herein by reference in its entirety.

TECHNICAL FIELD

The present invention relates to a content sharing system, a content sharing method, and a program.

BACKGROUND ART

There exist systems in which a plurality of users can perform operations on shared content. For example, in Patent Literature 1, there is described a system in which any one of a plurality of users can perform a drawing operation on a shared whiteboard. In the technology described in Patent Literature 1, the details of the drawing operation on a whiteboard displayed on a display unit of a terminal device are reflected on a whiteboard displayed on a display unit of another terminal device connected to the terminal device via a network.

In the technology described in Patent Literature 1, even when a display update is performed by another user while the user is performing a drawing operation on the whiteboard, the whiteboard can be returned to the state before the display update by performing a predetermined operation.

CITATION LIST

Patent Literature

[PTL 1] JP 2006-331309 A

[PTL 2] JP 5977450 B2

[PTL 3] WO 2016/067363 A1

SUMMARY OF INVENTION

Technical Problem

The inventors of the present invention are investigating implementation of a system in which a plurality of users can per form operations on shared content, for example, webpages, in which a selection box or other such objects are arranged. In such a system, in a case where the user is to perform an operation of selecting an object, when a display update of the shared content is performed by an operation of another user, the object intended by the user may not be selected. Further, in such a situation, an object different from that intended by the user may be selected.

In this regard, in Patent Literature 1, there is no description of processing corresponding to a drawing operation of the user on the whiteboard after a display update under a situation in which the display update is performed by an operation of another user when the user is to perform the drawing operation. In the technologies described in Patent Literature 2 and Patent Literature 3, in which processing is executed in accordance with an intention of the user, a display update of the shared content by an operation of another user is not expected in the first place.

The present invention has been made in view of the above-mentioned circumstances. It is an object of the present invention to provide a content sharing system, a content sharing method, and a program, which are capable of appropriately processing an operation of a user on shared content after a display update by an operation of another user is performed.

Solution to Problem

In order to solve the problem described above, according to one embodiment of the present invention, there is provided a content sharing system including: cursor position identification means for identifying a position of a cursor arranged on shared content operable by both of a first user and a second user; focus state determination means for determining whether an object on the shared content is in a focus state or in a non-focus state, based on the position of the cursor; operation identification means for identifying that an operation has been performed by the first user, the operation being an operation of execution instruction of predetermined processing; display update identification means for identifying a display update of the shared content by an operation of the second user; and processing execution means for executing the predetermined processing on an object that is in a focus state at a timing that is before a time earlier than the operation of execution instruction of the predetermined processing by the predetermined time period and that is closest to the time earlier than the operation by the predetermined time period, when it is identified that the display update has been performed during a predetermined time period until the operation.

In one aspect of the present invention, the processing execution means executes the predetermined processing on an object that is in a focus state at a time earlier than a timing of the operation of execution instruction of the predetermined processing by the predetermined time period and that is brought into a non-focus state during the predetermined time period until the operation, when it is identified that the display update has been performed during the predetermined time period until the operation.

Further, in one aspect of the present invention, the processing execution means executes the predetermined processing on an object that is in a focus state at a timing that is before the time earlier than the operation of execution instruction of the predetermined processing by the predetermined time period and that is closest to the time earlier than the operation by the predetermined time period, further when a length between a position of the cursor on the shared content at the time earlier than the operation of execution instruction of the predetermined processing by the predetermined time period and a position of the cursor on the shared content at a timing of the operation of execution instruction of the predetermined processing is shorter than a predetermined length.

Further, in one aspect of the present invention, the processing execution means executes the predetermined processing on an object that is in a focus state at a timing that is before the time earlier than the operation of execution instruction of the predetermined processing by the predetermined time period and that is closest to the time earlier than the operation by the predetermined time period, further when there is no object in a focus state at the timing of the operation.

Further, in one aspect of the present invention, the processing execution means executes the predetermined processing on an object in a focus state at a timing that is before the time earlier than the operation of execution instruction of the predetermined processing by the predetermined time period and that is closest to the time earlier than the operation by the predetermined time period, further when the display update has not been performed before the time earlier than the operation of execution instruction of the predetermined processing by the predetermined time period.

Further, according to one embodiment of the present invention, there is provided a content sharing method including the steps of: identifying a position of a cursor arranged on shared content operable by both of a first user and a second user; determining whether an object on the shared content is in a focus state or in a non-focus state, based on the position of the cursor; identifying that an operation has been performed by the first user, the operation being an operation of execution instruction of predetermined processing; identifying a display update of the shared content by an operation of the second user; and executing the predetermined processing on an object that is in a focus state at a timing that is before a time earlier than the operation of execution instruction of the predetermined processing by the predetermined time period and that is closest to the time earlier than the operation by the predetermined time period, when it is identified that the display update has been performed during a predetermined time period until the operation.

Further, according to one embodiment of the present invention, there is provided a program for causing a computer to execute the procedures of: identifying a position of a cursor arranged on shared content operable by both of a first user and a second user; determining whether an object on the shared content is in a focus state or in a non-focus state, based on the position of the cursor; identifying that an operation has been performed by the first user, the operation being an operation of execution instruction of predetermined processing has been performed by the first user; identifying a display update of the shared content by an operation of the second user; and executing the predetermined processing on an object that is in a focus state at a timing that is before a time earlier than the operation of execution instruction of the predetermined processing by the predetermined time period and that is closest to the time earlier than the operation by the predetermined time period, when it is identified that the display update has been performed during a predetermined time period until the operation.

