Jump to content

Mouse button: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
BillxMach (talk | contribs)
Added weighted bracket on section of article
Cleanup and rearrangement, still needs sources, which I think got stripped in the move from the main mouse article
Line 1: Line 1:
{{Refimprove|date=May 2010}}
{{Unreferenced|date=July 2015}}
[[Image:Apple-ADB-mouse.jpg|thumb|One-button mouse]]
[[Image:Apple-ADB-mouse.jpg|thumb|One-button mouse]]
[[Image:Logitech 3 buttons mouse.jpeg|thumb|Three-button mouse]]
[[Image:Hil-mouse.jpg|thumb|Three-button mouse]]
[[Image:MSNaturalWirelessLaserMouse7000.jpg|thumb|Five-button ergonomic mouse]]
[[Image:MSNaturalWirelessLaserMouse7000.jpg|thumb|Five-button ergonomic mouse]]


A '''mouse button''' is a [[microswitch]] on a [[computer mouse]] which can be pressed ("clicked") to select or interact with an element of a [[graphical user interface]].
A '''mouse button''' is a [[microswitch]] on a [[computer mouse]] which can be pressed (“clicked”) to select or interact with an element of a [[graphical user interface]].


The three-button scrollmouse has become the most commonly available design. As of 2007 (and roughly since the late 1990s), users most commonly employ the second button to invoke a [[context menu|contextual menu]] in the computer's software user interface, which contains options specifically tailored to the interface element over which the [[pointer (computing WIMP)|pointer]] currently sits. By default, the primary mouse button sits located on the left-hand side of the mouse, for the benefit of right-handed users; left-handed users can usually reverse this configuration via software.
The three-button scrollmouse has become the most commonly available design. As of 2007 (and roughly since the late 1990s), users most commonly employ the second button to invoke a [[context menu|contextual menu]] in the computer's software user interface, which contains options specifically tailored to the interface element over which the [[pointer (computing WIMP)|pointer]] currently sits. By default, the primary mouse button sits located on the left-hand side of the mouse, for the benefit of right-handed users; left-handed users can usually reverse this configuration via software.


== Design ==
== Design ==
In contrast to its motion-tracking mechanism, the mouse's buttons have changed little over the years, varying mostly in shape, number, and placement.
[[Image:Mighty Mouse.jpg|thumb|120px|left|[[Apple Mighty Mouse]] with electrocapacitative “buttons”]]
A '''mouse click''' is the action of pressing (i.e. 'clicking', an [[onomatopoeia]]) a button to trigger an action, usually in the context of a graphical user interface (GUI). “Clicking” an [[Button (computing)|onscreen button]] is accomplished by pressing on the real mouse button while the pointer is placed over the onscreen button's icon.


The reason for the clicking noise made is due to the specific switch technology used nearly universally in computer mice. The switch is a subminiature precision snap-action type; the first of such types were the [[Miniature snap-action switch#History|Honeywell MICRO SWITCH products]].
In contrast to the motion-sensing mechanism, the mouse's buttons have changed little over the years, varying mostly in shape, number, and placement. Engelbart's first mouse had a single button; Xerox PARC soon designed a three-button model, but reduced the count to two for Xerox products. After experimenting with 4-button prototypes Apple reduced it back to one button with the Macintosh in 1984, while Unix workstations from Sun and others used three buttons. OEM bundled mice usually have between one and three buttons, although in the aftermarket many mice have always had five or more.
[[Image:Mighty Mouse.jpg|thumb|120px|left|[[Apple Mighty Mouse]] with capacitance triggered buttons]]
A '''mouse click''' is the action of pressing (i.e. 'clicking', an [[onomatopoeia]]) a button to trigger an action, usually in the context of a graphical user interface (GUI). "Clicking" an [[Button (computing)|onscreen button]] is accomplished by pressing on the real mouse button while the pointer is placed over the onscreen button's icon.

The reason for the clicking noise made is due to the specific switch technology used nearly universally in computer mice. The switch is a subminiature precision snap-action type; the first of such types were the Honeywell MICRO SWITCH products. (See [[micro switch]].)


== Operation ==
== Operation ==

[[Double click]]ing refers to clicking (and, naturally, releasing) a button (often the primary one) twice. Software recognizes both clicks, and if the second occurs within a short time, the action is recognized as a double click.
[[Double click]]ing refers to clicking (and, naturally, releasing) a button (often the primary one) twice. Software recognizes both clicks, and if the second occurs within a short time, the action is recognized as a double click.


If the second click is made after the time expires it is considered to be a new, single click. Most modern operating systems and mice drivers allow a user to change the speed of a double click, along with an easy way to test the setting.
If the second click is made after the time expires it is considered to be a new, single click. Most modern operating systems and mice drivers allow a user to change the speed of a double click, along with an easy way to test the setting. Some software recognizes [[triple click|three]] or [[quadruple click|more click]]s, such as progressively selecting a word, sentence, or paragraph in a word processor text page as more clicks are given in a sequence.

Some software recognizes [[triple click|three]] or [[quadruple click|more click]]s, such as progressively selecting a word, sentence, or paragraph in a word processor text page as more clicks are given in a sequence.
With less [[Abstraction_(computer_science)|abstracted]] software, a mouse button's current state (“mouse up” and “mouse down”) is monitored, allowing for [[Mode_(computer_interface)|modal]] operations such as [[drag and drop]].


== Number of buttons ==
== Number of buttons ==
[[Douglas Engelbart|Douglas Engelbart's]] first mouse had a single button; Xerox PARC soon designed a three-button model, but reduced the count to two for Xerox products. Apple decided on one button for their GUI environments on commercial release in 1983, while most other PC environments standardized on two, and most professional workstation environments used three. Aside from such OEM bundled mice, usually having between one and three buttons, many aftermarket mice have always had five or more, with varying amounts of additional software included to support them.
{{Cleanup-weighted|2=Number of buttons - Too Apple-weighted|section|date=May 2015}}


This state of affairs continued until the late 1990s, when growing support for mice with a [[scroll wheel]] after the 1996 introduction of Microsoft's [[IntelliMouse]] incidentally made 3-button pointing devices ubiquitous on OEM hardware. The one major holdout, Apple, finally went multi-button in 2005 with their [[Apple Mighty Mouse|Mighty Mouse]], though all Apple laptops would continue to use one-button [[touchpad|trackpads]] until their first buttonless trackpad in 2008.
From the first Macintosh until late 2006, Apple shipped every computer with a single-button mouse, whereas most other platforms used multi-button mice. Apple and its advocates promoted single-button mice as more user-friendly, and portrayed multi-button mice as confusing for novice users and that multiple-button mice interfaces introduce computer accessibility [http://markhobley.yi.org:9088/limitation restrictive elements] {{Dead link|date=August 2009}} including [[right click]], [[double click]], and [[middle click]].


=== Advocacy ===
On August 2, 2005, Apple introduced their [[Apple Mighty Mouse|Mighty Mouse]] multi-button mouse, which has four independently-programmable buttons and a trackball-like "scroll ball" which allows the user to scroll in any direction. Since the mouse uses touch-sensitive technology, users can treat it as a one-, two-, three-, or four-button mouse, as desired.
In the matter of the number of buttons, Engelbart favored the view “as many as possible. The prototype that popularized the idea of three buttons as standard had that number only because “we could not find anywhere to fit any more switches.


Those favoring single-button mice argue that a single button is simpler for novice users to understand, and for developers to support. In addition, as a lowest common denominator option, it offers both a path gradual advancement in user sophistication for unfamiliar applications, and a fallback for diverse or malfunctioning hardware
More recently, Apple has released a mouse with no buttons, but instead the touch sensitivity of the new Multi-Touch trackpads. This is called the Magic Mouse. Left and right click are available in their respective areas, but that space is also used when scrolling, since the mouse is simply one surface on the top. The standard optics of the Mighty Mouse appear on the underside of the new Magic Mouse.


Those favoring multiple-button mice argue that support for a single-button mouse often requires clumsy workarounds in interfaces where a given object may have more than one appropriate action. Several common workarounds exist, and some are specified by the Apple Human Interface Guidelines.
== Additional buttons ==


One workaround was the double click, first used on the [[Apple Lisa|Lisa]], to allow both the “select” and “open” operation to be performed with a single button.
Aftermarket manufacturers have long built mice with five or more buttons. Depending on the user's preferences and software environment, the extra buttons may allow forward and backward web-navigation, [[scrolling]] through a browser's history, or other functions, including mouse related functions like quick-changing the mouse's resolution/sensitivity. As with similar features in [[computer keyboard|keyboards]], however, not all software supports these functions. The additional buttons become especially useful in [[computer gaming]], where quick and easy access to a wide variety of functions (such as [[Macro (computer science)|macros]] and dpi changes) can give a player an advantage. Because software can map mouse-buttons to virtually any function, keystroke, application or switch, extra buttons can make working with such a mouse more efficient and easier.


Another workaround has the user hold down one or more keys on the [[computer keyboard|keyboard]] before pressing the mouse button (typically [[control key|control]] on a Macintosh for contextual menus). This has the disadvantage that it requires that both the user's hands be engaged. It also requires that the user perform actions on completely separate devices in concert; that is, holding a key on the keyboard while pressing a button on the mouse. This can be a difficult task for a disabled user, although can be remedied by allowing keys to [[sticky keys|stick]] so that they do not need to be pressed down.
In the matter of the number of buttons, [[Douglas Engelbart]] favored the view "as many as possible". The prototype that popularized the idea of three buttons as standard had that number only because "we could not find anywhere to fit any more switches".


Another involves the press-and-hold technique. In a press-and-hold, the user presses and holds the single button. After a certain period, software perceives the button press not as a single click but as a separate action. This has two drawbacks: first, a slow user may press-and-hold inadvertently. Second, the user must wait for the software to detect the click as a press-and-hold, otherwise the system might interpret the button-depression as a single click. Furthermore, the remedies for these two drawbacks conflict with each other: the longer the lag time, the more the user must wait; and the shorter the lag time, the more likely it becomes that some user will accidentally press-and-hold when meaning to click. Studies have found all of the above workarounds less usable than additional mouse buttons for experienced users. {{Citation needed|date=January 2008}}
On systems with three-button mice, pressing the center button (a middle click) typically opens a system-wide noncontextual menu. In the [[X Window System]], middle-clicking by default pastes the contents of the primary buffer at the pointer's position. Many users of two-button mice [[emulator|emulate]] a three-button mouse by clicking both the right and left buttons simultaneously.


A workaround common to users of two-button mice in environments designed for three buttons is [[mouse chording]], to simulate a tertiary-click by pressing both buttons simultaneously.
Common mice have a wheel with a detent ("bumpy" feel) to keep it from drifting accidentally; this wheel also has an optical encoder like those for the ball; it's typically used to scroll a tall window vertically. However, many such scroll wheels are mounted in a little internal spring-loaded frame so that simply pushing down on them makes them work as a third button.

== Additional buttons ==
Aftermarket manufacturers have long built mice with five or more buttons. Depending on the user's preferences and software environment, the extra buttons may allow forward and backward web-navigation, [[scrolling]] through a browser's history, or other functions, including mouse related functions like quick-changing the mouse's resolution/sensitivity. As with similar features in [[computer keyboard|keyboards]], however, not all software supports these functions. The additional buttons become especially useful in [[computer gaming]], where quick and easy access to a wide variety of functions (such as [[Macro (computer science)|macros]] and DPI changes) can give a player an advantage. Because software can map mouse-buttons to virtually any function, keystroke, application or switch, extra buttons can make working with such a mouse more efficient and easier.


== Scroll wheel ==
== Scroll wheel ==
{{Main|Scroll wheel}}
{{Main|Scroll wheel}}
Scrollmice almost always mount their scroll wheels on an internal spring-loaded frame and switch, so that simply pushing down makes them work as an extra button, made easier to do without accidentally spinning it by wheel [[detent|detents]] present in most scrollmice. Thus most mice today effectively have three buttons.


== Software environment use ==
The [[scroll wheel]], a notably different form of mouse-button, consists of a small wheel that the user can rotate to provide immediate one-dimensional input. Usually, this input translates into "scrolling" up or down within the active [[window (computing)|window]] or [[GUI]]-element. The wheel is often{{spaced ndash}}but not always{{spaced ndash}}engineered with a [[detent]] to turn in short steps, rather than continuously, to allow the operator to more easily intuit how far they are scrolling. The scroll wheel nearly always includes a third (center) button, activated by pushing the wheel down into the mouse.
The Macintosh user interface, by design, always has and still does make all functions available with a single-button mouse. Apple's Human Interface Guidelines still specify that other developers need to make all functions available with a single-button mouse as well. Various functions commonly done with additional buttons on other platforms were, when implemented on the Mac by most developers, instead done in conjunction with [[modifier key|modifier keys]]. For instance, [[context menu|contextual menus]] were most often invoked by [[Control key (Macintosh)|Control Key]]-click,” a behavior later explicitly adopted by Apple in OS 8's Contextual Menu Manager.


While there has always been a Macintosh aftermarket for mice and other pointing devices with two, three, or more buttons, and extensive configurable support (usually through keyboard emulation) to complement such devices in many major software packages on the platform, it wasn't until Mac OS X shipped that support for multi-button mice was hardcoded. [[X Window System]] applications, which [[Mac OS X]] can also run, have been developed with the use of two or three-button mice in mind.
The scroll wheel can provide convenience, especially when navigating a long document. In conjunction with the [[control key]] (Ctrl), the mouse wheel may often be used for zooming in and out; applications that support this feature include [[Adobe Reader]], [[Microsoft Word]], [[Internet Explorer]], [[Google Chrome]], [[Opera (web browser)|Opera]], [[Mozilla Firefox]] and [[Mulberry (e-mail client)|Mulberry]], and in Mac OS X, holding the control key while scrolling zooms in on the entire screen. Some applications also allow the user to scroll left and right by pressing the [[shift key]] while using the mouse wheel.

Manufacturers may refer to scroll-wheels by different names for branding purposes; [[Genius (company)|Genius]], for example, usually brand their scroll-wheel-equipped products "[[Netscroll]]".

[[KYE Systems]] introduced the first mouse with top scroll wheel in 1995,<ref name = "zmhseg">
{{cite web |url=http://itotd.com/articles/330/the-evolution-of-scrolling/ |title=The Evolution of Scrolling: Reinventing the wheel |author=Joe Kissell |publisher=Interesting Thing of the Day |date=October 7, 2004, updated 2006|accessdate=2010-02-12 }}</ref> marketed as the [[Genius EasyScroll]] and [[Mouse Systems ProAgio]] mouse. However, mainstream adoption of the scroll wheel mouse did not occur until Microsoft released the Microsoft IntelliMouse in 1996. It became a commercial success in 1997 when their [[Microsoft Office]] application suite and their [[Internet Explorer]] [[web browser|browser]] started supporting its wheel-scrolling feature.<ref name = "zmhseg"/> Since then the scroll wheel has become a standard feature of many mouse models.

Some mouse models have two wheels, or wheels that can be moved sideways (such as the [[MX Revolution]]), separately assigned to horizontal and vertical scrolling. Designs exist which make use of a "rocker" button instead of a wheel{{spaced ndash}}a pivoting button that a user can press at the top or bottom, simulating "up" and "down" respectively. A peculiar early example was a mouse by [[Saitek]] which had a joystick-style hatswitch on it.{{Citation needed|date=November 2007}}

A more recent form of mouse wheel is the tilt-wheel. Tilt wheels are essentially conventional mouse wheels that have been modified with a pair of sensors articulated to the tilting mechanism. These sensors are mapped, by default, to horizontal scrolling.

A third variety of built-in scrolling device, the scroll ball, essentially consists of a [[trackball]] embedded in the upper surface of the mouse. The user can scroll in all possible directions in very much the same way as with the actual mouse, and in some mice, can use it as a [[trackball]]. Mice featuring a scroll ball include [[Apple Computer|Apple's]] [[Apple Mighty Mouse|Mighty Mouse]] and the IOGEAR 4D Web Cruiser Optical Scroll Ball Mouse. [[IBM]]'s ergonomics laboratory designed a mouse with a [[pointing stick]] in it,<ref>{{cite web|url = http://www.almaden.ibm.com/cs/user/tp/tpmouse.html|title = TrackPoint Mouse}}</ref> envisioned to be used for scrolling, zooming or (with appropriate software) controlling a second pointer.

Some mice, like some models by [[Genius (company)|Genius]], have an optical sensor instead of a wheel. This sensor allows to scroll in both horizontal and vertical directions.<ref>{{cite web|url = http://www.geniusnet.com/geniusOnline/online.portal?_nfpb=true&productPortlet_actionOverride=%2Fportlets%2FproductArea%2Fcategory%2FqueryPro&_windowLabel=productPortlet&productPortletproductId=638029&_pageLabel=productPage&test=portlet-action|title = Navigator 525 Laser Mouse}}</ref>

== Operating system use ==

The Macintosh user interface, by design, always has and still does make all functions available with a single-button mouse. Apple's Human Interface Guidelines still specify that all software-providers need to make functions available with a single-button mouse. [[Context menu]]s are available using the [[Control key (Macintosh)|Control Key]] {{keypress|ctrl}}.

The original Mac OS assumed a one-button mouse. While there has long been an aftermarket for mice with two, three, or more buttons, and extensive configurable support to complement such devices in all major software packages on the platform, Mac OS X shipped with hardcoded support for multi-button mice. [[X Window System]] applications, which [[Mac OS X]] can also run, have been developed with the use of two-button or even three-button mice in mind.

Advocates of multiple-button mice argue that support for a single-button mouse often leads to clumsy workarounds in interfaces where a given object may have more than one appropriate action. One workaround was the double click, first used on the Apple Lisa, to allow both the "select" and "open" operation to be performed with a single button. Several common workarounds exist, and some are specified by the Apple Human Interface Guidelines.

One such workaround (that favored on Apple platforms) has the user hold down one or more keys on the [[computer keyboard|keyboard]] before pressing the mouse button (typically [[control key|control]] on a Macintosh for contextual menus). This has the disadvantage that it requires that both the user's hands be engaged. It also requires that the user perform actions on completely separate devices in concert; that is, holding a key on the keyboard while pressing a button on the mouse. This can be a difficult task for a disabled user, although can be remedied by allowing keys to [[sticky keys|stick]] so that they do not need to be pressed down.

Another involves the press-and-hold technique. In a press-and-hold, the user presses and holds the single button. After a certain period, software perceives the button press not as a single click but as a separate action. This has two drawbacks: first, a slow user may press-and-hold inadvertently. Second, the user must wait for the software to detect the click as a press-and-hold, otherwise the system might interpret the button-depression as a single click. Furthermore, the remedies for these two drawbacks conflict with each other: the longer the lag time, the more the user must wait; and the shorter the lag time, the more likely it becomes that some user will accidentally press-and-hold when meaning to click. Studies have found all of the above workarounds less usable than additional mouse buttons for experienced users. {{Citation needed|date=January 2008}}


While historically, most PC mice provided two or three buttons, only the primary button was standardized in use for MS-DOS and versions of Windows through 3.1x; support and functionality for additional buttons was application specific. However, in 1992, [[Borland]] released [[Quattro Pro#Quattro Pro for Windows|Quattro Pro for Windows]] (QPW), which used the right (or secondary) mouse button to bring up a context menu for the screen object clicked (an innovation previously used on the [[Xerox Alto]], but new to most users). Borland actively promoted the feature, advertising QPW as "The ''right'' choice", and the innovation was widely hailed as intuitive and simple. Other applications quickly followed suit, and the "right-click for properties" gesture was cemented as standard Windows UI behavior after it was implemented throughout [[Windows 95]].
While historically, most PC mice provided two buttons, only the primary button was standardized in use for MS-DOS and versions of Windows through 3.1x; support and functionality for additional buttons was application specific. However, in 1992, [[Borland]] released [[Quattro Pro#Quattro Pro for Windows|Quattro Pro for Windows]] (QPW), which used the right (or secondary) mouse button to bring up a context menu for the screen object clicked (an innovation previously used on the [[Xerox Alto]], but new to most users). Borland actively promoted the feature, advertising QPW as “The ''right'' choice, and the innovation was widely hailed as intuitive and simple. Other applications quickly followed suit, and the “right-click for properties” gesture was cemented as standard Windows UI behavior after it was implemented throughout [[Windows 95]].


Most machines running [[Unix]] or a [[Unix-like]] [[operating system]] run the [[X Window System]] which almost always encourages a three-button mouse. X numbers the buttons by convention. This allows user instructions to apply to mice or pointing devices that do not use conventional button placement. For example, a left-handed user may reverse the buttons, usually with a software setting. With non-conventional button placement, user directions that say "left mouse button" or "right mouse button" are confusing. The ground-breaking [[Xerox Parc]] [[Xerox Alto|Alto]] and [[Xerox Dorado|Dorado]] computers from the mid-1970s used three-button mice, and each button was assigned a color. [[Red]] was used for the left (or primary) button, [[yellow]] for the middle (secondary), and [[blue]] for the right (meta or tertiary). This naming convention lives on in some [[Smalltalk]] environments, such as [[Squeak]], and can be less confusing than the right, middle and left designations.
Most machines running [[Unix]] or a [[Unix-like]] [[operating system]] run the [[X Window System]] which almost always encourages a three-button mouse. X numbers the buttons by convention. This allows user instructions to apply to mice or pointing devices that do not use conventional button placement. For example, a left-handed user may reverse the buttons, usually with a software setting. With non-conventional button placement, user directions that say “left mouse button” or “right mouse button” are confusing. The ground-breaking [[Xerox Parc]] [[Xerox Alto|Alto]] and [[Xerox Dorado|Dorado]] computers from the mid-1970s used three-button mice, and each button was assigned a color. [[Red]] was used for the left (or primary) button, [[yellow]] for the middle (secondary), and [[blue]] for the right (meta or tertiary). This naming convention lives on in some [[Smalltalk]] environments, such as [[Squeak]], and can be less confusing than the right, middle and left designations.


[[Acorn Computers|Acorn]]'s [[RISC OS]] based computers necessarily use all three mouse buttons throughout their [[WIMP (computing)|WIMP]] based GUI. RISC OS refers to the three buttons (from left to right) as <code>Select</code>, <code>Menu</code> and <code>Adjust</code>. <code>Select</code> functions in the same way as the "Primary" mouse button in other operating systems. <code>Menu</code> will bring up a context-sensitive menu appropriate for the position of the pointer, and this often provides the only means of activating this menu. This menu in most applications equates to the "Application Menu" found at the top of the screen in Mac OS, and underneath the window title under Microsoft Windows. <code>Adjust</code> serves for selecting multiple items in the "Filer" desktop, and for altering parameters of objects within applications{{spaced ndash}}although its exact function usually depends on the programmer.
[[Acorn Computers|Acorn]]'s [[RISC OS]] based computers necessarily use all three mouse buttons throughout their [[WIMP (computing)|WIMP]] based GUI. RISC OS refers to the three buttons (from left to right) as <code>Select</code>, <code>Menu</code> and <code>Adjust</code>. <code>Select</code> functions in the same way as the “Primary” mouse button in other operating systems. <code>Menu</code> will bring up a context-sensitive menu appropriate for the position of the pointer, and this often provides the only means of activating this menu. This menu in most applications equates to the “Application Menu” found at the top of the screen in Mac OS, and underneath the window title under Microsoft Windows. <code>Adjust</code> serves for selecting multiple items in the “Filer” desktop, and for altering parameters of objects within applications{{spaced ndash}}although its exact function usually depends on the programmer.


== References ==
== References ==

Revision as of 08:03, 26 July 2015

One-button mouse
Three-button mouse
Five-button ergonomic mouse

A mouse button is a microswitch on a computer mouse which can be pressed (“clicked”) to select or interact with an element of a graphical user interface.

The three-button scrollmouse has become the most commonly available design. As of 2007 (and roughly since the late 1990s), users most commonly employ the second button to invoke a contextual menu in the computer's software user interface, which contains options specifically tailored to the interface element over which the pointer currently sits. By default, the primary mouse button sits located on the left-hand side of the mouse, for the benefit of right-handed users; left-handed users can usually reverse this configuration via software.

Design

In contrast to its motion-tracking mechanism, the mouse's buttons have changed little over the years, varying mostly in shape, number, and placement.

Apple Mighty Mouse with electrocapacitative “buttons”

A mouse click is the action of pressing (i.e. 'clicking', an onomatopoeia) a button to trigger an action, usually in the context of a graphical user interface (GUI). “Clicking” an onscreen button is accomplished by pressing on the real mouse button while the pointer is placed over the onscreen button's icon.

The reason for the clicking noise made is due to the specific switch technology used nearly universally in computer mice. The switch is a subminiature precision snap-action type; the first of such types were the Honeywell MICRO SWITCH products.

Operation

Double clicking refers to clicking (and, naturally, releasing) a button (often the primary one) twice. Software recognizes both clicks, and if the second occurs within a short time, the action is recognized as a double click.

If the second click is made after the time expires it is considered to be a new, single click. Most modern operating systems and mice drivers allow a user to change the speed of a double click, along with an easy way to test the setting. Some software recognizes three or more clicks, such as progressively selecting a word, sentence, or paragraph in a word processor text page as more clicks are given in a sequence.

With less abstracted software, a mouse button's current state (“mouse up” and “mouse down”) is monitored, allowing for modal operations such as drag and drop.

Number of buttons

Douglas Engelbart's first mouse had a single button; Xerox PARC soon designed a three-button model, but reduced the count to two for Xerox products. Apple decided on one button for their GUI environments on commercial release in 1983, while most other PC environments standardized on two, and most professional workstation environments used three. Aside from such OEM bundled mice, usually having between one and three buttons, many aftermarket mice have always had five or more, with varying amounts of additional software included to support them.

This state of affairs continued until the late 1990s, when growing support for mice with a scroll wheel after the 1996 introduction of Microsoft's IntelliMouse incidentally made 3-button pointing devices ubiquitous on OEM hardware. The one major holdout, Apple, finally went multi-button in 2005 with their Mighty Mouse, though all Apple laptops would continue to use one-button trackpads until their first buttonless trackpad in 2008.

Advocacy

In the matter of the number of buttons, Engelbart favored the view “as many as possible.” The prototype that popularized the idea of three buttons as standard had that number only because “we could not find anywhere to fit any more switches.”

Those favoring single-button mice argue that a single button is simpler for novice users to understand, and for developers to support. In addition, as a lowest common denominator option, it offers both a path gradual advancement in user sophistication for unfamiliar applications, and a fallback for diverse or malfunctioning hardware

Those favoring multiple-button mice argue that support for a single-button mouse often requires clumsy workarounds in interfaces where a given object may have more than one appropriate action. Several common workarounds exist, and some are specified by the Apple Human Interface Guidelines.

One workaround was the double click, first used on the Lisa, to allow both the “select” and “open” operation to be performed with a single button.

Another workaround has the user hold down one or more keys on the keyboard before pressing the mouse button (typically control on a Macintosh for contextual menus). This has the disadvantage that it requires that both the user's hands be engaged. It also requires that the user perform actions on completely separate devices in concert; that is, holding a key on the keyboard while pressing a button on the mouse. This can be a difficult task for a disabled user, although can be remedied by allowing keys to stick so that they do not need to be pressed down.

Another involves the press-and-hold technique. In a press-and-hold, the user presses and holds the single button. After a certain period, software perceives the button press not as a single click but as a separate action. This has two drawbacks: first, a slow user may press-and-hold inadvertently. Second, the user must wait for the software to detect the click as a press-and-hold, otherwise the system might interpret the button-depression as a single click. Furthermore, the remedies for these two drawbacks conflict with each other: the longer the lag time, the more the user must wait; and the shorter the lag time, the more likely it becomes that some user will accidentally press-and-hold when meaning to click. Studies have found all of the above workarounds less usable than additional mouse buttons for experienced users. [citation needed]

A workaround common to users of two-button mice in environments designed for three buttons is mouse chording, to simulate a tertiary-click by pressing both buttons simultaneously.

Additional buttons

Aftermarket manufacturers have long built mice with five or more buttons. Depending on the user's preferences and software environment, the extra buttons may allow forward and backward web-navigation, scrolling through a browser's history, or other functions, including mouse related functions like quick-changing the mouse's resolution/sensitivity. As with similar features in keyboards, however, not all software supports these functions. The additional buttons become especially useful in computer gaming, where quick and easy access to a wide variety of functions (such as macros and DPI changes) can give a player an advantage. Because software can map mouse-buttons to virtually any function, keystroke, application or switch, extra buttons can make working with such a mouse more efficient and easier.

Scroll wheel

Scrollmice almost always mount their scroll wheels on an internal spring-loaded frame and switch, so that simply pushing down makes them work as an extra button, made easier to do without accidentally spinning it by wheel detents present in most scrollmice. Thus most mice today effectively have three buttons.

Software environment use

The Macintosh user interface, by design, always has and still does make all functions available with a single-button mouse. Apple's Human Interface Guidelines still specify that other developers need to make all functions available with a single-button mouse as well. Various functions commonly done with additional buttons on other platforms were, when implemented on the Mac by most developers, instead done in conjunction with modifier keys. For instance, contextual menus were most often invoked by “Control Key-click,” a behavior later explicitly adopted by Apple in OS 8's Contextual Menu Manager.

While there has always been a Macintosh aftermarket for mice and other pointing devices with two, three, or more buttons, and extensive configurable support (usually through keyboard emulation) to complement such devices in many major software packages on the platform, it wasn't until Mac OS X shipped that support for multi-button mice was hardcoded. X Window System applications, which Mac OS X can also run, have been developed with the use of two or three-button mice in mind.

While historically, most PC mice provided two buttons, only the primary button was standardized in use for MS-DOS and versions of Windows through 3.1x; support and functionality for additional buttons was application specific. However, in 1992, Borland released Quattro Pro for Windows (QPW), which used the right (or secondary) mouse button to bring up a context menu for the screen object clicked (an innovation previously used on the Xerox Alto, but new to most users). Borland actively promoted the feature, advertising QPW as “The right choice,” and the innovation was widely hailed as intuitive and simple. Other applications quickly followed suit, and the “right-click for properties” gesture was cemented as standard Windows UI behavior after it was implemented throughout Windows 95.

Most machines running Unix or a Unix-like operating system run the X Window System which almost always encourages a three-button mouse. X numbers the buttons by convention. This allows user instructions to apply to mice or pointing devices that do not use conventional button placement. For example, a left-handed user may reverse the buttons, usually with a software setting. With non-conventional button placement, user directions that say “left mouse button” or “right mouse button” are confusing. The ground-breaking Xerox Parc Alto and Dorado computers from the mid-1970s used three-button mice, and each button was assigned a color. Red was used for the left (or primary) button, yellow for the middle (secondary), and blue for the right (meta or tertiary). This naming convention lives on in some Smalltalk environments, such as Squeak, and can be less confusing than the right, middle and left designations.

Acorn's RISC OS based computers necessarily use all three mouse buttons throughout their WIMP based GUI. RISC OS refers to the three buttons (from left to right) as Select, Menu and Adjust. Select functions in the same way as the “Primary” mouse button in other operating systems. Menu will bring up a context-sensitive menu appropriate for the position of the pointer, and this often provides the only means of activating this menu. This menu in most applications equates to the “Application Menu” found at the top of the screen in Mac OS, and underneath the window title under Microsoft Windows. Adjust serves for selecting multiple items in the “Filer” desktop, and for altering parameters of objects within applications – although its exact function usually depends on the programmer.

References