Remote Commander for the Palm
by Herb Stiel, Brad Myers, Ben Bostwick, Rob Miller, Carl Evankovich
Updated for Version 5.0
Emulating the Mouse
When Remote Commander is running, moving the stylus across the screen of the
Palm should move the cursor on the PC. We discovered that the positions coming
out of the Palm were very jittery, so some filtering is performed on the points.
If the stylus is kept still on the Palm, the cursor shouldn't move. We also
added some user-customizable acceleration for the cursor (see the preferences
section), so that moving quickly on the Palm can move the PC cursor more pixels
than moving slowly. This allows the cursor to be moved across the PC screen
with fewer strokes on the Palm.
There are three ways to "press" the mouse buttons:
- Tapping on the blank area of the Palm screen with the stylus causes the
Remote Commander program to send a click (down press followed by a release)
of the mouse button to the PC. This is an easy way to select items and to
pop down menus. Which button (left or right) is customizable, and you can
even make tap do nothing. You can also control how precise you must be for
the tap to count as a click. See the preferences section below.
- The
physical (hard) keys of the Palm can perform various actions. By default,
the top and bottom buttons in the center bottom of the Palm (shown at right),
are mapped to the mouse buttons. For example, by default, pressing down on
the top button sends the left mouse button down event, and releasing the button
sends the left mouse button up event. Releasing sends the mouse button up
event. This allows you to drag with the button held down. This allows a better
flow since you can press these buttons with your thumb, kind of like the buttons
on a laptop are used with a touchpad or pointing stick.
- The
labels along the bottom of the main screen (see picture) show what the hard
buttons do. These labels are actually buttons. So you can tap on the word
"left" to cause the left mouse button to go down. Tap again to send
a mouse button up. The particular assignment of actions to application keys
is customizable. See the assigning application keys section below.
Emulating the Keyboard
Using Graffiti to write characters in the Graffiti area of the Palm will send
those characters to the PC as if they were typed at the keyboard. Capital letters
and all the punctuation should work in the normal way (although there is no
feedback showing the Graffiti mode).
To
hit the special keys on the PC keyboard, you can use the pop-up keyboard. Just
like the regular Palm keyboard, you pop-up the Remote Commander keyboard by
tapping the stylus inside the "abc" or "123" areas at the
bottom left and right of the Graffiti area. This brings up the screen shown
at right, on which you can hit the desired keyboard key. To get this keyboard
to go away, tap in the "abc" or "123" areas again, or hit
in the "Done" area of the keyboard at the bottom right, or use the
Menu command when the keyboard is displayed. There are 4 keyboards available.
The regular one shown at right, a big version of the regular keyboard which
fills the screen, and then versions where the keys are in alphabetic order rather
than qwerty order. See the preferences section below for more information.
If you have a Kyocera Smart Phone running PalmOS, the jog-dial switch (on the
side) always sends to the PC the up-arrow and down-arrow keys, no matter what
the center up-down buttons are assigned. (If you have a different PalmOS device
(like a Sony) and the jog-dial doesn't work appropriately, let us know.)
The small area at the top when using the smaller keyboards is still available
to make mouse movements or taps.
The Shift, Control and Alt keys on the keyboard modify the characters hit on
the keyboard, and will also modify Graffiti characters and mouse clicks. For
example, to do a SHIFT-CLICK of the mouse, you can hit the "Shift"
area on the keyboard and then tap the stylus in the upper area or press the
upward button in the bottom center of the Palm.
Because SHIFT, CONTROL and ALT clicking is so common, we wanted to provide
more convenient methods for doing this, so we allow the four "application
buttons" at the bottom of the Palm to be assigned. You can change which
one is which action using the Application Keys menu item, discussed below. You
can also tap on the on-screen label for each button to perform the action. For
example, tapping on the "Shft" label causes subsequent Graffiti strokes
to be shifted, until you tap on "Shft" again. Note that the tappable
area for each button on the screen is fairly large.
The FUNCTION key (by default assigned to the Memo button)
allows all the special PC keyboard keys to be entered using Graffiti gestures.
Just hold down the FUNCTION button while giving the gesture, and the corresponding
key will be sent, as in the following table:
Graffiti character |
PC Character |
1..9 |
F1..F9 |
0 or @ (= .0) |
F10 |
' (= .1) |
F11 |
= (= .2) |
F12 |
backspace or c (left stroke or <) |
left arrow |
space or t (right stroke or >) |
right arrow |
a (= ^) (can't use upstroke = caps shift) |
up arrow |
i or u or v (down stroke or v) |
down arrow |
e |
esc |
r |
prtsc (printscreen) |
p |
pause |
k |
break |
g |
pgup (page up) |
o |
pgdown (page down) |
h or / |
home |
n or \ |
end |
s |
ins |
d |
del |
b |
tab |
The Remote Commander's "Options / HELP" menu command on the Palm will display these mappings, in case you forget them.
Menu Commands
If you hit the Menu button (next to the Graffiti area), the Remote Commander's
menu bar will be displayed. The options are:
- Edit / Paste: This takes the contents of the Palm's clipboard and sends
the characters one at a time as if they were typed. This can be used
to copy and
paste some text from any Palm application into any PC application.
- Options / Connection: This brings up the Connection
dialog telling how to connect the Palm to the PC.
- Options / Preferences: This displays a dialog box that allows setting
preferences, described below.
- Options / Application Keys: This displays a dialog box
that allows setting which application keys go with which functions, described
below in assigning the application keys section.
- Options / Help: This displays a series of help screens that summarize
the use of the Remote Commander, especially the hardware buttons
and the encodings
for the FUNCTION key.
- Options / About Remote Commander: Tells the version of Remote Commander.
Preferences
There
are many preferences that have been added to Version 5 of RemoteCommander for
Palm (see picture at right):
- Which Keyboard: Allows choosing the regular QWERTY keyboard or alphabetic (QWERTY
is leaving the Alphabetic choice not checked, as shown at right). Also, you can
choose the regular size or Big keyboard. The regular size is shown above and
the big keyboard fills the screen.
- Key Repeat: If checked (the default), then holding down
the stylus on a key in the keyboard will cause that key to be repeatedly
sent to the PC. If not
checked,
then pressing on the key on the keyboard with the stylus will send a key-down
event, and releasing will send a key up event, with no key repeat. We found
that people using the RemoteCommander as an assistive technology were more
successful
with key repeat off. Also, if you are using Remote Commander with some games
that use key down and key up separately, it may be useful to turn off key
repeat so these are sent independently.
- Acceleration: This allows control of the acceleration
of the cursor across screen, so the PC cursor can make it all the way across
with one sweep of
the stylus
on the Palm screen. Note that this interacts with the acceleration set for
the mouse cursor on the PC mouse control panel. If the acceleration is set
to "High",
the PC cursor will make it across a 1024-pixel screen even if the mouse PC's
cursor is set to no acceleration.
- Tap flexibility: This controls how much the stylus can
move when trying to tap on the upper part of the screen to signal a mouse
button event. If Tap
flexibility
is "High", then it is much easier to tap and cause a mouse event,
but there is more chance of accidentally sending a mouse event when you are
just
trying to move the cursor.
- Set Application Key Preferences: Same as the menu item
Options / Application Keys: This displays a dialog box that allows setting
which application keys go with which functions, described below in assigning
the application keys section.
- No Grafitti (pops up keyboard): Some users (especially
some handicapped users) do not want to use Graffiti to generate PC keyboard
events. If this option
is checked, then Graffiti is not used, and instead any mouse down anywhere
in the
entire Graffiti area causes the keyboard to pop up.
- Use 30 min. for auto. power-off: If this is checked,
then when Remote Commander is running, the Palm will wait for 30 minutes
of inactivity before powering
off. This has no effect on the Palm when Remote Commander is not running.
If unchecked,
the standard power off set on the Palm Prefs panel is used. We found
that some handicapped users had difficulty with turning the Palm back on,
so
they needed
a longer power off wait time. Of course, this drains the battery faster.
Assigning the Application Keys
The Application Keys menu item or button on the Preferences dialog allows
the user to change the function of the physical buttons. The dialog box
shown
here pops up, which shows an icon for each of the six hard keys and for
tapping, along with a pop-up which you can use to assign the action. Assigning
the
same action to more than one key is allowed.
The available operations are:
- Shift Modifier: If this button is held down while a Graffiti stroke is performed,
the shifted version of the stroke is sent.
- Control Modifier: If this button is held down while a Graffiti stroke
is performed, the control version of the stroke is sent. For example, holding
this button
while making the "z" stroke will send CTRL-z to the PC, which often
performs Undo.
- Left Mouse Button: This allows the button to be used as the Left Mouse
Button. Pressing and releasing is like clicking the left button, and holding
down the
button will therefore work like dragging with the left mouse button down.
- Right Mouse Button: This button performs like the right mouse button.
- Middle Mouse Button: This button performs like the middle mouse button.
Although most PC mice do not have a middle mouse button, some specialized
applications
might use the middle mouse button anyway, and this option lets RemoteCommander
provide it.
- Alt Modifier: If this button is held down while a Graffiti stroke is performed,
the "Alt" version of the stroke is sent.
- Function Modifier: If this button is held down while a
Graffiti stroke is performed, then special keys like the F1 key and the escape
key can be sent. For example, holding the function while making the "1"
Graffiti stroke will send F1 to the PC, which often displays a help screen.
See the Graffiti and PC character comparison table
above for specific mapping of strokes.
- (Invoke Application): For the four application keys, this causes the key
to switch to the appropriate application (as defined in the standard Palm
button
preferences panel).
- (No Action): This makes the button do nothing when pressed.
- (Send Up/Down arrow): For the middle arrow buttons, this has the key send
the PC's up or down arrow key when the hard button is hit.
The final option on the dialog, for "Tap" determines what happens
when you tap on the main part of the screen (the mouse area). The default is
to send the left mouse button, but you can choose the Right mouse button, middle
mouse button, or no action. For example, left-handed people might have the
button assignments on their mouse switched, so they would need the tap to produce
a right mouse button.