The following relates generally to themes for a mobile device and in particular to systems and methods for previewing themes.
Users of mobile devices may wish to customize and/or personalize their mobile device. One way to personalize a mobile device is to use a theme, which defines the general look and feel of a mobile device's user interface (UI). A theme may include colour schemes for menus and highlights, background images and, in more sophisticated themes, specific user and folder icons. Changing a theme only affects the look and feel of the UI and does not affect the functions or features of the mobile device.
A mobile device may be capable of storing multiple themes in memory so that the user can choose between more than one alternative theme to vary the appearance of the mobile device UI. Often when the user chooses a theme, the theme is loaded and the home screen accessed in order to see how the theme actually appears on the mobile device. If the user is not certain of a particular theme and wishes to try more than one theme, this process is then repeated for each variation that is chosen by the user, which can be time consuming.
Other themes may exist that are not stored on the mobile device but are downloadable. To download additional themes, typically a website or carrier site is accessed. When a user is interested in downloading an additional theme, the user may go through all of the steps to access the website and view the various themes available, only to then decide that they do not want to actually download any of the additional themes. They may then proceed to instead load a theme already stored on the mobile device, which can also be time consuming.
It is therefore an object of the following to obviate or mitigate at least one of the above disadvantages.
Embodiments will now be described by way of example only with reference to the appended drawings wherein:
Referring now to the drawings,
In
In one embodiment, mobile device 24 is a hand-held two-way wireless paging computer, a wirelessly enabled palm-top computer, a mobile telephone with data messaging capabilities, or a wirelessly enabled laptop computer, but could, alternatively be other types of mobile devices capable of sending and receiving messages via a network connection 22. Mobile devices 24 could alternatively not be capable of sending and receiving message via network connection 22. In another embodiment, mobile device 24 is a digital entertainment device, such as an MP3 player or video game device. In yet another embodiment, mobile device 24 is any electronic device which can be used by a user to provide a variety of features through a visual display.
In some embodiments, the mobile device 24 includes software program instructions that work in conjunction with the redirector program 12 to enable the seamless, transparent redirection of user-selected data items.
In an alternative embodiment, not explicitly shown in the drawings, the mobile device 24 also includes a redirector program. In this embodiment, user selected data items can be replicated from the host to the mobile device and vice versa. The configuration and operation of the mobile device 24 having a redirector program is similar to that described herein with respect to
A user can configure the redirector program 12 to push certain user-selected data items to the user's mobile device 24 when the redirector 12 detects that a particular user-defined event trigger (or trigger point) has taken place. User-selected data items preferably include E-mail messages, calendar events, meeting notifications, address entries, journal entries, personal alerts, alarms, warnings, stock quotes, news bulletins, etc., but could, alternatively, include any other type of message that is transmitted to the host system 10, or that the host system 10 acquires through the use of intelligent agents, such as data that is received after the host system 10 initiates a search of a database or a website or a bulletin board. In some instances, only a portion of the data item is transmitted to the mobile device 24 in order to minimize the amount of data transmitted via the wireless network 22. In these instances, the mobile device 24 can optionally send a command message to the host system to receive more or all of the data item if the user desires to receive it.
Among the user-defined event triggers that can be detected by the redirector program 12 are, in the preferred embodiment, external events, internal events and networked events. External events preferably include; (1) receiving a command message (such as message C) from the user's mobile device to begin redirection, or to execute some other command at the host, such as a command to enable the preferred list mode, or to add or subtract a particular sender from the preferred list; (2) receiving a similar message from some external computer, and (3) sensing that the user is no longer in the vicinity of the host system, although, alternatively, an external event can be any other detectable occurrence that is external to the host system. Internal events could be a calendar alarm, screen saver activation, keyboard timeout, programmable timer, or any other user-defined event that is internal to the host system. Networked events are user-defined messages that are transmitted to the host system from another computer coupled to the host system via a network to initiate redirection. These are just some of the events that could be used to initiate replication of the user-selected data items from the host system 10 to the mobile device 24.
Assuming that the redirector program 12 is activated, and has been configured by the user (either through the sensing of an internal, network or external event) to replicate certain user data items (including messages of type A or C) to the mobile device 24, when the message A is received at the host system 10, the redirector program 12 detects its presence and prepares the message for redirection to the mobile device 24. In preparing the message for redirection, the redirector program 12 could compress the original message A, could compress the message header, or could encrypt the entire message A to create a secure link to the mobile device 24.
Also programmed into the redirector 12 is the address of the user's mobile device 24, the type of device, and whether the device 24 can accept certain types of attachments, such as word processing or voice attachments. If the user's type of mobile device cannot accept these types of attachments, then the redirector 12 can be programmed to route the attachments to a fax or voice number where the user is located using an attached fax or voice machine 30.
The redirector may also be programmed with a preferred list mode that is configured by the user either at the host system 10, or remotely from the user's mobile device by transmitting a command message C. The preferred list contains a list of senders (other users) whose messages are to be redirected or a list of message characteristics that determine whether a message is to be redirected. If activated, the preferred list mode causes the redirector program 12 to operate like a filter, only redirecting certain user data items based on whether the data item was sent from a sender on the preferred list or has certain message characteristics that if present will trigger or suppress redirection of the message. In the example of
After the redirector has determined that a particular message should be redirected, and it has prepared the message for redirection, the software 12 then sends the message A to a secondary memory store located in the mobile device 24, using whatever means are necessary. In the preferred embodiment this method is to send the message A back over the LAN 14, WAN 18, and through the wireless gateway 20 to the mobile device 24. In doing so, the redirector preferably repackages message A as an E-mail with an outer envelope B that contains the addressing information of the mobile device 24, although alternative repackaging techniques and protocols could be used, such as a TCP/IP repackaging and delivery method (most commonly used in the alternative server configuration shown in
In the case where message C is representative of an external message from a computer on the Internet 18 to the host system 10, and the host 10 has been configured to redirect messages of type C, then in a similar manner to message A, message C would be repackaged with an outer envelope B and transmitted to the user's mobile device 24. In the case where message C is representative of a command message from the user's mobile device 24 to the host system 10, the command message C is not redirected, but is acted upon by the host system 10.
If the redirected user data item is an E-mail message, as described above, the user at the mobile device 24 sees the original subject, sender's address, destination address, carbon copy and blind carbon copy. Mien the user replies to this message, or when the user authors a new message, the software operating at the mobile device 24 adds a similar outer envelope to the reply message (or the new message) to cause the message to be routed first to the user's host system 10, which then removes the outer envelope and redirects the message to the final destination, such as back to computer 26. In the preferred embodiment this results in the outgoing redirected message from the user's host system 10 being sent using the E-mail address of the host mailbox, rather than the address of the mobile device, so that it appears to the recipient of the message that the message originated from the user's desktop system 10 rather than the mobile device. Any replies to the redirected message will then be sent to the desktop system 10, which if it is still in redirector mode, will repackage the reply and resend it to the user's mobile data device, as described above.
In this alternative configuration, server 11 preferably maintains a user profile for each user's desktop system 10, 26, 28, including information such as whether a particular user can have data items redirected, which types of message and information to redirect, what events will trigger redirection, the address of the users' mobile device 24, the type of mobile device, and the user's preferred list, if any. The event triggers are preferably detected at the user's desktop system 10, 26, 28 and can be any of the external, internal or network events listed above. The desktop systems 10, 26, 28 preferably detect these events and then transmit a message to the server computer 11 via LAN 14 to initiate redirection. Although the user data items are preferably stored at the server computer 11 in this embodiment, they could, alternatively, be stored at each user's desktop system 10, 26, 28, which would then transmit them to the server computer 11 after an event has triggered redirection.
As shown in
As described above with reference to
Turning now to
The desktop system 10 is connected to LAN 14, and can send and receive data, messages, signals, event triggers, etc., to and from other systems connected to the LAN 14 and to external networks 18, 22, Such as the Internet or a wireless data network, which are also coupled to the LAN 14. In addition to the standard hardware, operating system, and application programs associated with a typical microcomputer or workstation, the desktop system 10 includes the redirector program 12, a TCP/IP sub-system 42, an E-mail sub-system 44, a primary data storage device 40, a screen saver subsystem 48, and a keyboard sub-system 46. The TCP/IP and E-mail subsystems 42, 44 are examples of repackaging systems that can be used to achieve transparency, and the screen saver and keyboard sub-systems 46, 48 are examples of event generating systems that can be configured to generate event messages or signals that trigger redirection of the user selected data items.
The method steps carried out by the redirector program 12 are described in more detail in
The E-Mail sub-system 44 is the preferred link to repackaging the user-selected data items for transmission to the mobile device 24, and preferably uses industry standard mail protocols, such as SMTP, POP, IMAP, MIME and RFC-822, to name but a few. The E-Mail sub-system 44 can receive messages A from external computers on the LAN 14, or can receive messages C from some external network such as the Internet 18 or a wireless data communication network 22, and stores these messages in the primary data store 40. Assuming that the redirector 12 has been triggered to redirect messages of this type, the redirector detects the presence of any new messages and instructs the E-Mail system 44 to repackage the message by placing an outer wrapper B about the original message A (or C), and by providing the addressing information of the mobile device 24 on the outer wrapper B. As noted above, this outer wrapper B is removed by the mobile device 24, and the original message A (or C) is then recovered, thus making the mobile device 24 appear to be the desktop system 10.
In addition, the E-Mail sub-system 44 receives messages back from the mobile device 24 having an outer wrapper with the addressing information of the desktop system 10, and strips this information away so that the message can be routed to the proper sender of the original message A (or C). The E-Mail sub-system also receives command messages C from the mobile device 24 that are directed to the desktop system 10 to trigger redirection or to carry out some other function. The functionality of the E-Mail sub-system 44 is controlled by the redirector program 12.
The TCP/IP sub-system 42 is an alternative repackaging system. It includes all of the functionality of the E-Mail sub-system 44, but instead of repackaging the user-selected data items as standard E-mail messages, this system repackages the data items using special-purpose TCP/IP packaging techniques. This type of special-purpose sub-system is useful in situations where security and improved speed are important to the user. The provision of a special-purpose wrapper that can only be removed by special software on the mobile device 24 provides the added security, and the bypassing of E-mail store and forward systems can improve speed and real-time delivery.
As described previously, the system can be triggered to begin redirection upon detecting numerous external, internal and networked events, or trigger points. Examples of external events include: receiving a command message from the user's mobile device 24 to begin redirection; receiving a similar message from some external computer, sensing that the user is no longer in the vicinity of the host system; or any other event that is external to the host system. Internal events could be a calendar alarm, screen saver activation, keyboard timeout, programmable timer, or any other user-defined event that is internal to the host system. Networked events are user-defined messages that are transmitted to the host system from another computer that is connected to the host system via a network to initiate redirection.
The screen saver and keyboard sub-systems 46, 48 are examples of systems that are capable of generating internal events. Functionally, the redirector program 12 provides the user with the ability to configure the screen saver and keyboard systems so that under certain conditions an event trigger will be generated that can be detected by the redirector 12 to start the redirection process. For example, the screen saver system can be configured so that when the screen saver is activated, after, for example, ten (10) minutes of inactivity on the desktop system, an event trigger is transmitted to the redirector 12, which starts redirecting the previously selected user data items. In a similar manner the keyboard sub-system can be configured to generate event triggers when no key has been depressed for a particular period of time, thus indicating that redirection should commence. These are just two examples of the numerous application programs and hardware systems internal to the host system 10 that can be used to generate internal event triggers.
Once the redirector program is configured 50, the trigger points (or event triggers) are enabled at step 52. The program 12 then waits 56 for messages and signals 54 to begin the redirection process. A message could be an E-Mail message or some other user data item that may have been selected for redirection, and a signal could be a trigger signal, or could be some other type of signal that has not been configured as an event trigger. When a message or signal is detected, the program determines 58 whether it is one of the trigger events that has been configured by the user to signal redirection. If so, then at step 60 a trigger flag is set, indicating that subsequently received user data items (in the form of messages) that have been selected for redirection should be pushed to the users mobile device 24.
If the message or signal 54 is not a trigger event, the program then determines at steps 62, 68 and 66 whether the message is, respectively, a system alarm 62, an E-Mail message 64, or some other type of information that has been selected for redirection. If the message or signal is none of these three items, then control returns to step 56, where the redirector waits for additional messages 54 to act upon. If, however the message is one of these three types of information, then the program 12 determines, at step 68, whether the trigger flag has been set, indicating that the user wants these items redirected to the mobile device. If the trigger flag is set, then at step 70, the redirector 12 causes the repackaging system (E-Mail or TCP/IP) to add the outer envelope to the user data item, and at step 72 the repackaged data item is then redirected to the user's mobile device 24 via LAN 14, WAN 18, wireless gateway 20 and wireless network 22. Control then returns to step 56 where the program waits for additional messages and signals to act upon. Although not shown explicitly in
At step 82, the mobile device waits for messages and signals 84 to be generated or received. Assuming that the redirector software 12 operating at the user's desktop system 10 is configured to redirect upon receiving a message from the user's mobile device 24, at step 86, the user can decide to generate a command message that will start redirection. If the user does so, then at step 88 the redirection message is composed and sent to the desktop system 10 via the wireless network 22, through the wireless gateway 20, via the Internet 18 to the LAN 14, and is finally routed to the desktop machine 10. In this situation where the mobile device 24 is sending a message directly to the desktop system 10, no outer wrapper is added to the message (such as message C in
Turning back to
If the mobile device 24 determines that a message has not been received at step 90, then control passes to step 100, where the mobile determines whether there is a message to send. If not, then the mobile unit returns to step 82 and waits for additional messages or signals. If there is at least one message to send, then at step 102 the mobile determines whether it is a reply message to a message that was received by the mobile unit. If the message to send is a reply message, then at step 108, the mobile determines whether the desktop redirection flag is on for this message. If the redirection flag is not on, then at step 106 the reply message is simply transmitted from the mobile device to the destination address via the wireless network 22. If, however, the redirection flag is on, then at step 110 the reply message is repackaged with the outer envelope having the addressing information of the user's desktop system 10, and the repackaged message is then transmitted to the desktop system 10 at step 106. As described above, the redirector program 12 executing at the desktop system then strips the outer envelope and routes the reply message to the appropriate destination address using the address of the desktop system as the “from” field, so that to the recipient of the redirected message, it appears as though it originated from the user's desktop system rather than the mobile device.
If, at step 102, the mobile determines that the message is not a reply message, but an original message, then control passes to step 104, where the mobile determines if the user is using the redirector software 12 at the desktop system 10, by checking the mobile unit's configuration. If the user is not using the redirector software 12, then the message is simply transmitted to the destination address at step 106. If, however, the mobile determines that the user is using the redirector software 12 at the desktop system 10, then control passes to step 110, where the outer envelope is added to the message. The repackaged original message is then transmitted to the desktop system 10 at step 106, which, as described previously, strips the outer envelope and routes the message to the correct destination. Following transmission of the message at step 106, control of the mobile returns to step 82 and waits for additional messages or signals.
Referring now to
The mobile device 24a shown in
The mobile device 24b shown in
The mobile device 24b also comprises a menu or option button 126 that loads a menu or list of options on display 120b when pressed, and a cancel or escape button 124b to exit, “go back” or otherwise escape from a feature, option, selection or display. The mobile device 24b as illustrated in
The reduced QWERTY keyboard 130 comprises a plurality of multi-functional keys and corresponding indicia including keys associated with alphabetic characters corresponding to a QWERTY array of letters A to Z and an overlaid numeric phone key arrangement. The plurality of keys that comprise alphabetic and/or numeric characters total fewer than twenty-six (26). In the embodiment shown, the number of keys that comprise alphabetic and numeric characters is fourteen (14). In this embodiment, the total number of keys, including other functional keys, is twenty (20). The plurality of keys may comprise four rows and five columns of keys, with the four rows comprising in order a first, second, third and fourth row, and the five columns comprising in order a first, second, third, fourth, and fifth column. The QWERTY array of letters is associated with three of the four rows and the numeric phone key arrangement is associated with each of the four rows.
The numeric phone key arrangement is associated with three of the five columns. Specifically, the numeric phone key arrangement may be associated with the second, third and fourth columns. The numeric phone key arrangement may alternatively be associated with keys in the first, second, third, and fourth rows, with keys in the first row including a number “1” in the second column, a number “2” in the third column, and a number “3” in the fourth column. The numeric phone keys associated with keys in the second row include a number “4” in the second column, a number “5” in the third column, and a number “6” in the fourth column. The numeric phone keys associated with keys in the third row include a number “7” in the second column, a number “8” in the third column, and a number “9” in the fourth column. The numeric phone keys associated with keys in the fourth row may include a “*” in the second column, a number “0” in the third column, and a “#” in the fourth column.
The physical keyboard may also include a function associated with at least one of the plurality of keys. The fourth row of keys may include an “alt” function in the first column, a “next” function in the second column, a “space” function in the third column, a “shift” function in the fourth column, and a “return/enter” function in the fifth column.
The first row of five keys may comprise keys corresponding in order to letters “QW”, “ER”, “TY”, “UI”, and “OP”. The second row of five keys may comprise keys corresponding in order to letters “AS”, “DF”, “GH”, “JK”, and “L”. The third row of five keys may comprise keys corresponding in order to letters “ZX”, “CV”, “BN”, and “M”.
It will be appreciated that for the mobile device 24, a wide range of one or more positioning or cursor/view positioning mechanisms such as a touch pad, a joystick button, a mouse, a touchscreen, set of arrow keys, a tablet, an accelerometer (for sensing orientation and/or movements of the mobile device 24 etc.), or other whether presently known or unknown may be employed. Similarly, any variation of keyboard 128, 130 may be used. It will also be appreciated that the mobile devices 24 shown in
Mobile station 202 will normally incorporate a communication subsystem 211 which includes a receiver 212, a transmitter 214, and associated components such as one or more (preferably embedded or internal) antenna elements 216 and 218, local oscillators (LOs) 213, and a processing module such as a digital signal processor (DSP) 220. As will be apparent to those skilled in field of communications, particular design of communication subsystem 211 depends on the communication network in which mobile station 202 is intended to operate.
Mobile station 202 may send and receive communication signals over a network after required network registration or activation procedures have been completed. Signals received by antenna 216 through the network are input to receiver 212, which may perform such common receiver functions as signal amplification, frequency down conversion. filtering, channel selection, and like, and in example shown in
Network access is associated with a subscriber or user of mobile station 202. In one embodiment, mobile station 202 uses a Subscriber Identity Module or “SIM” card 262 to be inserted in a SIM interface 264 in order to operate in the network. SIM 262 is one type of a conventional “smart card” used to identify an end user (or subscriber) of the mobile station 202 and to personalize the device, among other things. Without SIM 262, the mobile station terminal in such an embodiment is not fully operational for communication through a wireless network. By inserting SIM 262 into mobile station 202, an end user can have access to any and all of his/her subscribed services. SIM 262 generally includes a processor and memory for storing information. Since SIM 262 is coupled to a SIM interface 264, it is coupled to microprocessor 238 through communication lines. In order to identify the subscriber, SIM 262 contains some user parameters such as an International Mobile Subscriber Identity (IMSI). An advantage of using SIM 262 is that end users are not necessarily bound by any single physical mobile station. SIM 262 may store additional user information for the mobile station as well, including datebook (or calendar) information and recent call information. It will be appreciated that mobile station 202 may also be used with any other type of network compatible mobile device 24 such as those being code division multiple access (CDMA) enabled and should not be limited to those using and/or having a SIM card 262.
Mobile station 202 is a battery-powered device so it also includes a battery interface 254 for receiving one or more rechargeable batteries 256. Such a battery 256 provides electrical power to most if not all electrical circuitry in mobile station 202, and battery interface 254 provides for a mechanical and electrical connection for it. The battery interface 254 is coupled to a regulator (not shown) which provides a regulated voltage V to all of the circuitry.
Mobile station 202 includes a microprocessor 238 which controls overall operation of mobile station 202. Communication functions, including at least data and voice communications are performed through communication subsystem 211. Microprocessor 238 also interacts with additional device subsystems such as a display 222, a flash memory 224, a random access memory (RAM) 226, auxiliary input/output subsystems 228, a serial port 230, a keyboard 232, a speaker 234, a microphone 236, a short-range communications subsystem 240, and any other device subsystems generally designated at 242. Some of the subsystems shown in
Microprocessor 238, in addition to its operating system functions, preferably enables execution of software applications on mobile station 202. A predetermined set of applications which control basic device operations, including at least data and voice communication applications, as well as the inventive functionality of the present disclosure, will normally be installed on mobile station 202 during its manufacture. A preferred application that may be loaded onto mobile station 202 may be a personal information manager (PIM) application having the ability to organize and manage data items relating to user such as, but not limited to, e-mail, calendar events, voice mails, appointments, and task items. Naturally, one or more memory stores are available on mobile station 202 and SIM 262 to facilitate storage of PIM data items and other information.
The PIM application preferably has the ability to send and receive data items via the wireless network. In the present disclosure, PIM data items are seamlessly integrated, synchronized, and updated via the wireless network, with the mobile station user's corresponding data items stored and/or associated with a host computer system thereby creating a mirrored host computer on mobile station 202 with respect to such items. This is especially advantageous where the host computer system is the mobile station user's office computer system. Additional applications may also be loaded onto mobile station 202 through network, an auxiliary subsystem 228, serial port 230, short-range communications subsystem 240, or any other suitable subsystem 242, and installed by a user in RAM 226 or preferably a non-volatile store (not shown) for execution by microprocessor 238. Such flexibility in application installation increases the functionality of mobile station 202 and may provide enhanced on-device functions, communication-related functions, or both. For example, secure communication applications may enable electronic commerce functions and other such financial transactions to be performed using mobile station 202.
In a data communication mode, a received signal such as a text message, an e-mail message, or web page download will be processed by communication subsystem 211 and input to microprocessor 238. Microprocessor 238 will preferably further process the signal for output to display 222 or alternatively to auxiliary I/O device 228. A user of mobile station 202 may also compose data items, such as e-mail messages, for example, using keyboard 232 in conjunction with display 272 and possibly auxiliary I/O device 228. Keyboard 232 is preferably a complete alphanumeric keyboard and/or telephone-type keypad. These composed items may be transmitted over a communication network through communication subsystem 211.
For voice communications, the overall operation of mobile station 202 is substantially similar, except that the received signals would be output to speaker 234 and signals for transmission would be generated by microphone 236. Alternative voice or audio I/O subsystems, such as a voice message recording subsystem, may also be implemented on mobile station 202. Although voice or audio signal output is preferably accomplished primarily through speaker 234, display 222 may also be used to provide an indication of the identity of a calling party, duration of a voice call, or other voice call related information, as some examples.
Serial port 230 in
Short-range communications subsystem 240 of
Turning now to
In some themes, the home screen 134 may limit the number icons 136 shown on the home screen 134 so as to not detract from the theme background 140, particularly where the background 140 is chosen for aesthetic reasons. The theme background 140 shown in
One or more of the series of icons 136 is typically a folder 136 that itself is capable of organizing any number of applications therewithin.
The status region 138 in this embodiment comprises a date/time display 142 and an optional service provider logo 144. The home screen 134, in addition to the theme background 140 and the series of icons 136, also comprises a status bar 146. The status bar 146 provides information to the user based on the location of the selection cursor 132, e.g. by displaying a name for the icon 136 that is currently highlighted.
An application such as an options application 428 (see
Movement, navigation, and/or scrolling with use of a cursor/view positioning device 122 (e.g. trackball 122b or scroll wheel 122a) is beneficial given the relatively large size of visually displayed information and the compact size of display 120, and since information and messages are typically only partially presented in the limited view of display 120 at any given moment. As previously described, positioning device 122—scroll wheel 122a and trackball 122b, are helpful cursor/view positioning mechanisms to achieve such movement. Positioning device 122, which may be referred to as a scroll wheel or scroll device 12a in one embodiment (
As noted above, in another embodiment (
As shown in
Stored with/in the options application 428 is a theme option 429 that can be selected from a list of options 170 displayed in an options screen 172. The options screen 172 is initiated, loaded and displayed by the processor 238 upon receiving an appropriate input to the mobile device 24, when the move cursor 132 has its focus placed on (or highlights) the options icon 148. The user may select the theme option 429 using an appropriate input mechanism, which then causes the processor 238 to load and display a theme preview and selection screen 174 shown in
The theme option 429 can be used to instruct the processor 238 to access, load and apply the settings from a theme definition 150 to the UI of mobile device display 120. The theme definitions 150 are stored in memory 224 in a theme file storage 442. Each theme definition 150 comprises, in part, a theme preview file 151 stored therein. The theme preview file 151 may be a thumbnail image of a representative home screen 134 illustrating the look and feel of that particular theme. The image stored in the theme preview file 151 in one embodiment is not an exact snapshot of the home screen 134 but rather a representation of how the home screen 134 would appear based on a predefined “standard” home screen 134 with that theme being activated. Since an exact image of the home screen 134, with the exact icon arrangement etc. may not be readily obtained without actually activating the theme, the representation provided by the image in the theme preview file 151 provides an approximation that enables the user to visualize the look and feel of the theme without actually activating it.
Download theme preview files 164 may also be stored in memory 224, e.g. in the theme file storage 442 as shown in
Turning now to
Referring now to
The theme preview screen 174 also comprises a theme preview pane 176, which in this example is displayed beneath the list of themes 175. The preview pane 176 displays a thumbnail image loaded from the theme preview file 151 for the particular theme that is highlighted in the list 175. As noted above, the theme preview file 151 is stored with the theme definition 150 in memory 224. As such, the processor 238 can read the selected theme from the list 175, access the associated theme definition 150, extract the theme preview file 151 and display the thumbnail for the preview file 151 in the preview pane 179.
Turning now to
It can therefore be seen that the preview pane 176 enables the user to selectively preview several themes (where previews are available) by highlighting different ones of the available themes in the list 175. The preview pane 176 may then be updated by the processor 238 with the appropriate thumbnail image accessed from the appropriate theme preview file 151, which in turn is stored in the appropriate theme definition 150 in memory 224.
As noted above, the list of themes 175 in this example includes only those themes that are stored on the mobile device 24 in memory 224. The user may wish to obtain new themes that do not appear in the list 175. Turning now to
Turning back to
The theme download page 177 also comprises a “Downloads” link 181 for reloading a downloads page (not shown) which may also be accessed via the mobile device browser. Similarly, a “Home” link 182 is also provided to access a home page (also not shown). The theme download page 177 also comprises a legend showing a “New” indicator 183 and a “Hot” indicator 184 for identifying to the user, new and particularly popular themes respectively.
The theme download page 177 is configured to be used in a similar way to the theme preview screen 174 stored in the theme option 429 in memory 224 on the mobile device 24. The theme download page 177 accesses copies of theme preview files 151 from the copies of the theme files 150 stored in the storage device 160. The web application 158 may then access, load and display theme preview files 151 in the preview pane 179, similar to the previews shown in
As can be seen in
When the user downloads a theme file 150 via the download page 177, a theme file 150d is pulled by the mobile device 24 from the web server 156 through the internet network 18 and the wireless gateway 20. It will be appreciated that in this embodiment, “pulled” refers to communication initiated by the mobile device 24 and that “pushed” refers to communications initiated by an entity other than the mobile device 24.
In addition to downloading theme files 150 on the mobile device 24, the user may also preview and download themes and push the downloaded theme files 150b to the mobile device 24 from the desktop computer 26 using the download API 154 shown in
Referring now to
The user may select any number of themes in the list 378 in order to preview the theme and, once a desired theme is determined by the user, there are several options. The user may select a “Save” button 302 to save the theme file 150 to their desktop computer 26. The user may wish to save the theme file 150 for any number of reasons such as where an active link with the mobile device 24 is not available at that time or if they are using a desktop computer 26 that is not synchronized with the mobile device 24. In this way, the theme file 150 can be later pushed (shown as theme file 150b in
The user may also wish to send the theme file 150 to the mobile device 24 immediately by selecting a “Send” button 304. The theme file 150c is then pushed to the mobile device 24 by the web server 156 with the appropriate permission (e.g. by payment or account verification etc.). Alternatively, the theme file 150 may be saved and pushed to the mobile device 24 simultaneously by selecting a “Save & Send” button 306. The user may wish to not download any themes after previewing them, in which case a “Cancel” button 308 can be selected to exit or escape the download page 300.
Since themes enable the user to change the look and feel of the UI for the mobile device 24, the user may change themes frequently, particularly where new and popular themes become available for download. In order to offer new themes to the user, the theme builder program 152 may be used create new theme files 150. Although the theme builder prom 152 is shown in
The theme builder program 152 is shown in
A name for the theme that will appear in the list 175 (or list 178) may be defined by entering a string of characters into a name entry box 310. As noted above, themes typically have different theme backgrounds 140. A “Load Background” button 312 enables the developer to browse for background images, either stored locally or available via a network connection. A theme also comprises a particular arrangement of icons for the UI on the mobile device 24. A list of standard icon choices 316 may be provided using a pull-down list box 314. A “Custom Icons” button 313 may also be used to define each icon representing the applications 426 stored in memory 224 on the mobile device 24. An “Arrange Icons” button 318 may also be provided which may then load and display a series of icon arrangement choices 320. The choices 320 may include a grid arrangement (middle), column arrangement (left), row arrangement (right) or any variation thereof. A standard library of icon arrangement choices 320 is preferably stored in the developer toolkit, however, custom icon arrangement may also be defined, stored and used by the developer. It will be appreciated that other options may also be provided and should not be limited to those shown. It will also be appreciated that the theme builder program 152 may utilize any available development tools, selection options and UI components as necessary and
As the developer selects the various options for the theme being built, a preview of the theme may be displayed for the developer in the preview pane 322. The preview pane 322 displays a representative image of the theme that is converted into a thumbnail to be stored as a theme preview file 151 along with the remaining definition for the theme in the theme file 150. It will be appreciated that the preview pane 322 enables the developer to visualize tile look and feel of the theme as it would be visualized by the end user when previewed, and ultimately when activated on the mobile device 24.
When the developer has chosen all desired features for the theme, the theme may be saved as a theme file 150 with an embedded theme preview file 151 by selecting a “Save” button 324, which causes a compiler (not shown) for the program 152 to assemble the theme file 150. The newly created theme files 150 may be uploaded to the web server 156 so that they may be made available to the users with a batch synchronization with multiple themes. Theme files 150a may also be uploaded or pushed to the web server 156 individually by the developer from the theme builder program 152 as shown in
As discussed above, the theme option 429 may also provide a list of themes that are available to be downloaded. Another theme preview screen 330 may be displayed by the theme option 429 as shown in
By selecting a theme in the second list 334, the processor 238 accesses the appropriate download theme preview file 164 stored in this embodiment in the theme file storage 442 and displays the preview file 164 in the preview pane 376. In this way, the user can preview the theme before downloading it. Where the themes are offered at a cost to the user, this can save the user from wasting money on themes that they do not like, as well as saving storage space. Another benefit of enabling the user to preview downloadable themes in the theme preview screen 330 is that the user does not have to access and load the web browser and download page 177 shown in
As new theme files 150 are downloaded, the theme preview 164 for that theme is removed from memory 224 and the actual theme file 150 added. The second list 334 is then updated to remove the just downloaded theme, and the first list 332 updated to add the theme, since it is now available for activation on the mobile device 24. As themes are added to either list, the list may grow beyond the display space. Scroll arrows 336 and 338 may then be displayed to indicate to the user that there are more previews available. The user may then use the positioning device 14 to navigate either list.
In order to dynamically update the second list 334 as new theme become available, in one embodiment, a new theme service may be employed. The new theme service may be provided by the web server 156 or third party in communication with the web server 156. In one embodiment, the mobile device 24 prepares a poll list 163 and sends the poll list 163 to the new theme service. The poll list 163 comprises a list of all theme preview files 151 and 164 that are stored in memory 224. Using the poll list 163, the new theme service can check the list 163 against all theme files 150 that are available for download, and create an update file 162 that comprises theme preview files 164 that are available but not already stored in memory 224. In this way, the mobile device 24 does not have to handle duplicates and can better manage the lists 332 and 334.
Referring now to
At the other end, the new theme service obtains the poll list 163, e.g. by accessing poll lists 163 stored in the storage device 160, and then compares the contents of the poll list 163 to an up-to-date master list of all themes that are currently available. The “delta” of these lists is then determined and packaged in an update file 162, which may then be pushed to the mobile device 24 as shown in
As many new themes are developed, and more and more themes downloaded, the lists 332 and 334 may become inconveniently lengthy. To manage these lists, the theme files 150 and download theme preview files 164 can be deleted by the user from the theme preview screen 330 to discard themes that are undesirable or have never been used. Alternatively, a maximum can be set to manage storage limits, or a custom deletion scheme to discard the oldest or never used themes on a periodic basis. It will be appreciated that there is no need to require that themes or theme files 164 be deleted, however, if storage space is limited and/or if the user wishes to have the list managed, any suitable management scheme may be employed.
It can therefore be seen that by providing the second list 334 of themes that are available for download but not yet stored, the user can preview themes without the need to access the download page 177 or API 154. Moreover, by previewing themes on the mobile device 24, the user can visualize the effect of activating the selected theme without be required to download and activate the theme. In this way, significant time savings can be achieved contributing to the usability of the mobile device 24. By providing a dynamic list of available themes (e.g. second list 334), the user may be exposed to more themes, which may otherwise not be viewed. If the themes are available at a cost, the user can be assured that they have an idea of the look and feel of the theme before committing to purchase, and the new theme service can better market the new themes as they would all be available for previewing by the user in a dynamic way.
The theme preview files 151 and 164, either embedded in theme files 150 or on their own enable the user to preview a representation of a theme before they commit to activating or downloading the theme. By creating a thumbnail image, the previews can be achieved without requiring a snapshot of the actual home screen 134 utilizing the particular theme. Since such a snapshot cannot be taken until the theme is actually activated, the thumbnail provides a way to view a representative view of the theme before having to activate or download the theme. By creating the thumbnail and preview file 151 (or 164) at the time of creating the theme file 150, previewing can be achieved in the many ways discussed above. Since the preview files 151 and 164 are capable of being separated from the theme itself they can be used to preview a theme without having the full theme definition thus enabling previewing for “yet to be downloaded” or otherwise available themes.
It will be appreciated that the particular options, outcomes, applications, screen shots and icons shown in the figures and described above are for illustrative purposes only and many other variations can be used according to the principles described.
Although the above has been described with reference to certain specific embodiments, various modifications thereof will be apparent to those skilled in the all as outlined in the appended claims.