Information processing system, input device, and information processing method

The information processing system addresses scrolling speed limitations and window transitions by switching between normal and hyper scrolling modes based on rotor speed, ensuring efficient and controlled scrolling.

JP2026020987APending Publication Date: 2026-02-10NEC PERSONAL COMPUTERS LTD
View PDF 9 Cites 0 Cited by

Patent Information

Application Number
JP2024122659
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-29
Publication Date
2026-02-10

AI Technical Summary

Technical Problem

Existing input devices, such as mice with mouse wheels, struggle to achieve desired scrolling speeds and are cumbersome to adjust, and inertial scrolling can lead to unintended scrolling across windows.

Method used

An information processing system with an input device featuring a rotor that switches between normal and hyper scrolling modes based on rotation speed, using a first mode for low speeds and a second mode for high speeds, and includes a controller to manage scrolling amounts and durations.

Benefits of technology

Enables seamless scrolling speed adjustment without additional components or operations, preventing unintended scrolling across windows and enhancing user control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026020987000001_ABST
    Figure 2026020987000001_ABST
Patent Text Reader

Abstract

To economically achieve switching between a first mode and a second mode without complicated operation.SOLUTION: The input device includes a rotor, determines a scroll amount corresponding to a rotation amount of the rotor, and detects a movement amount of the input device, the host system moves a display area for displaying screen information according to the scroll amount, and the input device or the host system executes a first mode in which the scroll amount is determined based on a first scroll amount per the rotation amount when a rotation speed of the rotor is equal to or lower than a predetermined reference speed, when the rotation speed of the rotor exceeds the reference speed, a second mode is started in which the scroll amount is determined based on a second scroll amount that is a scroll amount per rotation amount and is larger than the first scroll amount, an initial value of the movement amount at the start of the second mode is specified, and when the movement amount from the initial value exceeds a predetermined reference movement amount, the second mode is ended.SELECTED DRAWING: Figure 10
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present application relates to an information processing system, an input device, and an information processing method. [Background technology]

[0002] Scrolling refers to the process of moving the display area of ​​screen information that exceeds the size of the display area by an amount corresponding to the rotation of a rotor that rotates by operation. When the scale of screen information is large, a faster scrolling speed may be desired. For example, Cited Document 1 describes a data processing system that aims to enable scrolling of a notification list containing multiple notifications while displaying content. Cited Document 2 describes a display control system that aims to smoothly scroll acquired data that is greater than the number of items to be displayed.

[0003] The input position is input using a pointing device such as a mouse. For example, some mice have a mouse wheel with hardware inertia. The mouse wheel rotates when an external force is applied, and continues to rotate for a certain period of time after the external force is released. The input position is displaced in response to this rotation, resulting in continued scrolling. Some mice also have a thumb wheel that allows the amount of scrolling relative to the amount of rotation to be changed by operating the thumb wheel. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Publication No. 2022-106824 [Patent Document 2] Japanese Patent Application Publication No. 2023-168120 Summary of the Invention [Problem to be solved by the invention]

[0005] However, with a mouse equipped with a mouse wheel, the mouse wheel cannot be rotated at a speed greater than the speed set by the user's operation. This can result in the user being unable to achieve the scrolling speed desired. Furthermore, a mouse wheel with hardware inertia tends to increase weight and production costs. Furthermore, the amount of scrolling using the thumb wheel is set by operation. Therefore, it can be cumbersome for users to change the scrolling speed depending on the application.

[0006] Furthermore, information processing devices such as PCs (Personal Computers) employ multi-window systems. Typically, different screens are displayed in multiple windows on a display screen, and a cursor is displayed at an input position designated by a pointing device such as a mouse. The displayed cursor then moves in response to the displacement of the designated input position, enabling scrolling on a window-by-window basis.

[0007] In addition, inertial scrolling may be implemented in image processing related to scrolling, whereby scrolling continues for a certain period of time after the mouse wheel stops. In this situation, when the mouse pointer moves from one window to another, the scrolling process is also taken over by the other window, which can result in the screen being scrolled in the other window regardless of whether it is desired or not. [Means for solving the problem]

[0008] The present application has been made to solve the above-mentioned problems, and an information processing system according to one aspect of the present application is an information processing system comprising: an input device having a rotor, determining a scroll amount corresponding to the rotation amount of the rotor, and detecting its own movement amount; and a host system that moves a display area for displaying screen information according to the scroll amount, wherein the input device or the host system executes a first mode in which, when the rotation speed of the rotor is equal to or less than a predetermined reference speed, the movement amount is determined based on a first scroll amount per rotation amount, and when the rotation speed of the rotor exceeds the reference speed, starts a second mode in which the scroll amount is determined based on a second scroll amount per rotation amount that is greater than the first scroll amount, identifies an initial value of the movement amount at the start of the second mode, and ends the second mode when the movement amount from the initial value exceeds a predetermined reference movement amount.

[0009] An information processing system according to one aspect of the present application is an information processing system comprising: an input device having a rotor and determining a scrolling amount corresponding to the rotation amount of the rotor; and a host system that moves a display area in which screen information is displayed according to the scrolling amount, wherein the input device or the host system executes a first mode in which the scrolling amount is determined based on a first scrolling amount per rotation amount when the rotation speed of the rotor is equal to or less than a predetermined reference speed, and executes a second mode in which the scrolling amount is determined based on a second scrolling amount per rotation amount that is greater than the first scrolling amount when the rotation speed of the rotor exceeds the reference speed.

[0010] In the above information processing system, the input device may include a rotation detector that detects the amount of rotation of the rotor, and a controller that notifies the host system of the amount of scrolling determined based on the amount of rotation.

[0011] In the above information processing system, the input device may continue to scroll for a predetermined period after the rotor stops while the second mode is being executed, attenuating the amount of scrolling just before the rotor stops over time, and determine the amount of scrolling to be notified to the host system.

[0012] An input device according to one aspect of the present application is an input device that includes a rotor, determines a scroll amount by which a display area of ​​screen information moves corresponding to the amount of rotation of the rotor, and detects its own amount of movement, and when the rotation speed of the rotor is equal to or less than a predetermined reference speed, executes a first mode in which the amount of movement is determined based on a first scroll amount per amount of rotation, and when the rotation speed of the rotor exceeds the reference speed, starts a second mode in which the amount of scrolling is determined based on a second scroll amount per amount of rotation that is greater than the first scroll amount, identifies an initial value of the amount of movement at the start of the second mode, and when the amount of movement from the initial value exceeds a predetermined reference amount of movement, ends the second mode.

[0013] An information processing method according to one aspect of the present application is an information processing method in an information processing system including an input device having a rotor, determining a scroll amount corresponding to the rotation amount of the rotor, and detecting its own movement amount, and a host system moving a display area for displaying screen information according to the scroll amount, wherein the input device or the host system executes a first mode in which, when the rotation speed of the rotor is equal to or less than a predetermined reference speed, the movement amount is determined based on a first scroll amount per rotation amount, and when the rotation speed of the rotor exceeds the reference speed, starts a second mode in which the scroll amount is determined based on a second scroll amount per rotation amount that is greater than the first scroll amount, identifies an initial value of the movement amount at the start of the second mode, and ends the second mode when the movement amount from the initial value exceeds the predetermined reference movement amount. [Effects of the Invention]

[0014] According to the above aspect of the present application, switching between the first mode and the second mode can be realized economically without complicated operations. [Brief explanation of the drawings]

[0015] [Figure 1] 1 is a diagram illustrating an example of the external configuration of an information processing system according to an embodiment of the present invention. [Figure 2] FIG. 1 is a schematic block diagram illustrating an example of a hardware configuration of an information processing device according to an embodiment of the present invention. [Figure 3] FIG. 2 is a diagram illustrating an example of the internal configuration of a mouse according to the present embodiment. [Figure 4] 4A and 4B are explanatory diagrams showing an example of detection of the rotation amount of a rotor according to the present embodiment. [Figure 5] FIG. 10 is a diagram illustrating a first control example of a display area. [Figure 6] FIG. 10 is a diagram illustrating a second control example of the display area. [Figure 7] FIG. 10 is a diagram illustrating an example of the attenuation characteristics of the moving speed. [Figure 8] 5 is a flowchart showing a first example of scroll control according to the present embodiment. [Figure 9] 10A and 10B are diagrams illustrating a control example of hyper scroll processing according to the embodiment. [Figure 10] 10 is a flowchart showing a second example of scroll control according to the embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0016] Hereinafter, embodiments of the present application will be described with reference to the drawings. FIG. 1 is a diagram showing an example of the external configuration of an information processing system S1 according to this embodiment. The information processing system S1 includes an information processing device 1 and a mouse 32m. 1, the information processing device 1 is a notebook PC (Personal Computer). The information processing device 1 includes a first housing 62 and a second housing 64. The first housing 62 and the second housing are joined together at their respective long sides using fasteners 68a and 68b. The first housing 62 and the second housing can be opened and closed around a rotation axis ax parallel to the long sides when an external force is applied.

[0017] The first housing 62 includes the display 14. The display area of ​​the display 14 covers most of the surface area of ​​the first housing 62. The second housing 64 has a keyboard 32k and a touchpad 32t arranged thereon. When the first housing 62 is open relative to the second housing 64, a user facing the front of the first housing 62 can view the display information displayed on the display 14 and perform input operations on the keyboard 32k and touchpad 32t.

[0018] The information processing device 1 is connected to the mouse 32m by wire or wirelessly and can receive operation information from the mouse 32m. When a user performs an input operation on the mouse 32m, the mouse 32m generates operation information corresponding to the received input operation and outputs it to the information processing device 1. The mouse 32m can receive, for example, a rotation operation, a movement operation, and a press operation. In the present application, the mouse 32m, the keyboard 32k, and the touchpad 32t may be collectively referred to as the input device 32.

[0019] The mouse 32 m includes a rotor 322 , a movement amount detector 323 , and a press detector 324 . The rotor 322 has a disk-like shape, and its main surface is oriented parallel to the longitudinal direction of the mouse 32m. The central axis of the rotor 322 is oriented in the width direction of the mouse 32m. The rotor 322 rotates around its central axis due to an external force. With this configuration, the rotor 322 receives an operation of moving in the longitudinal direction while in contact with the surface of the mouse 32m, and rotates in accordance with the received operation. The operation of rotating the rotor 322 corresponds to a rotation operation. The rotor 322 is, for example, a mouse wheel. A mouse wheel is sometimes called a scroll wheel.

[0020] The movement amount detector 323 is disposed on the bottom surface of the mouse 32m. When the bottom surface of the mouse 32m is moved while touching the surface of an object, the movement amount detector 323 detects the amount of movement from a predetermined reference position. The surface of the object is, for example, a flat surface such as a desk or table. The operation of moving the mouse 32m while touching the surface of the object corresponds to a movement operation. The detected movement amount corresponds to a relative position with respect to the reference position. For example, the position at the time of last touching the surface of the object is set as the reference position. The movement amount detector 323 may have a sensor related to any detection method, such as a mechanical type or an optical type.

[0021] The press detector 324 comes into contact with the surface of the mouse 32m and detects a pressure of a certain magnitude or more applied in the direction of the bottom as a press. The press detector 324 includes a left detector 324l and a right detector 324r, located on either side of the rotor 322. Press operations include, for example, click operations and drag operations. The left detector 324l and the right detector 324r can detect left clicks and right clicks, respectively. The left detector 324l and the right detector 324r each constitute a mechanical switch.

[0022] Next, an example of the hardware configuration of the information processing device 1 according to this embodiment will be described. Fig. 2 is a schematic block diagram showing an example of the hardware configuration of the information processing device 1 according to this embodiment. The information processing device 1 includes a host system 10, a video subsystem 13, a display 14, an external memory 22, an input / output I / F 26, an EC 31, and an input device 32.

[0023] The host system 10 corresponds to the main computer system of the information processing device 1. The host system 10 includes a processor, a main memory, and a chipset (not shown). The functions of the host system 10 are realized by the processor executing various programs, working in cooperation with the main memory and the chipset, or working in cooperation with other devices. In this application, the execution of processing instructed by instructions written in a program may be referred to as "executing a program" or "running a program."

[0024] The processor is, for example, a CPU (Central Processing Unit). The processor executes various arithmetic processes under program control, and realizes and controls the operation of the information processing device 1. The programs executed by the CPU include a BIOS (Basic Input Output System) and an OS (Operating System). The CPU also executes other programs on the OS. That is, the CPU executes other programs according to the execution state and computational resources instructed by processing based on the OS. The other programs include application programs. In this application, application programs may be referred to as "apps" or "applications."

[0025] The main memory has a storage medium that can read and write various types of data, and is used as a working area for the processor. The main memory is set with a read area for programs executed by the processor, a storage area for data used in the processing executed by the processor, and a storage area for data temporarily or finally generated by the processing executed by the processor. The main memory includes, for example, one or more DRAMs (Dynamic Random Access Memories).

[0026] The chipset is configured to connect to various devices and include a controller for controlling input / output with each device. The chipset is connected by wire in accordance with an interface standard such as USB (Universal Serial Bus) or PCI (Peripheral Component Interconnect)-Express. In the example of Fig. 2, the video subsystem 13, external memory 22, input / output I / F 26, and EC 31 are connected to the chipset. An example of the functional configuration of the host system 10 will be described later.

[0027] Video subsystem 13 is a subsystem for realizing functions related to screen display. Video subsystem 13 includes, for example, a video controller and a video memory (not shown). The video controller temporarily stores screen information in the video memory in accordance with a drawing command from host system 10. Video subsystem 13 outputs display data indicating the screen information stored in the video memory to display 14 in accordance with the drawing command.

[0028] Display 14 displays screen information instructed by display data input from video subsystem 13. Display 14 may be, for example, a liquid crystal display (LCD), an organic light emitting diode (OLED) display, or the like.

[0029] The external memory 22 non-temporarily stores various programs and various data in a rewritable manner. The various programs include an OS, applications, drivers, etc. The various data include data used in the processing of the processor, data obtained by the processing of the processor, etc. The external memory 22 may be, for example, a hard disk drive (HDD) or a solid state drive (SSD). Note that some of the data or programs may be fixed and not rewritable.

[0030] The input / output I / F (Interface) 26 connects to other devices via wire or wirelessly to input and output various data. The input / output I / F 26 is, for example, a USB connector. The USB connector is a connector for connecting to peripheral devices in accordance with the USB standard. The input / output I / F 26 connects to other devices via wired or wireless connection so as to transmit and receive various data in accordance with a predetermined communication standard. The predetermined communication standard may be, for example, IEEE802.11, IEEE802.15.1, or the like. IEEE802.11 is a communication standard related to an in-house wireless communication network. IEEE802.15.1 is a short-range wireless communication standard for digital devices.

[0031] The EC (Embedded Controller) 31 is a controller for monitoring the status or controlling the operation of various devices connected to it, regardless of the operating state of the host system 10. The EC 31 is configured as a one-chip microcontroller (not shown) that is separate from the host system 10 and includes a CPU, ROM, RAM, and input / output terminals. The ROM stores programs executed by the CPU. The RAM is used as a working area for the CPU. The chipset of the host system 10 and an input device 32 are connected to the input / output terminals.

[0032] The input device 32 receives a user operation and outputs operation information corresponding to the received operation to the EC 31. The above-mentioned keyboard 32k and touchpad 32t correspond to the input device 32. The input device 32 is not limited to this. Note that the mouse 32m may be connected to the EC 31 as a part of the input device 32, or may be connected to the input / output I / F 26.

[0033] Next, an example of the internal configuration of the mouse 32m according to this embodiment will be described. Fig. 3 is a diagram showing an example of the internal configuration of the mouse 32m according to this embodiment. Fig. 4 is an explanatory diagram showing an example of detection of the amount of rotation according to this embodiment. The mouse 32m includes a rotor 322, a rotation detector 325, and a controller 328. The rotation detector 325 detects the amount of rotation of the rotor 322 and notifies the controller 328 of the detected amount of rotation. The rotation detector 325 is, for example, a mechanical encoder.

[0034] The rotation detector 325 includes an encoder gear 325g and a rotation sensor 325s. The encoder gear 325g has a disk-like shape and rotates around its central axis in conjunction with the rotor 322. The central axes of the rotor 322 and the encoder gear 325g are indicated on the circuit board of the mouse 32m. Teeth are engraved at regular angular intervals on the surface of the encoder gear 325g around the periphery.

[0035] The rotation sensor 325s detects the amount of rotation of the encoder gear 325g and notifies the controller 328 of the detected amount of rotation. The rotation sensor 325s is supported on the substrate of the mouse 32m at a position where it contacts the convex portion of the tooth trace depending on the orientation of the encoder gear 325g, but does not contact the concave portion of the tooth trace regardless of the orientation. In the example of FIG. 4(a), the tip of the rotation sensor 325s is recessed into the concave portion of the encoder gear 325g. When the encoder gear 325g subsequently moves vertically relative to the drawing, the tip of the rotation sensor 325s contacts the apex of the convex portion of the tooth trace of the encoder gear 325g. When the encoder gear 325g moves further, the tip of the rotation sensor 325s recesses into the adjacent concave portion of the encoder gear 325g. Therefore, as the encoder gear 325g rotates, contact between the convex portion and the rotation sensor 325s is repeated. Therefore, each time the tip of the rotation sensor 325s contacts the convex portion, it generates a pulse signal and outputs the generated pulse signal to the controller 328. Therefore, the controller 328 counts the frequency of the pulse signal input from the rotation sensor 325s, and is notified of the amount of rotation of the rotor 322 that is linked to the encoder gear 325g. Here, the controller 328 can obtain the rotation angle or number of rotations of the rotor 322 as an index of the amount of rotation based on the frequency of the pulse signal per unit time. The amount of rotation per unit time corresponds to the rotation speed.

[0036] The controller 328 is installed on the substrate of the mouse 32m, acquires detection information from the rotation detector 325, the movement amount detector 323, and the press detector 324, and notifies the host system 10 of operation information based on the acquired detection information. For example, the controller 328 is notified of the amount of rotation from the rotation detector 325, and determines the amount of movement for moving the display area of ​​the screen information based on the notified amount of rotation as the amount of scrolling. The controller 328 notifies the host system 10 of operation information indicating the determined amount of scrolling. The processing related to the amount of scrolling will be described later.

[0037] The controller 328 is also notified of the amount of movement detected by the movement amount detector 323. The controller 328 notifies the host system 10 of operation information indicating the notified amount of movement. The controller 328 is notified of the press detected by the press detector 324. The controller 328 notifies the host system 10 of operation information indicating the notified press. The controller 328 may be configured as, for example, an integrated circuit having a plurality of circuit elements, or as a microcontroller having a processor and memory.

[0038] Next, an example of the functional configuration of the host system 10 according to this embodiment will be described. The host system 10 may acquire screen information and display it on the display 14 according to instructions written in a program. The host system 10 controls the display of the screen information based on the functions of the OS. For example, the host system 10 generates a window having a display area of ​​a predetermined size and assigns the screen information to be displayed in the generated window.

[0039] The host system 10 may display a cursor at designated coordinates designated based on operation information input from the input device 32. Here, the host system 10 converts the amount of movement acquired from the mouse 32m into designated coordinates on the display screen. The host system 10 may, for example, determine the coordinates of a position displaced by the notified amount of movement from a predetermined reference coordinate as the designated coordinates. The reference coordinates may be determined in advance as parameters of the OS or program. The host system 10 displays the cursor at the designated coordinates on the display 14, superimposed on the screen information.

[0040] In the host system 10, the entire display area of ​​the screen information that can be acquired by executing a program (hereinafter referred to as the "total display area") may be larger than the display area (hereinafter referred to as the "allocated area") that the host system 10 allocates to a window for displaying the screen information. In such a case, the host system 10 extracts, for example, a portion of the entire screen information that relates to a part of the display area, and displays the extracted portion in the allocated area. The host system 10 executes a scroll process based on the scroll amount specified by the operation information. In the scroll process, the host system 10 moves a display area for displaying screen information by the specified scroll amount.

[0041] Next, the control of the amount of scrolling by the controller 328 of the mouse 32m will be described. As described above, the controller 328 counts the frequency of the pulse signal input from the rotation detector per predetermined unit time to determine the amount of rotation of the rotor 322. The amount of rotation per unit time corresponds to the rotation speed. The controller 328 controls the scrolling process according to the determined rotation speed.

[0042] The controller 328 performs normal scrolling when the identified rotation speed is equal to or lower than a predetermined reference rotation speed. Normal scrolling is an operating mode that converts the amount of scrolling to correspond to the amount of rotation based on a preset first gain. The first gain corresponds to a standard amount of scrolling per amount of rotation, i.e., the ratio of the standard amount of scrolling to the amount of rotation. The relationship between the direction of movement of the rotor 322 and the direction of movement of the display area is preset in the controller 328. The positive and negative values ​​of the amount of scrolling change depending on the reversal of the direction of movement of the rotor 322. The controller 328 may notify the host system 10 of operation information indicating a predetermined normal unit amount of scrolling each time a pulse signal is input. Therefore, the controller 328 can cause the host system 10 to move the display area faster as the rotation speed increases.

[0043] The controller 328 executes hyperscrolling when the rotation speed exceeds a predetermined reference speed. Hyperscrolling is an operating mode in which the amount of scrolling is converted to a value corresponding to the amount of rotation under a second gain that is a larger gain (e.g., 3 to 10 times larger) than normal scrolling. The second gain corresponds to a faster scrolling amount per amount of rotation, i.e., the ratio of the faster scrolling amount to the amount of rotation. In other words, hyperscrolling refers to moving the display area at a faster moving speed than normal scrolling under an operating mode in which the amount of rotation of the rotator 322 is converted to a scrolling amount based on a preset second gain. Hyperscrolling is also called virtual scrolling or high-speed scrolling. Note that the controller 328 may notify the host system 10 of operation information indicating a unit scrolling amount larger than the normal unit scrolling amount each time a pulse signal is input. Therefore, the controller 328 can move the display area at a faster scrolling amount with a higher gain than normal scrolling, in relation to the host system 10.

[0044] In normal scrolling, the host system 10 is notified of a scroll amount set based on a standard first gain per unit time from the mouse 32m, and moves the display area according to the notified scroll amount. In the example of Fig. 5, because the operation speed of the rotor 322 of the mouse 32m is low, the rotation speed of the rotor 322 is slower than the reference speed. Therefore, the speed at which the display area is moved (scroll speed) is also slow. In the hyperscroll, the host system 10 is notified of the scroll amount set based on the larger second gain per unit time from the mouse 32m, and moves the display area according to the notified scroll amount. In the example of Fig. 6, the operating speed of the rotor 322 of the mouse 32m is high, so the scroll speed becomes even faster.

[0045] During hyperscrolling, the controller 328 of the mouse 32m may determine whether the rotation of the rotor has stopped. If it determines that the rotation has stopped, the controller 328 may continue hyperscrolling from that point until a predetermined duration has elapsed. The controller 328 then cancels hyperscrolling. The controller 328 may determine that the rotation has stopped when the rotation amount specified per unit time falls below a predetermined lower limit. The lower limit may be lower than the reference speed. The controller 328 sets the scroll amount per unit time within the duration based on the rotation speed immediately before the rotation stopped, i.e., the rotation amount per unit time. The controller 328 may, for example, linearly or exponentially attenuate the scroll amount corresponding to the rotation speed immediately before the rotation stopped at a constant attenuation rate over time. The controller 328 outputs operation information indicating the scroll amount attenuated per unit time to the host system 10. Thus, the controller 328 can cause the host system 10 to move the display area according to the scroll amount attenuated over time. Therefore, even if a hardware mechanism for continuing the rotation of rotor 322 is not provided, the phenomenon in which rotor 322 continues to rotate when an external force is released can be virtually simulated.

[0046] In the example of FIG. 7, the rotor 322 is rotated at a constant rotation speed w max It is assumed that the rotor 322 rotates at a speed of 0.001 s / s and stops at time t0. The controller 328 controls the scroll speed (i.e., the amount of scrolling per unit time) v from time t0 to time t1. max is set to be constant. This is because, in order to improve usability, scrolling does not stop immediately even when the rotor 322 stops, but continues for a predetermined period (corresponding to the period from time t0 to time t1) from the time when the rotor 322 stops, thereby reducing the burden required to operate the rotor. Then, the controller 328 sets the scrolling speed to v from time t1 until the expiration time t2 of the duration. max The scroll amount decays from 0 to zero. During this time, the host system 10 moves the display area by the scroll amount notified by the controller 328 in a unit time period. At time t2, the host system 10 stops moving the display area in response to the notified scroll amount reaching zero. At this time, the controller 328 ends hyperscrolling.

[0047] If a rotation speed equal to or greater than a predetermined lower limit and equal to or less than the reference speed is detected during the duration, controller 328 may stop hyperscrolling and start normal scrolling. If a rotation speed exceeding the reference speed is detected during the duration, host system 10 may maintain hyperscrolling.

[0048] FIG. 8 is a flowchart showing a first example of scroll control according to this embodiment. (Step S102) The controller 328 of the mouse 32m determines whether the rotor 322 has rotated. The controller 328 can, for example, wait for a pulse signal from the rotation detector 325 and determine whether rotation has occurred based on whether the pulse signal is input. If it is determined that rotation has occurred (YES in step S102), the process proceeds to step S104. If it is determined that rotation has not occurred (NO in step S102), the process of step S102 is repeated.

[0049] (Step S104) Controller 328 identifies the rotation speed of rotor 322. Controller 328 can, for example, count the frequency of pulse signals input from rotation detector 325 per unit time and identify the rotation speed based on the counted frequency. Controller 328 determines whether the identified rotation speed is higher than a predetermined reference speed. If it is determined that the identified rotation speed is higher than the reference speed (YES in step S104), the process proceeds to step S106. If it is determined that the identified rotation speed is equal to or lower than the reference speed (NO in step S104), the process proceeds to step S108.

[0050] (Step S106) The controller 328 executes hyperscrolling. Here, the controller 328 calculates the amount of scrolling by multiplying the reference speed determined for each unit time by the second gain. When rotation of the rotor 322 is no longer detected, the controller 328 attenuates the amount of scrolling immediately before that point in time until it reaches zero over time, until a predetermined duration has elapsed. Thereafter, the hyperscrolling is terminated, and the process returns to step S102. (Step S108) The controller 328 executes normal scrolling. Here, the controller 328 calculates the amount of scrolling by multiplying the reference speed determined for each unit time by the first gain. Then, the process returns to step S102.

[0051] The host system 10 may have a multi-window function as part of its OS. In this case, the host system 10 identifies, among multiple windows, a window whose display area includes designated coordinates based on the most recent operation information as the active window. However, if designated coordinates based on the operation information have not been identified, or if a new window is created after designated coordinates have been identified, the host system 10 identifies the most recent window as the active window. The host system 10 performs a scroll process on the active window. Therefore, if the active window is switched due to a movement of the designated coordinates within the duration, the scroll process may be continued for the new active window. The screen information of the new active window may move despite the user's intention, or the new screen information may disappear from the display area before the user can grasp its contents.

[0052] Therefore, the controller 328 of the mouse 32m records the initial value of the movement amount of the mouse 32m at the start of hyperscrolling. This movement amount is sequentially detected by the movement amount detector 323 as described above. The controller 328 determines whether the relative movement amount from the initial value as a starting point exceeds a predetermined reference movement amount. If the reference movement amount is exceeded, the controller 328 stops the hyperscrolling process. Note that the controller 328 calculates the distance from the initial value to the movement amount at each time as an index of the movement amount based on the initial value. This is because it is expected that using the distance will reduce interest in the display content displayed at the position on the display screen corresponding to the initial value. Thereafter, the controller 328 may resume control of the scrolling process based on the rotation speed.

[0053] Next, an example of hyperscroll control will be described. The first column in Figure 9 shows a situation in which two windows are arranged side by side on the left and right of the display 14, each displaying its own screen. A cursor mp is displayed at the designated coordinates within the display area of ​​the left window w01. This cursor mp is displayed at a position corresponding to the movement of the mouse 32m detected at that time. The host system 10 identifies the screen information in window w01 as the target for scrolling. The second column in FIG. 9 shows a situation in which hyperscrolling is initiated when a rotation speed exceeding the reference speed is detected due to an operation on the rotor 322, and the screen information in window w01 is displayed while moving at high speed. P1 indicates the designated coordinates at the start of hyperscrolling. These designated coordinates indicate the position within the display area corresponding to the initial value of the movement amount of the mouse 32m.

[0054] The third column shows the situation where the movement amount of the mouse 32m fluctuates while hyperscrolling is in progress, and the movement amount from P1 as the starting point reaches the reference movement amount. P2 shows the designated coordinates where the movement amount from P1 becomes the reference movement amount. At this point, hyperscrolling stops, and the screen information in window w01 is displayed statically. The fourth column shows the situation where the designated coordinates move further and enter window w02. At this stage, hyperscrolling has already stopped, and is not carried over to window w02.

[0055] The controller 328 may stop controlling the scrolling process according to the rotation speed until a predetermined prohibition period (for example, 1 to 3 seconds) has elapsed since the hyper-scrolling process was stopped. This allows the hyper-scrolling process to be stopped completely even if a processing delay occurs in the mouse 32m or the host system 10.

[0056] FIG. 10 is a flowchart showing a second example of scroll control according to this embodiment. (Step S202) The controller 328 of the mouse 32m determines whether or not to start hyperscrolling. In this determination, the controller 328 may execute the processing of FIG. 7. If it is determined to start (YES in step S202), the process proceeds to step S204. If it is determined not to start (NO in step S202), the process of step S202 is repeated.

[0057] (Step S204) The controller 328 monitors the amount of movement notified from the movement amount detector 323, and records the initial value of the amount of movement at the start of the hyperscroll. (Step S206) Controller 328 continues to monitor the movement amount notified from movement amount detector 323, and determines whether the relative movement amount based on the initial value of the notified movement amount is greater than a predetermined reference movement amount. If it is determined to be greater (step S206 YES), the process proceeds to step S208. If it is determined to be smaller (step S206 NO), the process proceeds to step S206. (Step S208) The controller 328 stops the hyperscroll. It should be noted that, after rotor 322 has stopped as described above, controller 328 may stop the hyperscroll process at that point, regardless of whether the duration has started or not.

[0058] In the above description, the controller 328 of the mouse 32m determines whether the rotation speed of the rotor 322 exceeds a predetermined rotation speed and calculates the scroll amount of the display area corresponding to the rotation amount of the rotor 322 based on the determination result. However, this is not limited to this. The controller 328 of the mouse 32m may notify the host system 10 of operation information indicating the detected rotation amount instead of the scroll amount, and the host system 10 may specify the rotation speed as the rotation amount notified from the mouse 32m. The host system 10 determines whether to execute hyperscroll processing based on whether the specified rotation speed exceeds the predetermined rotation speed. The host system 10 determines the scroll amount corresponding to the rotation amount of the rotor 322 based on a gain corresponding to the scrolling method that is the determination result. The host system 10 moves the display area according to the scroll amount determined by itself. In this case, the controller 328 can omit the process of determining the amount of scrolling from the identified amount of rotation and the process of determining whether or not to execute hyperscroll processing.

[0059] Alternatively, instead of the controller 328, the host system 10 may specify the initial value of the movement amount of the mouse 32m at the start of the hyperscrolling or the initial value of the corresponding designated coordinates, and determine whether or not to stop the hyperscrolling based on whether the relative movement amount based on the specified initial value or the movement amount of the designated coordinates exceeds the reference movement amount. On the other hand, the controller 328 can omit the process of determining whether or not the relative movement amount detected by the movement amount detector 323, which is based on the initial value, exceeds the reference movement amount.

[0060] In the above description, the rotation detector 325 is a mechanical encoder, but this is not limiting. The rotation detector 325 may be a sensor based on another detection principle, such as an optical encoder. Although the example has been given in which the input device is a mouse, the present invention is not limited to this and may be any device capable of detecting both rotation and movement, such as a joypad or trackball. Furthermore, the information processing device 1 is not limited to a notebook PC, but may be other types of information equipment such as a desktop PC.

[0061] As described above, the information processing system S1 according to this embodiment includes an input device (e.g., a mouse 32m) that includes a rotator 322, determines a scroll amount corresponding to the rotation amount of the rotator 322, and detects its own movement amount, and the host system 10 moves a display area displaying screen information according to the scroll amount. When the rotation speed of the rotator 322 is equal to or less than a predetermined reference speed, the input device or host system 10 executes a first mode (i.e., normal scrolling) that determines the scroll amount based on a first scroll amount per rotation amount, and when the rotation speed of the rotator 322 exceeds the reference speed, starts a second mode (i.e., hyper scrolling) that determines the scroll amount based on a second scroll amount per rotation amount that is greater than the first scroll amount, specifies an initial value of the movement amount at the start of the second mode, and ends the second mode when the movement amount from the initial value exceeds the predetermined reference movement amount. With this configuration, when the rotation speed of rotor 322 exceeds a reference speed, the second mode is started, and when the amount of movement detected by the input device from the initial value specified at the start of the second mode exceeds a reference amount of movement, the second mode is stopped. Therefore, even when different screen information is displayed in multiple windows, it is possible to prevent the second mode from being continued even if the designated coordinates move outside the window containing the designated coordinates that specified the start of the second mode.

[0062] The information processing system S1 according to this embodiment includes an input device (e.g., a mouse 32m) that includes a rotator 322, determines a scroll amount corresponding to the amount of rotation of the rotator 322, and detects the amount of movement of the device itself, and a host system 10 that moves a display area displaying screen information according to the scroll amount. When the rotation speed of the rotator 322 is equal to or less than a predetermined reference speed, the input device or host system 10 executes a first mode (i.e., normal scrolling) that determines the scroll amount based on a first scroll amount per rotation amount, and when the rotation speed of the rotator 322 exceeds the reference speed, executes a second mode (i.e., hyper scrolling) that determines the scroll amount based on a second scroll amount per rotation amount that is greater than the first scroll amount. According to this configuration, the second mode is initiated when the rotational speed of rotor 322 exceeds a reference speed, and is terminated when the rotational speed falls below the reference speed. The necessity of the second mode is switched depending on the rotational speed applied to rotor 322, so no components are required for the switching, and the switching can be achieved economically. Furthermore, since no special operation is required for the switching, operability is not impaired.

[0063] The input device may also include a rotation detector 325 that detects the amount of rotation of the rotor 322, and a controller 328 that notifies the host system 10 of the amount of scrolling determined based on the amount of rotation.

[0064] In addition, the input device may determine the amount of scrolling to be notified to the host system 10 by continuing for a predetermined period (e.g., a duration) after the rotor 322 stops while the second mode is being executed, and attenuating the amount of scrolling just before the rotor 322 stops over time.

[0065] This embodiment is not limited to the information processing system S1, and may be realized as an input device or an information processing method in the information processing system S1.

[0066] Although the embodiments have been described above in detail with reference to the drawings, the specific configurations are not limited to the above-described embodiments, and designs within the scope of the present invention are also included. The configurations described in the above-described embodiments can be combined as long as no contradictions arise, and some of the configurations may be omitted. [Explanation of symbols]

[0067] S1...information processing system, 1...information processing device, 10...host system, 13...video subsystem, 14...display, 22...external memory, 26...input / output I / F, 31...EC, 32...input device, 32k...keyboard, 32t...touchpad, 32m...mouse, 62...first housing, 64...second housing, 68a, 68b...coupler, 322...rotor, 323...movement amount detector, 324...press detector, 324l...left detector, 324r...right detector, 325...rotation detector, 325g...encoder gear, 325s...rotation sensor, 328...controller

Claims

1. an input device having a rotor, determining a scroll amount corresponding to a rotation amount of the rotor, and detecting a movement amount of the input device itself; a host system that moves a display area in which screen information is displayed according to the scroll amount, The input device or the host system When the rotation speed of the rotor is equal to or lower than a predetermined reference speed, a first mode is executed in which the scroll amount is determined based on a first scroll amount per rotation amount; When the rotation speed of the rotor exceeds the reference speed, a second mode is initiated in which the scroll amount is determined based on a second scroll amount per rotation amount that is greater than the first scroll amount; specifying an initial value of the movement amount at the start of the second mode; When the amount of movement from the initial value exceeds a predetermined reference amount of movement, the second mode is terminated. Information processing system.

2. an input device including a rotor for determining a scroll amount corresponding to a rotation amount of the rotor; a host system that moves a display area in which screen information is displayed according to the scroll amount, The input device or the host system When the rotation speed of the rotor is equal to or lower than a predetermined reference speed, a first mode is executed in which the scroll amount is determined based on a first scroll amount per rotation amount; When the rotation speed of the rotor exceeds the reference speed, a second mode is executed in which the scroll amount is determined based on a second scroll amount per rotation amount, the second scroll amount being greater than the first scroll amount. Information processing system.

3. The input device a rotation detector for detecting the amount of rotation of the rotor; a controller that notifies the host system of the scroll amount determined based on the rotation amount.

3. The information processing system according to claim 1.

4. The input device After the rotor stops during execution of the second mode, The amount of scrolling immediately before the rotor stops is attenuated over time for a predetermined period of time, and the amount of scrolling to be notified to the host system is determined.

3. The information processing system according to claim 1.

5. An input device that includes a rotator, determines a scroll amount by which a display area of ​​screen information is moved in accordance with the amount of rotation of the rotator, and detects the amount of movement of the device itself, When the rotation speed of the rotor is equal to or lower than a predetermined reference speed, a first mode is executed in which the scroll amount is determined based on a first scroll amount per rotation amount; When the rotation speed of the rotor exceeds the reference speed, a second mode is initiated in which the scroll amount is determined based on a second scroll amount per rotation amount that is greater than the first scroll amount; specifying an initial value of the movement amount at the start of the second mode; When the amount of movement from the initial value exceeds a predetermined reference amount of movement, the second mode is terminated. Input devices.

6. an input device having a rotor, determining a scroll amount corresponding to a rotation amount of the rotor, and detecting a movement amount of the input device itself; a host system that moves a display area in which screen information is displayed according to the scroll amount, The input device or the host system When the rotation speed of the rotor is equal to or lower than a predetermined reference speed, a first mode is executed in which the scroll amount is determined based on a first scroll amount per rotation amount; When the rotation speed of the rotor exceeds the reference speed, a second mode is initiated in which the scroll amount is determined based on a second scroll amount per rotation amount that is greater than the first scroll amount; specifying an initial value of the movement amount at the start of the second mode; When the amount of movement from the initial value exceeds a predetermined reference amount of movement, the second mode is terminated. Information processing methods.

Citation Information

Patent Citations

  • Information equipment device and mouse controlling method

    JP2003029925A

  • Information processing apparatus, information processing system, and information processing method

    JP2014067294A

  • Scroll control program, scroll control method and scroll control device

    JP2015176336A

  • Mouse device with a feature to accelerate window scrolling

    JP3162701U

  • Mouse device and control method thereof

    US10963069B1