SCREEN DISPLAY IN APPLICATION SWITCHING
[0001] A device may have two or more applications running concurrently. For example, a user
of a personal digital assistant (PDA) may activate an e-mail application, a calendar
application, an instant messaging (IM) application and the "home page" of the PDA.
The display of a PDA is small, so usually only one of the running applications has
its screen shown on the display at any given time. The device may have a task-switching
program to enable a user to select which application has its screen shown on the display.
[0002] An application-switching program displays representations of applications, for example
icons, on a screen of a device. As a user of the device navigates between the representations,
a screen of the application to a representation of which the user has currently navigated
is shown in the background of the display. Showing the screen in the background of
the display provides additional feedback to the user regarding the navigation and
may assist the user in deciding whether to switch to that application. It also enables
the user to monitor the application to a representation of which the user has currently
navigated without switching to the application.
[0003] The location of the representations may be a fixed position in the display or may
be determined to lessen the amount of information in the screen that is obscured by
the representations. If certain areas of the screen are more important than others,
the location may be determined to lessen the amount of information in those certain
areas that is obscured by the representations.
BRIEF DESCRIPTION OF THE DRAWINGS
[0004] Embodiments are illustrated by way of example and not limitation in the figures of
the accompanying drawings, in which like reference numerals indicate corresponding,
analogous or similar elements, and in which:
[0005] Figure 1 is an illustration of an exemplary device, according to some embodiments;
[0006] Figure 2 is a block diagram of an exemplary device, according to some embodiments;
[0007] Figure 3 is a flowchart of an exemplary method implemented by an instant messaging
client on a device, according to some embodiments; and
[0008] Figures 4 - 9 are illustrations of an exemplary device and its display, according
to some embodiments.
[0009] It will be appreciated that for simplicity and clarity of illustration, elements
shown in the figures have not necessarily been drawn to scale. For example, the dimensions
of some of the elements may be exaggerated relative to other elements for clarity.
DESCRIPTION OF PREFERRED EMBODIMENTS
[0010] In the following detailed description, numerous specific details are set forth in
order to provide a thorough understanding of embodiments. However it will be understood
by those of ordinary skill in the art that the embodiments may be practiced without
these specific details. In other instances, well-known methods, procedures, components
and circuits have not been described in detail so as not to obscure the embodiments.
[0011] According to embodiments of the invention, an application-switching program may display
representations of applications, for example icons, on a screen of a device.
[0012] As a user of the device navigates between the representations, a screen of the application
to a representation of which the user has currently navigated is shown in the background
of the display. Showing the screen in the background of the display provides additional
feedback to the user regarding the navigation and may assist the user in deciding
whether to switch to that application. It also enables the user to monitor the application
to a representation of which the user has currently navigated without switching to
the application.
[0013] An appropriate location in the display for the representations may be determined.
For example, the location may be fixed at the center of the display. Alternatively,
the location may be determined so as to lessen the amount of information in the screen
that is obscured by the representations. Alternatively, if certain areas of the screen
are more important than others, the location may be determined so as to reduce the
amount of those important areas that is obscured by the representations.
[0014] Reference is made now to Figures 1 and 2. Figure 1 is an illustration of an exemplary
device 100, according to some embodiments, and Figure 2 is a block diagram of device
100, according to some embodiments. For clarity, some components and features of device
100 are not shown in Figures 1 and 2 and are not described explicitly below.
[0015] Device 100 includes a processor 102 and a memory 104 coupled to processor 102. Device
100 includes an audio input element 106, for example a microphone, an audio output
element 108, for example, a speaker, and an audio coder-decoder (codec) 110, however,
embodiments of the invention are also applicable to devices without these audio components.
[0016] Device 100 includes a display 112 coupled to processor 102. Device 100 also includes
one or more user input elements 114 coupled to processor 102, for example, a keyboard
116 and a thumbwheel 118. Device 100 may include additional user input and/or output
elements that are not shown in Figure 1, for example a trackball. Keyboard 116 may
be embedded in full or in part within display 112, i.e. display 112 may be a touch
screen.
[0017] Device 100 includes a radio 120, compatible with one or more wireless communication
standards, coupled to processor 102 and an antenna 122 coupled to radio 120. By way
of radio 120, antenna 122 and a communication infrastructure (not shown) that is external
to device 100, device 100 may be able to establish telephone and/or data communication
sessions with other systems (not shown). However, embodiments of the invention are
also applicable to devices without these wireless communication components.
[0018] Data communication sessions may include data in the form of plain text, data files,
voice files, image files, movie files, streaming audio, streaming video, animation,
or any other suitable data form. A non-exhaustive list of examples for data communication
sessions includes sending and receiving electronic mail (e-mail), sending and receiving
instant messages, sending and receiving paging messages, sending and receiving short
message service (SMS) messages, and any other suitable data communication sessions.
For data communications supported by device 100, memory 104 may store respective application
modules to be executed by processor 102, for example, an e-mail application module
124, an SMS application module 126, a paging application module 128, an instant messaging
application module 130, and a web browser application module 131.
[0019] Memory 104 stores a system management application module 132 and may optionally store
other application modules, for example, an address book or contacts application module
134 and a calendar application module 136.
[0020] These application modules are just examples and embodiments of the invention are
also applicable to devices with a different set of application modules.
[0021] For the purpose of the description and the claims, several terms are defined hereinbelow:
a) an application is considered "running" if system management application module
132 or a user of device 100 previously selected that application for execution, and
execution of that application is not yet terminated; and b) an application is considered
"active" if it is running and a screen associated with that application is displayed
on display 112. System management application module 132 may be considered running
at all times.
[0022] According to some embodiments, memory 104 may store executable code 140 which, when
executed by processor 102, enables a user to switch between applications running on
device 100. The application to which a user has switched will have at least one of
its screens shown in display 112.
[0023] Figure 3 is a flowchart of an exemplary method to be implemented by code 140, according
to some embodiments.
[0024] At 300, an appropriate location in display 112 for representations of running applications
may be determined. For example, the location may be fixed at the center of display
112. Alternatively, the location may be determined so as to reduce the amount of information
in the screen that is obscured by the representations. Alternatively, if certain areas
of the screen are more important than others, the location may be determined so as
to reduce the amount of those important areas that is obscured by the representations.
[0025] At 302, representations of running applications are shown in the foreground of display
112.
[0026] At 304, navigation through the representations by a user of device 100 is enabled.
The user uses at least one user input element 114 to navigate through the representations.
Using at least one user input element 114, the user may indicate to device 100 to
which application to switch by selecting a corresponding one of the representations.
For example, the user may navigate through the representations by rolling thumbwheel
118 and may select a representation by activating a tactile switching action of thumbwheel
118.
[0027] At 306, as the user navigates, a screen of the application to a representation of
which the user has currently navigated is shown in the background of display 112.
[0028] Figure 4 illustrates an exemplary screen 400 shown on display 112. Screen 400 is
referred to as a "Home screen" and is associated with system management application
module 132. The home screen includes representations 402 of application modules that
are stored in memory 104.
[0029] In response to an input previously received from a user of device 100, a subscreen
404 is shown in the foreground of display 112, thereby obscuring a portion of screen
400. Subscreen 404 includes representations 406, 408, 410, 412 and 414 of applications
that are running on device 100, namely application modules 132, 136, 130, 124 and
131, respectively. In this example the representations are icons, however, other suitable
representations such as text are also possible.
[0030] A user of device 100 may navigate through representations 406, 408, 410, 412 and
414, and may indicate to device 100 to which of the applications to switch by selecting
a corresponding one of the representations. During navigation, the representation
to which the user has navigated is emphasized in subscreen 404 with respect to the
others. In Figure 4, representation 414 of the home screen is emphasized by a solid
circle 416 around it and display of the caption "Home Screen".
[0031] The user may navigate from representation 414 to representation 412 of calendar application
module 136. As shown in Figure 5, an exemplary screen 500 of calendar application
module 136 is shown in the background of display 112, while a subscreen 504 is shown
in the foreground of display 112. Subscreen 504 differs from subscreen 404 in that
representation 414 is not emphasized and representation 412 is emphasized by a solid
circle 516 around it and display of the caption "Calendar".
[0032] The user may continue to navigate from representation 412 to representation 410 of
instant messaging application module 130. As shown in Figure 6, an exemplary screen
600 of instant messaging application module 130 is shown in the background of display
112, while a subscreen 604 is shown in the foreground of display 112. Subscreen 604
differs from subscreen 504 in that representation 412 is not emphasized and representation
410 is emphasized by a solid circle 616 around it and display of the caption "BlackBerry
Messenger".
[0033] The user may continue to navigate from representation 410 to representation 408 of
e-mail application module 124. As shown in Figure 7, an exemplary screen 700 of e-mail
application module 124 is shown in the background of display 112, while a subscreen
704 is shown in the foreground of display 112. Subscreen 704 differs from subscreen
604 in that representation 410 is not emphasized and representation 408 is emphasized
by a solid circle 716 around it and display of the caption "Messages".
[0034] The user may continue to navigate from representation 408 to representation 406 of
web browser application module 131. As shown in Figure 8, an exemplary screen 800
of web browser application module 131 is shown in the background of display 112, while
a subscreen 804 is shown in the foreground of display 112. Subscreen 804 differs from
subscreen 704 in that representation 408 is not emphasized and representation 406
is emphasized by a solid circle 816 around it and display of the caption "Browser".
[0035] The location of subscreens 404, 504, 604, 704 and 804 in display 112 obscures useful
information in screens 400, 500, 600, 700 and 800, respectively. Therefore, a more
appropriate location for the representations of the running applications may be as
shown in Figure 9, in which subscreen 604 is placed so as to lessen the amount of
information in screen 600 that is obscured by the representations in subscreen 604.
Subscreens 404, 504, 604, 704 and 804 may be moved in different locations of the screen,
for example, top, middle, bottom. The location of the subscreens may be defined by
the user using Cartesian coordinates of the screen, or may be pre-selected by the
user from a set of options such as top, middle and bottom.
[0036] Subscreens 404, 504, 604, 704 and 804 show the representations in a single horizontal
row, but more than one horizontal row is also possible. Likewise, one or more vertical
columns of representations is also possible, and such subscreens may be located to
the left, middle or right of the screen.
[0037] Various techniques or a combination thereof may be used to distinguish the subscreens
in the foreground of the display from the screens in the background of the display.
One such technique is to use a larger or smaller font size for the captions in the
subscreens than that used in the screens. Another such technique is to have different
colors for the icons in the subscreens than the colors of the icons in the screens.
Yet another technique is to generate different sounds as the user navigates from one
representation to another in the subscreens than the sounds generated as the user
navigates in a screen.
[0038] Subscreens 404, 504, 604, 704 and 804 will disappear from display 112 once the user
has selected a representation to indicate to which application to switch to.
[0039] A non-exhaustive list of examples for communication protocols with which radio 120
may comply includes Direct Sequence - Code Division Multiple Access (DS-CDMA) cellular
radiotelephone communication, Global System for Mobile Communications (GSM) cellular
radiotelephone, North American Digital Cellular (NADC) cellular radiotelephone, Time
Division Multiple Access (TDMA), Extended-TDMA (E-TDMA) cellular radiotelephone, wideband
CDMA (WCDMA), General Packet Radio Service (GPRS), Enhanced Data for GSM Evolution
(EDGE), 3G and 4G communication.
[0040] Alternatively, device 100 may be "IEEE 802.11-enabled", which means that radio 120
may comply with one or more of the 802.11 family of standards defined by the Institute
of Electrical and Electronic Engineers (IEEE) for Wireless Local Area Network (LAN)
Medium Access Control (MAC) and Physical layer (PHY) specifications, other existing
WLAN standards or future related standards.
[0041] A non-exhaustive list of examples for device 100 includes a cellular phone, a smart
phone, a personal digital assistant (PDA), an electronic mail (Email) client, a gaming
device, a laptop computer, a notebook computer, a wireless terminal, and any other
suitable mobile apparatus.
[0042] A non-exhaustive list of examples for processor 102 includes microprocessors, microcontrollers,
central processing units (CPU), digital signal processors (DSP), reduced instruction
set computers (RISC), complex instruction set computers (CISC) and the like. Furthermore,
processor 102 may comprise more than one processing unit, may be part of an application
specific integrated circuit (ASIC) or may be a part of an application specific standard
product (ASSP).
[0043] A non-exhaustive list of examples for memory 104 includes any combination of the
following:
- a) semiconductor devices such as registers, latches, read only memory (ROM), mask
ROM, electrically erasable programmable read only memory devices (EEPROM), flash memory
devices, non-volatile random access memory devices (NVRAM), synchronous dynamic random
access memory (SDRAM) devices, RAMBUS dynamic random access memory (RDRAM) devices,
double data rate (DDR) memory devices, static random access memory (SRAM), universal
serial bus (USB) removable memory, and the like;
- b) optical devices, such as compact disk read only memory (CD ROM), and the like;
and
- c) magnetic devices, such as a hard disk, a floppy disk, a magnetic tape, and the
like.
[0044] A non-exhaustive list of examples for antenna 122 includes dipole antennae, monopole
antennae, multilayer ceramic antennae, planar inverted-F antennae, loop antennae,
shot antennae, dual antennae, omnidirectional antennae and any other suitable antennae.
[0045] Although the subject matter has been described in language specific to structural
features and/or methodological acts, it is to be understood that the subject matter
defined in the appended claims is not necessarily limited to the specific features
or acts described above. Rather, the specific features and acts described above are
disclosed as example forms of implementing the claims.
1. A method for enabling a user to switch between applications running on a device (100)
having a display (112), the method comprising:
showing representations of said applications in a foreground of said display (112);
enabling said user to navigate through said representations and to indicate to which
of said applications to switch by selecting a corresponding one of said representations;
and
as said user navigates to a representation of an application, showing in a background
of said display (112) one or more screens of said application.
2. The method of claim 1, wherein showing said representations in said foreground of
said display (112) comprises:
determining a location for said representations in said display (112) to reduce the
amount of information that is obscured by said representations in said one or more
screens or in areas of said one or more screens that are more important than other
areas of said one or more screens; and
showing said representations in said foreground at said location.
3. The method of claim 1 or claim 2, wherein said representations are icons and said
method further comprises:
as said user navigates to an icon of said application, showing in said foreground
of said display (112) a caption for said icon.
4. A device (100) comprising:
a processor (102) able to run applications;
a display (112) coupled to said processor (102), said display (112) able to show in
its foreground representations of running applications;
a user input element (114) coupled to said processor (102), said user input element
(114) to enable a user to navigate through said representations; and
a memory (104) coupled to said processor (102), said memory (104) arranged to store
executable code means (140) which, when executed by said processor (102), are arranged
to show in a background of said display (112) one or more screens of the application
to a representation of which said user has navigated.
5. The device of claim 4, wherein said executable code means (140), when executed by
said processor (102), are arranged to determine a location for said representations
in said display (112) to reduce the amount of information that is obscured by said
representations in said one or more screens or in areas of said one or more screens
that are more important than other areas of said one or more screens.
6. The device (100) of claim 4 or claim 5, wherein said user input element (114) is a
keyboard (116), a thumbwheel (118) or a trackball.
7. The device (100) of any one of claims 4 to 6, wherein said representations are icons.
8. A computer readable medium (104) comprising code means (140) for implementing the
method of any one of claims 1 to 3.
Amended claims in accordance with Rule 86(2) EPC.
1. A method for enabling a user to switch between applications (132, 136, 130, 124,
131) running on a device (100) having a display (112), the method comprising:
showing representations (406, 408, 410, 412, 414) of said applications in a foreground
of said display (112);
enabling said user to navigate through said representations and to indicate to which
of said applications to switch to by selecting a corresponding one of said representations;
and
as said user navigates to a representation (412) of an application (136), showing
in a background of said display (112) one or more screens (500) of said application
(136).
2. The method of claim 1, wherein showing said representations in said foreground of
said display (112) comprises:
determining a location for said representations in said display (112) to reduce the
amount of information that is obscured by said representations in said one or more
screens or in areas of said one or more screens that are more important than other
areas of said one or more screens; and
showing said representations in said foreground at said location.
3. The method of claim 1 or claim 2, wherein said representations are icons and said
method further comprises:
as said user navigates to an icon of said application, showing in said foreground
of said display (112) a caption for said icon.
4. A device (100) comprising:
a processor (102) able to run applications (132, 136, 130, 124, 131);
a display (112) coupled to said processor (102), said display (112) able to show in
its foreground representations (406, 408, 410, 412, 414) of running applications;
a user input element (114, 116, 118) coupled to said processor (102), said user input
element (114, 116, 118) to enable a user to navigate through said representations;
and
a memory (104) coupled to said processor (102), said memory (104) arranged to store
executable code means (140) which, when executed by said processor (102), are arranged
to show in a background of said display (112) one or more screens (600) of the application
(130) to a representation (410) of which said user has navigated.
5. The device of claim 4, wherein said executable code means (140), when executed by
said processor (102), are arranged to determine a location for said representations
in said display (112) to reduce the amount of information that is obscured by said
representations in said one or more screens or in areas of said one or more screens
that are more important than other areas of said one or more screens.
6. The device (100) of claim 4 or claim 5, wherein said user input element (114) is
a keyboard (116), a thumbwheel (118) or a trackball.
7. The device (100) of any one of claims 4 to 6, wherein said representations are icons.
8. A computer readable medium (104) comprising code means (140) for implementing the
method of any one of claims 1 to 3.