Video display for avoiding hiding of particular element displayed on screen
A display ( 101 ) displays a foreground window in which a video is played on a screen and so as to hide a portion of a background window in which content including a user-operable interactive element is provided. A detector ( 102 ) detects hiding of the interactive element by the foreground window. When the hiding is detected, a changer ( 103 ) changes at least either a position or a size of the foreground window so that a portion or an entirety of a hidden portion of the interactive element is no longer hidden.
1 . A terminal device, comprising:
memory configured to store one or more instructions;
one or more processors,
wherein the one or more instructions, when executed by the one or more processors, cause the terminal device to:
display a foreground window in which a video is played on a screen, wherein the display of the foreground window hides a portion of a background window in which content including a user-operable interactive element is provided;
detect hiding of the interactive element by the foreground window; and
based on the hiding of the interactive element by the foreground window being detected, change at least either a position or a size of the foreground window so that a portion or an entirety of a hidden portion of the interactive element is no longer hidden; and
when the foreground window would hide a portion of the hidden portion of the interactive element in each of a plurality of candidate positions, sequentially change the position of the foreground window among the plurality of candidate positions by intermittently changing the position of the foreground window to each of the plurality of candidate positions or changing the position of the foreground window among the plurality of candidate positions at a predetermined speed.
2 . The terminal device according to claim 1 , wherein
the one or more instructions, when executed by one or more processors, cause the terminal device to:
based on the hiding of the interactive element by the foreground window being detected, change the position of the foreground window to a candidate position of a plurality of candidate positions, wherein the foreground window does not hide the interactive element in the candidate position.
3 . The terminal device according to claim 2 , wherein
the candidate position is a position in which the foreground window does not overlap a region in which a frequency of a touch operation of a user on the screen is high.
4 . The terminal device according to claim 1 , wherein
the one or more instructions, when executed by the one or more processors, cause the terminal device to:
determine whether it is possible to avoid the hiding of the interactive element by the foreground window by reducing the size of the foreground window by the predetermined ratio; and
based on determining that it is possible to avoid the hiding of the interactive element by the foreground window by reducing the size of the foreground window by the predetermined ratio, reduce the size of the foreground window by the predetermined ratio without changing the position of the foreground window.
5 . The terminal device according to claim 1 , wherein
the one or more instructions, when executed by the one or more processors, cause the terminal device to:
determine, based on a region of the interactive element in which the interactive element is drawn, a set of candidate positions that avoid hiding the region of the interactive element,
wherein the position of the foreground window is automatically changed to a candidate position of the set of candidate positions.
6 . The terminal device according to claim 5 , wherein the set of candidate positions are determined based on:
comparing a position and a size of the region in which the interactive element is drawn to a size of the foreground window and one or more potential positions of the foreground window; and
determining, for each potential position of the one or more potential positions of the foreground window, whether the foreground window would overlap with the region in which the interactive element is drawn.
7 . The terminal device according to claim 1 , wherein
the hiding of the interactive element by the foreground window is detected based on comparing a position and a size of a region in which the interactive element is drawn to a position and a size the foreground window.
8 . A server device comprising:
memory storing one or more instructions;
one or more processors, wherein the one or more instructions, when executed by the one or more processors, cause the server device to:
acquire, from a terminal device, a position and a size of a foreground window in which a video is played;
acquire, from the terminal device, a position and a size of a background window in which content including a user-operable interactive element is provided, wherein the foreground window and the background window are displayed on a screen of the terminal device, and;
acquire, from the terminal device, a position and a size of the interactive element;
detect hiding of the interactive element by the foreground window based on the position and the size of the foreground window, the position and the size of the background window, and the position and the size of the interactive element, and;
based on the hiding of the interactive element by the foreground window being detected, cause the terminal device to change at least either the position or the size of the foreground window so that a portion or an entirety of a hidden portion of the interactive element is no longer hidden; and
when the foreground window would hide a portion of the hidden portion of the interactive element in each of a plurality of candidate positions, sequentially change the position of the foreground window among the plurality of candidate positions by intermittently changing the position of the foreground window to each of the plurality of candidate positions or changing the position of the foreground window among the plurality of candidate positions at a predetermined speed.
9 . A non-transitory computer-readable medium having stored therein a program, which when executed by one or more processors, cause an electronic device to:
display a foreground window in which a video is played on a screen, wherein the display of the foreground window hides a portion of a background window in which content including a user-operable interactive element is provided;
detect hiding of the interactive element by the foreground window; and
based on the hiding of the interactive element by the foreground window being detected, change at least either a position or a size of the foreground window so that a portion or an entirety of a hidden portion of the interactive element is no longer hidden; and
when the foreground window would hide a portion of the hidden portion of the interactive element in each of a plurality of candidate positions, sequentially change the position of the foreground window among the plurality of candidate positions by intermittently changing the position of the foreground window to each of the plurality of candidate positions or changing the position of the foreground window among the plurality of candidate positions at a predetermined speed.