Apple Inc. v. Samsung Electronics Co. Ltd. et al
Filing
167
Declaration of NICHOLAS P. GODICI IN SUPPORT OF SAMSUNG'S OPPOSITION TO APPLE'S MOTION FOR PRELIMINARY INJUNCTION filed bySamsung Electronics America, Inc., Samsung Electronics Co. Ltd., Samsung Telecommunications America, LLC. (Attachments: #1 Exhibit 1, #2 Exhibit 2, #3 Exhibit 3, #4 Exhibit 4-1, #5 Exhibit 4-2, #6 Exhibit 5, #7 Exhibit 6, #8 Exhibit 7, #9 Exhibit 8-1, #10 Exhibit 8-2, #11 Exhibit 8-3, #12 Exhibit 8-4, #13 Exhibit 8-5, #14 Exhibit 8-6, #15 Exhibit 8-7, #16 Exhibit 9, #17 Exhibit 10, #18 Exhibit 11, #19 Exhibit 12-1, #20 Exhibit 12-2, #21 Exhibit 12-3, #22 Exhibit 12-4, #23 Exhibit 13, #24 Exhibit 14)(Maroulis, Victoria) (Filed on 8/22/2011) Modified on 8/29/2011 cannot link entry-opposition has not been efiled (dhm, COURT STAFF).
Exhibit 8-1
Attorney Docket No.
UTJLlTY
PATENT APPLICATION ·
TRANSMITTAL
P4304US1/63266-5054-US
First Inventor
Bas Ording
r---------------------~--------------------------~
Title
List Scrolling and Document
Translation, Scaling, and Rotation
on a Touch-Screen Display
(Only for new nonprovisional applications under 37 CFR § 1.S3(b))
Electronically filed
December 14, 2007
Address to:
APPLICATION ELEMENTS
See MPEP Chapter 600 concerning utility patent application contents.
Commissioner for Patents
P.O. Box 1450
Alexandria, VA 22313-1450
1. D
Fee Transmittal Form (with duplicate for fee processing)
ACCOMPANYING APPLICATION PARTS
2. D
Applicant claims Small Entity status, see 37 C.F.R. § 1.27
9. D
Specification
10.
3.
4.
5.
C8J
C8J
C8J
[Total Pages
[Total Sheets
Drawing(s) (35 USC § 113)
59]
C8J
38]
Oath or Declaration
[Total Pages 2]
a. C8J Newly executed (original or copy)
b. D Copy from a prior application (37 CFR § 1.63(d))
(for con/div with Box 18 completed)
D Deletion of Inventor(s)
Signed statement attached deleting inventor(s)
named in the prior application, see 37 CFR §§
1.63(d)(2) and 1.33(b) .
Assignment Papers (cover sheet & document(s))
37 CFR § 3.73(b) Statement
a. ~ Power of Attorney
11 . D
12.
C8J
English Translation Document (if applicable)
Information Disclosure Statement and PTO-1449
a. D
Copies of IDS Citations
13. D
Preliminary Amendment
14. D
Return Receipt Postcard (MPEP 503)
Application Data Sheet, see 37 C.F.R. § 1.76
15. D
Certified Copy of Priority Document(s)
(if foreign priority is claimed)
7. D
CD-ROM or CD-R in duplicate, large table or Computer
Program (Appendix)
16. D
Non-Publication Request
under 35 U.S.C. § 122 (b)(2)(i)
8. D
Nucleotide and/or Amino Acid Sequence Submission
(if applicable, afl necessary)
a. DComputer Readable Form (CRF)
b. DSpecification Sequence Listing on
i. D CD-ROM or CD-R (2 copies); or
ii. D CD-ROM or CD-R (2 copies); or
iii. D Paper
c. D Statement verifying identity of above copies
17.
6.
C8J
C8J
Other:
a. Petition to Make Special Under Accelerated
Examination Program (4 pages)
b. Pre-examination Search Statement (18
pages)
c. Accelerated Examination Support Document
(44 pages)
18. If a CONTINUING APPLICATION , check appropriate box and supply the requisite information below and in a
preliminary amendment or in an Application Data Sheet under 37 CFR 1.76:
D This application is a D Continuation D Divisional D Continuation-in-part (CIP) of prior application No.:
Prior application information:
Examiner:
Group Art Unit:
D This application is a D Continuation D Divisional D Continuation-in-part (CIP) of prior application No.:
, which is the National Stage of International Application No. PCT/US
, filed
Prior application information:
filed
Examiner:
filed
Group Art Unit:
C8J This application claims the benefit of Provisional Application No. 60/937,993 , filed June 29, 2007; 60/946,971, filed June
28 , 2007 ; 60/945,858 , filed June 22, 2007; 60/879,469, filed January 8, 2007; 60/883,801, filed January 7, 2007; and
60/879,253 filed January 7, 2007 under 35 U.S.C. § 119(e).
D This application claims the benefit of Application No.
, filed
in
35 U.S.C. § 119(a).
C8J All of the foregoing applications are incorporated by reference in this application in their entireties.
19. CORRESPONDENCE ADDRESS: Customer Number 61725
Signature
Name
(PrintIType)
Date
,
Robert B. Beyers, Ph.D.
I December 14, 2007
Registration No .
(Attorney/A gent)
1
46 , 552
I-Pi\!36804 18.1
APLNDC00003749
List Scrolling and Document Translation, Scaling, and Rotation
on a Touch-Screen Display
ABSTRACT OF THE DISCLOSURE
In accordance with some embodiments, a computer-implemented method for use in
conjunction with a device with a touch screen display is disclosed.
In the method, a
movement of an object on or near the touch screen display is detected.
In response to
detecting the movement, an electronic document displayed on the touch screen display is
translated in a first direction.
If an edge of the electronic document is reached while
translating the electronic document in the :fIrst direction while the object is still detected on
or near the touch screen display, an area beyond the edge of the document is displayed.
After the object is no longer detected on or near the touch screen display, the document is
translated in a second direction until the area beyond the edge of the document is no longer
displayed.
P4304USl, 63266-S0S4-US
59
APLNDC00003750
Memory
102
Portable M u It"f nction Device
IU
~
100
Operating System
f126
Communication Module
/128
/130
/132
ContacUMotion Module
Graphics Module
GPS Module
Applications
Telephone Module
Video Conference Module
E-mail Client Module
Instant Messaging Module
Weather Widget
/140
/141
Calculator Widget
Alarm Clock Widget
Dictionary Widget
•
•
•
49-6
User-Created Widget(s) / 1
Search Module
•
•
•
Power
System
/146
/147
Music Player Module
Browsing Module
r+
( 118
~103
~
120.-/ ~
External
Port
V
124
--"
1~3
to,103
S
103
Processor( s)
----......
S
1/0 Subsystem
106J
Display
Controller
I-
Optical
sensor(s)
Controller
T
RF Circuitry
110~
103
Peripherals
Interface
,~103
V
10 8
speaker
::::t:(..J
1
11
Audio
Circuitry ~
I'..
__
Microph one
Proximity
113
Sensor ........... 166
158
Other Input
Controller(s)
- .r 160
j
,~103
112 J
162
i-" 103
Controller
~
156 -.-./
V
/
104.J
/ 1 50
/ 1 51
Widget Creator Module
/
Video Player Module
~1 49-2
~1 49-3
~1 49-4
~1 49-5
Stocks Widget
/138
/139
/142
Blogging Module
/143
Camera Module
144
Image Management Module /145
122~
Widget Modules
/137
Contacts Module
~1 48
~1 49
~1 49-1
Calendar Module
/134
/135
/136
Text Input Module
~1 36
Applications (continued)
Touch-Sensitive
Display System
~103
Optical
Sensor(s)
164
~103
Other Input
Control
Devices
/ 1 16
Figure 1
APLNDC00003751
Portable Multifunction Device
100
( Spea ker 111. )
Optical
Sensor .1Q1
Proximity
Sensor.1QQ.
~I
~I
Touch Screen 11 2
Microphone
113
Figure 2
APLNDC00003752
Portable Multifunction Device
100
( Speaker i l l )
300
Optical
Sensor 1M
Proximity
Sensor.1.§Q
~I
~I
310'"
Current Time",
Day and Date",
308
312
Wallpaper image
314
[~[_~~:.~]_____S~I~_e to u_n_IO_C_k____~]
____
302
306
Touch Screen 112
Microphone
113
Figure 3
APLNDC00003753
Portable Multifunction Device
100
Optical
Sensor.1§.1
( Spea ker i l l )
400
~I
Current Time
Proximity
Sensor.iQQ.
404
~I
Text
141
~
I
Photos
144
"
75°
\
~
/
\
/
l+ - -;-J,
"\ /
\
' /
/
'
J\ Jl~~~~:~)
I
User- '\
ABC
X
~-~
Alarm
149-4
'~----CI'
~~
6
Mail
140
Widget
149-6
Dictionary
149-5
410
,,/
1-~
l~)
Phone
138
Calendar
148
Stocks
149-2
,,~
Calculator
149-3
Blog
142
/
\ r/
~
Videos
145
\
Weather
149-1
(
Camera
143
l0J l fl
Browser
147
408
\
/
Music
146
~----------------------_//
Touch Screen 11 2
/~
/
Microphone
113
\
( Home \
\\ - - .)
204
Figure 4
APLNDC00003754
502
~.
Detect a movement of an object (e.g., a finger) on or near a touch screen
display of a device.
~:504
+
Scroll a list of items displayed on the touch screen display in a first
direction (e.g., vertical or horizontal).
Scroll the list at a speed corresponding to a speed of movement of
the object.
'-.J
Scroll the list in accordance with a simulation of an equation of motion
'-"
having friction.
V-- 506
r
508
" "~ ~"C510
Is a
(51 2
terminus of the
~~~
list reached while scrolling the
~~~ No
Proces s
list in the first direction while the object
~
Complet e
is still detected on or near
/ ~
the touch screen
//
display? //~
//
Yes
~:514
Display an area beyond the terminus of the list.
Display the area in white.
~
r
516
Display the area as visually indistinct from the background of the list.
~
r
518
+
After the object is no longer detected on or near the touch screen display,
~:520
scroll the list in a second direction opposite the first direction until the area
beyond the terminus of the list is no longer displayed.
Scroll the list using a damped motion.
~
Make the terminus of the list appear to be elastically attached to an
edge of the touch screen display or to an edge displayed on the touch '-"
screen display.
r
522
r
524
Figure 5
APLNDC00003755
Portable Multifunction Device
100
206
Optical
Sensor.iQ1
( Spea ker i l l )
3500A
s
~I
~I
L
Proximity
Sensor.1..§Q
Current Time
402
(/
[ M al"I baxes~\r3502
\
)
i
-
(6
/~,
Inbox
'y3504
\,
//
~~//
/
3512-1
.::lI 406
404
3506-2
•
Bruce Walker J
Lunch meeting
3510-2
January 30,20063
todayr3508-2
K"1m B roo 1<-'3506-3
3530
3510-3
January 30, 2006.f
ef3508-3
Draft agreem nt
• January 29, 2006
•
•
•
:;3514
•
•
V January 29, 2006
Bob Adams
Project Orion
•
3512-2
Darin Adler
fantasy football
Aaron Jones
January 29, 2006
Fwd: status report
Kim Brook
January 28, 2006
Re: proposal
3532
\ ,~//
!
"l..3518
~\
r
I 1
\
\
!
~
3520
/
~
(S)
~
[7
3522
3524
3526
3310
Microphone
Home
~
204
Figure 6A
APLNDC00003756
Portable Multifunction Device
100
206
Optical
Sensor.1Q1
( Speaker 111. )
3500A
~I
~I
Current Time
Proximity
Sensor.1.,QQ
404
( Mailboxes'y3502 Inbox
\
''',
/
J
3506-1
3510-1
Aaron Jonegf
January 30, 2006.f
.f3508-1
Re: Project Orion
3534
3512-1
•
3506-2
3510-2
Bruce Walker.f
January 30, 2006.f
•
3508-2
Lunch meeting today.f
3530
•
3506-3 •
351 0-3
Kim Brooi(.f
: January 30, 2006.f
.f3508-3.
Draft agreement
:;3514
•
•
•
Bob Adams
Project Orion
3512-2
•
V
January 29, 2006
•
Darin Adler
fantasy football
January 29, 2006
Aaron Jones
Fwd: status report
January 29, 2006
•
I
I'~.
(S)
~
3520
3522
3524
3526
/~~
Microphone
113
( Home
\
\1
204 )
",~
Figure 68
APLNDC00003757
Portable Multifunction Device
206
100
3500A
Proximity
Sensor.iQQ.
s
~I
~I
Optical
Sensor.1§.1
( Spea ker i l l )
L
(~M
[
Current Time 404
402
~
406
/~~,
al"I baxes~\.r3502 Inbox
)
( 6!3504
\
i
\
.::lI
\
/'
~~/
/
!
j~
~3538
3536
r
3506-1
3510-1
Aaron Jones'
January 30,2006-'
-,3508-1
Re: Project Orion
3512-1
•
3534
3510-2
January 30,2006-'
Lunch meeting today..r3508-2
3530
"
3506-3 •
3510-3
Kim Brook-'
: January 30,2006-'
-,3508-3.
Draft agreement
:,>3514
~06-2
Bruce Walker
•
•
VJanuary 29, 2006
Bob Adams
Project Orion
ti2-20arin Adler
January 29, 2006
fantasy football
\ T /;
"'~----A3518
\
. ",
/~~
/
( I
,,~//
3520
\
)
J
~
(S)
~
3524
3526
Microphone
( Home \
3522
/~
/
113
1\ 204
[7
3310
\
)
Figure 6C
APLNDC00003758
Portable Multifunction Device
206
100
3500A
Proximity
Sensor.iQQ.
s
~I
~I
Optical
Sensor.1§.1
( Spea ker i l l )
L
(~M
[
Current Time 404
402
~
406
/~~,
al"I b axes~\.r3502 Inbox
)
( 6!3504
\
i
\
.::lI
\
/'
~~/
/
!
53506-1 January 30, 20063510-1
5
Aaron Jones
.
.
3508-1
Re: PrOject Onon 5
3534
3512-1
J506-2
3510-2
• Bruce Walker
January 30,2006 5
Lunch meeting today53508-2
3530
K"1m B roo 1<-'3506-3 January 30, 2006 3510-3
5
3508-3
Draft agreement 5
Bob Adams
January 29, 2006
Project Orion
;2-2Darin Adler
January 29, 2006
fantasy football
Aaron Jones
January 29, 2006
Fwd: status report
\ T
\
. ",
/~~
/
( I
,,~//
3520
\
)
J
/i
"'~----A3518
~
(S)
~
3524
3526
Microphone
( Home \
3522
/~
/
113
1\ 204
[7
3310
\
)
Figure 60
APLNDC00003759
~
702
Detect a movement of an object (e.g., a finger) on or near a touch screen
display.
+
Translate an electronic document displayed on the touch screen display in
~
704
a first direction (e.g., vertical, horizontal, or diagonal).
Translate the electronic document at a speed of translation
corresponding to a speed of movement of the object.
v
",-..
706
•
Translate the electronic document in accordance with a simulation of • ,r--- 708
'--'
an equation of motion having friction.
~//
/
J~
~~
/ / Is an
~"~
,...-710
~~
edge of the
~~
, / / electronic document reached '~~
~//~hile translating the electronic document in~~",~No
~,~ the first direction while the object is still
/
~
detected on or near
//
~~
the touch screen
//
/~/
712
Process
Complete
~~~d!SPlay,!/,//
yves
~
714
Display an area beyond the edge of the document.
Display the area in black, gray, a solid color, or white.
~
Display the area as visually distinct from the document.
~
+
,r--- 716
,r--- 718
~
720
After the object is no longer detected on or near the touch screen display,
translate the document in a second direction (e.g., opposite the first
direction) until the area beyond the edge of the document is no longer
displayed.
Translate the document using a damped motion.
~
Make the edge of the electronic document appear to be elastically
attached to an edge of the touch screen display or to an edge
displayed on the touch screen display.
'--'
,r--- 722
,r--- 724
.
Figure 7
APLNDC00003760
Portable Multifunction Device
100
Optical
Sensor.1Q1
( Speaker 111. )
3900A
~I
Proximity
Sensor.1.,QQ
Current Time
Welcome
~I
404
3904
http://www.company.com/start
~
I
, - - - - - - - - - - -__ Web page
3912
Block 3
3914-3
Block 1
Block
7
3914-1
Block 4
3925~ ..
,
, ,:
3914-7
3914-4
i
:
'------------------"
~
Block 5
3914-5
Block 2
Block
8
3914-2
3914-8
Block 6
3914-6
3914-9
+
/~~
Microphone
.1.U
(Home \1
\
204 )
'-.~~
Figure SA
APLNDC00003761
Portable Multifunction Device
100
Optical
Sensor.1Q.4
( Speaker i l l )
3900A
~I
S
~I
<~
Proximity
Sensor.1.§Q
/]
I
402
Current Time
3902
Welcome
3904
http://www.company.com/start
Block 1
3906
3908
I
1/>
CJ910
Block 7
Block 4
3914-1
.::lI 406
404
3914-7
3914-4
Block 5
~3925 3914-5
,,
Block 2
3914-2
' ...
Block 8
3914-8
' ,
,
...
Block 6
3914-6
Web page
3912
Block 9
3914-9
.
/~-~
/
I
[
\
\
'~
r:q
~\
I
~~
\
)
~/
3916
+
3918
3920
[LJ
3922
/~~,
Microphone
113
/
\
( Home \
204 ,)
\ \
"~/'/
Figure 88
APLNDC00003762
Portable Multifunction Device
100
Optical
Sensor.1§.1
( Spea ker i l l )
3900A
~I
Proximity
Sensor.iQQ.
Current Time
Welcome
~I
404
3904
http://www.company.com/start
~
I
~ ;910
\..J
Block 4
Block 7
3914-4
3914-1
3914-7
Block 5
3914-5
Block
Block 8
~3925
2
3914-8
,,
3914-2
Bloclt,~
3914-6
Web page
3912
Block 9
3914-9
3928-1
392S-2[Q
3920
/~
,
Microphone
113
3922
\
( Home \
1\ 204 )
Figure 8e
APLNDC00003763
Portable Multifunction Device
100
Optical
Sensor.1Q.4
( Speaker i l l )
3900A
~I
S
~I
<~
Proximity
Sensor.1.§Q
/]
I
402
Current Time
3902
Welcome
3904
http://www.company.com/start
Block 1
3906
3908
I
1/>
CJ910
Block 7
Block 4
3914-1
.::lI 406
404
3914-7
3914-4
Block 5
3914-5
Block 2
Block 8
3914-2
3914-8
Block 6
3914-6
Web page
3912
Block 9
3914-9
.
/~-~
/
I
[
\
\
'~
r:q
~\
I
~~
\
)
~/
3916
+
3918
3920
[LJ
3922
/~~,
Microphone
113
/
\
( Home \
204 ,)
\ \
"~/'/
Figure 80
APLNDC00003764
~902
~--------------------------------------------------------~~
Display an electronic document at a first magnification on a touch screen
display. The electronic document has a document length and a document
width.
~904
"
~----------------------------~--------------------------~~
Detect a gesture (e.g., a pinching gesture) on or near the touch screen
display corresponding to a command to zoom out by a user-specified
amount.
,
~906
~----------------------------~--------------------------~~
In response to detecting the gesture, display the electronic document at a
magnification less than the first magnification.
,
~~
~"~
908
'~Z~
Is the
document length or
~
document width entirely displayed while '~,
the gesture is still detected on or near
the touch screen
display?
,910
No
Process
Complete
Yes
"
~912
.-----------------------------~--------------------------~~
Display the electronic document at a magnification wherein areas beyond
opposite edges of the electronic document are displayed.
,
~914
~----------------------------~--------------------------~~
Upon detecting termination ofthe gesture, display the electronic
document at a magnification wherein the areas beyond opposite edges of
the electronic document are no longer displayed.
Figure 9
APLNDC00003765
Portable Multifunction Device
100
( Speaker 1.11
3900A
~I
s
~I
<=~
L
J
Optical
Sensor.1Q.4
Proximity
Sensor .1QQ.
402
Current Time
3902
Welcome
.::lI 406
404
[:>
CJ391
3904
http://www.company.com/start
3906
0
3908
I
Block 3
Web page
3912
3914-3
Block 1
Block
7
3914-1
,--,Block 4
13951,
~_.' 3914-4
,. -,
t3( ~531
'.
• #
3914-7
Block 5
3914-5
Block 2
Block
8
3914-2
3914-8
Block 6
3914-6
3914-9
•
I
3916
+
~
3918
Microphone
113
3920
[LJ
3922
Home
204
Figure 10A
APLNDC00003766
Portable Multifunction Device
100
(Speaker
3900A
111)
Optical
Sensor .1§.1
Proximity
Sensor .1.QQ
Current Time
Welcome
3904
http://www.company.com/start
illlQll
I
CJ..3910
3955
Block 3
3914-3
Block 1
3914-1
--'Block 4
, 951:3914_4
Block 7
3914-7
--
Block 2
3914-2
--,
:395'$'
Block 5
3914-5
,_~I
Block 8
3914-8
Block 6
3914-6
Block 9
3914-9
+
.~~,
( I \
I
\
1
./
~-~
Microphone
113
Home
204
Figure 108
APLNDC00003767
Portable Multifunction Device
100
( Speaker 1.11
3900A
~I
s
~I
<=~
L
J
Optical
Sensor.1Q.4
Proximity
Sensor .1QQ.
402
Current Time
3902
Welcome
.::lI 406
404
[:>
CJ391
3904
http://www.company.com/start
3906
0
3908
I
Block 3
3914-3
Block 1
3914-1
Web page
3912
Block 7
3914-7
Block 4
3914-4
Block 5
3914-5
Block 2
3914-2
Block 8
3914-8
Block 6
3914-6
Block 9
3914-9
•
I
3916
+
~
3918
Microphone
113
3920
[LJ
3922
Home
204
Figure 10C
APLNDC00003768
1100
~
1102
~
1104
Display at least a first portion of an electronic document at a first
magnification on a touch screen display.
r
Detect a gesture (e.g., a de-pinching gesture) on or near the touch screen
display corresponding to a command to zoom in by a user-specified
amount.
r
~
1106
In response to detecting the gesture, display decreasing portions of the
electronic document at increasing magnifications.
r
,
1110
Process
Complete
Yes
1112
Display a respective portion of the electronic document at the predefined
magnification.
Figure 11
APLNDC00003769
Portable Multifunction Device
100
Optical
Sensor.1§.1
( Spea ker i l l )
3900A
~I
Proximity
Sensor.iQQ.
s
L
402
Current Time
3902
Welcome
.::lI 406
404
39061=~>
//
~I
<'~~~~
3904
http://www.company.com/start
3908
Block 3
,--,
Block 1 13931 •
Web page
3912
3914-3
Block
7
'--'
3914-;
Block 4
,--,
,
I
CJ910
,
13933 •
3914-7
3914-4
Block 5
3914-5
Block 2
Block
8
3914-2
3914-8
Block 6
3914-6
/
I
\
I. \
/~
\
I
)
,~/
3916
3914-9
+
~
3918
/~
/
Microphone
113
3920
[LJ
3922
\
( Home \
1\ 204 )
Figure 12A
APLNDC00003770
Portable Multifunction Device
100
( Speaker 111. )
3900A
~I
s
~I
,
I
L
Optical
Sensor.1.§.4
Proximity
Sensor.1§.§.
402
Current Time
3902
Welcome
404
3906 ~~>
--l/
3904
http://www.company.com/start
~
I
Web page
3912
3914
-3
Block 1
3914-1
3914
-4
+
/--;~
/ I \J
\
I
i
"
~/
3916
Microphone
113
Figure 128
APLNDC00003771
Portable Multifunction Device
100
( Speaker 1.11
3900A
~I
s
~I
<=~
L
J
Optical
Sensor.1Q.4
Proximity
Sensor .1QQ.
402
Current Time
3902
Welcome
.::lI 406
404
3904
http://www.company.com/start
[:>
CJ391
3906
0
3908
I
Web page
3912
39143
Block 1
3914-1
39144
+
~
•
I
3916
3918
Microphone
113
3920
[LJ
3922
Home
204
Figure 12C
APLNDC00003772
m
(II')
< l)
'-
:::l
C)
LL
o
I-
B9~
(s )J8l8WOJ818::>::>V
[;;;'\
\::)
n~
8UOlldOJ::>!V\I
!ldo
APLNDC00003773
....
:::l
(1)
C)
LL.
o
I-
99~
( S)J8l8WOJ818:J:JV
[;;;\
\::J
£~ ~
8UOljdOJ:J!1I\I
(1)
....
C'?
C'?
0)
C'?
:::l
C)
.
. ;:
...
(
LL.
,
,
"
.
,
,
·
·
·
·....
\
~I
99~
JOSU8S
Al!W!XOJd
v9~ JOSU8S
le:J!ldo
APLNDC00003774
99~
( S)J9l9WOJ919::X:)V
[;;'\
\::J
n~
9UOlldoJ::>! V\I
~I
JOSU9S
Al!W!XOJd
99~
v9~
JOSU9S
IB::mdO
(rITJ9>tB9d S )
APLNDC00003775
~1402
~--------------------------------------------------------~~
Detect a multifinger twisting gesture on or near a touch screen display.
The multifinger twisting gesture has a corresponding degree of rotation.
"
""",r-
1404
Does the
~'"
corresponding degree of~'" Yes
rotation exceed a
) .:
predefined degree of / /
rotation?
/
(
1406
Execute a 90°
screen rotation
command.
///
////
No
,r
~1408
Execute a screen rotation command with an acute angle of rotation.
,r
~1410
.-----------------------------~--------------------------~~
Upon ceasing to detect the multifinger twisting gesture, executing a
screen rotation command with an angle of rotation opposite to the acute
angle.
Figure 14
APLNDC00003776
(speaker 111)
Optical
Sensor.1M
Proximity
Sensor .1QQ.
. ~. 0.. . . . .
,········0··)
1506
Microphone
113
~
~
~""
'>
~-l/
To Figure 158
Accelerometer( s)
168
Figure 15A
APLNDC00003777
( Speaker 111
)
Microphone 113
Optical Sensor
164
Proximity
Sensor.1..QQ
~
Accelerometer(s)
168
\J
Figure 158
APLNDC00003778
( Speaker 111)
Optical
Sensor.1..Q.4.
Proximity
Sensor .1.QQ
.....
·.
·
#'
•
~
.
.
.......... _--_ ..-.
., ...
' ..
I
.'
·
•
·
------ .....
.
•
.
.."
/'"''''
To Figure 150
1508
Microphone
113
(::::\
\:V
Accelerometer( s)
168
Figure 15C
APLNDC00003779
( Speaker 111)
Optical
SensorjM
Proximity
Sensor.1QQ
I
~
. . . . . . >. . .
~#-..
.
:
... .......
~>
To Figure 15E
",... -----.. . . . .,
~.
.:
.
:
1508
Microphone
113
~
~
Accelerometer(s)
168
Figure 150
APLNDC00003780
( Speaker 111)
Microphone
113
Optical
Sensor.1Q.4
~
~
Proximity
Sensor.1..QQ
Accelerometer( s)
168
Figure 15E
APLNDC00003781
1604-L
(speaker
111)
5
1606-L
To Figure 168
~
"V
Accelerometer(s)
1604-R
~
Figure 16A
APLNDC00003782
1604-R
0
0
0
1608-R
1502
0
0
Figure 168
APLNDC00003783
/~~----------------------------------------~"\
""
"
\
\
1606-L
---------------\------- )(
"
.
t
I
--"--.
-__\ \
I
.
.
"-".
I
-.----- ,
"
------,--._----------'\
.
..
••
........
__________._...-;f·······
,.,.
I
\
,
)""."
1608-L
'-.-
Figure 16C
APLNDC00003784
1604-L
5
,,---~
(speake,
~ "\
m)
1606-L
C
:'"
~
"
./
i
!/
To Figure 16E
(::::\
\0
Accelerometer(s)
1604-R
1Q§
~--~
Figure 160
APLNDC00003785
1604-L
(speaker
111)
Optical
Sensor.1§1
Proximity
Sensor .1§§.
1606-L
To Figure 16F
1606-R
Microphone
113
~
Accelerometer( s)
\V
168
1604-R
Figure 16E
APLNDC00003786
( Speaker 111
Microphone
113
)
Optical Sensor
164
(::::\
"-J
Proximity
Sensor 166
Accelerometer(s)
168
Figure 16F
APLNDC00003787
M emo ry 1770
'~
Graphics Module
/126
/ 1 28
V1 30
~1 32
Text Input Module
~1 34
Operating System
Communication Module
ContacUMotion Module
Appl ications
Contacts Module
Device 1700
Telephone Module
~
Video Conference Module
E-mail Client Module
1710-.....,
Instant Messaging Module
CPU(s)
Blogging Module
Camera Module
1
1720
--=::--.
Image Management Module
Video Player Module
1730\
Music Player Module
Browsing Module
User interface
Touch-Screen
Display
Calendar Module
1740
Widget Modules
r--
Weather Widget
Keyboa rd/Mouse
Stocks Widget
j,
Calculator Widget
1'750
Alarm Clock Widget
Network
Communications
17~
Interface
Dictionary Widget
•
•
•
User-Created Widget(s)
~1 36
137
..r
138
..r 139
..r 140
141
V
..r 142
143
/ 1 44
145
..r
146
..r 147
148
..r
V
..r
149
149-1
149-2
149-3
~
..r 149-4
149-5
..r 149-6
Widget Creator Module
f
Search Module
•
•
•
/
150
151
Figure 17
APLNDC00003788
What is claimed is:
1.
A computer-implemented method, comprising:
at a device with a touch screen display,
detecting a movement of an object on or near the touch screen display;
in response to detecting the movement, translating an electronic document displayed
on the touch screen display in a first direction;
in response to an edge of the electronic document being reached while translating
the electronic document in the first direction while the object is still detected on or near the
touch screen display, displaying an area beyond the edge of the document; and
after the object is no longer detected on or near the touch screen display, translating
the document in a second direction until the area beyond the edge of the document is no
longer displayed.
2.
The computer-implemented method of claim 1, wherein the device is a portable
multifunction device.
3.
The computer-implemented method of claim 1, wherein the movement of the object
is on the touch screen display.
4.
The computer-implemented method of claim 1, wherein the object is a finger.
5.
The computer-implemented method of claim 1, wherein the first direction is a
vertical direction, a horizontal direction, or a diagonal direction.
6.
The computer-implemented method of claim 1, wherein the electronic document is a
web page.
7.
The computer-implemented method of claim 1, wherein the electronic document is a
digital image.
8.
The computer-implemented method of claim 1, wherein the electronic document is a
word processing, spreadsheet, email or presentation document.
9.
The computer-implemented method of claim 1, wherein the electronic document
includes a list of items.
P4304USl, 63266-S0S4-US
55
APLNDC00003789
10.
The computer-implemented method of claim 1, wherein the second direction is
opposite the first direction.
11.
The computer-implemented method of claim 1, wherein translating in the first
direction prior to reaching an edge of the document has an associated speed of translation
that corresponds to a speed of movement of the object.
12.
The computer-implemented method of claim 1, wherein translating in the first
direction is in accordance with a simulation of an equation of motion having friction.
13.
The computer-implemented method of claim 1, wherein the area beyond the edge of
the document is black, gray, a solid color, or white.
14.
The computer-implemented method of claim 1, wherein the area beyond the edge of
the document is visually distinct from the document.
15.
The computer-implemented method of claim 1, wherein translating the document in
the second direction is a damped motion.
16.
The computer-implemented method of claim 1, wherein changing from translating in
the first direction to translating in the second direction until the area beyond the edge of the
document is no longer displayed makes the edge of the electronic document appear to be
elastically attached to an edge of the touch screen display or to an edge displayed on the
touch screen display.
17.
The computer-implemented method of claim 1, wherein translating in the first
direction prior to reaching the edge of the electronic document has a first associated
translating distance that corresponds to a distance of movement of the object prior to
reaching the edge of the electronic document; and wherein displaying an area beyond the
edge of the electronic document comprises translating the electronic document in the first
direction for a second associated translating distance, wherein the second associated
translating distance is less than a distance of movement of the object after reaching the edge
of the electronic document.
18.
The computer-implemented method of claim 1, wherein translating in the first
direction prior to reaching the edge of the electronic document has a first associated
P4304USl, 63266-S0S4-US
56
APLNDC00003790
translating speed that corresponds to a speed of movement of the object, and wherein
displaying an area beyond the edge of the electronic document comprises translating the
electronic document in the first direction at a second associated translating speed, wherein
the second associated translating speed is slower than the first associated translating speed.
19.
A device, comprising:
a touch screen display;
one or more processors;
memory; and
one or more programs, wherein the one or more programs are stored in the memory
and configured to be executed by the one or more processors, the programs including:
instructions for detecting a movement of an object on or near the touch
screen display;
instructions for translating an electronic document displayed on the touch
screen display in a first direction, in response to detecting the movement;
instructions for displaying an area beyond an edge of the electronic
document in response to the edge of the electronic document being reached while
translating the electronic document in the first direction while the object is still detected on
or near the touch screen display; and
instructions for translating the document in a second direction until the area
beyond the edge of the document is no longer displayed, after the object is no longer
detected on or near the touch screen display.
20.
A computer readable storage medium having stored therein instructions, which when
executed by a device with a touch screen display, cause the device to:
detect a movement of an object on or near the touch screen display;
translate an electronic document displayed on the touch screen display in a first
direction, in response to detecting the movement;
display an area beyond an edge of the electronic document if the edge of the
electronic document is reached while translating the electronic document in the first
direction while the object is still detected on or near the touch screen display; and
P4304USl, 63266-S0S4-US
57
APLNDC00003791
translate the document in a second direction until the area beyond the edge of the
document is no longer displayed, after the object is no longer detected on or near the touch
screen display_
P4304USl, 63266-S0S4-US
58
APLNDC00003792
List Scrolling and Document Translation, Scaling, and Rotation
on a Touch-Screen Display
RELATED APPLICATIONS
[0001]
This application claims priority to U.S. Provisional Patent Application Nos.
60/937,993, "Portable Multifunction Device," filed June 29, 2007; 60/946,971, "List
Scrolling and Document Translation, Scaling, and Rotation on a Touch-Screen Display,"
filed June 28,2007; 60/945,858, "List Scrolling and Document Translation on a TouchScreen Display," filed June 22,2007; 60/879,469, "Portable Multifunction Device," filed
January 8, 2007; 60/883,801, "List Scrolling and Document Translation on a Touch-Screen
Display," filed January 7,2007; and 60/879,253, "Portable Multifunction Device," filed
January 7, 2007. All of these applications are incorporated by reference herein in their
entirety.
[0002]
This application is related to the following applications: (1) U.S. Patent
Application No. 101188,182, "Touch Pad For Handheld Device," filed on July 1,2002; (2)
U.S. Patent Application No. 101722,948, "Touch Pad For Handheld Device," filed on
November 25,2003; (3) U. S. Patent Application No. 10/643,256, "Movable Touch Pad
With Added Functionality," filed on August 18,2003; (4) U.S. Patent Application No.
10/654,108, "Ambidextrous Mouse," filed on September 2,2003; (5) U.S. Patent
Application No. 10/840,862, "Multipoint Touchscreen," filed on May 6, 2004; (6) U.S.
Patent Application No: 10/903,964, "Gestures For Touch Sensitive Input Devices," filed on
July 30,2004; (7) U.S. Patent Application No. 11/038,590, "Mode-Based Graphical User
Interfaces For Touch Sensitive Input Devices" filed on January 18,2005; (8) U.S. Patent
Application No. 11/057,050, "Display Actuator," filed on February 11,2005; (9) U.S.
Provisional Patent Application No. 60/658,777, "Multi-Functional Hand-Held Device,"
filed March 4,2005; (10) U.S. Patent Application No. 111367,749, "Multi-Functional HandHeld Device," filed March 3, 2006; and (11) U.S. Provisional Patent Application No.
60/824,769, "Portable Multifunction Device," filed September 6,2006. All of these
applications are incorporated by reference herein in their entirety.
P4304USl, 63266-S0S4-US
1
APLNDC00003793
TECHNICAL FIELD
[0003]
The disclosed embodiments relate generally to devices with touch-screen
displays, and more particularly to scrolling lists and to translating, rotating, and scaling
electronic documents on devices with touch-screen displays.
BACKGROUND
[0004]
As portable electronic devices become more compact, and the number of
functions performed by a given device increases, it has become a significant challenge to
design a user interface that allows users to easily interact with a multifunction device. This
challenge is particularly significant for handheld portable devices, which have much smaller
screens than desktop or laptop computers. This situation is unfortunate because the user
interface is the gateway through which users receive not only content but also responses to
user actions or behaviors, including user attempts to access a device's features, tools, and
functions. Some portable communication devices (e.g., mobile telephones, sometimes
called mobile phones, cell phones, cellular telephones, and the like) have resorted to adding
more pushbuttons, increasing the density of push buttons, overloading the functions of
pushbuttons, or using complex menu systems to allow a user to access, store and manipulate
data. These conventional user interfaces often result in complicated key sequences and
menu hierarchies that must be memorized by the user.
[0005]
Many conventional user interfaces, such as those that include physical
pushbuttons, are also inflexible. This is unfortunate because it may prevent a user interface
from being configured and/or adapted by either an application running on the portable
device or by users. When coupled with the time consuming requirement to memorize
multiple key sequences and menu hierarchies, and the difficulty in activating a desired
pushbutton, such inflexibility is frustrating to most users.
[0006]
As a result of the small size of display screens on portable electronic devices
and the potentially large size of electronic files, frequently only a portion of a list or of an
electronic document of interest to a user can be displayed on the screen at a given time.
Users thus will frequently need to scroll displayed lists or to translate displayed electronic
documents. Users also will need to rotate and to scale (i.e., magnify or de-magnify)
P4304USl, 63266-S0S4-US
2
APLNDC00003794
displayed electronic documents. However, the limitations of conventional user interfaces
can cause these actions to be awkward to perform.
[0007]
Furthermore, scrolling displayed lists and translating electronic documents
can be awkward on both portable and non-portable electronic devices with touch-screen
displays. A user may become frustrated if the scrolling or translation does not reflect the
user's intent. Similarly, a user may become frustrated if rotation and scaling of electronic
documents does not reflect the user's intent.
[0008]
Accordingly, there is a need for devices with touch-screen displays with
more transparent and intuitive user interfaces for scrolling lists of items and for translating,
rotating, and scaling electronic documents that are easy to use, configure, and/or adapt.
SUMMARY
[0009]
The above deficiencies and other problems associated with user interfaces
for portable devices and devices with touch-sensitive displays are reduced or eliminated by
the disclosed device. In some embodiments, the device has a touch-sensitive display (also
known as a "touch screen") with a graphical user interface (GUI), one or more processors,
memory and one or more modules, programs or sets of instructions stored in the memory
for performing multiple functions. In some embodiments, the user interacts with the GUI
primarily through finger contacts and gestures on the touch-sensitive display. In some
embodiments, the functions may include telephoning, video conferencing, e-mailing, instant
messaging, blogging, digital photographing, digital videoing, web browsing, digital music
playing, and/or digital video playing. Instructions for performing these functions may be
included in a computer program product configured for execution by one or more
processors.
[0010]
In accordance with some embodiments, a computer-implemented method for
use in conjunction with a device with a touch screen display is disclosed. In the method, a
movement of an object on or near the touch screen display is detected. In response to
detecting the movement, an electronic document displayed on the touch screen display is
translated in a first direction. If an edge of the electronic document is reached while
translating the electronic document in the first direction while the object is still detected on
or near the touch screen display, an area beyond the edge ofthe document is displayed.
P4304USl, 63266-S0S4-US
3
APLNDC00003795
After the object is no longer detected on or near the touch screen display, the document is
translated in a second direction until the area beyond the edge of the document is no longer
displayed.
[0011]
In accordance with some embodiments, a graphical user interface on a device
with a touch screen display is disclosed, comprising a portion of an electronic document
displayed on the touch screen display and an area beyond an edge of the document. In the
graphical user interface, in response to detecting a movement of an object on or near the
touch screen display, the electronic document is translated in a first direction. If the edge of
the electronic document is reached while translating the electronic document in the first
direction while the object is still detected on or near the touch screen display, the area
beyond the edge of the document is displayed. After the object is no longer detected on or
near the touch screen display, the document is translated in a second direction until the area
beyond the edge of the document is no longer displayed.
[0012]
In accordance with some embodiments, a device is disclosed, comprising a
touch screen display, one or more processors, memory, and one or more programs. The one
or more programs are stored in the memory and configured to be executed by the one or
more processors. The one or more programs include instructions for detecting a movement
of an object on or near the touch screen display and instructions for translating an electronic
document displayed on the touch screen display in a first direction, in response to detecting
the movement. The one or more programs also include instructions for displaying an area
beyond an edge of the electronic document if the edge of the electronic document is reached
while translating the electronic document in the first direction while the object is still
detected on or near the touch screen display. The one or more programs further include
instructions for translating the document in a second direction until the area beyond the
edge of the document is no longer displayed, after the object is no longer detected on or
near the touch screen display.
[0013]
In accordance with some embodiments, a computer-program product is
disclosed, comprising a computer readable storage medium and a computer program
mechanism embedded therein. The computer program mechanism comprises instructions,
which when executed by a device with a touch screen display, cause the device to detect a
movement of an object on or near the touch screen display and to translate an electronic
P4304USl, 63266-S0S4-US
4
APLNDC00003796
document displayed on the touch screen display in a first direction, in response to detecting
the movement. The instructions also cause the device to display an area beyond an edge of
the electronic document if the edge of the electronic document is reached while translating
the electronic document in the first direction while the object is still detected on or near the
touch screen display. The instructions further cause the device to translate the document in
a second direction until the area beyond the edge of the document is no longer displayed,
after the object is no longer detected on or near the touch screen display.
[0014]
In accordance with some embodiments, a device with a touch screen display
is disclosed. The device comprises means for detecting a movement of an object on or near
the touch screen display and means for translating an electronic document displayed on the
touch screen display in a first direction, in response to detecting the movement. The device
also comprises means for displaying an area beyond an edge of the electronic document if
the edge of the electronic document is reached while translating the electronic document in
the first direction while the object is still detected on or near the touch screen display. The
device further comprises means for translating the document in a second direction until the
area beyond the edge ofthe document is no longer displayed, after the object is no longer
detected on or near the touch screen display.
[0015]
In accordance with some embodiments, a computer-implemented method for
use in conjunction with a device with a touch screen display is disclosed. In the method, a
movement of an object on or near the touch screen display is detected. In response to
detecting the movement, a list of items displayed on the touch screen display is scrolled in a
first direction. If a terminus of the list is reached while scrolling the list in the first direction
while the object is still detected on or near the touch screen display, an area beyond the
terminus of the list is displayed. After the object is no longer detected on or near the touch
screen display, the list is scrolled in a second direction opposite the first direction until the
area beyond the terminus of the list is no longer displayed.
[0016]
In accordance with some embodiments, a graphical user interface on a device
with a touch screen display is disclosed, comprising a portion of a list of items displayed on
the touch screen display and an area beyond a terminus of the list. In response to detecting
a movement of an object on or near the touch screen display, the list is scrolled in a first
direction. If the terminus of the list is reached while scrolling the list in the first direction
P4304USl, 63266-S0S4-US
5
APLNDC00003797
while the object is still detected on or near the touch screen display, the area beyond the
terminus of the list is displayed. After the object is no longer detected on or near the touch
screen display, the list is scrolled in a second direction opposite the first direction until the
area beyond the terminus of the list is no longer displayed.
[0017]
In accordance with some embodiments, a device is disclosed, comprising a
touch screen display, one or more processors, memory, and one or more programs. The one
or more programs are stored in the memory and configured to be executed by the one or
more processors. The one or more programs include instructions for detecting a movement
of an object on or near the touch screen display and instructions for scrolling a list of items
displayed on the touch screen display in a first direction in response to detecting the
movement. The one or more programs also include instructions for displaying an area
beyond a terminus of the list if the terminus of the list is reached while scrolling the list in
the first direction while the object is still detected on or near the touch screen display. The
one or more programs further include instructions for scrolling the list in a second direction
opposite the first direction until the area beyond the terminus of the list is no longer
displayed, after the object is no longer detected on or near the touch screen display.
[0018]
In accordance with some embodiments, a computer-program product is
disclosed, comprising a computer readable storage medium and a computer program
mechanism embedded therein. The computer program mechanism comprises instructions,
which when executed by a device with a touch screen display, cause the device to detect a
movement of an object on or near the touch screen display and to scroll a list of items
displayed on the touch screen display in a first direction in response to detecting the
movement. The instructions also cause the device to display an area beyond a terminus of
the list if the terminus of the list is reached while scrolling the list in the first direction while
the object is still detected on or near the touch screen display. The instructions further cause
the device to scroll the list in a second direction opposite the first direction until the area
beyond the terminus ofthe list is no longer displayed, after the object is no longer detected
on or near the touch screen display.
[0019]
In accordance with some embodiments, a device with a touch screen display
is disclosed. The device comprises means for detecting a movement of an object on or near
the touch screen display and means for scrolling a list of items displayed on the touch
P4304USl, 63266-S0S4-US
6
APLNDC00003798
screen display in a first direction in response to detecting the movement. The device also
comprises means for displaying an area beyond a terminus of the list if the terminus of the
list is reached while scrolling the list in the first direction while the object is still detected on
or near the touch screen display. The device further comprises means for scrolling the list
in a second direction opposite the first direction until the area beyond the terminus of the list
is no longer displayed, after the object is no longer detected on or near the touch screen
display.
[0020]
In accordance with some embodiments, a computer-implemented method for
use at a device with a touch screen display includes detecting a multifinger twisting gesture
on or near the touch screen display. The multi finger twisting gesture has a corresponding
degree of rotation. If the corresponding degree of rotation exceeds a predefined degree of
rotation, a 90° screen rotation command is executed. If the corresponding degree of rotation
is less than the predefined degree of rotation, a screen rotation command with an acute
angle of rotation is executed and, upon ceasing to detect the multirmger twisting gesture, a
screen rotation command with an angle of rotation opposite to the acute angle is executed.
[0021]
In accordance with some embodiments, a device includes a touch screen
display, one or more processors, memory, and one or more programs. The one or more
programs are stored in the memory and configured to be executed by the one or more
processors. The one or more programs include: instructions for detecting a multi finger
twisting gesture on or near the touch screen display, wherein the multi finger twisting
gesture has a corresponding degree of rotation; instructions for executing a 90° screen
rotation command, if the corresponding degree of rotation exceeds a predefined degree of
rotation; and instructions for executing a screen rotation command with an acute angle of
rotation and for executing, upon ceasing to detect the multi finger twisting gesture, a screen
rotation command with an angle of rotation opposite to the acute angle, if the corresponding
degree of rotation is less than the predefined degree of rotation.
[0022]
In accordance with some embodiments, a computer-program product
includes a computer readable storage medium and a computer program mechanism
embedded therein. The computer program mechanism includes instructions, which when
executed by a device with a touch screen display, cause the device to: detect a multifinger
twisting gesture on or near the touch screen display, wherein the multi finger twisting
P4304USl, 63266-S0S4-US
7
APLNDC00003799
gesture has a corresponding degree of rotation; execute a 90° screen rotation command, if
the corresponding degree of rotation exceeds a predefined degree of rotation; and execute a
screen rotation command with an acute angle of rotation and, upon ceasing to detect the
multifinger twisting gesture, execute a screen rotation command with an angle of rotation
opposite to the acute angle, if the corresponding degree of rotation is less than the
predefined degree of rotation.
[0023]
In accordance with some embodiments, a device with a touch screen display
includes: means for detecting a multifinger twisting gesture on or near the touch screen
display, wherein the multi finger twisting gesture has a corresponding degree of rotation;
means for executing a 90° screen rotation command, if the corresponding degree of rotation
exceeds a predefined degree of rotation; and means for executing a screen rotation
command with an acute angle of rotation and, upon ceasing to detect the multi finger
twisting gesture, for executing a screen rotation command with an angle of rotation opposite
to the acute angle, if the corresponding degree of rotation is less than the predefined degree
of rotation.
[0024]
In accordance with some embodiments, a computer-implemented method of
displaying an electronic document having a document length and a document width, for use
at a device with a touch screen display, includes displaying the electronic document at a
first magnification and detecting a gesture on or near the touch screen display corresponding
to a command to zoom out by a user-specified amount. In response to detecting the gesture,
the electronic document is displayed at a magnification less than the first magnification. If
the document length or document width is entirely displayed while the gesture is still
detected on or near the touch screen display, the electronic document is displayed at a
magnification wherein areas beyond opposite edges of the electronic document are
displayed, and upon detecting termination of the gesture, the electronic document is
displayed at a magnification wherein the areas beyond opposite edges of the electronic
document are no longer displayed.
[0025]
In accordance with some embodiments, a graphical user interface on a device
with a touch screen display includes an electronic document having a document length and
a document width, to be displayed on the touch screen display at multiple magnifications
including a first magnification, and areas beyond opposite edges of the electronic document.
P4304USl, 63266-S0S4-US
8
APLNDC00003800
In response to detecting a gesture on or near the touch screen display corresponding to a
command to zoom out by a user-specified amount, wherein the gesture is detected while
displaying the electronic document at the first magnification, the electronic document is
displayed at a magnification less than the first magnification. If the document length or
document width is entirely displayed while the gesture is still detected on or near the touch
screen display, the electronic document is displayed at a magnification wherein the areas
beyond opposite edges of the electronic document are displayed, and upon detecting
termination of the gesture, the electronic document is displayed at a magnification wherein
the areas beyond opposite edges of the electronic document are no longer displayed.
[0026]
In accordance with some embodiments, a device includes a touch screen
display, one or more processors, memory, and one or more programs. The one or more
programs are stored in the memory and configured to be executed by the one or more
processors. The one or more programs include: instructions for displaying an electronic
document at a first magnification; instructions for detecting a gesture on or near the touch
screen display corresponding to a command to zoom out by a user-specified amount;
instructions for displaying the electronic document at a magnification less than the first
magnification, in response to detecting the gesture; instructions for displaying the electronic
document at a magnification wherein areas beyond opposite edges of the electronic
document are displayed, if a document length or a document width is entirely displayed
while the gesture is still detected on or near the touch screen display; and instructions for
displaying the electronic document at a magnification wherein the areas beyond opposite
edges of the electronic document are no longer displayed, upon detecting termination of the
gesture.
[0027]
In accordance with some embodiments, a computer-program product
includes a computer readable storage medium and a computer program mechanism
embedded therein. The computer program mechanism includes instructions, which when
executed by a device with a touch screen display, cause the device to: display an electronic
document at a first magnification; detect a gesture on or near the touch screen display
corresponding to a command to zoom out by a user-specified amount; display the electronic
document at a magnification less than the first magnification, in response to detecting the
gesture; display the electronic document at a magnification wherein areas beyond opposite
edges of the electronic document are displayed, if a document length or a document width is
P4304USl, 63266-S0S4-US
9
APLNDC00003801
entirely displayed while the gesture is still detected on or near the touch screen display; and
display the electronic document at a magnification wherein the areas beyond opposite edges
of the electronic document are no longer displayed, upon detecting termination of the
gesture.
[0028]
In accordance with some embodiments, a device with a touch screen display
includes: means for displaying an electronic document at a :fIrst magnification; means for
detecting a gesture on or near the touch screen display corresponding to a command to
zoom out by a user-specified amount; means for displaying the electronic document at a
magnification less than the first magnification, in response to detecting the gesture; means
for displaying the electronic document at a magnification wherein areas beyond opposite
edges of the electronic document are displayed, if a document length or a document width is
entirely displayed while the gesture is still detected on or near the touch screen display; and
means for displaying the electronic document at a magnification wherein the areas beyond
opposite edges of the electronic document are no longer displayed, upon detecting
termination of the gesture.
[0029]
In accordance with some embodiments, a computer-implemented method of
displaying an electronic document, for use at a device with a touch screen display, includes
displaying at least a first portion of the electronic document at a first magnification and
detecting a gesture on or near the touch screen display corresponding to a command to
zoom in by a user-specified amount. In response to detecting the gesture, decreasing
portions of the electronic document are displayed at increasing magnifications. Upon
detecting termination of the gesture, if the magnification exceeds a predefined
magnification, a respective portion of the electronic document is displayed at the predefined
magnification.
[0030]
In accordance with some embodiments, a graphical user interface on a device
with a touch screen display includes decreasing portions of an electronic document, to be
displayed on the touch screen display at increasing magnifications. The decreasing portions
of the electronic document include a first portion. In response to detecting a gesture on or
near the touch screen display corresponding to a command to zoom in by a user-specified
amount, wherein the gesture is detected while displaying at least the first portion of an
electronic document at a first magnification, the decreasing portions of the electronic
P4304USl, 63266-S0S4-US
10
APLNDC00003802
document are displayed at the increasing magnifications. Upon detecting termination of the
gesture, if the magnification exceeds a predefined magnification, a respective portion of the
electronic document is displayed at the predefined magnification.
[0031]
In accordance with some embodiments, a device includes a touch screen
display, one or more processors, memory, and one or more programs. The one or more
programs are stored in the memory and configured to be executed by the one or more
processors. The one or more programs include: instructions for displaying at least a first
portion of an electronic document at a first magnification; instructions for detecting a
gesture on or near the touch screen display corresponding to a command to zoom in by a
user-specified amount; instructions for displaying decreasing portions of the electronic
document at increasing magnifications, in response to detecting the gesture; and instructions
for displaying a respective portion of the electronic document at a predefined magnification
if, upon detecting termination of the gesture, the magnification exceeds the predefined
magnification.
[0032]
In accordance with some embodiments, a computer-program product
includes a computer readable storage medium and a computer program mechanism
embedded therein. The computer program mechanism includes instructions, which when
executed by a device with a touch screen display, cause the device to: display at least a first
portion of an electronic document at a first magnification; detect a gesture on or near the
touch screen display corresponding to a command to zoom in by a user-specified amount;
display decreasing portions of the electronic document at increasing magnifications, in
response to detecting the gesture; and display a respective portion of the electronic
document at a predefined magnification if, upon detecting termination of the gesture, the
magnification exceeds a predefined magnification.
[0033]
In accordance with some embodiments, a device with a touch screen display
includes means for displaying at least a first portion of an electronic document at a first
magnification; means for detecting a gesture on or near the touch screen display
corresponding to a command to zoom in by a user-specified amount; means for displaying
decreasing portions of the electronic document at increasing magnifications, in response to
detecting the gesture; and means for displaying a respective portion of the electronic
P4304USl, 63266-S0S4-US
11
APLNDC00003803
document at a predefined magnification if, upon detecting termination of the gesture, the
magnification exceeds the predefined magnification.
[0034]
The disclosed embodiments provide for easy and intuitive scrolling of lists
and translating of electronic documents on a device with a touch screen display, and for
easy and intuitive rotation and scaling of electronic documents on a device with a touch
screen display.
BRIEF DESCRIPTION OF THE DRAWINGS
[0035]
For a better understanding of the aforementioned embodiments of the
invention as well as additional embodiments thereof, reference should be made to the
Description of Embodiments below, in conjunction with the following drawings in which
like reference numerals refer to corresponding parts throughout the figures.
[0036]
Figure 1 is a block diagram illustrating a portable multifunction device with
a touch-sensitive display in accordance with some embodiments.
[0037]
Figure 2 illustrates a portable multifunction device having a touch screen in
accordance with some embodiments.
[0038]
Figure 3 illustrates an exemplary user interface for unlocking a portable
electronic device in accordance with some embodiments.
[0039]
Figure 4 illustrates an exemplary user interface for a menu of applications on
a portable multifunction device in accordance with some embodiments.
[0040]
Figure 5 is a flow diagram illustrating a method of scrolling through a list in
accordance with some embodiments.
[0041]
Figures 6A-6D illustrate an exemplary user interface for managing an inbox
in accordance with some embodiments.
[0042]
Figure 7 is a flow diagram illustrating a method of translating an electronic
document in accordance with some embodiments.
[0043]
Figures 8A-8D illustrate an exemplary user interface for a browser in
accordance with some embodiments.
[0044]
Figure 9 is a flow diagram illustrating a process of displaying an electronic
document at multiple magnifications in accordance with some embodiments.
P4304USl, 63266-S0S4-US
12
APLNDC00003804
[0045]
Figures 10A-10C illustrate the display of an electronic document at multiple
magnifications in accordance with some embodiments.
[0046]
Figure 11 is a flow diagram illustrating a process of displaying an electronic
document at multiple magnifications in accordance with some embodiments.
[0047]
Figures 12A-12C illustrate the display of an electronic document at multiple
magnifications in accordance with some embodiments.
[0048]
Figures 13A-13C illustrate the display of an electronic document at multiple
magnifications in accordance with some embodiments.
[0049]
Figure 14 is a flow diagram illustrating a process of executing a screen
rotation command in accordance with some embodiments.
[0050]
Figures 15A-15E illustrate rotating the display of an electronic document or
other digital object in accordance with some embodiments.
[0051]
Figures 16A-16F illustrate an exemplary screen rotation gesture in
accordance with some embodiments.
[0052]
Figure 17 is a block diagram illustrating a device with a touch-screen display
in accordance with some embodiments.
DESCRIPTION OF EMBODIMENTS
[0053]
Reference will now be made in detail to embodiments, examples of which
are illustrated in the accompanying drawings. In the following detailed description,
numerous specific details are set forth in order to provide a thorough understanding of the
present invention. However, it will be apparent to one of ordinary skill in the art that the
present invention may be practiced without these specific details. In other instances, wellknown methods, procedures, components, circuits, and networks have not been described in
detail so as not to unnecessarily obscure aspects of the embodiments.
[0054]
Embodiments of a portable multifunction device, user interfaces for such
devices, and associated processes for using such devices are described. In some
embodiments, the device is a portable communications device such as a mobile telephone
that also contains other functions, such as PDA and/or music player functions.
P4304USl, 63266-S0S4-US
13
APLNDC00003805
[0055]
The user interface may include a physical click wheel in addition to a touch
screen or a virtual click wheel displayed on the touch screen. A click wheel is a userinterface device that may provide navigation commands based on an angular displacement
of the wheel or a point of contact with the wheel by a user of the device. A click wheel may
also be used to provide a user command corresponding to selection of one or more items,
for example, when the user of the device presses down on at least a portion of the wheel or
the center ofthe wheel. Alternatively, breaking contact with a click wheel image on a touch
screen surface may indicate a user command corresponding to selection. For simplicity, in
the discussion that follows, a portable multifunction device that includes a touch screen is
used as an exemplary embodiment. It should be understood, however, that some of the user
interfaces and associated processes may be applied to other devices, such as personal
computers and laptop computers, that may include one or more other physical user-interface
devices, such as a physical click wheel, a physical keyboard, a mouse and/or a joystick.
[0056]
The device supports a variety of applications, such as a telephone
application, a video conferencing application, an e-mail application, an instant messaging
application, a blogging application, a digital camera application, a digital video camera
application, a web browsing application, a digital music player application, and/or a digital
video player application.
[0057]
The various applications that may be executed on the device may use at least
one common physical user-interface device, such as the touch screen. One or more
functions of the touch screen as well as corresponding information displayed on the device
may be adjusted and/or varied from one application to the next and/or within a respective
application. In this way, a common physical architecture (such as the touch screen) of the
device may support the variety of applications with user interfaces that are intuitive and
transparent.
[0058]
The user interfaces may include one or more soft keyboard embodiments.
The soft keyboard embodiments may include standard (QWERTY) and/or non-standard
configurations of symbols on the displayed icons of the keyboard, such as those described in
U.S. Patent Applications No. 111459,606, "Keyboards For Portable Electronic Devices,"
filed July 24,2006, and No. 111459,615, "Touch Screen Keyboards For Portable Electronic
Devices," filed July 24, 2006, the contents of which are hereby incorporated by reference
P4304USl, 63266-S0S4-US
14
APLNDC00003806
herein in their entirety. The keyboard embodiments may include a reduced number of icons
(or soft keys) relative to the number of keys in existing physical keyboards, such as that for
a typewriter. This may make it easier for users to select one or more icons in the keyboard,
and thus, one or more corresponding symbols. The keyboard embodiments may be
adaptive. For example, displayed icons may be modified in accordance with user actions,
such as selecting one or more icons and/or one or more corresponding symbols. One or
more applications on the portable device may utilize common and/or different keyboard
embodiments. Thus, the keyboard embodiment used may be tailored to at least some of the
applications. In some embodiments, one or more keyboard embodiments may be tailored to
a respective user. For example, based on a word usage history (lexicography, slang,
individual usage) of the respective user. Some of the keyboard embodiments may be
adjusted to reduce a probability of a user error when selecting one or more icons, and thus
one or more symbols, when using the soft keyboard embodiments.
[0059]
Attention is now directed towards embodiments of the device. Figure 1 is a
block diagram illustrating a portable multifunction device 100 with a touch-sensitive display
112 in accordance with some embodiments. The touch-sensitive display 112 is sometimes
called a "touch screen" for convenience. The device 100 may include a memory 102 (which
may include one or more computer readable storage mediums), a memory controller 122,
one or more processing units (CPU's) 120, a peripherals interface 118, RF circuitry 108,
audio circuitry 110, a speaker 111, a microphone 113, an input/output (I/O) subsystem 106,
other input or control devices 116, and an external port 124. The device 100 may include
one or more optical sensors 164. These components may communicate over one or more
communication buses or signal lines 103.
[0060]
It should be appreciated that the device 100 is only one example of a portable
multifunction device 100, and that the device 100 may have more or fewer components than
shown, may combine two or more components, or a may have a different configuration or
arrangement of the components. The various components shown in Figure 1 may be
implemented in hardware, software or a combination of both hardware and software,
including one or more signal processing and/or application specific integrated circuits.
[0061]
Memory 102 may include high-speed random access memory and may also
include non-volatile memory, such as one or more magnetic disk storage devices, flash
P4304USl, 63266-S0S4-US
15
APLNDC00003807
memory devices, or other non-volatile solid-state memory devices. Access to memory 102
by other components ofthe device 100, such as the CPU 120 and the peripherals interface
118, may be controlled by the memory controller 122.
[0062]
The peripherals interface 118 couples the input and output peripherals of the
device to the CPU 120 and memory 102. The one or more processors 120 run or execute
various software programs and/or sets of instructions stored in memory 102 to perform
various functions for the device 100 and to process data.
[0063]
In some embodiments, the peripherals interface 118, the CPU 120, and the
memory controller 122 may be implemented on a single chip, such as a chip 104. In some
other embodiments, they may be implemented on separate chips.
[0064]
The RF (radio frequency) circuitry 108 receives and sends RF signals, also
called electromagnetic signals. The RF circuitry 108 converts electrical signals to/from
electromagnetic signals and communicates with communications networks and other
communications devices via the electromagnetic signals. The RF circuitry 108 may include
well-known circuitry for performing these functions, including but not limited to an antenna
system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital
signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, and
so forth. The RF circuitry 108 may communicate with networks, such as the Internet, also
referred to as the World Wide Web (WWW), an intranet and/or a wireless network, such as
a cellular telephone network, a wireless local area network (LAN) and/or a metropolitan
area network (MAN), and other devices by wireless communication. The wireless
communication may use any of a plurality of communications standards, protocols and
technologies, including but not limited to Global System for Mobile Communications
(GSM), Enhanced Data GSM Environment (EDGE), wideband code division multiple
access (W-CDMA), code division multiple access (CDMA), time division multiple access
(TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11 a, IEEE 802.11 b, IEEE
802.11g and/or IEEE 802.11n), voice over Internet Protocol (VoIP), Wi-MAX, a protocol
for email, instant messaging, and/or Short Message Service (SMS)), or any other suitable
communication protocol, including communication protocols not yet developed as of the
filing date of this document.
P4304USl, 63266-S0S4-US
16
APLNDC00003808
[0065]
The audio circuitry 11 0, the speaker 111, and the microphone 113 provide an
audio interface between a user and the device 100. The audio circuitry 110 receives audio
data from the peripherals interface 118, converts the audio data to an electrical signal, and
transmits the electrical signal to the speaker 111. The speaker 111 converts the electrical
signal to human-audible sound waves. The audio circuitry 110 also receives electrical
signals converted by the microphone 113 from sound waves. The audio circuitry 110
converts the electrical signal to audio data and transmits the audio data to the peripherals
interface 118 for processing. Audio data may be retrieved from and/or transmitted to
memory 102 and/or the RF circuitry 108 by the peripherals interface 118. In some
embodiments, the audio circuitry 110 also includes a headset jack (not shown). The headset
jack provides an interface between the audio circuitry 110 and removable audio input/output
peripherals, such as output-only headphones or a headset with both output (e.g., a
headphone for one or both ears) and input (e.g., a microphone).
[0066]
The I/O subsystem 106 couples input/output peripherals on the device 100,
such as the display system 112 and other input/control devices 116, to the peripherals
interface 118. The I/O subsystem 106 may include a display controller 156 and one or more
input controllers 160 for other input or control devices. The one or more input controllers
160 receive/send electrical signals from/to other input or control devices 116. The other
input/control devices 116 may include physical buttons (e.g., push buttons, rocker buttons,
etc.), dials, slider switches, joysticks, click wheels, and so forth. In some alternate
embodiments, input controller(s) 160 may be coupled to any (or none) ofthe following: a
keyboard, infrared port, USB port, and a pointer device such as a mouse. The one or more
buttons (e.g., 208, Figure 2) may include an up/down button for volume control of the
speaker 111 and/or the microphone 113. The one or more buttons may include a push
button (e.g., 206, Figure 2). A quick press of the push button may disengage a lock of the
touch screen 112 or begin a process that uses gestures on the touch screen to unlock the
device, as described in U.S. Patent Application 111322,549, "Unlocking a Device by
Performing Gestures on an Unlock Image," filed December 23,2005, which is hereby
incorporated by reference herein in its entirety. A longer press of the push button (e.g., 206)
may tum power to the device 100 on or off. The user may be able to customize a
functionality of one or more ofthe buttons. The touch screen 112 is used to implement
virtual or soft buttons and one or more soft keyboards.
P4304USl, 63266-S0S4-US
17
APLNDC00003809
[0067]
The touch-sensitive display system 112 provides an input interface and an
output interface between the device and a user. The display controller 156 receives and/or
sends electrical signals from/to the display system 112. The display system 112 displays
visual output to the user. The visual output may include graphics, text, icons, video, and
any combination thereof (collectively termed "graphics"). In some embodiments, some or
all of the visual output may correspond to user-interface objects, further details of which are
described below.
[0068]
A touch screen in display system 112 is a touch-sensitive surface that accepts
input from the user based on haptic and/or tactile contact. The display system 112 and the
display controller 156 (along with any associated modules and/or sets of instructions in
memory 102) detect contact (and any movement or breaking of the contact) on the display
system 112 and converts the detected contact into interaction with user-interface objects
(e.g., one or more soft keys, icons, web pages or images) that are displayed on the touch
screen. In an exemplary embodiment, a point of contact between a touch screen in the
display system 112 and the user corresponds to a finger of the user.
[0069]
The touch screen in the display system 112 may use LCD (liquid crystal
display) technology, or LPD (light emitting polymer display) technology, although other
display technologies may be used in other embodiments. The touch screen in the display
system 112 and the display controller 156 may detect contact and any movement or
breaking thereof using any of a plurality of touch sensing technologies now known or later
developed, including but not limited to capacitive, resistive, infrared, and surface acoustic
wave technologies, as well as other proximity sensor arrays or other elements for
determining one or more points of contact with a touch screen in the display system 112. A
touch-sensitive display in some embodiments of the display system 112 may be analogous
to the multi-touch sensitive tablets described in the following U.S. Patents: 6,323,846
(Westerman et at), 6,570,557 (Westerman et at), and/or 6,677,932 (Westerman), and/or
U.S. Patent Publication 2002/0015024A1, each of which is hereby incorporated by
reference herein in their entirety. However, a touch screen in the display system 112
displays visual output from the portable device 100, whereas touch sensitive tablets do not
provide visual output. The touch screen in the display system 112 may have a resolution in
excess of 100 dpi. In an exemplary embodiment, the touch screen in the display system has
a resolution of approximately 168 dpi. The user may make contact with the touch screen in
P4304USl, 63266-S0S4-US
18
APLNDC00003810
the display system 112 using any suitable object or appendage, such as a stylus, a finger,
and so forth. In some embodiments, the user interface is designed to work primarily with
finger-based contacts and gestures, which are much less precise than stylus-based input due
to the larger area of contact of a finger on the touch screen. In some embodiments, the
device translates the rough finger-based input into a precise pointer/cursor position or
command for performing the actions desired by the user.
[0070]
A touch-sensitive display in some embodiments of the display system 112
may be as described in the following applications: (1) U.S. Patent Application No.
111381,3l3, "Multipoint Touch Surface Controller," filed on May 2,2006; (2) U.S. Patent
Application No. 10/840,862, "Multipoint Touchscreen," filed on May 6, 2004; (3) U.S.
Patent Application No. 10/903,964, "Gestures For Touch Sensitive Input Devices," filed on
July 30, 2004; (4) U.S. Patent Application No. 111048,264, "Gestures For Touch Sensitive
Input Devices," filed on January 31, 2005; (5) U.S. Patent Application No. 111038,590,
"Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices," filed on
January 18,2005; (6) U.S. Patent Application No. 111228,758, "Virtual Input Device
Placement On A Touch Screen User Interface," filed on September 16,2005; (7) U.S.
Patent Application No. 111228,700, "Operation Of A Computer With A Touch Screen
Interface," filed on September 16,2005; (8) U.S. Patent Application No. 111228,737,
"Activating Virtual Keys Of A Touch-Screen Virtual Keyboard," filed on September 16,
2005; and (9) U.S. Patent Application No. 111367,749, "Multi-Functional Hand-Held
Device," filed on March 3, 2006. All ofthese applications are incorporated by reference
herein in their entirety.
[0071]
In some embodiments, in addition to the touch screen, the device 100 may
include a touchpad (not shown) for activating or deactivating particular functions. In some
embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touch
screen, does not display visual output. The touchpad may be a touch-sensitive surface that
is separate from the touch screen in the display system 112 or an extension of the touchsensitive surface formed by the touch screen.
[0072]
In some embodiments, the device 100 may include a physical or virtual click
wheel as an input control device 116. A user may navigate among and interact with one or
more graphical objects (henceforth referred to as icons) displayed in the display system 112
P4304USl, 63266-S0S4-US
19
APLNDC00003811
by rotating the click wheel or by moving a point of contact with the click wheel (e.g., where
the amount of movement of the point of contact is measured by its angular displacement
with respect to a center point of the click wheel). The click wheel may also be used to select
one or more of the displayed icons. For example, the user may press down on at least a
portion of the click wheel or an associated button. User commands and navigation
commands provided by the user via the click wheel may be processed by an input controller
160 as well as one or more of the modules andlor sets of instructions in memory 102. For a
virtual click wheel, the click wheel and click wheel controller may be part of the display
system 112 and the display controller 156, respectively. For a virtual click wheel, the click
wheel may be either an opaque or semitransparent object that appears and disappears on the
touch screen display in response to user interaction with the device. In some embodiments,
a virtual click wheel is displayed on the touch screen of a portable multifunction device and
operated by user contact with the touch screen.
[0073]
The device 100 also includes a power system 162 for powering the various
components. The power system 162 may include a power management system, one or more
power sources (e.g., battery, alternating current (AC)), a recharging system, a power failure
detection circuit, a power converter or inverter, a power status indicator (e.g., a lightemitting diode (LED)) and any other components associated with the generation,
management and distribution of power in portable devices.
[0074]
The device 100 may also include one or more optical sensors 164. Figure 1
shows an optical sensor coupled to an optical sensor controller 158 in 1/0 subsystem 106.
The optical sensor 164 may include charge-coupled device (CCD) or complementary metaloxide semiconductor (CMOS) phototransistors. The optical sensor 164 receives light from
the environment, projected through one or more lens, and converts the light to data
representing an image. In conjunction with an imaging module 143, the optical sensor 164
may capture still images or video. In some embodiments, an optical sensor is located on the
back of the device 100, opposite the touch screen display 112 on the front of the device, so
that the touch screen display may be used as a viewfinder for either still and/or video image
acquisition. In some embodiments, an optical sensor is located on the front of the device so
that the user's image may be obtained for videoconferencing while the user views the other
video conference participants on the touch screen display. In some embodiments, the
position of the optical sensor 164 can be changed by the user (e.g., by rotating the lens and
P4304USl, 63266-S0S4-US
20
APLNDC00003812
the sensor in the device housing) so that a single optical sensor 164 may be used along with
the touch screen display for both video conferencing and still and/or video image
acquisition.
[0075]
The device 100 may also include one or more proximity sensors 166. Figure
1 shows a proximity sensor 166 coupled to the peripherals interface 118. Alternately, the
proximity sensor 166 may be coupled to an input controller 160 in the I/O subsystem 106.
The proximity sensor 166 may perform as described in U.S. Patent Application Nos.
111241,839, "Proximity Detector In Handheld Device," filed September 30,2005, and
111240,788, "Proximity Detector In Handheld Device," filed September 30,2005, which are
hereby incorporated by reference herein in their entirety. In some embodiments, the
proximity sensor turns off and disables the touch screen 112 when the multifunction device
is placed near the user's ear (e.g., when the user is making a phone call). In some
embodiments, the proximity sensor keeps the screen off when the device is in the user's
pocket, purse, or other dark area to prevent unnecessary battery drainage when the device is
a locked state.
[0076]
In some embodiments, the software components stored in memory 102 may
include an operating system 126, a communication module (or set of instructions) 128, a
contact/motion module (or set of instructions) 130, a graphics module (or set of
instructions) 132, a text input module (or set of instructions) 134, a Global Positioning
System (GPS) module (or set of instructions) 135, and applications (or set of instructions)
136.
[0077]
The operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X,
WINDOWS, or an embedded operating system such as VxWorks) includes various software
components and/or drivers for controlling and managing general system tasks (e.g., memory
management, storage device control, power management, etc.) and facilitates
communication between various hardware and software components.
[0078]
The communication module 128 facilitates communication with other
devices over one or more external ports 124 and also includes various software components
for handling data received by the RF circuitry 108 and/or the external port 124. The
external port 124 (e.g., Universal Serial Bus (USB), FlREWlRE, etc.) is adapted for
coupling directly to other devices or indirectly over a network (e.g., the Internet, wireless
P4304USl, 63266-S0S4-US
21
APLNDC00003813
LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector
that is the same as, or similar to and/or compatible with the 30-pin connector used on iPod
(trademark of Apple Computer, Inc.) devices.
[0079]
The contact/motion module 130 may detect contact with the touch screen in
the display system 112 (in conjunction with the display controller 156) and other touch
sensitive devices (e.g., a touchpad or physical click wheel). The contact/motion module 130
includes various software components for performing various operations related to detection
of contact, such as determining if contact has occurred, determining if there is movement of
the contact and tracking the movement across the touch screen in the display system 112,
and determining if the contact has been broken (i.e., if the contact has ceased). Determining
movement of the point of contact may include determining speed (magnitude), velocity
(magnitude and direction), and/or an acceleration (a change in magnitude and/or direction)
of the point of contact. These operations may be applied to single contacts (e.g., one finger
contacts) or to multiple simultaneous contacts (e.g., "multitouch"/multiple finger contacts).
In some embodiments, the contact/motion module 130 and the display controller 156 also
detects contact on a touchpad. In some embodiments, the contact/motion module 130
detects movement of one or more objects on or near the touch screen and/or the touchpad.
In some embodiments, the contact/motion module 130 and the controller 160 detects contact
on a click wheel 116.
[0080]
The graphics module 132 includes various known software components for
rendering and displaying graphics on the display system 112, including components for
changing the intensity of graphics that are displayed. As used herein, the term "graphics"
includes any object that can be displayed to a user, including without limitation text, web
pages, icons (such as user-interface objects including soft keys), digital images, videos,
animations and the like.
[0081]
The text input module 134, which may be a component of graphics module
132, provides soft keyboards for entering text in various applications (e.g., contacts 137, email 140, 1M 141, blogging 142, browser 147, and any other application that needs text
input).
[0082]
The GPS module 135 determines the location of the device and provides this
information for use in various applications (e.g., to telephone 138 for use in location-based
P4304USl, 63266-S0S4-US
22
APLNDC00003814
dialing, to camera 143 and/or blogger 142 as picture/video metadata, and to applications
that provide location-based services such as weather widgets, local yellow page widgets,
and map/navigation widgets).
[0083]
The applications 136 may include the following modules (or sets of
instructions), or a subset or superset thereof:
•
a contacts module 137 (sometimes called an address book or contact list);
•
a telephone module 138;
•
a video conferencing module 139;
•
an e-mail client module 140;
•
an instant messaging (1M) module 141;
•
a blogging module 142;
•
a camera module 143 for still and/or video images;
•
an image management module 144;
•
a video player module 145;
•
a music player module 146;
•
a browser module 147;
•
a calendar module 148;
•
widget modules 149, which may include weather widget 149-1, stocks widget 149-2,
calculator widget 149-3, alarm clock widget 149-4, dictionary widget 149-5, and
other widgets obtained by the user, as well as user-created widgets 149-6;
•
widget creator module 150 for making user-created widgets 149-6; and/or
•
search module 151.
[0084]
Examples of other applications 136 that may be stored in memory 102
include memo pad and other word processing applications, JAVA-enabled applications,
encryption, digital rights management, voice recognition, and voice replication.
[0085]
In conjunction with display system 112, display controller 156, contact
module 130, graphics module 132, and text input module 134, the contacts module 137 may
P4304USl, 63266-S0S4-US
23
APLNDC00003815
be used to manage an address book or contact list, including: adding name(s) to the address
book; deleting name(s) from the address book; associating telephone number(s), e-mail
address( es), physical address( es) or other information with a name; associating an image
with a name; categorizing and sorting names; providing telephone numbers or e-mail
addresses to initiate and/or facilitate communications by telephone 138, video conference
139, e-mail 140, or 1M 141; and so forth.
[0086]
In conjunction with RF circuitry 108, audio circuitry 110, speaker 111,
microphone 113, display system 112, display controller 156, contact module 130, graphics
module 132, and text input module 134, the telephone module 138 may be used to enter a
sequence of characters corresponding to a telephone number, access one or more telephone
numbers in the address book 137, modify a telephone number that has been entered, dial a
respective telephone number, conduct a conversation and disconnect or hang up when the
conversation is completed. As noted above, the wireless communication may use any of a
plurality of communications standards, protocols and technologies.
[0087]
In conjunction with RF circuitry 108, audio circuitry 110, speaker 111,
microphone 113, display system 112, display controller 156, optical sensor 164, optical
sensor controller 158, contact module 130, graphics module 132, text input module 134,
contact list 137, and telephone module 138, the videoconferencing module 139 may be used
to initiate, conduct, and terminate a video conference between a user and one or more other
participants.
[0088]
In conjunction with RF circuitry 108, display system 112, display controller
156, contact module 130, graphics module 132, and text input module 134, the e-mail client
module 140 may be used to create, send, receive, and manage e-mail. In conjunction with
image management module 144, the e-mail module 140 makes it very easy to create and
send e-mails with still or video images taken with camera module 143.
[0089]
In conjunction with RF circuitry 108, display system 112, display controller
156, contact module 130, graphics module 132, and text input module 134, the instant
messaging module 141 may be used to enter a sequence of characters corresponding to an
instant message, to modify previously entered characters, to transmit a respective instant
message (for example, using a Short Message Service (SMS) or Multimedia Message
Service (MMS) protocol), to receive instant messages and to view received instant
P4304USl, 63266-S0S4-US
24
APLNDC00003816
messages. In some embodiments, transmitted and/or received instant messages may include
graphics, photos, audio files, video files and/or other attachments as are supported in a
MMS and/or an Enhanced Messaging Service (EMS).
[0090]
In conjunction with RF circuitry 108, display system 112, display controller
156, contact module 130, graphics module 132, text input module 134, image management
module 144, and browsing module 147, the blogging module 142 may be used to send text,
still images, video, and/or other graphics to a blog (e.g., the user's blog).
[0091]
In conjunction with display system 112, display controller 156, optical
sensor(s) 164, optical sensor controller 158, contact module 130, graphics module 132, and
image management module 144, the camera module 143 may be used to capture still images
or video (including a video stream) and store them into memory 102, modify characteristics
of a still image or video, or delete a still image or video from memory 102.
[0092]
In conjunction with display system 112, display controller 156, contact
module 130, graphics module 132, text input module 134, and camera module 143, the
image management module 144 may be used to arrange, modify or otherwise manipulate,
label, delete, present (e.g., in a digital slide show or album), and store still and/or video
Images.
[0093]
In conjunction with display system 112, display controller 156, contact
module 130, graphics module 132, audio circuitry 110, and speaker 111, the video player
module 145 may be used to display, present or otherwise play back videos (e.g., on the
touch screen or on an external, connected display via external port 124).
[0094]
In conjunction with display system 112, display system controller 156,
contact module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry
108, and browser module 147, the music player module 146 allows the user to download
and play back recorded music and other sound files stored in one or more file formats, such
as MP3 or AAC files. In some embodiments, the device 100 may include the functionality
of an MP3 player, such as an iPod (trademark of Apple Computer, Inc.).
[0095]
In conjunction with RF circuitry 108, display system 112, display system
controller 156, contact module 130, graphics module 132, and text input module 134, the
browser module 147 may be used to browse the Internet, including searching, linking to,
P4304USl, 63266-S0S4-US
25
APLNDC00003817
receiving, and displaying web pages or portions thereof, as well as attachments and other
files linked to web pages.
[0096]
In conjunction with RF circuitry 108, display system 112, display system
controller 156, contact module 130, graphics module 132, text input module 134, e-mail
module 140, and browser module 147, the calendar module 148 may be used to create,
display, modify, and store calendars and data associated with calendars (e.g., calendar
entries, to do lists, etc.).
[0097]
In conjunction with RF circuitry 108, display system 112, display system
controller 156, contact module 130, graphics module 132, text input module 134, and
browser module 147, the widget modules 149 are mini-applications that may be
downloaded and used by a user (e.g., weather widget 149-1, stocks widget 149-2, calculator
widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5) or created by the
user (e.g., user-created widget 149-6). In some embodiments, a widget includes an HTML
(Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript
file. In some embodiments, a widget includes an XML (Extensible Markup Language) file
and a JavaScript file (e.g., Yahoo! Widgets).
[0098]
In conjunction with RF circuitry 108, display system 112, display system
controller 156, contact module 130, graphics module 132, text input module 134, and
browser module 147, the widget creator module 150 may be used by a user to create
widgets (e.g., turning a user-specified portion of a web page into a widget).
[0099]
In conjunction with display system 112, display system controller 156,
contact module 130, graphics module 132, and text input module 134, the search module
151 may be used to search for text, music, sound, image, video, and/or other files in
memory 102 that match one or more search criteria (e.g., one or more user-specified search
terms).
[00100]
Each of the above identified modules and applications correspond to a set of
instructions for performing one or more functions described above. These modules (i.e.,
sets of instructions) need not be implemented as separate software programs, procedures or
modules, and thus various subsets of these modules may be combined or otherwise rearranged in various embodiments. In some embodiments, memory 102 may store a subset
P4304USl, 63266-S0S4-US
26
APLNDC00003818
of the modules and data structures identified above. Furthermore, memory 102 may store
additional modules and data structures not described above.
[00101]
In some embodiments, the device 100 is a device where operation of a
predefined set of functions on the device is performed exclusively through a touch screen in
the display system 112 and/or a touchpad. By using a touch screen and/or a touchpad as the
primary input/control device for operation ofthe device 100, the number of physical
input/control devices (such as push buttons, dials, and the like) on the device 100 may be
reduced.
[00102]
The predefined set of functions that may be performed exclusively through a
touch screen and/or a touchpad includes navigation between user interfaces. In some
embodiments, the touchpad, when touched by the user, navigates the device 100 to a main,
home, or root menu from any user interface that may be displayed on the device 100. In
such embodiments, the touchpad may be referred to as a "menu button." In some other
embodiments, the menu button may be a physical push button or other physical
input/control device instead of a touchpad.
[00103]
Figure 2 illustrates a portable multifunction device 100 having a touch screen
112 in accordance with some embodiments. The touch screen may display one or more
graphics. In this embodiment, as well as others described below, a user may select one or
more of the graphics by making contact or touching the graphics, for example, with one or
more fingers 202 (not drawn to scale in the figure). In some embodiments, selection of one
or more graphics occurs when the user breaks contact with the one or more graphics. In
some embodiments, the contact may include a gesture, such as one or more taps, one or
more swipes (from left to right, right to left, upward and/or downward) and/or a rolling of a
finger (from right to left, left to right, upward and/or downward) that has made contact with
the device 100. In some embodiments, inadvertent contact with a graphic may not select the
graphic. For example, a swipe gesture that sweeps over an application icon may not select
the corresponding application when the gesture corresponding to selection is a tap.
[00104]
The device 100 may also include one or more physical buttons, such as
"home" or menu button 204. As described previously, the menu button 204 may be used to
navigate to any application 136 in a set of applications that may be executed on the device
P4304USl, 63266-S0S4-US
27
APLNDC00003819
100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a
aUI in touch screen 112.
[00105]
In one embodiment, the device 100 includes a touch screen 112, a menu
button 204, a push button 206 for powering the device on/off and locking the device, and
volume adjustment button(s) 208. The push button 206 may be used to tum the power
on/off on the device by depressing the button and holding the button in the depressed state
for a predefined time interval; to lock the device by depressing the button and releasing the
button before the predefined time interval has elapsed; and/or to unlock the device or
initiate an unlock process. In an alternative embodiment, the device 100 also may accept
verbal input for activation or deactivation of some functions through the microphone 113.
[00106]
Attention is now directed towards embodiments of user interfaces ("UI") and
associated processes that may be implemented on a portable multifunction device 100
and/or on a device 1700 with a touch-screen display (Figure 17).
[00107]
Figure 3 illustrates an exemplary user interface for unlocking a portable
electronic device in accordance with some embodiments. In some embodiments, user
interface 300 includes the following elements, or a subset or superset thereof:
•
Unlock image 302 that is moved with a finger gesture to unlock the device;
•
Arrow 304 that provides a visual cue to the unlock gesture;
•
Channel 306 that provides additional cues to the unlock gesture;
•
Time 308;
•
Day 310;
•
Date 312; and
•
Wallpaper image 314.
[00108]
In some embodiments, the device detects contact with the touch-sensitive
display (e.g., a user's finger making contact on or near the unlock image 302) while the
device is in a user-interface lock state. The device moves the unlock image 302 in
accordance with the contact. The device transitions to a user-interface unlock state ifthe
detected contact corresponds to a predefined gesture, such as moving the unlock image
across channel 306. Conversely, the device maintains the user-interface lock state if the
P4304USl, 63266-S0S4-US
28
APLNDC00003820
detected contact does not correspond to the predefined gesture. As noted above, processes
that use gestures on the touch screen to unlock the device are described in U.S. Patent
Application 111322,549, "Unlocking a Device by Performing Gestures on an Unlock
Image," filed December 23,2005, which is hereby incorporated by reference herein in its
entirety.
[00109]
Figure 4 illustrates an exemplary user interface for a menu of applications on
a portable multifunction device in accordance with some embodiments. In some
embodiments, user interface 400 includes the following elements, or a subset or superset
thereof:
•
Signal strength indicator 402 for wireless communication;
•
Time 404;
•
Battery status indicator 406;
•
Tray 408 with icons for frequently used applications, such as one or more of the
following:
o
Phone 138;
o
E-mail client 140, which may include an indicator 410 of the number of
unread e-mails;
o
o
•
Browser 147; and
Music player 146; and
Icons for other applications, such as one or more of the following:
0
1M 141;
0
Image management 144;
0
Camera 143;
0
Video player 145;
0
Weather 149-1;
0
Stocks 149-2;
0
Blog 142;
P4304USl, 63266-S0S4-US
29
APLNDC00003821
o
o
Calculator 149-3;
o
Alarm clock 149-4;
o
Dictionary 149-5; and
o
[00110]
Calendar 148;
User-created widget 149-6.
In some embodiments, UI 400 displays all of the available applications 136
on one screen so that there is no need to scroll through a list of applications (e.g., via a
scroll bar or via a swipe gesture). In some embodiments, as the number of applications
increases, the icons corresponding to the applications may decrease in size so that all
applications may be displayed on a single screen without scrolling. In some embodiments,
having all applications on one screen and a menu button enables a user to access any desired
application with at most two inputs, such as activating the menu button 204 and then
activating the desired application (e.g., by a tap or other finger gesture on the icon
corresponding to the application).
[00111]
In some embodiments, UI 400 provides integrated access to both widget-
based applications and non-widget-based applications. In some embodiments, all of the
widgets, whether user-created or not, are displayed in UI 400. In other embodiments,
activating the icon for user-created widget 149-6 may lead to another UI (not shown) that
contains the user-created widgets or icons corresponding to the user-created widgets.
[00112]
In some embodiments, a user may rearrange the icons in UI 400, e.g., using
processes described in U.S. Patent Application No. 11/459,602, "Portable Electronic Device
With Interface Reconfiguration Mode," filed July 24, 2006, which is hereby incorporated by
reference herein in its entirety. For example, a user may move application icons in and out
of tray 408 using finger gestures.
[00113]
In some embodiments, UI 400 includes a gauge (not shown) that displays an
updated account usage metric for an account associated with usage of the device (e.g., a
cellular phone account), as described in U.S. Patent Application 111322,552, "Account
Information Display For Portable Communication Device," filed December 23, 2005, which
is hereby incorporated by reference herein in its entirety.
P4304USl, 63266-S0S4-US
30
APLNDC00003822
[00114]
As discussed above, VI 400 may display all ofthe available applications 136
on one screen so that there is no need to scroll through a list of applications. However, in
some embodiments a touch-sensitive display may include a GUI with one or more windows
that display only a portion of a list of items (e.g., information items) or of an electronic
document. In response to detecting a movement of an object on or near the touch-sensitive
display, the list may be scrolled or the electronic document may be translated. Detecting the
movement of the object may include determining speed (magnitude), velocity (magnitude
and direction), and/or an acceleration (including magnitude and/or direction) of the object.
Scrolling through the list or translating the document may be accelerated in response to an
accelerated movement of the object. In some embodiments, the scrolling and acceleration
of the scrolling, or translation and acceleration of the translation, may be in accordance with
a simulation of a physical device having friction, i.e., damped motion. For example, the
scrolling or translation may correspond to a simulation of a force law or equation of motion
having a mass or inertial term, as well as a dissipative term. In some embodiments, the
simulation may correspond to a cylinder rotating about its axis.
[00115]
In some embodiments, accelerated movement of the detected object may
include an accelerated movement of a point of contact followed by a breaking of the point
of contact. For example, the user may make contact with the touch-sensitive display, swipe
or sweep one or more of his or her fingers along the display (i.e., move and/or accelerate the
point of contact), and optionally, break the point of contact with the display, i.e., move the
one or more fingers away from the display. The swipe or sweep may be along a predefined
axis of the touch-sensitive display or may be within a predetermined angle of a predefined
direction on the touch-sensitive display. In other embodiments, the accelerated movement
of the point of contact may include a first user gesture oriented along a predefined axis of
the touch-sensitive display or oriented within a predetermined angle of a predefined
direction on the touch-sensitive display.
[00116]
Scrolling through the list of items or translating the electronic document may
be further accelerated in response to detection of a second movement of an object on or near
the touch-sensitive display, such as a second sweeping motion of the point of contact along
the predefined axis or within the predetermined angle of a predefmed direction on the
touch-sensitive display and/or a second user gesture oriented along the predefined axis or
within the predetermined angle of a predefined direction on the touch-sensitive display. For
P4304USl, 63266-S0S4-US
31
APLNDC00003823
example, the user may swipe one or more of his or her fingers along the touch-sensitive
display two or more times.
[00117]
The scrolling through the list of items or the translation of the electronic
document may be stopped in accordance with the user breaking the point of contact and
then establishing a substantially stationary point of contact with the touch-sensitive display
for at least a pre-determined period of time. For example, after swiping one or more of his
or her fingers along the touch-sensitive display and breaking the point of contact, the user
may touch the display and hold the one or more fingers that are touching the display
stationary (or approximately stationary) for one or more seconds, or fractions of a second.
[00118]
The direction of scrolling or translation may be reversed in response to
intersecting a virtual boundary corresponding to a terminus of the list or an edge of the
electronic document. The scrolling reversal or translation reversal may correspond to a
damped motion. For example, during scrolling, a displayed portion of the list of items may
appear to bounce off of a boundary of the window in the touch-sensitive display when a
beginning or an end of the list of items is reached. Similarly, during translation, a displayed
portion of the electronic document may appear to bounce off of a boundary of the window
in the touch-sensitive display when an edge of the document is reached. The apparent
bounce may correspond to a simulation of a viscous or elastic ball having momentum in a
first direction striking an immovable and/or inelastic object, such as a wall. The subsequent
motion of the document (the motion of which corresponds to the ball in the aforementioned
analogy) may be damped, for example, by including a friction or dissipative term in the
simulation. A parameter corresponding to the friction term in the simulation may be
adjustable, allowing the document to reach equilibrium in contact with the virtual boundary,
or displaced from the virtual boundary.
[00119]
In some embodiments movement of the point of contact by the user over an
index on the touch-sensitive display may be determined. In some embodiments, the index
may be displayed in a first region or a first window of the touch-sensitive display while the
list of items or information items during the scrolling may be displayed in a second region
or a second window ofthe touch-sensitive display. The displayed index may have a
sequence of index items. In an exemplary embodiment, the sequence of index items may
include letters in the alphabet, i.e., the index may include an alphabetical index. The list of
P4304USl, 63266-S0S4-US
32
APLNDC00003824
information items may include an alphabetically ordered list of information items. The
alphabetically ordered list of information items may include contact information, for
example, in a user's contact list or address book.
[00120]
In response to movement of the user's point of contact over a displayed
index, the list of information items on the touch-sensitive display may be scrolled. The list
of information items may include a sequence of information item subsets corresponding to
the sequence of index items. The subsets may include one or more categories. For
example, a respective category may include contact information for one or more individuals
whose first and/or last names begin with one or more respective letters, such as the letter's'.
In an exemplary embodiment, there is a subset corresponding to each letter in the alphabet
that has one or more entries. In some embodiments, the scrolling may be in accordance
with a simulation of an equation of motion having friction.
[00121]
The scrolling may include scrolling through a respective information item
subset if the point of contact moves over a corresponding respective index item in the index
items. The scrolling may have an associated scroll speed based on a speed of movement of
the point of contact over the respective index item and the number of items in the
information item subset corresponding to the respective index item. For example, the scroll
speed may be faster for subsets that have more entries than subsets with fewer entries. The
scrolling may include scrolling through all items in a plurality of the information item
subsets in response to the point of contact moving over the corresponding index items in the
displayed index.
[00122]
If it is determined that the point of contact with the index corresponds to a
respective index item in the index, the list of information items may be scrolled to a
corresponding subset of the list of information items. For example, if the user selects an
index item, such as the letter 'R', in the set of index symbols, the list of items may be
smoothly scrolled to the corresponding subset for the letter 'R' in the list of items.
Alternatively, the displayed list of information items jump directly from a current scroll
position to a scroll position in which information items corresponding to the index item 'R'
are displayed.
[00123]
In the present document, the term "if" may be construed to mean "when," or
"upon," or "in response to determining," or "in response to detecting," depending on the
P4304USl, 63266-S0S4-US
33
APLNDC00003825
context Similarly, the phrase "ifit is determined" or "if [a stated condition or event] is
detected" may be construed to mean "upon determining" or "in response to determining" or
"upon detecting" the stated condition or event, or "in response to detecting" the stated
condition or event, depending on the context.
[00124]
If the point of contact with the touch-sensitive display corresponds to a user
selection of a respective information item in the list of information items, information
corresponding to the respective information item may be displayed on the touch-sensitive
display. For example, if the user selects a respective name, the corresponding contact
information may be displayed.
[00125]
While scrolling through respective information subsets, an index symbol
may displayed in conjunction with each respective information item subset. In some
embodiments, respective index symbols may be displayed adjacent to corresponding subsets
(such as displayed text) of the list of information items. In some embodiments, a respective
index symbol may be displayed at an upper edge of a window containing the displayed text
of the respective information item subset.
[00126]
The index symbol corresponding to a respective information subset may be
translucently displayed over the respective information item subset. The translucently
displayed index symbol may have a different font color than that used to display text in the
information item subset, and/or it may be displayed using a larger font than the font used to
display text in the information item subset.
[00127]
If the list of information items contains no items for a particular index
symbol, i.e., no entries for a particular subset, a first index symbol preceding a particular
index symbol and a second index symbol following the index symbol may be displayed in
conjunction with scrolling through the list of information items from the information subset
corresponding to the first index symbo 1 to the information subset corresponding to the
second index symbol. The particular index symbol may not be displayed in conjunction
with the displayed text of the list of information items during the scroll through. For
example, display of a respective index symbol may be skipped when the list of information
items contains no items for the particular index symbol.
[00128]
In some embodiments, the list scrolling described here operates without
displaying a scroll bar. Similarly, in some embodiments, the translation of electronic
P4304USl, 63266-S0S4-US
34
APLNDC00003826
documents described here operates without displaying scroll bars. The user's sweeping
motion on the touch-sensitive display operation may be performed directly on top of the
displayed list or displayed electronic document, and may include a sweeping or gliding
motion, near or in contact with the display's surface, along a path anywhere within a display
window in which the list or electronic document is displayed. While a scroll bar could
potentially be displayed in conjunction with the displayed list, the scrolling or translation
described here can be independent of any such scroll bar. In some embodiments, if a scroll
bar is used, then an upward movement of a point of contact on the scroll bar may cause
earlier entries in the list to be displayed, whereas a downward movement of the point of
contact on the scroll bar may cause later entries in the list to be displayed.
In some embodiments, scrolling or translation may be in accordance with a
[00129]
speed of movement of a detected object, such as a speed of movement of a point of contact.
The speed may be a time average of values determined during several time intervals. In an
exemplary embodiment, the speed, velocity and/or acceleration may be determined over
five time intervals, where a respective time interval corresponds to an inverse of a frame
rate, such as 0.0167 s, of a display. In some embodiments, the speed, velocity and/or
acceleration may be determined even when a variable frame rate is used, such as when one
or more frames are skipped or not displayed. In these embodiments, the speed, velocity,
and/or acceleration may be determined two or more times for the respective time interval
and/or may be projected based on values determined in a preceding and/or a subsequent
time interval.
[00130]
In some embodiments, the scrolling or translation after a user optionally
breaks the contact may be in accordance with the change in the acceleration and the speed
or the velocity in one or more time intervals prior to the breaking of the contact. For
example, the velocity
Vf
of scrolling or translation one or more time intervals after breaking
contact may be determined using
where
Vo
is a current value of the velocity when the contact is broken, a is a current value of
the acceleration when the contact is broken and
~t
is an elapsed time, such as one time
interval. The velocities and/or acceleration in such a calculation may be projected along an
axis or direction of the scrolling or translation. In some embodiments, in subsequent time
P4304USl, 63266-S0S4-US
35
APLNDC00003827
intervals following the determination of the velocity based on the acceleration and/or the
velocity in one or more time intervals prior to the breaking of the contact, the velocity of the
scrolling or translation may be tapered. For example, in each successive time interval the
velocity may be decreased by 5 %. When the velocity crosses a lower threshold, it may be
set to zero.
[00131]
Figure 5 is a flow diagram illustrating a method 500 of scrolling through a
list in accordance with some embodiments. The method 500 provides a simple visual
indicator to a user that a terminus of a list has been reached.
[00132]
Movement of an object is detected on or near a touch screen display of a
device (502). In some embodiments, the object is a finger. In some embodiments, the
device is a portable multifunction device.
[00133]
In response to detecting the movement, a list of items displayed on the touch
screen display is scrolled in a first direction (504). In some embodiments, the list is a list of
email messages.asillustrated in Figures 6A-6D. In some embodiments, the list of items is
a list of instant message conversations, a list of favorite phone numbers, a list of contact
information (sometimes called a contact list or address book list), a list of labels, a list of
email folders.alist of email addresses.alistofphysicaladdresses.alistofringtones.alist
of album names, or a list of bookmarks. In some embodiments, the first direction is a
vertical direction; in some other embodiments, the first direction is a horizontal direction.
In some embodiments, scrolling the list in the first direction prior to reaching a terminus of
the list has an associated scrolling speed corresponding to a speed of movement of the
object (506). In some embodiments, the list is scrolled in accordance with a simulation of
an equation of motion having friction (508).
[00134]
If a terminus of the list is reached (e.g., upon reaching the terminus of the
list) while scrolling the list in the first direction while the object is still detected on or near
the touch screen display, an area beyond the terminus of the list is displayed (510-Yes, 514).
In some embodiments, the list has a first item and a last item and the terminus is either the
first item or the last item. For example, in Figure 6B the email 3534 from Aaron Jones is
the first item and thus the terminus of the corresponding list of emails. In some
embodiments, the area beyond the terminus ofthe list is white (516). In some
embodiments, the list of items has a background and the area beyond the terminus of the list
P4304USl, 63266-S0S4-US
36
APLNDC00003828
is visually indistinct from the background (518). For example, in Figure 6C both the area
3536 and the background of the listed emails are white.
[00135]
After the object is no longer detected on or near the touch screen display, the
list of items is scrolled in a second direction opposite the first direction until the area
beyond the terminus of the list is no longer displayed (520). In some embodiments, the list
is scrolled in the second direction using a damped motion (522). In some embodiments, the
change from scrolling the list in the first direction to scrolling the list in the second direction
until the area beyond the terminus of the list is no longer displayed makes the terminus of
the list appear to be elastically attached to an edge of the touch screen display or to an edge
displayed on the touch screen display (524).
[00136]
In some embodiments, scrolling in the first direction prior to reaching the
terminus of the list has a first associated scrolling distance that corresponds to a distance of
movement of the object prior to reaching the terminus of the list. For example, a scrolling
distance prior to reaching the terminus of the list shown in Figures 6A-6D may correspond
to a distance traversed on the touch screen display by the swipe gesture 3514 before the
terminus is reached. Displaying an area beyond the terminus of the list includes scrolling
the list in the first direction for a second associated scrolling distance that is less than a
distance of movement ofthe object after the terminus is reached. For example, in Figure
6C, after the terminus is reached the list is scrolled for a distance 3538, which may be less
than a distance traversed on the touch screen display by the swipe gesture 3514 after the
terminus is reached.
[00137]
In some embodiments, scrolling in the first direction prior to reaching a
terminus of the list has a first associated scrolling speed that corresponds to a speed of
movement of the object. For example, a scrolling speed prior to reaching the terminus of
the list shown in Figures 6A-6D may correspond to a speed on the touch screen display of
the swipe gesture 3514 before the terminus is reached. Displaying an area beyond the
terminus of the list includes scrolling the list in the first direction at a second associated
scrolling speed. The second associated scrolling speed is slower than the first associated
scrolling speed. For example, in Figure 6C, displaying the area 3536 beyond the terminus
of the list may include scrolling the list at a speed that is slower than the scrolling speed
before the terminus is reached. In some embodiments, the second associated speed is a
P4304USl, 63266-S0S4-US
37
APLNDC00003829
fraction (e.g., one-half or one-third) of the first associated speed. In some embodiments, the
second associated speed is the square root of the first associated speed.
[00138]
If a terminus of the list is not reached while scrolling the list in the first
direction while the object is still detected on or near the touch screen display, the process
SOO is complete (SIO-No, SI2). The process SOO may be re-initiated upon subsequent
detection of another movement of an object on or near the touch screen display (S02).
[00139]
Figures 6A-6D illustrate the scrolling of a list of items to a terminus of the
list, at which point an area beyond the terminus is displayed and the list is then scrolled in
an opposite direction until the area beyond the terminus is no longer displayed, in
accordance with some embodiments. While Figures 6A-6D illustrate this scrolling in the
context of a portable multifunction device 100, this scrolling is not limited to portable
multifunction devices. In the example of Figures 6A-6D, the listed items are email
messages; Figures 6A-6D illustrate an exemplary user interface 3S00A for managing an
inbox in accordance with some embodiments. An analogous user interface may be used to
display and manage other mailboxes (e.g., drafts, sent, trash, personal, etc.). In addition,
other types of lists are possible, including but not limited to lists of instant message
conversations, favorite phone numbers, contact information, labels, email folders, email
addresses, physical addresses, ringtones, album names or bookmarks.
[00140]
In some embodiments, user interface 3S00A include the following elements,
or a subset or superset thereof:
•
402, 404, and 406, as described above;
•
a create email icon 3310 that when activated (e.g., by a finger tap on the icon)
initiates display of a VI to create a new email message;
•
mailboxes icon 3S02 that when activated (e.g., by a finger tap on the icon) initiates
the display of a VI listing email mailboxes (i.e., folders);
•
unread messages icon 3S04 that displays the number of unread messages in the
inbox;
•
names 3S06 of the senders of the email messages;
•
subject lines 3S08 for the email messages;
P4304USl, 63266-S0S4-US
38
APLNDC00003830
•
dates 3510 of the email messages;
•
unread message icons 3512 that indicate messages that have not been opened;
•
preview pane separator 3518 that separates the list of messages from a preview of a
selected message in the list;
•
settings icon 3520 that when activated (e.g., by a finger tap on the icon) initiates the
display of a VI to modify settings;
•
move message icon 3522 that when activated (e.g., by a finger tap on the icon)
initiates the display of a VI to move messages;
•
Delete symbol icon 3524 that when activated (e.g., by a finger tap on the icon)
initiates display of a VI to confirm that the user wants to delete the selected email;
•
ReplylForward icon 3526 that when activated (e.g., by a finger tap on the icon)
initiates display of a VI to select how to reply or forward the selected email;
[00141]
If the list of emails fills more than the allotted screen area, the user may
scroll through the emails using vertically upward and/or vertically downward swipe gestures
on the touch screen. In the example of Figure 6A, a portion of a list of emails is displayed
in the screen area, including a top displayed email 3530 from Bruce Walker and a bottom
displayed email 3532 from Kim Brook. A user performs a vertically downward swipe
gesture 3514 to scroll toward the top ofthe list. The vertically downward gesture 3514,
which may be a finger gesture, corresponds to the movement of an object on or near the
touch screen that is detected in operation 502 of process 500 (Figure 5). The vertically
downward gesture 3514 need not be exactly vertical; a substantially vertical gesture is
sufficient. In some embodiments, a gesture within a predetermined angle of being perfectly
vertical results in vertical scrolling. In one embodiment, a gesture within 27 degrees of
being perfectly vertical results in vertical scrolling.
[00142]
As a result of detecting the vertically downward gesture 3514, in Figure 6B
the displayed emails have shifted down, such that the previous bottom displayed email 3532
from Kim Brook is no longer displayed, the previous top displayed email 3530 from Bruce
Walker is now second from the top, and the email 3534 from Aaron Jones, which was not
displayed in Figure 6A, is now displayed at the top of the list. This shifting of emails is an
example of the scrolling described in operation 504 of process 500 (Figure 5).
P4304USl, 63266-S0S4-US
39
APLNDC00003831
[00143]
In this example, the email 3534 from Aaron Jones is the first email in the list
and thus is the terminus of the list. Upon reaching this email 3534, in response to continued
detection of the vertically downward gesture 3514, an area 3536 (Figure 6C) above the first
email 3534 (i.e., beyond the terminus of the list) is displayed, as described in operation 514
of process 500 (Figure 5). In some embodiments, the area displayed beyond the terminus of
the list is visually indistinct from the background of the list, as described in operation 518 of
process 500 (Figure 5). In Figure 6C, both the area 3536 and the background of the emails
(e.g., emails 3534 and 3530) are white and thus are visually indistinct.
[00144]
Once vertically downward gesture 3514 is complete, such that a
corresponding object is no longer detected on or near the touch screen display, the list is
scrolled in an opposite direction until the area 3536 is no longer displayed. Figure 60
illustrates the result of this scrolling in the opposite direction, which corresponds to
operation 520 of process 500 (Figure 5): the email 3534 from Aaron Jones is now displayed
at the top of the screen area allotted to the list and the area 3536 is not displayed.
[00145]
In the example of Figures 6A-60, a vertically downward gesture resulted in
display of an area beyond the first item in the list. Similarly, a vertically upward gesture
may result in display of an area beyond the last item of the list, if the vertically upward
gesture continues once the list has been scrolled to the last item. The last item may be
considered a terminus of the list, similar to the first item. As discussed above, the gesture
need not be exactly vertical to result in vertical scrolling; a gesture within a predefined
range of angles from perfectly vertical is sufficient.
[00146]
In some embodiments, instead of scrolling a list of items in one dimension, a
user may desire to translate an electronic document in two dimensions. If the electronic
document fills more than the screen area allotted to display the document, the screen will
only display a portion of the document. The user may translate the electronic document to
view portions of the document that are not initially displayed.
[00147]
Figure 7 is a flow diagram illustrating a method 700 of translating an
electronic document in accordance with some embodiments. The method 700 provides a
simple visual indicator to a user that one or more edges of an electronic document are being
displayed.
P4304USl, 63266-S0S4-US
40
APLNDC00003832
[00148]
Movement of an object is detected on or near a touch screen display of a
device (702). In some embodiments, the object is a finger. In some embodiments, the
device is a portable multifunction device.
[00149]
In response to detecting the movement, an electronic document displayed on
the touch screen display is translated in a first direction (704). In some embodiments, the
electronic document is a web page, as illustrated in Figures 8A-8D. In some embodiments,
the electronic document is a digital image. In some embodiments, the electronic document
is a word processing, spreadsheet, email, or presentation document. In some embodiments,
the first direction is a vertical direction, a horizontal direction, or a diagonal direction. In
some embodiments, the first direction corresponds to the direction of movement of the
object detected on or near the display but is not necessarily identical to the direction of
movement of the object.
[00150]
In some embodiments, translating the electronic document in the first
direction prior to reaching an edge of the electronic document has an associated speed of
translation corresponding to a speed of movement of the object (706). In some
embodiments, the electronic document is translated in accordance with a simulation of an
equation of motion having friction (708).
[00151]
If an edge of the electronic document is reached (e.g., upon reaching the
edge of the document) while translating the electronic document in the first direction while
the object is still detected on or near the touch screen display, an area beyond the edge of
the electronic document is displayed (710-Yes, 714). In some embodiments, the area
beyond the edge ofthe electronic document is black, gray, a solid color, or white (716). In
some embodiments, the area beyond the edge of the electronic document is visually distinct
from the document (718). For example, the area 3930 beyond the edge of the web page
3912 in Figure 8C is black, in contrast to the white background of the web page 3912. In
some other embodiments, a wallpaper image such as a picture or pattern may be displayed
in the area beyond the edge of the electronic document.
[00152]
After the object is no longer detected on or near the touch screen display, the
electronic document is translated in a second direction until the area beyond the edge of the
electronic document is no longer displayed (720). For example, in Figure 8D the web page
3912 has been translated such that the area 3930 beyond its edge is no longer displayed. In
P4304USl, 63266-S0S4-US
41
APLNDC00003833
some embodiments, the second direction is opposite the first direction. In some
embodiments, the electronic document is translated in the second direction using a damped
motion (722). In some embodiments, the change from translating the electronic document
in the first direction to translating the electronic document in the second direction until the
area beyond the edge of the electronic document is no longer displayed makes the edge of
the electronic document appear to be elastically attached to an edge of the touch screen
display or to an edge displayed on the touch screen display (724).
[00153]
In some embodiments, translating in the first direction prior to reaching an
edge of the electronic document has a first associated translating distance that corresponds
to a distance of movement ofthe object prior to reaching the edge ofthe electronic
document. For example, a distance of translation of the web page 3912 shown in Figures
8A-8D prior to reaching the edge of the document may correspond to a distance traversed
on the touch screen display by the swipe gesture 3925 before the edge is reached. In some
embodiments, displaying an area beyond the edge of the electronic document includes
translating the electronic document in the first direction for a second associated translating
distance, wherein the second associated translating distance is less than a distance of
movement of the object after reaching the edge ofthe electronic document. For example, in
Figure 8C, after the edge is reached the web page 3912 is translated by a distance indicated
by opposing arrows 3928-1 and 3928-2, which may be less than a distance traversed on the
touch screen display by the swipe gesture 3925 after the terminus is reached.
[00154]
In some embodiments, translating in the first direction prior to reaching an
edge of the electronic document has a first associated translating speed that corresponds to a
speed of movement of the obj ect. For example, a speed of translation prior to reaching the
edge of the web page 3912 shown in Figures 8A-8D may correspond to a speed of
movement of the swipe gesture 3925. Displaying an area beyond the edge of the electronic
document includes translating the electronic document in the first direction at a second
associated translating speed. The second associated translating speed is slower than the first
associated translating speed. For example, in Figure 8C, displaying the area 3930 beyond
the edge of the web page 3912 may include translating the web page 3912 at a speed that is
slower than the speed of translation before the edge is reached. In some embodiments, the
second associated speed is a fraction (e.g., one-half or one-third) of the first associated
P4304USl, 63266-S0S4-US
42
APLNDC00003834
speed. In some embodiments, the second associated speed is the square root of the first
associated speed.
[00155]
If an edge of the electronic document is not reached while translating the
electronic document in the first direction while the object is still detected on or near the
touch screen display, the process 700 is complete (710-No, 712). The process 700 may be
re-initiated upon subsequent detection of another movement of an object on or near the
touch screen display (702).
[00156]
Figures 8A-80 illustrate the translation of an electronic document to an edge
of the document, at which point an area beyond the edge is displayed and the document is
then translated in a second direction until the area beyond the edge of the document is no
longer displayed, in accordance with some embodiments. While Figures 8A-80 illustrate
this translation in the context of a portable multifunction device 100, this translation is not
limited to portable multifunction devices. In the example of Figures 8A-80, the document
is a web page 3912; Figures 8A-80 illustrate an exemplary user interface for a browser in
accordance with some embodiments. An analogous user interface may be used to display
other types of electronic documents, such as word processing, spreadsheet, email,
presentation documents, or digital images.
[00157]
In some embodiments, user interface 3900A of Figures 8A-80 includes the
following elements, or a subset or superset thereof:
•
402, 404, and 406, as described above;
•
Previous page icon 3902 that when activated (e.g., by a finger tap on the icon)
initiates display of the previous web page;
•
Web page name 3904;
•
Next page icon 3906 that when activated (e.g., by a finger tap on the icon) initiates
display of the next web page;
•
URL (Uniform Resource Locator) entry box 3908 for inputting URLs of web pages;
•
Refresh icon 3910 that when activated (e.g., by a finger tap on the icon) initiates a
refresh of the web page;
P4304USl, 63266-S0S4-US
43
APLNDC00003835
•
Web page 3912 or other structured document, which is made of blocks 3914 of text
content and other graphics (e.g., images);
•
Settings icon 3916 that when activated (e.g., by a finger tap on the icon) initiates
display of a settings menu for the browser;
•
Bookmarks icon 3918 that when activated (e.g., by a finger tap on the icon) initiates
display of a bookmarks list or menu for the browser;
•
Add bookmark icon 3920 that when activated (e.g., by a finger tap on the icon)
initiates display of a UI for adding bookmarks; and
•
New window icon 3922 that when activated (e.g., by a finger tap on the icon)
initiates display of a UI for adding new windows to the browser.
[00158]
In some embodiments, the device analyzes the render tree of the web page
3912 to determine the blocks 3914 in the web page. In some embodiments, a block 3914
corresponds to a render node that is: replaced; a block; an inline block; or an inline table.
[00159]
In Figure 8A, the web page fills more than the allotted screen area: only the
left sides of block 7 (3914-7) and block 8 (3914-8) are displayed and only the top left corner
of block 9 (3914-9) is displayed. To view the partially displayed blocks, a user may
translate the displayed document by gesturing on the touch screen in accordance with some
embodiments.
[00160]
In some embodiments, in response to a substantially vertical upward (or
downward) swipe gesture by the user, the web page (or, more generally, other electronic
documents) may translate one-dimensionally upward (or downward) in the vertical
direction. In some embodiments, a gesture is considered substantially vertical if it is within
a predetermined angle of being perfectly vertical. For example, in response to an upward
swipe gesture by the user that is within a predetermined angle (e.g., 27°) of being perfectly
vertical, the web page may scroll one-dimensionally upward in the vertical direction.
[00161]
Conversely, in some embodiments, in response to a gesture that is not within
a predetermined angle (e.g., 27°) of being perfectly vertical, the web page may translate
two-dimensionally (i.e., with simultaneous movement in both the vertical and horizontal
directions). For example, in response to an upward swipe gesture by the user that is not
P4304USl, 63266-S0S4-US
44
APLNDC00003836
within a predetermined angle (e.g., 27°) of being perfectly vertical, the web page may
translate two-dimensionally along the direction of the swipe.
[00162]
In the example of Figure 8A, an upward swipe gesture 3925 is not within a
predetermined angle of being perfectly vertical. Therefore, as a result of detecting the
upward swipe gesture 3925, the web page is translated in two dimensions. In this example,
the translation is approximately diagonal. Figure 8B illustrates the result of this translation:
blocks 8 (3914-8) and 9 (3914-9) are now fully displayed; blocks 1 (3914-1) and 2 (3914-2)
are now only partially displayed, and block 3 (3914-3) is no longer displayed at all. This
translation is an example of the translation described in operation 704 of process 700
(Figure 7).
[00163]
In Figure 8B, block 9 (3914-9) is in the lower right-hand comer of the web
page 3912; both the bottom and right edges of the web page have been reached while
translating the web page. Upon reaching these edges of the document, in response to
continued detection of the upward gesture 3925, an area 3930 (Figure 8C) beyond the
bottom and right edges of the web page is displayed. In some embodiments, the area
displayed beyond the edge(s) of an electronic document is visually distinct from the
document, as described in operation 718 of process 700 (Figure 7). In Figure 8C, the area
3930 is black and thus is visually distinct from the white background of the web page 3912.
[00164]
Once the upward gesture 3925 is complete, such that a corresponding object
is no longer detected on or near the touch screen display, the web page 3912 is translated
(e.g., in a direction opposite to the original direction of translation) until the area 3930 is no
longer displayed. Figure 8D illustrates the result of this translation, which corresponds to
operation 720 of process 700 (Figure 7): block 9 (3914-9) is now displayed in the lower
right-hand comer of the portion of the screen allotted to display the web page 3912 and the
area 3930 not displayed. In some embodiments, the direction of translation is not
necessarily opposite to the original direction but may be in any direction such that, upon
completion of the translation, the area beyond the edge(s) of the electronic document is no
longer displayed.
[00165]
Figure 9 is a flow diagram illustrating a process 900 of displaying an
electronic document having a document length and a document width, in accordance with
some embodiments. The process 900 provides a simple visual indicator to a user that an
P4304USl, 63266-S0S4-US
45
APLNDC00003837
electronic document is being displayed at a minimum magnification (e.g., the electronic
document cannot be zoomed out and/or demagnified further).
[00166]
The process 900 is performed at a device with a touch screen display. In
some embodiments, the device is a portable multifunction device. In some embodiments,
the electronic document is a web page (e.g., web page 3912, Figures 10A-I0C). In some
embodiments, the electronic document is a digital image. In some embodiments, the
electronic document is a word processing, spreadsheet, email or presentation document.
[00167]
The electronic document is displayed (902) at a first magnification on the
touch screen display. A gesture is detected (904) on or near the touch screen display
corresponding to a command to zoom out by a user-specified amount. In some
embodiments, the gesture is a pinching gesture (e.g., gesture 3951/3953, Figure lOA).
[00168]
In response to detecting the gesture, the electronic document is displayed
(906) at a magnification less than the first magnification. For example, the web page 3912
is shown at a lesser magnification in Figure lOB than in Figure lOA.
[00169]
Ifthe document length or document width is not entirely displayed (908-No)
while the gesture is still detected on or near the touch screen display, the process 900 is
complete (910).
[00170]
If, however, the document length (e.g., 3957, Figure lOB) or document width
(e.g., 3959, Figure lOB) is entirely displayed (908-Yes) while the gesture (e.g., 3951/3953)
is still detected on or near the touch screen display, the electronic document is displayed
(912) at a magnification wherein areas beyond opposite edges of the electronic document
(e.g., areas 3955, Figure lOB) are displayed.
[00171]
In some embodiments, the areas beyond opposite edges of the electronic
document include an area beyond a top edge of the document and an area beyond a bottom
edge of the document. In some embodiments, the areas beyond opposite edges of the
electronic document include an area beyond a right edge of the document and an area
beyond a left edge of the document. In some embodiments, the areas beyond opposite
edges of the electronic document include an area beyond a top edge of the document, an
area beyond a bottom edge of the document, an area beyond a right edge of the document,
and an area beyond a left edge of the document (e.g., Figure lOB).
P4304USl, 63266-S0S4-US
46
APLNDC00003838
[00172]
In some embodiments, the areas beyond opposite edges of the electronic
document are black, gray, a solid color, or white. In some embodiments, the areas beyond
opposite edges of the electronic document are visually distinct from the document. For
example, the areas 3955 (Figure lOB) are black and thus are visually distinct from the web
page 3912.
[00173]
Upon detecting termination of the gesture, the electronic document is
displayed (914) at a magnification wherein the areas beyond opposite edges of the
electronic document are no longer displayed. For example, the areas 3955 are not displayed
in Figure 10C.
[00174]
Figures 10A-10C illustrate the display of an electronic document at multiple
magnifications in accordance with some embodiments. While Figures 10A-10C illustrate
displaying these multiple magnifications in the context of a portable multifunction device
100, displaying these multiple magnifications is not limited to portable multifunction
devices. In the example of Figures 10A-10C, the document is a web page 3912; Figures
10A-10C (like Figures 8A-8D) illustrate an exemplary user interface for a browser in
accordance with some embodiments. An analogous user interface may be used to display
other types of electronic documents, such as digital images or word processing, spreadsheet,
email, or presentation documents.
[00175]
In Figure lOA, the web page 3912 is displayed at a first magnification. The
web page 3912 fills more than the allotted screen area: only the left sides of block 7 (39147) and block 8 (3914-8) are displayed and only the top left corner of block 9 (3914-9) is
displayed.
[00176]
In response to detecting a pinching gesture 3951/3953 (Figure lOA), the
web-page is displayed at a magnification less than the first magnification, as shown in
Figure lOB. If a document length 3957 or a document width 3959 is entirely displayed
while the gesture 3951/3953 is still detected, areas 3955 beyond opposite edges of the web
page 3912 are displayed. Upon detecting termination of the gesture 3951/3953, the web
page 3912 is displayed at a magnification wherein the areas 3955 are no longer displayed,
as shown in Figure 10C.
[00177]
Figure 11 is a flow diagram illustrating a process 1100 of displaying an
electronic document at multiple magnifications in accordance with some embodiments. The
P4304USl, 63266-S0S4-US
47
APLNDC00003839
process 1100 provides a simple visual indicator to a user that an electronic document is
being displayed at a maximum magnification (e.g., the electronic document cannot be
zoomed in and/or magnified further).
[00178]
The process 1100 is performed at a device with a touch screen display. In
some embodiments, the device is a portable multifunction device. In some embodiments,
the electronic document is a web page (e.g., web page 3912, Figures 12A-12C). In some
embodiments, the electronic document is a digital image (e.g., digital image 1302, Figures
13A-13C). In some embodiments, the electronic document is a word processing,
spreadsheet, email or presentation document.
[00179]
At least a first portion of the electronic document is displayed (1102) at a
first magnification. A gesture is detected (1104) on or near the touch screen display
corresponding to a command to zoom in by a user-specified amount. In some
embodiments, the gesture is a de-pinching gesture (e.g., 393113933, Figures 12A and 13A).
[00180]
In response to detecting the gesture, decreasing portions of the electronic
document are displayed (1106) at increasing magnifications. For example, in Figure 12B a
decreased portion of the web page 3912 is displayed at a higher magnification than the
portion in Figure 12A, and in Figure 13B a decreased portion of the digital image 1302 is
displayed at a higher magnification than the portion in Figure 13A.
[00181]
If, upon detecting termination of the gesture, the magnification does not
exceed a predefined magnification (1108-No), the process 1100 is complete (1110).
[00182]
If, however, upon detecting termination of the gesture, the magnification
exceeds a predefined magnification (1108-Yes), a respective portion of the electronic
document is displayed (1112) at the predefined magnification. In the examples of Figure
12B and 13B, the magnification exceeds a predefined magnification. Upon detecting
termination of the gesture 393113933, a portion of the web page 3912 is displayed at the
predefined magnification, as illustrated in Figure 12C, and a portion of the digital image
1302 is displayed at the predefined magnification, as illustrated in Figure 13C.
[00183]
In some embodiments, immediately prior to detecting termination of the
gesture, a last decreased portion of the electronic document is displayed at a first resolution.
P4304USl, 63266-S0S4-US
48
APLNDC00003840
Upon detecting termination of the gesture, the respective portion of the electronic document
is displayed at a second resolution that is greater than the first resolution.
[00184]
Figures 12A-12C illustrate the display of an electronic document at multiple
magnifications in accordance with some embodiments. While Figures 12A-12C illustrate
displaying these multiple magnifications in the context of a portable multifunction device
100, displaying these multiple magnifications is not limited to portable multifunction
devices. In the example of Figures 12A-12C, the document is a web page 3912; Figures
12A-12C (like Figures 8A-8D) illustrate an exemplary user interface for a browser in
accordance with some embodiments. An analogous user interface may be used to display
other types of electronic documents, such as digital images or word processing, spreadsheet,
email, or presentation documents.
[00185]
In Figure 12A, a first portion of the web page 3912 is displayed at a first
magnification. The web page 3912 fills more than the allotted screen area: only the left
sides of block 7 (3914-7) and block 8 (3914-8) are displayed and only the top left comer of
block 9 (3914-9) is displayed.
[00186]
In response to detecting a de-pinching gesture 3931/3933 (Figure 12A),
decreasing portions ofthe web-page 3912 are displayed at increasing magnifications
compared to the magnification shown in Figure 12A. For example, the portion of the web
page 3912 shown in Figure 12B is smaller than and has a higher magnification than the
portion of the web page 3912 shown in Figure 12A.
[00187]
In the example of Figure 12B, the magnification exceeds a predefined
magnification. Upon detecting termination of the gesture 3931/3933, a portion of the web
page 3912 is displayed at the predefined magnification, as illustrated in Figure 12C.
[00188]
Figures 13A-13C illustrate the display of an electronic document at multiple
magnifications in accordance with some embodiments. While Figures 13A-13C illustrate
displaying these multiple magnifications in the context of a portable multifunction device
100, displaying these multiple magnifications is not limited to portable multifunction
devices. In the example of Figures 13A-13C, the document is a digital image 1302 that
includes an image of a person 1304.
P4304USl, 63266-S0S4-US
49
APLNDC00003841
[00189]
In Figure 13A, a digital image 1302 is displayed at a first magnification. In
response to detecting a de-pinching gesture 3931/3933, decreasing portions of the digital
image 1302 are displayed at increasing magnifications compared to the magnification
shown in Figure 13A. For example, the portion of the digital image 1302 shown in Figure
13B is smaller than and has a higher magnification than the portion of the digital image
1302 shown in Figure 13A.
[00190]
In the example of Figure 13B, the magnification exceeds a predefined
magnification. Upon detecting termination of the gesture 3931/3933, a portion of the digital
image 1302 is displayed at the predefined magnification, as illustrated in Figure 13e.
[00191]
Figure 14 is a flow diagram illustrating a process 1400 of executing a screen
rotation command in accordance with some embodiments. The process 1400 provides a
simple visual indicator to a user that the user has not provided a sufficient gesture to initiate
a 90° screen rotation command.
[00192]
The process 1400 is performed at a device with a touch screen display. In
some embodiments, the device is a portable multifunction device.
[00193]
A multi finger twisting gesture (e.g., 1506, Figure 15A, or 1508, Figure 15C)
is detected (1402) on or near the touch screen display. The multi finger twisting gesture has
a corresponding degree of rotation. In some embodiments, the multifinger twisting gesture
includes gestures by two thumbs 1604-L and 1604-R (Figures 16A and 16D)
[00194]
If the corresponding degree of rotation exceeds a predefined degree of
rotation (1404-Yes), a 90° screen rotation command is executed (1406). For example, the
digital image 1502 of Figures 15A and 16A is rotated from a portrait orientation to a
landscape orientation, as shown respectively in Figures 15B and 16B.
[00195]
If the corresponding degree of rotation does not exceed a predefined degree
of rotation (1404-No), a screen rotation command with an acute angle of rotation (i.e., less
than 90°) is executed (1408). For example, the digital image 1502 of Figures 15C and 16D
is rotated by an acute angle, as shown respectively in Figures 15D and 16E. Upon ceasing
to detect the multifinger twisting gesture, a screen rotation command is executed (1410)
with an angle of rotation opposite to the acute angle (e.g., with the result shown in Figures
15E and 16F).
P4304USl, 63266-S0S4-US
50
APLNDC00003842
[00196]
Figures 15A-15E illustrate rotating the display of an electronic document or
other digital object in accordance with some embodiments. While Figures 15A-15E
illustrate display rotation in the context of a portable multifunction device 100, display
rotation is not limited to portable multifunction devices. In the example of Figures 15A15E, the electronic document is a digital image 1502.
[00197]
In Figures 15A and 15C, the digital image 1502 is displayed in a portrait
orientation. A multifinger twisting gesture 1506 (Figure 15A) or 1508 (Figure 15C) is
detected on the touch screen display. The multifinger twisting gesture 1506 or 1508 has a
corresponding degree of rotation. In some embodiments, the degree of rotation corresponds
to a degree of rotation of an axis between the contact points on the touch screen display of
the two fingers in the multi finger gesture (e.g., an axis between the center points or
centroids ofthe contact regions of the two fingers).
[00198]
In the example of Figure 15A, the multifinger twisting gesture 1506 has a
corresponding degree of rotation that exceeds a predefined degree of rotation. Thus, a 90°
screen rotation command is executed, with the result that the digital image is displayed in a
landscape orientation, as shown in Figure 15B. In the example of Figure 15C, however, the
multifinger twisting gesture 1508 has a corresponding degree of rotation that does not
exceed a predefined degree of rotation. A screen rotation command with an acute angle of
rotation is executed, with the result shown in Figure 15D. Upon ceasing to detect the
multifinger twisting gesture 1508, a screen rotation command with an angle opposite to the
acute angle is executed, with the result that the portrait orientation of the digital image 1502
is restored, as shown in Figure 15E.
[00199]
Figures 16A-16F illustrate an exemplary screen rotation gesture in
accordance with some embodiments. While Figures 16A-16F illustrate this screen rotation
gesture in the context of a portable multifunction device 100, this screen rotation gesture is
not limited to portable multifunction devices. In the example of Figures 16A-16F, this
screen rotation gesture is used to rotate the digital image 1502.
[00200]
In Figure 16A, the device 100 displays the digital image 1502 in a portrait
orientation. Simultaneous rotation of two thumbs (e.g., 1604-L and 1604-R) in a first sense
of rotation is detected on the touch screen display 112. In some embodiments, the first sense
P4304USl, 63266-S0S4-US
51
APLNDC00003843
of rotation is a clockwise rotation (e.g., Figure 16C). The simultaneous rotation of the two
thumbs has a corresponding degree of rotation.
[00201]
In some embodiments, the sense of rotation for each thumb is detected by
monitoring the change in orientation of the contact area of the thumb with the touch screen
display. For example, ifthe contact area of the thumb is elliptical, the change in the
orientation of an axis of the ellipse may be detected (e.g., from contact ellipse 1606-L in
Figure 16A to contact ellipse 1608-L in Figure 16B, as shown on an enlarged portion of
touch screen 112 in Figure 16C). In some embodiments, the change in the orientation of the
axis of the ellipse determines the corresponding degree of rotation. In some embodiments, at
least some of a user's other fingers (i.e., fingers other than thumbs 1604-L and 1604-R)
support the device 100 by contacting the backside of the device.
[00202]
In some embodiments, the first sense of rotation is a counterclockwise
rotation. For example, if thumb 1604-L is initially on the lower left side of touch screen 112
(rather than the upper left side in Figure 16A), thumb 1604-R is initially on the upper right
side oftouch screen 112 (rather than the lower right side in Figure 16A), and the thumbs are
moved apart from each other, then the sense of rotation detected by the touch screen 112
will be counterclockwise for both thumbs.
[00203]
If the corresponding degree of rotation exceeds a predefined degree of
rotation, a 90° screen rotation command is executed. For example, display of the digital
image 1502 is rotated from the portrait orientation of Figure 16A to a landscape orientation
in Figure 16B.
[00204]
If, however, the corresponding degree of rotation does not exceed a
predefined degree of rotation, a screen rotation command with an acute angle of rotation is
executed. For example, the digital image 1502 in Figure 16D is rotated by an acute angle,
with the result shown in Figure 16E. Once detection of the two thumbs 1604-L and 1604-R
ceases, a screen rotation command with an angle of rotation opposite to the acute angle is
executed, thereby restoring the digital image 1502 to a portrait orientation, as shown in
Figure 16F.
[00205]
While Figures 6A-6D, 8A-8D, 10A-10C, 12A-12C, 13A-13C, 15A-15E, and
16A-16F illustrate scrolling, translation, scaling, and rotation operations in the context of a
portable multifunction device 100, similar operations may be performed on any device with
P4304USl, 63266-S0S4-US
52
APLNDC00003844
a touch-screen display, in accordance with some embodiments. The device, such as device
1700 below, mayor may not be portable and the function or functions performed by the
device may vary.
[00206]
Figure 17 is a block diagram illustrating a device 1700 with a touch-screen
display in accordance with some embodiments. Device 1700 need not be portable. The
device 1700 typically includes one or more processing units (CPU's) 1710, one or more
network or other communications interfaces 1760, memory 1770, and one or more
communication buses 1720 for interconnecting these components. The communication
buses 1720 may include circuitry (sometimes called a chipset) that interconnects and
controls communications between system components. The device 1700 includes a user
interface 1730 comprising a touch-screen display 1740. The user interface 1730 also may
include a keyboard and/or mouse (or other pointing device) 1750. Memory 1770 includes
high-speed random access memory, such as DRAM, SRAM, DDR RAM or other random
access solid state memory devices; and may include non-volatile memory, such as one or
more magnetic disk storage devices, optical disk storage devices, flash memory devices, or
other non-volatile solid state storage devices. Memory 1770 may optionally include one or
more storage devices remotely located from the CPU(s) 1710. In some embodiments,
memory 1770 stores programs, modules, and data structures analogous to the programs,
modules, and data structures stored in the memory 102 of portable multifunction device 100
(Figure 1), or a subset thereof. Furthermore, memory 1770 may store additional programs,
modules, and data structures (not shown) not present in the memory 102 of portable
multifunction device 100.
[00207]
Each of the above identified elements in Figure 17 may be stored in one or
more of the previously mentioned memory devices. Each of the above identified modules
corresponds to a set of instructions for performing a function described above. The above
identified modules or programs (i.e., sets of instructions) need not be implemented as
separate software programs, procedures or modules, and thus various subsets of these
modules may be combined or otherwise re-arranged in various embodiments. In some
embodiments, memory 1770 may store a subset of the modules and data structures
identified above. Furthermore, memory 1770 may store additional modules and data
structures not described above.
P4304USl, 63266-S0S4-US
53
APLNDC00003845
[00208]
The foregoing description, for purpose of explanation, has been described
with reference to specific embodiments. However, the illustrative discussions above are not
intended to be exhaustive or to limit the invention to the precise forms disclosed. Many
modifications and variations are possible in view of the above teachings. The embodiments
were chosen and described in order to best explain the principles of the invention and its
practical applications, to thereby enable others skilled in the art to best utilize the invention
and various embodiments with various modifications as are suited to the particular use
contemplated.
P4304USl, 63266-S0S4-US
54
APLNDC00003846
PTO/SB/80 (04-05)
Approved for use through 11/3012005. OMB 0651-0035
U.S. Patent and Trademark Office; U.S. DEPARTMENT OF COMMERCE
Under the Pap_ork Reduction Act of 1995. no persons are required to respond to a collection of information unless it displays a valid OMB control number.
[
POWER OF ATTORNEY TO PROSECUTE APPLICATIONS BEFORE THE USPTO
J
I hereby revoke all previous powers of attorney given in the application identified in the attached statement under
37 CFR 3.73lb)'
I hereby appoint:
~ ;mctitiO,,,,,
D
os""'.... wlIh the
Q,,,,~,,, N~""r.
I
I
61 72 5
Practitioner(s) named below (if more than ten patent practitioners are to be named, then a customer number must be used):
Name
Name
Number
as attomey(s) or agen!~s) to represent the undersigned before the United ~" P",tont and
Office (USP~O) in connection with
any and all patent applications assigned Q!!fi: to the undersigned according to the USPTO assignment records or aSSignment documents
attached to this form in accordance with 37 CFR 3.73(b).
Please change the correspondence address for the application identified in the attached statement under 37 CFR 3. 73(b) to:
!il
The
add~"~~_ C~_'" N"mb~
w;th
I
61725
I
D
Firmor
Individual Name
Address
I
City
State
Country
I
Telephone
Email
Assignee Name and Address:
Apple Inc.
1 Infinite Loop
Cupertino, CA 95014
A copy of this form. together with a statement under 37 CFR 3.73(b) (Form PTO/SBJ96 or equivalent) is required to be
filed In each application in which this form is used. The statement under 37 CFR 3.73(b) may be completed by one of
the practitioners appointed in this form if the apPOinted practitioner is authorized to act on behalf of the assignee,
and must identify the application in which this Power of Attorney is to be filed .
•.........".,
The
.
SIGNATURE of AsSignee of Record
injHvidl'a~ose
signature and title is supplied below is authorized to act on behalf of the assignee
Signature
Name
Title
fRiphardfi. Lutton
I ~istajt
Telephone
(408) 974-9453
Secretary and Chief Patent Counsel
This coHadion of in~'!.~~d by 37 CFR ~ .~1, ~ .32 and 1.33. The information is required to obtain or retain .a benefit. by .the p~blic which is to fil~ (and
by the USPTO to process) an application. Confidentiality IS governed by 35 U.S.C. 122 and 37 CFR 1.11 and 1.14. ThIS collection IS estimated to take 3 minutes
to complete, including gathering. preparing. and submitting the completed application form to the USPTO. Time will vary depending upon the individual case. Any
comments on the amount of time you require to complete this form and/or suggestions for reducing this burden, should be sent to the Chief Information Officer.
U.S. Patent and Trademark OffICe, U.S. Department of Commerce, P.O. Box 1450. Alexandria, VA 22313-1450. DO NOT SEND FEES OR COMPLETED
FORMS TO THIS ADDRESS. SEND TO: Commissioner for Patents, P.O. Box 1450, Alexandria, VA 22313-1450.
If you need assistance in completing the form, call 1-800-PTO-9199 and select option 2.
APLNDC00003847
Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.
Why Is My Information Online?