`(19)
`a2) Patent Application Publication (0) Pub. No.: US 2013/0007665 A1
`Chaudhri et al.
`(43) Pub. Date:
`Jan. 3, 2013
`
`
`US 20130007665A1
`
`(54) SYSTEMS AND METHODS FOR DISPLAYING
`NOTIFICATIONS RECEIVED FROM
`MULTIPLE APPLICATIONS
`
`(75)
`
`Inventors:
`
`Imran A. Chaudhri, San Francisco, CA
`(US); Eliza Block, San Francisco, CA
`(US)
`
`(73)
`
`Assignee: APPLE INC., Cupertino, CA (US)
`
`(21)
`
`Appl. No.: 13/489,415
`
`(22)
`
`(60)
`
`Miled:
`
`Jun. 5, 2012
`Related U.S. Application Data
`Provisional application No. 61/493,470, filed on Jun.
`5, 2011.
`
`Publication Classification
`
`(51)
`
`Int. CL.
`(2006.01)
`GO6F 3/048
`(52) U.S.Cooo 715/830; 715/843; 715/833
`
`(57)
`
`ABSTRACT
`
`Systems and methodsare disclosed for displaying notifica-
`tions received from multiple applications. In some embodi-
`ments, an electronic device can monitornotifications that are
`received from the multiple applications. Responsive to
`receiving the notifications, the electronic device can control
`the mannerin whichthe notifications are displayed while the
`device is operating in a locked oran unlockedstate. In some
`embodiments, the electronic device can allow users to cus-
`tomize how notifications are to be displayed while the device
`is in the locked and/or unlockedstates.
`
`300
`
`API-CALLING COMPONENT(S)
`
`
`
`
`
`
`API-IMPLEMENTING COMPONENT(S)
`
`API CALLS,
`PARAMETERS
`
`| RETURN VALUES,
`PARAMETERS
`
`APPLICATION PROGRAMMING [7804
`INTERFACE
`
`1
`
`APPLE 1051
`
`APPLE 1051
`
`1
`
`
`
`Patent Application Publication
`
`Jan. 3, 2013 Sheet 1 of 21
`
`US 2013/0007665 Al
`
`wl 00
`
`TOUCH VO.
`DEVICE
`
`|
`
`SYSTEM
`
`COMMUNICATION
`CHANNEL
`
`\
`
`COMPUTING
`
`2
`
`
`
`Patent Application Publication
`
`Jan. 3, 2013 Sheet 2 of 21
`
`US 2013/0007665 Al
`
`|
`Power
`Sysiem |
`
` 200 SYSTEM
`Computer-Readable Medium 207
`A.
`
`
`
`
`
`
`
`
`
`
`
`|
`Port
`236
`
`
`
`
`208 |!
`aid
`
`chefenecccere330 Circutry
`
`
`202
`
`
`
`
`
`
`Touch VO
`| Other VO
`|
`
`Device
`| Controller(s) |
`
`Controller
`
`
`
`
`
`Touch /O
`Other 1/0
`Device
`Device
`
`
`
`Zi2 214
`
`
`
`
`
`
`204
`
`PROCESSING |
`SYSTEM
`
`Peripherals |_|
`interface
`
`™
`| Speaker
`RF
`| Circuitry |
`250
`
`FIG. 2
`
`3
`
`
`
`Patent Application Publication
`
`Jan. 3, 2013 Sheet 3 of 21
`
`US 2013/0007665 Al
`
`300
`
`306
`
`
`
`API CALLS,
`PARAMETERS
`
`| RETURN VALUES
`PARAMETERS
`
`
`APPLICATION PROGRAMMING 7-804
`
`
`INTERFACE
`
`4
`
`
`
`Patent Application Publication
`
`Jan. 3,
`
`2013 Sheet 4 of 21
`
`US 2013/0007665 Al
`
`007
`
`GidVéSOIAWSS
`Lid¥¢SQIAKSS
`
`6SDIAUSS
`
`éld¥D9
`
`id¥|SQIAWSS
`
`
`
`LADIAWSS
`
`bayoo
`
`|
`
`vOld
`
`
`
`
`
`(SO)WALSASONLLVHSd0
`
`5
`
`
`
`
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 5 of 21
`
`US 2013/0007665 Al
`
`SMENSNNussALY
`
`yoodase. 009
`UOWUeT\Havers
`‘SnUBIAOWBULGESUDDOHIBUIUOSOS|2SPUBLYJBUIOZipupBAUpOAYDINRDHUDUIRY
`
`
`
`SS)Heyl(ce)
`
`i10)781)NOG(teustunBaamataarcnonBune©|
`
`LAIYOO:LEBUuIuO9aD
`ARALOA25:04JBEPUIDOOL)UOley
`
`
`
`
`“ONSpaemy‘SuNuQ90920)SumuUelWeg
`SSIFUNOCODdiusuosucdsuadoSUCHRUIUOK
`
`
`
`
`
`BYSYORL,JUSYIY0}SUOSESLUOISIACOMaut
`
`
`SOMBUIIUG@DIOUSJenuuyDugSHUN
`
`
`
`sfSURUORLESHIRL!ULISSA,‘CHOUSjscee)
`
`
`
`WyZO-LL&itive
`
`SidWBS
`arcaneet
`Aensany
`
`po
`
`S8ION
`
`SiONnV
`
`6
`
`
`
`
`
`
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 6 of 21
`
`US 2013/0007665 Al
`
`
`
`ABUT)GUODSODIA]
`
`Maley
`
`
`
`oIpnigBUIeH
`
`eBo,
`
`
`
`
`
`
`
`WY09-6
`
`
`
`
`
`SSoot,OUIUedNg|ne“>ohh(HN
`
`
`
`JaLpeSAy(LOO
`
`ouriedny5
`
`evouidegSvzivaapetedegsooVvages:
`
`aoivaraedeg9947
`
`
`9009eFeLeidvVVGrPe1s)
`
`LVOLE'LO
`OLLveTaV¥
`
`
`
`NY62-9yooqeoe.4
`
`
`
`
`
`
`
`
`
`BAupoAyDWIeDHUOLUIY‘ShUBWOW:UOWe7BULGESUODOLUSUULUODOSIRSOUSJOLIGZ"pure
`
`‘JOUIUOELUSIEGy)SISAL,:}0YC$/8qkH
`
`AY€0-LL&
`
`ubiseg|JOOC]PSWeIS:
`
`JO,88YYOUSZyrelussinSuimetasionBune©“ONSHIeMmYy
`
`
`
`‘SUMO50510;BuruuzidWeis
`TLALOEDSUL309
`
`
`HenUUYypuZSILULUNS}SHOAL,USMYO}SUOSES}4UOISIOACOMSUL
`SDBANYSUN)SO1OUr)
`
`
`
`
`WOOLQOUBIEIUOTEf
`
`os
`
`BohAN
`
`
`
`
`
` aAAGOWY25:01AOIWIPOOHuolny
`
`
`
`
`
`
`
`“sonunuoddgdiusiosuodsuedgSUGITRUIWON
`
`
`
`
`
`
`
`
`
`7
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 7 of 21
`
`US 2013/0007665 Al
`
` aEOLGeSeeLVgagBLEdegSooVzg'9!!
`W009€sZzeidvV¥orbéeia
`
`
`INVLPGJaytyy[negswigOHeYAULCO|
`
`
`onco,Oumedng|ehhCae
`AecritySCANAeqBuuedg
`
`JOUTROAA|OLeiyie|
`|
`INdOC'SLVZOIZG-AaNouyManu:
`
`
`UIOOLYGDUBIBIUOD|mainay
`
`ubiseg
`
`979FIVLPGJOTIPed-ulod)LONRHALY©
`
`
`869FOOTPAUAIS
`
`-NdOO'S-LL/ZO/Z0-ABxOIINUpsaULiC]
`
`
`
`
`
`elOZeidvyGiveLa]lerqui:degsvzivaggeic-deosoovac!(9009
`078851ct,Oummedng)obLov°HCeISUISGAAiWYLP6OGLivin!J69
`
`
`
`WOCHSoUBIBIUOTS[4
`
`NY00-01
`
`“Jepua[egi)
`
`
`
`
`
`
`
`jepuaje)a)
`
`
`
`
`49“Ola
`
`
`
`youn]wes)
`
`L00¢]Paes
`
`Coos
`
`
`
`a10uUAeyDOMM
`
`
`
`JBUSS)BUOGSOW]
`
`your]wee)
`
`
`
`OIDNSeuleH
`
`BBo,
`
`
`
`molnayubiseq
`
`8
`
`
`
`
`
`
`
`
`
`
`Patent Application Publication
`
`Jan. 3, 2013 Sheet 8 of 21
`
`US 2013/0007665 Al
`
`640
`
`FUN
`
`GAMES
`
`FIG. 6F
`
`650
`
`|
`
`FUN
`
`GAMES
`
`| Doe, Jane
`| Ob, [was thinking...
`
`9
`
`
`
`Patent Application Publication
`
`Jan. 3, 2013 Sheet 9 of 21
`
`US 2013/0007665 Al
`
`{3Side
`st}
`
`
`
`|@;1O@ Go\AREYZEee
`
`FIG. 7C
`
`10
`
`
`
`Patent Application Publication
`
`Jan. 3, 2013 Sheet 10 of 21
`
`US 2013/0007665 Al
`
`Sai
`
`=
`
`=
`
`722
`
`“You have 7 new Mail notifications
`EF TeyMtDomains
`
`704
`
`
`FIG. 7D
`
`730-7 |
`Notification Centre ConOC)
`
`View in Lock Screen
`
`Aleris require an action before proceeding.
`Banners appear at the top of the screen and
`go away automatically.
`
`FIG. 7E
`
`11
`
`11
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 11 of 21
`
`US 2013/0007665 Al
`
`
`
`gaune‘Appuns
`
`EeB:
`
`008
`
`ooLYivie
`
`aGgf8Levi)
`Apsanooy109-LSUEDAS(Ei
`
`¢UdSFWonnnnnennet
`
`tt4
`
`yoojunOo}epys
`
`déOils
`
`annem
`“=r
`)
`
`S0
`
`12
`
`12
`
`
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 12 of 21
`
`US 2013/0007665 Al
`
`
`
`fQUIDIDGUINOAOYE]0}BUHL
`
`
`
`
`
`d8Ola
`
`
`_eoiun04epiis(<2)
`98‘DI4[yoojun0}apys(<>})Nceenennnnne
`
`
`
`nnnnReneenEEAEREEAEEERETEOEEEEEREAREREEEREEOROEERSERAEROEESEREEAEROEROTEOSOTETTEEEETEROEEOE
`
`
`se—{9z00ug)
`pzg—_||_--4489MeuAwinoyOeUD1
`CUD
`
`Wey
`
`
`
`gLa-TPeePUOGSOLIEL|
`
`BLP|
`
`13
`
`
`
`S€LeLviF™|
`
`13
`
`
`
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 13 of 21
`
`US 2013/0007665 Al
`
`
`
`YOONO}SPS
`
`
`
`
`
`uBjsepey]ayy|(veesyoo7
`
`
`
`gaunr‘Aepuoy
`
`jJ89meuAW
`
`noyoauy
`
`AABIA0]SDHS
`
`UBBISGYOO]6,
`
`OoLelvae
`(@z60US)SUIOIPOUOYE]OFOLUILCQINOA
`
`
`
`Aepuerse),eoguyopLal)
`WVZ¥:6puogsowerC)
`
`
`
`
`
`“Ory“SLeIeWsISASaSau]JO
`
`
`\cee.@Z00UG)INOA@y2}0}SluLLGG)OUIDIDGLU
`
`
`fo“OC“SUOeLU@ISASeSey}10
`eco.|§SOYOOYCQ2SIURIQ45eyBOIS
`
`Aepiersa,eoquyor|)
`
`NverspuogsewerOC]
`
`
`OfLevee|
`
`ubisepoulayy|(jysy007
`
`UBBIIGYOO]ey|
`
`268
`
`eomeuAu
`
`NOYOoUs)
`
`14
`
`(OUlLYUssz|
`
`Be ene ae ene ee eee ee ee ee ee oe as oh.
`
`14
`
`
`
`
`
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 14 of 21
`
`US 2013/0007665 Al
`
`
`
`avezSever HOS|
`JAWIGOUCHEOYHOUMBIA0}USOI0S
`
`
`@U}JGdO}Gy}widi)UMODGCIMS
`Aenupir: siouued‘seboegOl|pei
`‘spunos|MNDLC
`
`
`
`Sisuueg‘SpUuNoS‘sebpeary|AVQS
`sigue,‘spunoS‘seipeq
`
`
`UOHBOYONUp!TebpiayJeyreaya|]:LL6--aaluec
`
`
`
`SIOUUES“SHUNOS|yawen
`escigL_]]
`WYZZ|&Slvr] —/
`
`
`isMaddydi& SUOHESUNONC)
` spuneso>|SOUAIGSUCIEOO}]iP“annnnnnnnene
`
`aponaueiday<i<K
`
`d6Oia
`
`V6Ola
`
`
`
`
`
`Sealy
`
`ronimLI|
`
`Sueypal
`unyLJ
`
`
`
`2064
`
`sues
`
`
`
`15
`
`15
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 15 of 21
`
`US 2013/0007665 Al
`
`Gunes|WYZZ:14&Live
`
`
`
`
`
`SJAUUR‘SDLINGG‘seBoeg
`
`soya
`
`
`
`
`
`
`
`BLOTASIUSSUONBOWNOR,ULION)
`
`
`
`siguueg‘sebpeg
`
`Heyyul
`
`
`
`aU]10doyay}Wid}UMODading
`
`
`
`AQVUGOUGIEOHIOUMGAOFUE3I2S
`
`LOS
`
`WY2o-bE&Leivee
`
`
`
`G08)SUONBONNON
`
`
`
`
`
`8}jodO}eu}WO4UMOpedims
`
`
`
`ISJUSOUONROHNOUMBIA01AGIOS
`
`
`reBpyy
`
` seueanal|LLG-—-491UIG)UONBOUIONUBulAg|]
`
`Apenueyy
`
`“HOS
`
`
`
`
`
`syeuLEg‘sefpegryfe
`
`16
`
`
`
`
`
`siguueg‘spunas‘seboeg
`
`AegeCI
`
`
`
`
`
`SIOUUER‘SpUNOS‘sebpeg
`
`Apqe
`
`C6Dis
`
`06“Dla
`
`
`
`ELG-™-40}UaQUOESYNONUlJON
`
`
`
`Sony“SQuUNnoGm7
`
`SIGUUBRSPunGS
`
`JUBOSIOISL_]
`
`
`
`Susy‘SpunOS7
`
`
`
`
`
`seuueg‘spunos‘seipeg
`
`ISTIMLLl
`
`16
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 16 of 21
`
`US 2013/0007665 Al
`
`
`
`
`‘Buipeaooldas0jeduolgeueayNDe!sary
`
`
`YaAI0Saujodo}ounleseaddesrouueg
`
`
`
`
`JejU94UOHROUNON
`
`SUONEOUTON&Levee]
`
`MOUS
`
`17
`
`46“Ola
`
`ree
`
`‘AuponewoiieAemeopue
`
`17
`
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 17 of 21
`
`US 2013/0007665 Al
`
`HenS001
`
`
`
`38aAuiBABYOAOG
`
`eonidAuyejen|4Buimnig
`seg
`
`AOBIE)Ont}
`
`SOROUdHWLBIBSAoLA]ans4ps
`
`
`
`K
`
`18
`
`18
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 18 of 21
`
`US 2013/0007665 Al
`
`
`
`SUCHESIHONMONON
`
`GOLinj;Seno:wey{aES
`
`INYOZOL POOL
`
`Sun
`
`SopHu04
`
`my
`
`19
`
`19
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 19 of 21
`
`US 2013/0007665 Al
`
`AHAedQi
`
`900a
`
`BOOL
`iwwoes
`
`|WWOO:LL
`
`
`
`ozeunr‘Aposunuy
`
`HESPOSSI@[RELLGO!
`CATCR,i.
`
`20
`
`yoo
`
`|u
`
`NO]aps
`
`20
`
`
`
`
`Patent Application Publication
`
`Jan. 3,2013 Sheet 20 of 21
`
`US 2013/0007665 Al
`
`
`«71100
`1104
`
`| RECEIVE APLURALITYOF NOTIFICATIONS
`
`
`FROMAT LEAST ONE APPLICATION
`
`OPERATING IN A LOCKED STATE
`
`
`
`| PROVIDE A PULL-DOWNOPTION ASSOCIATED
`L_WITHTHEPLURALITYOFNOTIFICATIONS
`Fi 10
`
`| DETECT THAT USER HAS SELECTED
`
`RECEIVE A PLURALITY OF NOTIFICATIONS, |
`THE PULL-DOWN OPTION
`WHERE THE PLURALITY OF NOTIFICATIONS)
`1112
`INCLUDE AT LEAST ONE OF APUSH-BASED|
`
`
`NOTIFICATION AND ATRIGGER-BASED |
`| PROVIDER A LISTOFTHE PLURALITY.
`NOTIFICATION
`OF NOTIFICATIONS TO THE USER
`
`Hog
`
`| DETECT THATAN ELECTRONIC DEVICE
`
`
`
`FIG. 17
`
`i200
`
`( START }-71202
`|
`
`1204
`
`
`
`
`DETECT THAT AN ELECTRONIC DEVICE]
`
`ISINAN UNLOCKED STATE
`|
`|
`1208
`
`
`y
`
`
`DISPLAY THE NOTIFICATION CENTER, |
`WHERE THE NOTIFICATION CENTER |
`INCLUDES A PLURALITY OF PANELS
`|
`ASSOCIATED WTIH THE PLURALITY |
`
`OF NOTIFICATIONS
`Can)~212
`
`TO ACCSS A NOTIFICATION CENTER
`
`FIG. 12
`
`21
`
`21
`
`
`
`Patent Application Publication
`
`Jan. 3, 2013 Sheet 21 of 21
`
`US 2013/0007665 Al
`
`wl 300
`START}71802
`1304
`
`RECEIVE A NOTIFICATION FROM
`
`| DETECT THATAN ELECTRONIC DEVICE
`iS IN AN UNLOCKED STATE
`
`PROVIDE A BANNER ASSOCIATED WITH
`THE NOTIFICATION, WHERE THE BANNER
`| ALLOWS AUSER TO ACCESS AT LEAST
`ONE CONTROL OVERLAPPING
`WITH THE BANNER
`nn Stapp 1402
`
`|
`
`we 400
`
`AT LEAST ONE APPLICATION
`
`| OPTIONS, AND ALERT STYLE OPTIONS |
`
`FIG. 13
`
`|
`
`PROVIDEAN OPTIONTO MODIFY
`
`SETTINGSFORDEVICEsa
`DETECT ar AUSER HAS
`_
`
`|
`
`SELECTED THE OPTION
`
`PROVIDE A PLURALITY OF NOTIFICATION]
`| SETTINGS, WHERE THE PLURALITY OF |
`|
`NOTIFICATTION SETTINGS INCLUDE
`|
`OPTIONS ASSOCIATED WITH ONE OR |
`| MORE OF AN ORDER OF NOTIFICATIONS |
`OPTIONS, A NUMBER OF NOTIFICATIONS|
`
`22
`
`22
`
`
`
`US 2013/0007665 Al
`
`Jan. 3, 2013
`
`SYSTEMS AND METHODSFOR DISPLAYING
`NOTIFICATIONS RECEIVED FROM
`MULTIPLE APPLICATIONS
`
`CROSS-REFERENCE TO RELATED
`APPLICATION
`
`[0001] This application claims the benefit of U.S. Provi-
`sional Patent Application No. 61/493,470,filed Jun. 5, 2011,
`the disclosure ofwhichis incorporated by reference herein in
`its entirety.
`
`FIELD OF THE INVENTION
`
`[0002] The disclosed embodimentsrelate generally to elec-
`tronic devices, and moreparticularly, to electronic devices
`displaying notifications received from multiple applications.
`
`Backgroundofthe Disclosure
`
`[0003] Today’s portable electronic devicesare able to inte-
`grate multiple functionalities. These devices are capable of
`running multiple applications. In particular, some of these
`applications may generate trigger events that canresult in the
`display of a notification.
`[0004] Because electronic devices can contain many appli-
`cations, the potential for application-based notifications can
`become numerous and unwieldy, particularly if a user is
`required to access each application individually in order to
`view application-specific notifications. Accordingly, whatis
`neededis a moreefficient and intuitive approach for organiz-
`ing notifications and providing users with instant access to
`these notifications.
`
`SUMMARY OF THE DISCLOSURE
`
`Systems and methodsare disclosed for displaying
`[0005]
`notifications received from multiple applications. An elec-
`tronic device can have a touch-sensitive input/output (“I/O”)
`device (e.g., 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.
`[0006]
`In particular, the electronic device can include a
`notification modulethat can interface with one or more Appli-
`cation Programming Interfaces (“APIs’’) to generate various
`types of notifications while the device is in either a locked
`state or an unlockedstate. Furthermore, the notification mod-
`ule can provide options for customizing notification settings.
`[0007]
`In some embodiments, the notification module can
`monitornotifications that are received from multiple applica-
`tions. Responsive to receiving the notifications, the notifica-
`tion module can control the mannerin whichthenotifications
`
`are displayed while the electronic device is operating in a
`locked or an unlockedstate. In some embodiments, the elec-
`tronic device can allow a user to customize how notifications
`are displayed while the device is in the locked and/or the
`unlockedstate.
`
`Insome embodiments, while the device is operating
`[0008]
`in a lockedstate, the notification module can display a pull-
`down option, which can allow a user to view previously
`received notifications. In some embodiments, the notification
`module can aggregate the notifications that are received, and
`can provide the aggregated notifications as multiple panes in
`anotification center. Thus, each pane ofthe notification center
`can be associated with a different application.In addition, the
`
`notification module can display banners that correspond to
`one or more notifications that are received from different
`
`applications.
`[0009] The one or more APIs that interface with the notifi-
`cation module can bein an environmentwith calling program
`code interacting with another program code being called
`through the one or more interfaces. Various function calls,
`messages or other types of invocations, which further may
`include various kinds ofparameters, can be transferred via the
`APIs betweenthe calling program andthe code being called.
`In addition, an API mayprovidethe calling program code the
`ability to use data types or classes defined in the API and
`implementedin the called program code.
`[0010] At least certain embodiments include an environ-
`ment with a calling software componentinteracting with a
`called software component through an API. A method for
`operating through an APIin this environmentincludestrans-
`ferring one or more function calls, messages, and/or other
`types of invocations or parameters via the API.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0011] The above andother aspects and advantages of the
`invention will become more apparent upon consideration of
`the following detailed description, taken in conjunction with
`accompanying drawings, in which like reference characters
`refer to like parts throughout, and in which:
`[0012]
`FIGS. 1 and 2 are block diagrams of electronic
`devices configured in accordance with various embodiments
`ofthe invention;
`[0013]
`FIGS. 3 and 4 are block diagrams of application
`programming interface (“API”) architectures in accordance
`with various embodiments of the invention;
`[0014]
`FIG. 5 is a display screen associated with a home
`screen of an electronic device in accordance with various
`embodiments of the invention;
`[0015]
`FIGS. 6A-6Eare display screens associated with an
`illustrative notification center in accordance with various
`embodimentsofthe invention;
`[0016]
`FIGS. 6F-6Hare display screens associated with an
`illustrative notification center in accordance with various
`embodimentsofthe invention;
`[0017]
`FIGS. 7A-7E are display screens associated with
`illustrative banners in accordance with various embodiments
`ofthe invention;
`[0018]
`FIGS. 8A-8F are display screens associated with
`displaying notifications while an electronic device is operat-
`ing in alockedstate in accordance with various embodiments
`of the invention;
`
`FIGS. 9A-9F are display screens associated with
`[0019]
`customizing notification settings in accordance with various
`embodimentsofthe invention;
`[0020]
`FIGS. 10A-10C are display screens associated with
`notifications in accordance with various embodiments of the
`invention;
`[0021]
`FIG. 11 is a flowchart of anillustrative process for
`displaying a pull-downoption in responseto receiving mul-
`tiple notifications in accordance with various embodiments of
`the invention;
`[0022]
`FIG. 12 is a flowchart of anillustrative process for
`displaying a notification center in accordance with various
`embodimentsofthe invention;
`
`23
`
`23
`
`
`
`US 2013/0007665 Al
`
`Jan. 3, 2013
`
`FIG. 13 is a flowchart of an illustrative process for
`[0023]
`providing a banner in accordance with various embodiments
`of the invention; and
`[0024]
`FIG. 14 is a flowchart of an illustrative process for
`providing notification settings in accordance with various
`embodiments of the invention.
`
`DETAILED DESCRIPTION OF THE
`DISCLOSURE
`
`Systems and methods for displaying notifications
`[0025]
`received from multiple applications are provided.
`[0026]
`FIG. 1 illustrates a block diagram of electronic
`device 100 that includes touch I/O device 102 that can receive
`touch input for interacting with computing system 104 via
`wired or wireless communication channel 106. Touch I/O
`
`device 102 may be used to provide user input to computing
`system 104 in lieu of or in combination with other input
`devices such as a keyboard, mouse, etc. One or more touch
`I/O devices 102 may be used for providing user input to
`computing system 104. Touch I/O device 102 may be an
`integral part of computing system 104(e.g., touch screen on
`a laptop) or may be separate from computing system 104.
`[0027] Touch I/O device 102 may include a touch sensitive
`panel which is wholly orpartially transparent, semitranspar-
`ent, non-transparent, opaque or any combination thereof.
`Touch I/O device 102 may be embodied as a touch screen,
`touch pad, a touch screen functioning as a touch pad(e.g., a
`touch screen replacing the touchpad of a laptop), a touch
`screen or touchpad combinedor incorporated with any other
`input device (e.g., a touch screen or touchpad disposed on a
`keyboard) or any multi-dimensional object having a touch
`sensitive surface for receiving touch input.
`[0028]
`Inone example, touch I/O device 102 embodied as a
`touch screen may include a transparent and/or semitranspar-
`ent touch sensitive panel partially or wholly positioned overat
`least a portion of a display. According to this embodiment,
`touch I/O device 102 functions to display graphical data
`transmitted from computing system 104 (and/or another
`source) and also functions to receive user input. In other
`embodiments, touch I/O device 102 may be embodied as an
`integrated touch screen where touch sensitive components/
`devices are integral with display components/devices. In still
`other embodiments, a touch screen may be usedas a supple-
`mental or additional display screen for displaying supple-
`mental or the same graphical data as a primary display and to
`receive touch input.
`[0029] Touch I/O device 102 may be configured to detect
`the location of one or more touchesor near touches on device
`102 based on capacitive, resistive, optical, acoustic, induc-
`tive, mechanical, chemical measurements, or any phenomena
`that can be measured with respect to the occurrences of the
`one or more touches or near touches in proximity to device
`102. Software, hardware,
`firmware or any combination
`thereof may be used to process the measurements of the
`detected touchesto identify and track one or more gestures. A
`gesture may correspond to stationary or non-stationary,
`single or multiple, touches or near touches on touch I/O
`device 102. A gesture may be performed by moving one or
`morefingers or other objects in a particular manner on touch
`I/O device 102 such as tapping, pressing, rocking, scrubbing,
`twisting, changing orientation, pressing with varying pres-
`sure andthelike at essentially the sametime, contiguously, or
`consecutively. A gesture may be characterized by, but is not
`limited to a pinching,sliding, swiping,rotating,flexing, drag-
`
`ging, or tapping motion between or with any other finger or
`fingers. A single gesture may be performed with one or more
`hands, by one or more users, or any combination thereof.
`[0030] Computing system 104 may drive a display with
`graphicaldata to display a graphical user interface (GUI). The
`GUI may be configured to receive touch input via touch I/O
`device 102. Embodiedas a touch screen, touch I/O device 102
`may display the GUI. Alternatively, the GUI may be dis-
`played on a display separate from touch I/O device 102. The
`GUI mayinclude graphical elements displayed at particular
`locations within the interface. Graphical elements may
`include but are not limited to a variety of displayed virtual
`input devices including virtual scroll wheels, a virtual key-
`board, virtual knobs, virtual buttons, any virtual UI, and the
`like. A user may perform gestures at one or moreparticular
`locations on touch I/O device 102 that maybe associated with
`the graphical elements ofthe GUI. In other embodiments, the
`user may perform gestures at one or morelocations that are
`independent of the locations of graphical elements of the
`GUI. Gestures performed on touch I/O device 102 may
`directly or indirectly manipulate, control, modify, move,
`actuate, initiate or generally affect graphical elements such as
`cursors, icons, mediafiles, lists, text, all or portions ofimages,
`or the like within the GUI. For instance,in the case of a touch
`screen, a user maydirectly interact with a graphical element
`by performing a gesture over the graphical element on the
`touch screen. Alternatively, a touch pad generally provides
`indirect interaction. Gestures may also affect non-displayed
`GUIelements(e.g., causing user interfaces to appear) or may
`affect other actions within computing system 104(e.g., affect
`a state or mode of a GUI, application, or operating system).
`Gestures may or may not be performed on touch I/O device
`102 in conjunction with a displayed cursor. For instance, in
`the case in which gestures are performed on a touchpad, a
`cursor (or pointer) may be displayed on a display screen or
`touch screen andthe cursor may be controlled via touch input
`on the touchpad to interact with graphical objects on the
`display screen. In other embodiments in which gestures are
`performed directly on a touch screen, a user may interact
`directly with objects on the touch screen, with or without a
`cursor or pointer being displayed on the touch screen.
`[0031] Feedback may be provided to the user via commu-
`nication channel 106 in responseto or based on the touch or
`near touches on touch I/O device 102. Feedback may be
`transmitted optically, mechanically, electrically, olfactory,
`acoustically, or the like or any combination thereof and in a
`variable or non-variable manner.
`
`[0032] Attention is nowdirected towards embodiments ofa
`system architecture that may be embodied within any por-
`table or non-portable device including but not limited to a
`communication device (e.g. mobile phone, smart phone), a
`multi-media device (e.g., MP3 player, TV, radio), a portable
`or handheld computer(e.g., tablet, netbook, laptop), a desk-
`top computer, an All-In-One desktop, a peripheral device, or
`any other system or device adaptable to the inclusion of
`system architecture 2000, including combinations of two or
`moreofthese types of devices. FIG. 2 is a block diagram of
`one embodimentof system 200 that can include one or more
`computer-readable mediums 201, processing system 204,
`input/Output (I/O) subsystem 206, radio frequency (RF) cir-
`cuitry 208, and audio circuitry 210. These components may
`be coupled by one or more communication busesor signal
`lines 203. System 200 can be the sameasor similar to elec-
`tronic device 100 (FIG.1).
`
`24
`
`24
`
`
`
`US 2013/0007665 Al
`
`Jan. 3, 2013
`
`It should be apparentthat the architecture shown in
`[0033]
`FIG. 2 is only one example architecture of system 200, and
`that system 200 could have more or fewer components than
`shown,or a different configuration of components. The vari-
`ous components shown in FIG. 2 can be implemented in
`hardware, software, firmware or any combination thereof,
`including one or more signal processing and/or application
`specific integrated circuits.
`[0034]
`RFcircuitry 208 is used to send and receive infor-
`mation over a wireless link or network to one or more other
`
`devices and includes well-known circuitry for performing
`this function. RF circuitry 208 and audio circuitry 210 can be
`coupled to processing system 204 via peripherals interface
`216.Interface 216 can include various known components for
`establishing and maintaining communication between
`peripherals and processing system 204. Audio circuitry 210
`can be coupledto audio speaker 250 and microphone 252 and
`includes known circuitry for processing voice signals
`received from interface 216 to enable a user to communicate
`in real-time with other users. In some embodiments, audio
`circuitry 210 includes a headphonejack (not shown).
`[0035]
`Peripherals interface 216 can couple the input and
`output peripherals of the system to processor 218 and com-
`puter-readable medium 201. One or more processors 218 can
`communicate with one or more computer-readable mediums
`201 via controller 220. Computer-readable medium 201 can
`be any device or medium that can store code and/or data for
`use by one or more processors 218. Medium 201 can include
`amemory hierarchy, including but not limited to cache, main
`memory and secondary memory. The memory hierarchy can
`be implemented using any combination of RAM (e.g.,
`SRAM, DRAM, DDRAM), ROM, FLASH,magnetic and/or
`optical storage devices, such as disk drives, magnetic tape,
`CDs (compact disks) and DVDs
`(digital video discs).
`Medium 201 mayalso include a transmission medium for
`carrying information-bearing signals indicative of computer
`instructions or data (with or without a carrier wave upon
`whichthe signals are modulated). For example, the transmis-
`sion medium may include a communications network,
`including but notlimited to the Internet(also referred to as the
`World Wide Web), intranet(s), Local Area Networks (LANs),
`Wide Local Area Networks (WLANs), Storage Area Net-
`works (SANs), Metropolitan Area Networks (MAN)andthe
`like.
`
`[0036] One or more processors 218 can run varioussoft-
`ware components stored in medium 201 to perform various
`functions for system 200. In some embodiments,the software
`components include operating system 222, communication
`module (or set of instructions) 224, touch processing module
`(or set ofinstructions) 226, graphics module (orset ofinstruc-
`tions) 228, one or more applications (or set of instructions)
`230, and notification module 238. Each of these modules and
`above noted applications correspondto a set of instructions
`for performing one or more functions described above and the
`methods described in this application (e.g., the computer-
`implemented methods and other information processing
`methods described herein). These modules (e.g., sets of
`instructions) need not be implemented as separate software
`programs, procedures or modules, and thus various subsets of
`these modules may be combinedor otherwise rearranged in
`various embodiments. In some embodiments, medium 201
`maystore a subset of the modules and data structures identi-
`fied above. Furthermore, medium 201 may store additional
`modules and data structures not described above.
`
`[0037] Operating system 222 can include various proce-
`dures, sets of instructions, software components and/or driv-
`ers for controlling and managing general system tasks(e.g.,
`memory management, storage device control, power man-
`agement, etc.) and facilitates communication between vari-
`ous hardware and software components.
`[0038] Communication module 224 facilitates communi-
`cation with other devices over one or more external ports 236
`or via RF circuitry 208 and includes various software com-
`ponents for handling data received from RF circuitry 208
`and/or external port 236.
`[0039] Graphics module 228 can include various known
`software components for rendering, animating and display-
`ing graphical objects on a display surface. In embodimentsin
`which touch I/O device 212 is a touch sensitive display(e.g.,
`touch screen), graphics module 2028 includes components
`for rendering, displaying, and animating objects on the touch
`sensitive display.
`[0040] One ormoreapplications 230 can include any appli-
`cations installed on system 200, including withoutlimitation,
`a browser, address book, contactlist, email, instant messag-
`ing, word processing, keyboard emulation, widgets, JAVA-
`enabled applications, encryption, digital rights management,
`voice recognition, voice replication, location determination
`capability (such as that provided by the global positioning
`system (GPS)), a music player, etc.
`[0041] Touch processing module 226 includesvarioussoft-
`ware components for performing various tasks associated
`with touch I/O device 212 including but notlimited to receiv-
`ing and processing touch input received from I/O device 212
`via touch I/O device controller 232. For example, touch pro-
`cessing module 226 can also include software components
`for performing tasks associated with other I/O devices 214.
`Thatis, touch processing module 226 can receive and process
`inputs received from I/O device 214 via other I/O controller
`234.
`
`System 200 may further include notification module
`[0042]
`238 for performing the method/functions as described herein
`in connection with FIGS. 5-14. Notification module 238 may
`at least function to monitor notifications that are received
`from multiple applications(e.g., multiple applications on sys-
`tem 200 or data providersthat are transmitting data to system
`200). For example, notification module 238 can receive noti-
`fications from both non-third party applications and third
`party applications. In addition, notification module 238 can
`receive push-basednotifications, trigger-based notifications,
`and/or other types of personalnotifications.
`[0043] Responsive to receiving the notifications, notifica-
`tion module 238 can control the mannerin which the notifi-
`
`cations are displayed while system 200 is operating in a
`lockedstate or an unlockedstate. For example, while system
`200 is operating in a lockedstate, notification module 238 can
`display notifications in a banner, and control the manner in
`whichthesenotifications are displayed. As another example,
`notification module 238 can aggregate notifications that are
`received, and can provide the aggregated notifications as mul-
`tiple panes in a notification center. Thus, each pane can be
`associated with a different application. In some embodi-
`ments, notification module 238 can allow a user to customize
`how notifications are displayed on system 200.
`[0044]
`Ina locked state, system 200 may limit user access
`to certain features. For example, in a locked state, the user
`maynotbe able to activate various device features, such as
`placing a telephonecall, or entering en email. In other words,
`
`25
`
`25
`
`
`
`US 2013/0007665 Al
`
`Jan. 3, 2013
`
`the locked state is meant to prevent inadvertent access to
`system 200. When system 200 is an unlockedstate, the user
`has full access to all features of the system.
`
`[0045] Moreover, notification module 238 can provide a
`specific type of data formatting to data providers, which can
`then allow the data providersto directparticular notifications
`to various users. Personsskilled in the art will appreciate that
`any suitable type of formatting may also be used. For
`example, in order to display a notification on system 200,
`notification module 238 can require a data providerto specify
`the title (e.g., name ofuser), the subtitle (e.g., the subtitle ofan
`incoming messageoralert), and the body (e.g., body of the
`message).
`
`[0046] Notification module 238 mayalso interface with
`touch processing module 226 in orderto receive user inputs.
`In addition, notification module 238 can interface with graph-
`ics module 228 in order to display various graphical objects
`on a display. Notification module 238 may be embodied as
`hardware, software, firmware, or any combination thereof.
`Although notification module 238 is shownto reside within
`medium 201, all or portions of module 238 may be embodied
`within other components within system 200 or may be wholly
`embodied as a separate component within system 200.
`
`I/O subsystem 206 is coupled to touch I/O device
`[0047]
`212 and one or more other I/O devices 214 for controlling or
`performingvarious functions. Touch I/O device 212 commu-
`nicates with processing system 204 via touch I/O device
`controller 232, which includes various components for pro-
`cessing user touch input (e.g., scanning hardware). One or
`more other input controllers 234 receives/sends electrical
`signals from/to other I/O devices 214. Other I/O devices 214
`may include physical buttons, dials, slider switches, sticks,
`keyboards, touch pads, additional display screens, or any
`combination thereof.
`
`Ifembodied as a touch screen, touch I/O device 212
`[0048]
`displays v



