Language selection

Search

Patent 2568975 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent Application: (11) CA 2568975
(54) English Title: SYSTEM AND METHOD FOR IMPROVING THE EFFICIENCY, COMFORT, AND/OR RELIABILITY IN OPERATING SYSTEMS, SUCH AS FOR EXAMPLE WINDOWS
(54) French Title: SYSTEME ET METHODE PERMETTANT D'AMELIORER L'EFFICACITE, LA CONVIVIALITE ET/OU LA FIABILITE DES SYSTEMES D'EXPLOITATION, COMME LE LOGICIEL WINDOWS
Status: Deemed Abandoned and Beyond the Period of Reinstatement - Pending Response to Notice of Disregarded Communication
Bibliographic Data
(51) International Patent Classification (IPC):
  • G06F 15/00 (2006.01)
  • G06F 01/24 (2006.01)
  • G06F 03/048 (2013.01)
  • G06F 11/07 (2006.01)
  • G06F 12/00 (2006.01)
(72) Inventors :
  • MAYER, YARON (Israel)
(73) Owners :
  • YARON MAYER
(71) Applicants :
  • YARON MAYER (Israel)
(74) Agent:
(74) Associate agent:
(45) Issued:
(22) Filed Date: 2006-11-21
(41) Open to Public Inspection: 2007-05-21
Availability of licence: N/A
Dedicated to the Public: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data:
Application No. Country/Territory Date
0523627.8 (United Kingdom) 2005-11-21
0524183.1 (United Kingdom) 2005-11-28
0524764.8 (United Kingdom) 2005-12-05
0525740.7 (United Kingdom) 2005-12-19
0602413.7 (United Kingdom) 2006-02-07
0603399.7 (United Kingdom) 2006-02-21
0607131.0 (United Kingdom) 2006-04-10
0609047.6 (United Kingdom) 2006-05-09
0616951.0 (United Kingdom) 2006-08-29
0619787.5 (United Kingdom) 2006-10-06
0621022.3 (United Kingdom) 2006-10-23

Abstracts

English Abstract


ABSTRACT
Although MS Windows (in its various versions) is at present the most popular
OS
(Operating System) in personal computers, after years of consecutive
improvements
there are still various issues which need to be improved, which include for
example
issues of efficiency, comfort, and/or reliability. The present invention tries
to solve
the above problems in new ways that include considerable improvements over the
prior art. Preferably the system allows for example a "Reset" function, which
means
that preferably an Image of the state of the OS (including all loaded
software) is
saved immediately after a successful boot on the disk or other non-volatile
memory
and is preferably automatically updated when new drivers and/or software that
change the state after a boot are added, so that if the system gets stuck it
can be
instantly restarted as if it has been rebooted. Other features include for
example
solving the problem that the focus can be grabbed while the user is typing
something, allowing the user to easily define or increase or decrease the
priority of
various processes or open windows, a powerful undo feature that can include
preferably even any changes to the hard disk, improved undo features in word
processing, improved file comparison features, being able for example to track
changes retroactively, improved backup features, and many additional
improvements. The application covers also improvements that are related for
example to Word processing (since for example in Microsoft Windows, Word
behaves like an integral part of the system) and things that are related to
the user's
Internet surfing experience (This is important since for example in Microsoft
Windows, Internet Explorer is practically an integral part of the OS). The
invention
deals also with some preferable improvements in the performance of the hard
disk
and also with some other smart computerized devices.


Claims

Note: Claims are shown in the official language in which they were submitted.


CLAIMS
I claim:
1. A System for improving the efficiency, comfort, and/or reliability in
Operating Systems, comprising at least one of:
a. A mechanism for instant Resetting of the OS into the normal state it
would be in after a successful boot, without the need to boot at all;
b. A mechanism for automatically scanning the nonvolatile memory in
the background without significantly slowing down the computer after
a boot or a Reset while allowing the user to immediately start working
after the boot or Reset;
c. A mechanism for preventing other programs from snatching the focus
while the user is typing;
d. A mechanism for allowing the user to install a new Operating System
in another partition or directory with copying the desktop of the
original system to the new system and automatically converting as
many programs as possible to work in the new system;
e. An automatic rollback feature that is adapted to enable undoing any
changes on the non-volatile memory;
f. Independent access mechanisms to at least one rollback area, so as not
to adversely affect speed of access to the normal data areas;
g. Independent access mechanisms to at least one FAT area, so as not to
adversely affect speed of access to the normal data areas;
h. Improved versions of at least one of Word processors and Internet
browsers and/or other applications.
2. The system of claim 1 wherein an Image of the state of the OS is saved
immediately after a successful boot on non-volatile memory and is
automatically updated when new drivers and/or software that changes the
state after a boot is added.
3. The system of claim 2 wherein more than one Image can be saved, so that the
system can preferably go back also to the previous Image when needed.
4. The system of any of the above claims wherein whenever the system gets
stuck and/or the user wants to clear the computer's memory and go back to a
state like after a normal boot, the user can cause the computer's memory to
instantly Reset from the saved Image, without a need to go through a boot
sequence at all.
5. The system of claim 4 wherein for activating said Reset, the user's request
is
sensed by at least one of: Hardware, and Some process that runs below the
Operating system and thus in not affected even when the system becomes
stuck.

6. The system of any of claims 2-5 wherein at least one of the following
features exist:
a. Any cut & paste buffers are automatically saved also on the disk or
other non-volatile memory, so that they can be immediately available
on the next boot or after the next Reset;
b. Any currently edited files or windows are automatically saved on the
disk or other non-volatile memory after sufficient minimal changes
have accumulated, so that they can be immediately available on the
next boot or after the next Reset;
c. After a fast-boot or Reset that uses the memory Image, and/or even
during or after a normal boot, if the FAT of the disks or other non-
volatile memory needs to be checked, it is done in the background and
without significantly slowing down the disk or the CPU, after the user
can already start working;
d. The disk or other non-volatile memory scanning software is backed up
by hardware, by using special area or areas dedicated for FAT
information, and independent access means are used for read and write
in those areas;
e. Any reading or writing of files is done with the aid of using separate
access means to access the FAT area or areas.
7. The system of any of the above claims wherein when the user is in the
middle
of typing something, the focus can be automatically snatched away by
another program only under at least one of the following limitations:
a. The change of focus can occur only after the user has stopped typing
for a certain minimal period;
b. The focus can be snatch by other programs only in case of emergency,
c. The focus can be snatched by other programs only in case of
emergency, and such emergency can be decided only by at least one
of: The OS, the security system of the computer, the firewall, and any
other software which has been given explicit permission by the user to
have such rights;
d. Programs are not allowed to snatch away the focus while the user is in
the middle of typing something, but in case of emergency, instead of
snatching away the focus, important messages can be displayed by
flashing a message and/or other conspicuous visual means and/or by
audible sound, so that the user's attention can be immediately grabbed,
without automatically disturbing his typing efforts;
e. If the focus is snatched while the user was typing, his keystrokes
continue to be kept in a buffer, so that when the user notices that the
focus has changed and goes back to the original window where he was
typing, the keys that he typed while the focus has changed are again
available.

8. The system of any of the above claims wherein when installing a new OS in a
new directory or partition, the new system copies the desktop configuration
and links from the old system into the desktop of the new system, and at least
one of the following is done in order to enable the links in the new desktop
to
work in the new OS:
a. During installation of the new system, the system tries to
automatically convert components that are different between the two
systems to work on the new system;
b. During installation of the new system, the system tries to locate the
original files which were used for the installation and then tries to
reinstall automatically the correct drivers or components that are
needed for the new system;
c. Each Windows system keeps information about the path and name of
the original file from which it was installed in at least one of: The
registry, and At least one directory where the installed program or
component or drivers resides;
d. If the system does not success in converting the relevant links to work
on the new system, then the system does at least one of the following:
1. The system marks the relevant links on the new desktop as non-
operational and encourages the user to look for other versions of those
programs that are fitted to work on the new system, and 2. The system
allows the link to activate the version that runs under the old system or
creates another copy of it, and uses emulation of the old system when
needed in order to let it run;
e. A new protocol for installing programs is implemented so that each
installation of new software installs both the appropriate drivers or
components and at least one set of alternate drivers or components for
additional OS, and each time the program is loaded into memory the
appropriate set of drivers or components is automatically chosen by
the OS, and the parts of the installation that require updating registries
and/or installing various components in system directories are
suspended and are executed automatically when the new OS is
activated for the first time.
9. The system of any of the above claims wherein changes that happen on at
least one of {the hard disk, other non-volatile fast access memory, and other
connected writeble media} are completely undo-able at least for a certain
time period or as long as there is sufficient room for saving the info needed
for the undo, by using at least one hardware supported rollback area.
10. The system of claim 9 wherein the undo feature is accomplished by at least
one of the following features:
a. At least one rollback buffer is kept and is encrypted and is highly
guarded and/or is kept also in more than one place;
b. Even commands such as format or re-partition or even low-level
format are not able to destroy the at least one rollback area, so at least

a certain percent of the non-volatile memory is always reserved for the
rollback info;
c. The rollback logs or at least the most recent changes in them are
always backed up in at least two or more separate places and/or also
protected by additional encryption and/or redundancy data, so that
damages can be fixed;
d. Only an explicit command by the user entered directly by the user to
the operating system through a direct command can restore changes
from the rollback, so no malicious program can activate the command;
e. When the user requests to restore things from the rollback, the log is
still kept, so that the user can also redo the "undo" by simply moving
again forward on the rollback log, thus reinserting the cancelled
changes, and new changes to the rollback from that point on are kept
on a separate part or buffer or branch, so that making additional
changes from that point on will not overwrite the original "forward"
part of the rollback;
f. When going again forwards the user is shown the various branches
that exist and can choose the appropriate one;
g. The rollback file or files use one or more circular buffers, so when it is
full the oldest changes logged are deleted by overwriting them with
the new data, and pointers to the logical beginning and end of each
circular buffer are updated accordingly;
h. If the hard disk senses that the boot was not made from it, it will block
all further changes after the log file becomes too full, and request the
user to boot from the hard disk;
i. There are two types of low-level write commands, one with rollback
enabled and one without, so that the rollback enabled write is used for
important data and the normal write is used for at least one of
unimportant data, temporary file areas and swap file areas;
j. At least one of the operating system and the computer's security
system decide when to use the rollback enabled write and when to use
the normal write;
k. If a malicious program tries to create suspicious massive changes on
purpose in order to fill the rollback buffer, it is intercepted as highly
suspicious behavior.
11. The system of any of the above claims wherein the hardware supported undo
can be used also for each file separately, by at least one of:
a. Saving a separate rollback buffer or entry for each file;
b. Each log entry contains also the name and full path of the relevant file,
so that the user can choose if to use an "undo" on the entire disk or
only on a specific file or directory or group of files or group of
directories;

c. Said path info changes only when the changes start referring to a
separate file, so as long as the changes are in one file, no overhead of
repeating the path is needed.
12.The system of any of the above claims wherein at least one separate FAT
area on the non-volatile memory is used with independent access that does
not slow down access to normal data areas.
13. The system of any of the above claims wherein said non-volatile memory is
at least one hard disk and said independent access is based on at least one
independent read/write head for accessing the at least one separate FAT area.
14. The system of any of the above claims wherein said non-volatile memory is
Magnetic RAM and said independent access is based on at least one of
independent communication channel, and independent processor.
15. The system of any of the above claims wherein said non-volatile memory is
at least one of writeable or rewriteable CDs or DVDs and at least two
separate laser beams are used - at least one for the normal data and at least
one for the at least one special FAT area.
16. The system of any of the above claims wherein at least one of separate FAT
area access and separate Rollback area access are enabled, by at least one of:
a. Using a separate access to the at least one separate rollback area and a
different separate access to the at least one separate FAT area;
b. Using the same at least one special area with special access for both
the rollback and the FAT;
c. The disks or other non-volatile memory contain also one or more
processors that can themselves conduct the comparison between the
files and the FAT, so that it can be done in the background even with
little or no consuming of CPU resources from the computer itself.
17. A method for improving the efficiency, comfort, and/or reliability in
Operating Systems, based on at least one of the following steps:
a. Providing a mechanism for instant Resetting of the OS into the normal
state it would be in after a successful boot, without the need to boot at
all;
b. Providing a mechanism for automatically scanning the nonvolatile
memory in the background without significantly slowing down the
computer after a boot or a Reset while allowing the user to
immediately start working after the boot or Reset;
c. Providing a mechanism for preventing other programs from snatching
the focus while the user is typing;
d. Providing a mechanism for allowing the user to install a new
Operating System in another partition or directory with copying the

desktop of the original system to the new system and automatically
converting as many programs as possible to work in the new system;
e. Providing an automatic rollback feature that is adapted to enable
undoing any changes on the non-volatile memory,
f. Providing independent access mechanisms to at least one rollback
area, so as not to adversely affect speed of access to the normal data
areas;
g. Providing independent access mechanisms to at least one FAT area, so
as not to adversely affect speed of access to the normal data areas;
h. Providing improved versions of at least one of Word processors and
Internet browsers and/or other applications.
18. The method of claim 17 wherein an Image of the state of the OS is saved
immediately after a successful boot on non-volatile memory and is
automatically updated when new drivers and/or software that changes the
state after a boot is added.
19. The method of claim 18 wherein more than one Image can be saved, so that
the system can preferably go back also to the previous Image when needed.
20. The method of any of the above claims wherein whenever at least one of {a.
The system gets stuck, b. The user wants to clear the computer's memory and
go back to a state like after a normal boot), the user can cause the
computer's
memory to instantly Reset from the saved Image, without a need to go
through a boot sequence at all.
21. The method of claim 20 wherein for activating said Reset, the user's
request
is sensed by at least one of: Hardware, and Some process that runs below the
Operating system and thus in not affected even when the system becomes
stuck.
22. The method of any of claims 18-21 wherein at least one of the following
features exist:
a. Any cut & paste buffers are automatically saved also on the disk or
other non-volatile memory, so that they can be immediately available
on the next boot or after the next Reset;
b. Any currently edited files or windows are automatically saved on the
disk or other non-volatile memory after sufficient minimal changes
have accumulated, so that they can be immediately available on the
next boot or after the next Reset;
c. After a fast-boot or Reset that uses the memory Image, and/or even
during or after a normal boot, if the FAT of the disks or other non-
volatile memory needs to be checked, it is done in the background and

without significantly slowing down the disk or the CPU, after the user
can already start working;
d. The disk or other non-volatile memory scanning software is backed up
by hardware, by using special area or areas dedicated for FAT
information, and independent access means are used for read and write
in those areas;
e. Any reading or writing of files is done with the aid of using separate
access means to access the FAT area or areas.
23. The method of any of the above claims wherein when the user is in the
middle of typing something, the focus can be automatically snatched away by
another program only under at least one of the following limitations:
a. The change of focus can occur only after the user has stopped typing
for a certain minimal period;
b. The focus can be snatch by other programs only in case of emergency;
c. The focus can be snatched by other programs only in case of
emergency, and such emergency can be decided only by at least one
of: The OS, the security system of the computer, the firewall, and any
other software which has been given explicit permission by the user to
have such rights;
d. Programs are not allowed to snatch away the focus while the user is in
the middle of typing something, but in case of emergency, instead of
snatching away the focus, important messages can be displayed by
flashing a message and/or other conspicuous visual means and/or by
audible sound, so that the user's attention can be immediately grabbed,
without automatically disturbing his typing efforts;
e. If the focus is snatched while the user was typing, his keystrokes
continue to be kept in a buffer, so that when the user notices that the
focus has changed and goes back to the original window where he was
typing, the keys that he typed while the focus has changed are again
available.
24. The method of any of the above claims wherein when installing a new OS in
a new directory or partition, the new system copies the desktop configuration
and links from the old system into the desktop of the new system, and at least
one of the following is done in order to enable the links in the new desktop
to
work in the new OS:
a. During installation of the new system, the system tries to
automatically convert components that are different between the two
systems to work on the new system;
b. During installation of the new system, the system tries to locate the
original files which were used for the installation and then tries to

reinstall automatically the correct drivers or components that are
needed for the new system;
c. Each Windows system keeps information about the path and name of
the original file from which it was installed in at least one of: The
registry, and At least one directory where the installed program or
component or drivers resides;
d. If the system does not success in converting the relevant links to work
on the new system, then the system does at least one of the following:
1. The system marks the relevant links on the new desktop as non-
operational and encourages the user to look for other versions of those
programs that are fitted to work on the new system, and 2. The system
allows the link to activate the version that runs under the old system or
creates another copy of it, and uses emulation of the old system when
needed in order to let it run;
e. A new protocol for installing programs is implemented so that each
installation of new software installs both the appropriate drivers or
components and at least one set of alternate drivers or components for
additional OS, and each time the program is loaded into memory the
appropriate set of drivers or components is automatically chosen by
the OS, and the parts of the installation that require updating registries
and/or installing various components in system directories are
suspended and are executed automatically when the new OS is
activated for the first time.
25. The method of any of the above claims wherein changes that happen on at
least one of {the hard disk, other non-volatile fast access memory, and other
connected writeble media} are completely undo-able at least for a certain
time period or as long as there is sufficient room for saving the info needed
for the undo, by using at least one hardware supported rollback area.
26. The method of claim 25 wherein the undo feature is accomplished by at
least
one of the following features:
a. At least one rollback buffer is kept and is encrypted and is highly
guarded and/or is kept also in more than one place;
b. Even commands such as format or re-partition or even low-level
format are not able to destroy the at least one rollback area, so at least
a certain percent of the non-volatile memory is always reserved for the
rollback info;

c. The rollback logs or at least the most recent changes in them are
always backed up in at least two or more separate places and/or also
protected by additional encryption and/or redundancy data, so that
damages can be fixed;
d. Only an explicit command by the user entered directly by the user to
the operating system through a direct command can restore changes
from the rollback, so no malicious program can activate the command;
e. When the user requests to restore things from the rollback, the log is
still kept, so that the user can also redo the "undo" by simply moving
again forward on the rollback log, thus reinserting the cancelled
changes, and new changes to the rollback from that point on are kept
on a separate part or buffer or branch, so that making additional
changes from that point on will not overwrite the original "forward"
part of the rollback;
f. When going again forwards the user is shown the various branches
that exist and can choose the appropriate one;
g. The rollback file or files use one or more circular buffers, so when it is
full the oldest changes logged are deleted by overwriting them with
the new data, and pointers to the logical beginning and end of each
circular buffer are updated accordingly;
h. If the hard disk senses that the boot was not made from it, it will block
all further changes after the log file becomes too full, and request the
user to boot from the hard disk;
i. There are two types of low-level write commands, one with rollback
enabled and one without, so that the rollback enabled write is used for
important data and the normal write is used for at least one of
unimportant data, temporary file areas and swap file areas;
j. At least one of the operating system and the computer's security
system decide when to use the rollback enabled write and when to use
the normal write;
k. If a malicious program tries to create suspicious massive changes on
purpose in order to fill the rollback buffer, it is intercepted as highly
suspicious behavior.
27. The method of any of the above claims wherein the hardware supported undo
can be used also for each file separately, by at least one of:
a. Saving a separate rollback buffer or entry for each file;
b. Each log entry contains also the name and full path of the relevant file,
so that the user can choose if to use an "undo" on the entire disk or
only on a specific file or directory or group of files or group of
directories;
c. Said path info changes only when the changes start referring to a
separate file, so as long as the changes are in one file, no overhead of
repeating the path is needed.

28. The system of any of the above claims wherein at least one separate FAT
area on the non-volatile memory is used with independent access that does
not slow down access to normal data areas.
29. The method of any of the above claims wherein said non-volatile memory is
at least one hard disk and said independent access is based on at least one
independent read/write head for accessing the at least one separate FAT area.
30. The method of any of the above claims wherein said non-volatile memory is
Magnetic RAM and said independent access is based on at least one of
independent communication channel, and independent processor.
31. The method of any of the above claims wherein said non-volatile memory is
at least one of writeable or rewriteable CDs or DVDs and at least two
separate laser beams are used - at least one for the normal data and at least
one for the at least one special FAT area.
32. The method of any of the above claims wherein at least one of separate FAT
area access and separate Rollback area access are enabled, by at least one of:
a. Using a separate access to the at least one separate rollback area and a
different separate access to the at least one separate FAT area;
b. Using the same at least one special area with special access for both
the rollback and the FAT;
c. The disks or other non-volatile memory contain also one or more
processors that can themselves conduct the comparison between the
files and the FAT, so that it can be done in the background even with
little or no consuming of CPU resources from the computer itself.
33. The system of any of the above claims wherein any changes in the entire
hard
disk or other types of preferably fast mass storage non-volatile memory after
or during installation of new software, are completely undo-able at least for
a
certain time period by using a rollback buffer.
34. The system of any of the above claims wherein each program or each
installation directory has by default only up to a certain percent of the
rollback areas allocate to it, so that it cannot take up too much of the
rollback
resources unless given explicit permission by the user.
35. The method of any of the above claims wherein any changes in the entire
hard disk or other types of preferably fast mass storage non-volatile memory
after or during installation of new software, are completely undo-able at
least
for a certain time period by using a rollback buffer.
36. The method of any of the above claims wherein each program or each
installation directory has by default only up to a certain percent of the

rollback areas allocate to it, so that it cannot take up too much of the
rollback
resources unless given explicit permission by the user.
37. The system of any of the above claims wherein the system runs a minimal
scandisk in advance at most only on the area where the image itself is stored
or does that only if there is some CRC problem when trying to get the image,
since only that area might have to be scanned before the boot or Reset if
there
is a problem.
38. The system of any of the above claims wherein clicking with the mouse on
any part of the desktop and/or pressing Alt-Tab until a clear-desk-top icon is
selected and/or pressing one ore more special keys will immediately bring the
desktop fully into the foreground so that other windows that cover parts of it
move down to the task bar.
39. The system of any of the above claims wherein at least one of the
following
features exist regarding priority of processes:
a. The user can easily define the desired priority level for a processes by
clicking on the place where the priority is indicated at or near the
taskbar and/or on the window of the process, by at least one of:
Defining percentages, Increasing or decreasing some default values in
discrete steps, and Using more general definitions, such as "Very high,
high, medium, low, very low";
b. The OS indicates to the user clearly the priority level of each process,
at or near the task bar and/or at the top line of the window of the
process, by at least one of Colors, numeric values, textual values, and
appropriate icons, the level of priority that has been given to each
process, by indicating it near or on each square in the taskbar that
shows active processes or elsewhere;
c. The OS remembers the priorities given by the user to various
processes and uses these defaults or at least takes them into
consideration for assigning automatically the priorities the next time
the user does similar things or activates the same processes, unless the
user again changes the priorities;
d. The taskbar can show automatically how much percent of CPU is
being used on average by each open process;
e. The priority of background and/or foreground processes is
automatically dynamically increased according to the type of the work
the user is doing in the foreground window;
f. If the user changes the priority by clicking on something on the
process window itself, the user is asked if to keep a high priority for
this process also when it is in background, or this is the assumed
default and the user has to indicate if he wishes otherwise;

g. If the user changes the priority by clicking at or near the taskbar then
preferably the system assumes automatically that this refers to the
process when running in background;
40. The system of any of the above claims wherein at least one of the
following
features exist regarding resetting the state of the peripheral devices during
Reset or during an instant boot:
a. Peripheral devices can be instantly reset to their original status as it
would exist after a normal boot by improving the standard protocol of
drivers so that they have a function for instant reset;
b. Device drivers can instantly query the device to see if it is in a proper
state or needs to be reset;
c. The system constantly updates some area in non-volatile memory or
some buffer or stack with the current state of the devices, so that it can
be instantly determined if any of the devices was involved in a crash
or needs reset;
d. At least one or more of the devices can be kept in its current state if
the user so desires instead of resetting;
e. During or after the reset the system asks the user if he wants various
devices to remain in their previous states, or it is defined as default
before any reset is needed and the user can change it;
f. If any tests or resets are still needed in one or more devices which
cannot be done instantly, the system can automatically decide which
devices are not critical and can therefore be dealt with in the
background after the user can already start working, in a way similar
to postponing the disks scan;
g. When a restore or an instant boot is performed, the image is first
reloaded into memory including all the drivers as if they have already
checked and/or reset the relevant devices, and then the drivers are
instructed to activate the instant actual reset on the actual devices, so
that the state of the device conforms to the state that the driver is
supposed to represent;
h. The data on the status of any peripheral devices that can be saved in
the image includes also any plug and play data for such devices and/or
for any other card or relevant elements in the computer, so that no
plug and play automatic tests are normally needed during booting;
i. At least during any boot or reset that is not based on turning off and
turning on again the computer (cold boot) the system can
automatically identify if it is being reset or rebooted without a cold
boot, and if so, it simply uses automatically the plug-and-play solution
or configuration that was used last time as saved in the image;
j. Even if a cold-boot is done, the system can check instantly if the
configuration of devices and/or cards and/or other relevant elements
has changed or is the same as the last image, and thus avoid any

unnecessary plug-and-play checks and instantly choose the
configuration used last time.
41. The system of any of the above claims wherein at least one of the
following
features exist:
a. The user can define or save the normal task bar itself or parts of it, so
that upon any boot it is available again by default;
b. The user can for define group-icons, which means that a single icon
can connect a number of icons so that when the user clicks the group
icon a number of applications will open automatically, with or without
restoring also their exact arrangement of the desktop.
42. A System for improving the efficiency, comfort, and/or reliability in
Operating Systems, wherein in at least one word processor at least one of the
following features exist:
a. New changes after an undo are kept on a separate part or buffer or
branch, so that making additional changes from that point on will not
overwrite the original "forward" part of in case the user wants to redo
it again, and when going again forwards the user is shown the various
branches that exist and can choose the appropriate one;
b. If the user types something by mistake while "overwrite" is pressed
when he actually intended to use normal insert mode, the overwritten
part is always saved automatically in some buffer and the user can
press a button or buttons which instantly restore the lost text as if the
mode has been "insert" instead of "overwrite";
c. The Undo in word processors is also improved so that even deleting
the entire contents of the file and saving it is undoable;
d. There is a file-compare feature that can show exactly the textual
differences between two or more files while disregarding irrelevant
data such as line breaks and fonts.
43. The method of any of the above claims wherein the system runs a minimal
scandisk in advance at most only on the area where the image itself is stored
or does that only if there is some CRC problem when trying to get the image,
since only that area might have to be scanned before the boot or Reset if
there
is a problem.
44. The method of any of the above claims wherein clicking with the mouse on
any part of the desktop and/or pressing Alt-Tab until a clear-desk-top icon is
selected and/or pressing one ore more special keys will immediately bring the
desktop fully into the foreground so that other windows that cover parts of it
move down to the task bar.
45. The method of any of the above claims wherein at least one of the
following
features exist regarding priority of processes:

a. The user can easily define the desired priority level for a processes by
clicking on the place where the priority is indicated at or near the
taskbar and/or on the window of the process, by at least one of
Defining percentages, Increasing or decreasing some default values in
discrete steps, and Using more general definitions, such as "Very high,
high, medium, low, very low";
b. The OS indicates to the user clearly the priority level of each process,
at or near the task bar and/or at the top line of the window of the
process, by at least one of: Colors, numeric values, textual values, and
appropriate icons, the level of priority that has been given to each
process, by indicating it near or on each square in the taskbar that
shows active processes or elsewhere;
c. The OS remembers the priorities given by the user to various
processes and uses these defaults or at least takes them into
consideration for assigning automatically the priorities the next time
the user does similar things or activates the same processes, unless the
user again changes the priorities;
d. The taskbar can show automatically how much percent of CPU is
being used on average by each open process;
e. The priority of background and/or foreground processes is
automatically dynamically increased according to the type of the work
the user is doing in the foreground window;
f. If the user changes the priority by clicking on something on the
process window itself, the user is asked if to keep a high priority for
this process also when it is in background, or this is the assumed
default and the user has to indicate if he wishes otherwise;
g. If the user changes the priority by clicking at or near the taskbar then
preferably the system assumes automatically that this refers to the
process when running in background.
46. The method of any of the above claims wherein at least one of the
following
features exist regarding resetting the state of the peripheral devices during
Reset or during an instant boot:
a. Peripheral devices can be instantly reset to their original status as it
would exist after a normal boot by improving the standard protocol of
drivers so that they have a function for instant reset;
b. Device drivers can instantly query the device to see if it is in a proper
state or needs to be reset;
c. The system constantly updates some area in non-volatile memory or
some buffer or stack with the current state of the devices, so that it can
be instantly determined if any of the devices was involved in a crash
or needs reset;
d. At least one or more of the devices can be kept in its current state if
the user so desires instead of resetting;

e. During or after the reset the system asks the user if he wants various
devices to remain in their previous states, or it is defined as default
before any reset is needed and the user can change it;
f. If any tests or resets are still needed in one or more devices which
cannot be done instantly, the system can automatically decide which
devices are not critical and can therefore be dealt with in the
background after the user can already start working, in a way similar
to postponing the disks scan;
g. When a restore or an instant boot is performed, the image is first
reloaded into memory including all the drivers as if they have already
checked and/or reset the relevant devices, and then the drivers are
instructed to activate the instant actual reset on the actual devices, so
that the state of the device conforms to the state that the driver is
supposed to represent;
h. The data on the status of any peripheral devices that can be saved in
the image includes also any plug and play data for such devices and/or
for any other card or relevant elements in the computer, so that no
plug and play automatic tests are normally needed during booting;
i. At least during any boot or reset that is not based on turning off and
turning on again the computer (cold boot) the system can
automatically identify if it is being reset or rebooted without a cold
boot, and if so, it simply uses automatically the plug-and-play solution
or configuration that was used last time as saved in the image;
j. Even if a cold-boot is done, the system can check instantly if the
configuration of devices and/or cards and/or other relevant elements
has changed or is the same as the last image, and thus avoid any
unnecessary plug-and-play checks and instantly choose the
configuration used last time.
47. The method of any of the above claims wherein at least one of the
following
features exist:
a. The user can define or save the normal task bar itself or parts of it, so
that upon any boot it is available again by default;
b. The user can for define group-icons, which means that a single icon
can connect a number of icons so that when the user clicks the group
icon a number of applications will open automatically, with or without
restoring also their exact arrangement of the desktop.
48. A method for improving the efficiency, comfort, and/or reliability in
Operating Systems, wherein at least one of the following features exist:
a. New changes after an undo are kept on a separate part or buffer or
branch, so that making additional changes from that point on will not
overwrite the original "forward" part of in case the user wants to redo

it again, and when going again forwards the user is shown the various
branches that exist and can choose the appropriate one;
b. If the user types something by mistake while "overwrite" is pressed
when he actually intended to use normal insert mode, the overwritten
part is always saved automatically in some buffer and the user can
press a button or buttons which instantly restore the lost text as if the
mode has been "insert" instead of "overwrite";
c. The Undo in word processors is also improved so that even deleting
the entire contents of the file and saving it is undoable;
d. There is a file-compare feature that can show exactly the textual
differences between two or more files while disregarding irrelevant
data such as line breaks and fonts;
e. Switching the dictionary also automatically switches the language
correspondingly in the small window or area where the word has to be
entered;
f. When using the dictionary the user can use also forward and/or
backwards movement, so that he can go back or forward to previously
checked words;
g. If there is a digit in the middle of a word (and/or if it is attached at
the
beginning of the word) it is at least marked as a possible error;
h. When opening files with the windows dialogue box the dialogue box
automatically adjusts its size to a size that is sufficiently large to
display the full file name if one or more of the file names that are
displayed is longer than the default, and/or a slide bar is added (for
example at the bottom) that allows the user to scroll and see the full
name;
i. If a file name is even too long to fit the line even when the dialogue
box is in full size and/or to fit the top line of the Word Window and/or
the window of other applications and/or the explanation box, the
filename is preferably automatically wrapped into two or more lines
and/or the font that displays the file name is automatically reduced in
size by making it smaller and/or by making it thinner, and/or the user
can click or otherwise jump to the end of the line and see the rest of
the file name and/or cause the filename to scroll;
j. When deleting a file in the dialogue box that displays existing file
names, by default immediately after the deletion the display is updated
so that the list of files is displayed more or less in the same position.
49. An Operating System wherein in at least one word processor at least one of
the following features exists:
a. Two files can be merged into a single file with highlighted changes
just as if one of the files was created out of the other while keeping the
"highlight changes" option to On;
b. Cut & paste of one file over another file and/or cut & paste of any
section over another section when "highlight changes" is set to ON

automatically generates the highlighted changes between the two
sections as if they were made by actually changing one to the other;
c. The word processing program behaves consistently with cut & paste
where Internet pages are involved, so that if the links are to local
images then they are automatically inserted into the document file
itself, and if they are based on links to the actual Internet then they are
included internally in the document and/or are saved as links, and/or
the user has a choice about this;
d. The word processing program remembers automatically in the "Open
file" dialogue box and/or in the "Save" dialogue box if the user typed
last time a filename (or path) in English or in another language and
leaves this as the default for the next time;
e. The user can undo the last changes even after closing and reopening a
file, and this enabled by saving the undo data in the file itself, or by
saving it in another local file, so that the original file only contains a
link to the associated local undo file;
f. The word processor program allows the user also options of searching
and/or substituting based on or including style and/or shape and/or
size and/or color instead of just character strings;
g. The word processor program allows the user also options of searching
for the next marked changes;
h. Combining two paragraphs or deleting the empty line between them
does not change the fonts or style of the first paragraph, and fonts
and/or style in the 2nd paragraph change after connecting it with the 1st
paragraph only if the user allows this by default or requests this
specifically;
i. If the user wants to mark large areas with the mouse, while the mouse
key is still pressed, the user can use other location commands instead
of waiting for the pages to scroll, and then the entire area till the next
location becomes marked;
j. If the user wants to mark large areas with the mouse, pressing some
key can significantly increase the speed of the scrolling;
k. If the user wants to mark large areas with the mouse, moving the
mouse further to a more extreme position significantly increases the
speed of the scrolling;
l. If the user wants to mark large areas with the mouse, moving the
mouse further to a more extreme position significantly increases the
speed of the scrolling and said effect is at least one linear and
exponential;
m. If the user already marked a section for example with the mouse and
then uses the mouse to click on something else and then wants to go
back and increase or decrease the marked area, he can still use the
mouse and/or other keys to go back and extend or reduce the section
without having to start marking again from the beginning;

n. If the user first marks the entire file he/she then use the mouse
and/or other keys to reduce the marked section or remove parts of it;
o. The user can choose a specific font color and/or font attribute, which
is kept automatically until changed again, so that this text appears
wherever the user adds it to previous text, regardless of the color or
other attributes of the previous text where the new text is inserted;
p. The user can also search for numbers or letters of logical paragraph
numbering;

h. The word processor program allows the user also options of searching
for the next word marked as possible error;
i. Combining two paragraphs or deleting the empty line between them
does not change the fonts or style of the first paragraph, and fonts
and/or style in the 2nd paragraph change after connecting it with the 1st
paragraph only if the user allows this by default or requests this
specifically;
j. If the user wants to mark large areas with the mouse, while the mouse
key is still pressed, the user can use other location commands instead
of waiting for the pages to scroll, and then the entire area till the next
location becomes marked;
k. If the user wants to mark large areas with the mouse, pressing some
key can significantly increase the speed of the scrolling;
1. If the user wants to mark large areas with the mouse, moving the
mouse further to a more extreme position significantly increases the
speed of the scrolling;
m. If the user already marked a section for example with the mouse and
then uses the mouse to click on something else and then wants to go
back and increase or decrease the marked area, he can still use the
mouse and/or other keys to go back and extend or reduce the section
without having to start marking again from the beginning;
n. If the user first marks the entire file he/she can then use the mouse
and/or other keys to reduce the marked section or remove parts of it;
o. The user can choose a specific font color and/or font attribute, which
is kept automatically until changed again, so that this text appears
wherever the user adds it to previous text, regardless of the color or
other attributes of the previous text where the new text is inserted;
p. The user can also search for numbers or letters of logical paragraph
numbering;
q. The user can automatically reformat all the logically numbered
paragraphs globally or in a marked section that contains multiple
indentation levels, by at least on of: defining the indentation for each
level, and defining general incremental indentation rules;
51. A System for improving the efficiency, comfort, and/or reliability in
Operating Systems, comprising at least one of:
a. A mechanism for allowing the user to define at least one User which
the system will enter by default and without a password if the user
does not request to enter a particular User after a certain time;
b. A mechanism for allowing the user to define at least one User which
the system will enter by default and without a password if the user
does not request to enter a particular User after a certain time, and
wherein if the system enters the User without password, it enters a

limited mode where it takes no commands from the keyboard or
mouse or has other limitations until the user enters some password;
c. A mechanism by which backup software can automatically rename the
older versions of the same back-up-files on the backup media with
some automatically sequenced extension, so that the user can
automatically keep and track also older versions this way;
d. A mechanism for automatic backup of important files to the default
backup directory and/or drive, so that each relevant file that has been
created or changed and has not been updated for more than a certain
time period, and/or after a certain threshold amount of change even if
less time has elapsed, is automatically backed-up on the default back--up
media;
e. A mechanism wherein during each boot the system keeps a log of all
successful steps in the boot, and so even if a certain step causes a
crash so that the system can't even report the problem, in the next boot
the system knows by the incomplete step in the log exactly where it
crashed the last time and can automatically complete the boot this time
without the problematic step and can report to the user exactly what
the problem was and/or can automatically remove the problem and/or
offer the user to chose among a few possible corrections to the
problem;
f. A mechanism for allowing the user to execute files in DOS mode also
by clicking on or near their name instead of having to type it.
52. The system of any of the above claims wherein at least one of the
following
features exists:
a. If at least one of two compared files already contains marked changes,
a different indication is used between the old changes and the new
changes generated by the comparison;
b. If at least one of two compared files already contains marked changes,
a different indication is used between the old changes and the new
changes generated by the comparison, and said different indication is
by at least one of: Using additional colors, using different special
icons and/or marks near the old changes and/or near the new changes,
using different special squares and/or other frames around the old
and/or the new changes, using special fonts and/or other font
characteristics, and marking the old changes are automatically by
more faded or less lit colors;
c. When making file comparisons the system uses various heuristics in
order to extract from the document important information about its
structure, based on at least one of identifying headlines and identifying
other different characteristics of various sections, and uses these cues
to try to avoid erroneously mixing between sections;

d. When comparing files, if the user sees that one or more parts of the
documents have not been properly merged, the user can mark the
problematic section and tell the system to try again to merge more
properly the problematic section or sections;
e. The system allows to compare also more than two files in each step,
and so in the merged file of more than files changes that come from
different files are marked in different colors or marked differentially
by other methods;
f. When the track changes feature is On and the user breaks an
automatically numbered paragraph, only the new break and the change
in subsequent renumbering are shown, and the part after the break is
not marked as new text, and when comparing files the same consistent
difference is shown;
g. When a text is marked as deleted as a result of track changes or of file
comparison the user can mark the deleted text or part of it and press a
key or button or otherwise execute a command which can instantly
undelete it;
h. The user can mark and copy text that is marked as deleted or any part
of it and can paste it back at the same place or elsewhere as normal
text;
i. The user can use a command that fades (or otherwise changes) the
color of the older changes so that all the new changes from that point
on will stand out;
j. The user can define separate colors for displaying the changes on the
screen and when printed;
k. The user can define separate colors for displaying the changes on the
screen and when printed, and by default the on-screen display is the
automatic colors, and the printing by default in black if a black and
white printer driver is used;
1. When comparing a group of two or more files, a summary table or
other type of index can be automatically generated so that the table or
index indicates which color was added on which date, so that the user
can clearly see which change was entered at each date;
m. When comparing a group of two or more files, the date in which each
section or element was added or changed is automatically indicated
near the relevant text;
n. When comparing a group of two or more files, the files are
automatically sorted by date before creating the comparison, and each
new section or element is dated automatically according to the first
time it appeared.
53. The system of any of the above claims wherein in a word processor URL
links are automatically and dynamically broken and restored between the

lines as the paragraph changes, according to slashes and/or underlines and/or
dots and/or other special characters, and when the user presses the link, it
is
treated as one consecutive link regardless of this automatically changing
break between the lines.
54. The system of any of the above claims wherein at least one of the
following
features exists:
a. The word processor can allow the user to define page numbering that
starts from a certain value other than 1;
b. The word processor can allow the user to define page numbering that
starts from a certain value other than 1, by letting the user use a
formula, so that the user can specify a variable that represents the page
number plus some additional number;
c. Commands such as for example "copy" are extended so that multiple
destinations can be used, so that for example copy "bet*.doc1:n:" will
copy all the relevant files to both destination drives/directories;
d. When copying a large group of files the user also has an option of "No
to all" if he is asked if to overwrite files with the same name;
e. When the user searches for files on the computer the "find files"
window allows him/her to enter also more than one file name at the
same time, so that all the files can be searched for during the same
disk access.

55. The system of any of the above claims wherein in statistical packages
when correlations or other types of output are displayed for a large number of
variables, at least one of the following features exists:
a. The user can instruct the system to automatically mark for him/her the
most significant correlations and/or other result types;
b. The user can instruct the system to automatically mark for him/her the
most significant results, and the criteria for which correlations and/or
other result types are sufficiently significant can be at least one of
Some default criteria defined by the user and/or automatically by the
system, such as for example only correlations above a certain value
and/or significance above a certain value, or the cutting points
automatically and/or by user definition can change dynamically
according to the results, and/or the best results are marked or
displayed according to a certain top percentage;
c. The user can mark one or more sections of the results so that these
automatic marking or statistics will be run only on parts of the results;
d. The system can report various meta-statistics, wherein said meta--
statistics
include at least one of: what percent of the correlations are
beyond certain cutpoints, what is the significance of these meta--results,
what number of results was marked out of what total, what
percent it is, and what is the chance of having such a meta-results by
chance;
e. The system use more than one type of mark, so that 2 or more levels
of significance are marked differently, more conspicuously and/or
with different colors;
f. The system can automatically sort the results according to their value
and/or importance and/or significance;
g. Instead of marking correlations or other results, only the relevant
results that fit the criteria and/or would have been marked are printed,
thus saving paper and time;
h. Instead of marking correlations or other results, only the relevant
results that fit the criteria and/or would have been marked are printed,
thus saving paper and time, and this is accompanied by meta-statistics
that refer also to the non-printed results;
i. The system can automatically and/or by user request generate also
various graphs for visually displaying said meta-statistics;
j. For the marking and/or sorting and/or meta-statistics the system can
automatically ignore at least one of: All the correlations of variables
with themselves, and any other correlations that the user marked as
less meaningful and/or that the system can automatically determine as
being less meaningful;
k. The user can request to run various procedures also on lists of
variables defined by exclusion;

1. The user can choose if the correlations will be sorted by absolute
correlation, with negative correlations mixed with positive
correlations, or the negative correlations appear separately;
m. The user can request that the sorting by correlation level be done
separately automatically for each variable, so that for each variable the
correlations are automatically sorted;
n. The user can request a combination, so that there is a sorting within
each variable, but the variables themselves are automatically sorted so
that the variables that have the highest correlations in general appear
first.
56. The system of claim 55 wherein at least one of the following features
exists:
a. These automatic markings and/or meta-statistics can be applied for
each statistical procedure or command separately or for to the entire
set of procedures or commands on the same Run;
b. The system can automatically run the tests also on automatic randomly
divided sub-samples, and the number and/or size of the sub-samples is
determined automatically according to various rules and/or according
to various parameters of the actual data;
c. The correlations (or other statistics results) can also be marked
differently and/or displayed in a different section if they are more
stable across random sub-sample tests, and/or their sorting can take
these stability results also into account;
d. For defining automatic random sub-samples the user may choose
among a number of pre-defined sets of rules or define his own rules,
and these definitions can then be applied automatically to any of the
normal statistical procedures that are used for that run.
57. A System for improving the efficiency, comfort, and/or reliability in
Operating Systems, wherein at least one of the following features exists in
Internet browsers and/or other programs that access the Internet:
a. The browser can request from the server also to retrieve just a part of
an Internet page, as defined by a certain line and/or the value near
certain words or areas or fields in the page, and this is supported by
the server being able to search also normal web pages and send back
just the desired data in response to such a request;
b. The user can mark a group of links in the history list and/or in the
bookmarks list of the browser, and/or in any web page that contains
links, so that after the user marks the desired group or groups of links,
the browser can automatically open multiple windows so that each
window accesses automatically one of the marked links and/or the
browser can save multiple files automatically;
c. If multiple files are saved automatically, they are saved by default
with their original names, or the user can define a group name which

is incremented automatically to differentiate between the files in the
group, and/or the system can automatically read he title in each of the
files or web pages and use that as the name;
d. The user can easily reduce or increase the size of the printed fonts, by
at least one of: A specific command when printing, and reducing or
increasing the size of the fonts on the screen so that this affects
automatically also the printing;
e. Reducing or increasing of fonts can be also done for a specific web
page and/or for a specific site instead of Globally, since for example in
Netscape the changed size remains also when;
f. The same command that reduces or increase the font size on the page
(and/or another command) can cause also the images to automatically
grow or shrink in addition to or instead of the fonts, and this can be
done independently of changing the size of the Window;
g. The http protocol is improved so that images are automatically saved
by web servers in more than one size and the browser can
automatically request the same image again with some parameter that
tells the server to send it in a larger size and then the server
automatically sends again the same image in a larger size;
h. The user can mark a group of links in the history list and/or in the
bookmarks list of the browser, and/or in any web page displayed by
the browser that contains links, and can automatically print the group;
i. In sites where the user has to print separately each page in a document,
the browser can allow the user to define a set of steps to be performed
automatically, such as pressing the icon or link that leads to the next
page and then printing it, so that after pressing the "next page" link
and printing it, the user can activate a command that tells the browser
for repeat the last N actions an additional M times and/or until it is no
longer possible;
j. When pressing a Javascript button which designates a link with the
right mouse key, the same options are available as when pressing the
right mouse button over normal links, such as Open in a new Window
instead of in the current window, or Save the link target instead of
opening it;
k. When typing one or more words or part of a url address in the location
window of the browser, the browser does not attempt to go
automatically to the ".com" address, but can check also if the address
can be resolved also to other Top Level Domains or domain
extensions, and then preferably the browser opens e a scroll Window
of the existing addresses and lets the user choose the desired one.,
and/or the browser can also check automatically in the background,
which of these possibilities shows up higher and then sort the options
by popularity or even choose automatically the most popular option;

l. The user can tell the OS and/or the browser and/or the service that the
user acquired domain names from, to automatically perform all the
actions necessary to renew one or more specific domains on time even
if the user forgets to do it, by at least one of the following methods: 1.
The browser can automatically login to the site and perform the
necessary actions for renewal, 2. The service is instructed to renew it
automatically like a subscription if the user does not cancel the
automatic renewal until the automatic renewal time;
m. The OS and/or the browser can automatically sense the width or size
of the screen and/or the resolution and/or number of fonts available, so
that if a table does not fit in the page and necessitates creating
automatically a horizontal scroll bar, the browser and/or the OS can
decide automatically to reduce the font size accordingly so that the
scroll bar is not needed and/or reduce only the width of the fonts, so
that the fonts become thinner.
58. A computer system wherein the speed of the hard disk is increased and/or
its
power consumption is reduced, by at least one of the following features:
a. Adding at least one fork with an additional head to the rotating arms
that contain the read/write heads, so the each arm now only needs to
move part of the way in order to reach any desired track;
b. Adding at least one fork with an additional head to the rotating arms
that contain the read/write heads, so each arm now only needs to move
part of the way in order to reach any desired track, and both heads can
read/write data simultaneously, thus increasing also the data transfer
rate;
c. Using multiple independent arms (so that there are multiple hinges of
arms sets instead of one;
d. Using multiple independent arms (so that there are multiple hinges of
arms sets instead of one), in combination with access order
optimization, such as NCQ & TCQ.
e. Using at least one stationary arm that reaches more or less the middle
track, and carries an additional rotating plate which contains multiple
read-write heads, so that considerably less movement is needed to
reach any track;
f. Using at least one stationary arm that reaches more or less the middle
track, and carries an additional rotating plate which contains multiple
read-write heads, so that considerably less movement is needed to
reach any track, and the heads can read/write data simultaneously, thus
increasing also the data transfer rate;
g. Using at least one rotating plate with a hub outside the area of the
disk's rotating plates, wherein said plate contains multiple read-write
heads, so that considerably less movement is needed to reach any
track;
h. Using at least one rotating plate with a hub outside the area of the
disk's rotating plates, wherein the plate contains multiple read-write

heads, so that considerably less movement is needed to reach any
track, and the heads can read/write data simultaneously, thus
increasing also the data transfer rate.
59. The system of claim 58 wherein the shape of the plate and/or the positions
of
the heads on it is specially designed to correct for non-linearity effects, so
that the range of movement between tracks covered by each head is more or
less the same.
60. The system of any of the above claims wherein when Internet pages are
printed, the browser and/or the OS and/or the printer driver automatically
check if lines are about to be truncated in the printing and, if so, this is
automatically prevented by at least one of:
a. Automatically converting to landscape mode;
b. Automatic additional line wrapping if possible;
c. Automatically reducing the left and/or right page margins;
d. Automatically reducing the font size;
e. Informing the user about the problem and asking him to choose from a
number of possible solutions;
f. Allowing the user to decide to truncate less important parts on the left
of the pages;
g. The user can mark just part of the displayed HTML page and then use
a command that prints only the marked area.
61. The system of any of the above claims wherein at least one of the
following
features exists:
a. The user can disable the Autorun feature that enables programs on
CD's to start running automatically when the CD is inserted into the
computer, without having to disable for that the Auto insert
notification for that drive;
b. When printing Internet pages the browser or the printer driver shows
the number of pages that will be printed before the user starts the
actual printing;
c. The user can logically disable or change the function that pressing
various keyboard keys has on the OS and/or on any programs that are
running;
d. The dynamic linking possibilities are improved so that the user can
call and use any Windows DLL from a DOS program and/or vice
versa, so that Windows modules and DOS modules can transfer data
between them without having to use intermediary file storage;
e. The dynamic linking possibilities are improved so that the user can
call and use any Windows DLL from a DOS program and/or vice

317
versa, by defining appropriate stubs and/or API interfaces that bridge
between the two types, including any necessary conversions that are
needed for compatibility, and/or using sockets and/or client/server
connections within the same computer;
f. When the user searches for programs in the "Start menu" the user can
request the System to automatically sort the list of installed programs
in the start menu by alphabetic order, or to jump automatically to a
given program in the list by typing the first letters of its name and/or a
search string that is at least similar to the desired name.
62. The system of any of the above claims wherein at least one of the
following
features exists regarding changing the size of fonts and/or icons and/or
images:
a. The user can reduce the size of fonts and/or icons and/or images on
the computer's desktop by a command that affects the entire desktop
and/or a marked section in it by any desired factor, and without having
to restart the computer to see the change, and the change is seen
instantly, like when increasing or reducing the font size in the
browser;
b. If increasing the size of fonts and/or of icons on the desktop causes a
problem that some icons no longer fit on the desktop, this is
automatically handled by at least one of: 1. Creating vertical and/or
horizontal scroll bars at the edge of the desktop, like in a normal
directory window in which there items that don't fit in the Window, so
that the user can drag items back in and/or resize the desktop in order
to get rid of the scroll bars; 2. The system can automatically reduce
spaces between icons and/or recommend to the user the maximum size
that can be used without problems;
c. The OS supplies the user with an Undo command and/or a Redo
command for changes in the desktop icon sizes and/or for moving
icons;
d. The OS supplies the user with an Undo command and/or a Redo
command for changes of moving and/or resizing icons in a directory
and/or in other windows;
e. The undo of moving and/or resizing icons is incremental, so that the
user can roll back till the start of the changes;

318
f. The OS automatically prevent the possibility that reducing the
resolution and/or increasing the system font size can cause the window
that asks if to keep the new resolution to appear outside of the desktop
and/or cause the text is various system message windows to appear
truncated, by automatically calculates the new size and ratios and thus
makes sure that all the message windows appear in a visible area and
that the text size in them fits the message window;
g. If the user changes the screen resolution, the fonts and/or icons on the
desktop and/or in other places or applications by default remain more
or less the same size, by automatically correcting for the changes
caused by the changed resolution, so that if the user increases the
resolution the fonts and/or icons and/or images can be automatically
increased in size to compensate for this and if the user decreases the
resolution the fonts and/or icons and/or images can be automatically
reduced in size to compensate for this, with or without keeping the
aspect ratio between height and width;
h. The user can also undo or redo changes such as for removing or
adding or changing the position of items that constantly appear near
the task bar;
i. By default at least the distances between the icons are corrected in
each direction by its appropriate ratio of change.
63. The system of any of the above claims wherein in Tablet PC's and/or
similar
devices and/or other devices that accept direct input by handwriting, when
the user enters text in handwriting, the system automatically solves the
problem of insufficient room in a text input box or window by at least one of
the following ways:
a. Letting the user continue his/her writing even beyond the edge of the
input box, and then the Operating System and/or the browser or other
application automatically knows from the continuity of the written text
and/or from the continuity in time that this is the continuation of the
same text, and therefore interprets it correctly as if it is still in the
input box even if its spills out;

319
b. If the user runs out of space in the input box, the System and/or the
browser and/or other relevant application automatically extends the
box to the appropriate direction;
c. The area where the user is writing can automatically be zoomed in,
however this automatic zoom does not effect the user's hand writing
itself, so that the handwriting can remains at the same size and
position;
d. At least the part of the handwriting that spills out of the input box is at
least partially transparent and/or is visible only when the user hovers
or positions the pen and/or cursor and/or mouse near it;
e. If the user for example is entering text by handwriting in some open
text window and his handwriting exceeds the edge of the window, the
System automatically recognizes by the continuity of the hand writing
and/or of the temporal sequence that this belongs to the same text and
thus the system keeps the focus in the current application even if the
user for spills letters on another nearby window of another application.
64. The system of any of the above claims wherein the installation disk of the
OS
contains also one or more typical usable disk images, so that the system can
be instantly installed from the most appropriate image, and then the system
automatically determines the actual computer's configuration and simply
corrects and/or adds appropriate device drivers and/or makes other necessary
adjustments, as if the system was already installed on that computer and the
hardware was later changed.
65. The system of any of the above claims wherein at least one of the
following
features exists in at least one word processor:
a. The user can mark one or more areas in which track changes is
marked as On or Off, so that different areas can be with the track
changes On or Off at the same time;
b. The user can use a mode which automatically adds the words
"(Currently amended)" when the user makes changes in a claim, and
the words "(Currently amended)" are automatically added without
track changes;
c. The user can use a mode in which deleting an entire claim
automatically causes the deleted text to disappear, and the word
"(Canceled)" to automatically appear instead, as if track changes has
been temporarily suspended;
d. The user can use a mode in which when adding new claims at the end
of the claims section, the track changes is automatically set to Off and
the word "(New)" is automatically inserted at the beginning of the
new claim;
e. The user can mark any area in an image or part of it and at least one
of: delete it, copy it, move it, and rotate it so that all the elements in
the marked section are rotated in synchrony, etc.;

320
f. The copy command can also be activated cumulatively, so that a
sequence of copy commands can create a cumulative buffer of
consecutively pasted texts, so that afterwards for example pasting at a
certain position will paste back the consecutive group of pasted texts
as one sequence;
g. in searching the dictionary and/or the thesaurus the user can search for
synonyms of words with a specific pattern or length, or for the word
itself when partial data exists, so that for example the user can use
question marks or other designation to designate unknown characters.
66. The system of any of the above claims wherein in at least one of word
processing programs and/or Internet browsers and/or other software the user
can move any icon and/or any menu item and/or sub-menu item to any
desired position by dragging it with the mouse and at least one of the
following features exists:
a. The same icon and/or menu item automatically continues functioning
on the new position;
b. This new position is saved automatically also after the user closes the
application;
c. The user can also undo any such changes;
d. The user can also undo any such changes even after the application
has been closed and reopened;
e. This feature is supported automatically for by compilers, so that the
programmer does not have to do almost anything in order to enable it.
67. The system of any of the above claims wherein at least one of the
following
features exists:
a. When opening additional pages in the browser as additional tabs
within the same window, the browser and/or OS are changed so that
Alt-F4 closes only the current page (tab) and/or Alt-Tab switches also
between the tabs, and/or when closing a tab page by Alt-F4 the
browser or the OS warns the user or asks if he/she wants to close just
that page or the entire browser window with all the open tabs;
b. There is a command which allows moving only between the windows
of the same group, unlike alt-tab which moves also between the other
open windows.
68. The system of any of the above claims wherein at least one of the
following
features exists:
a. When more than one OS is installed on the same computer the user
can switch the default OS to whichever option he/she wants and/or
change the order of the options (where typically the first option
becomes the default) by letting the user drag an option line with the

321,
mouse to a different position in the screen that asks which system to
boot;
b. When more than one OS is installed on the same computer the system
automatically remembers the boot option that was last chosen and
makes it automatically the default for the next boot until the user
changes it;
c. When more than one OS is installed on the same computer the system
automatically makes the chosen option in the boot menu into the first
choice on the boot menu on the next boot;
d. Network computers in wireless networks use also automatic
triangulation of the source of transmissions, so that the coordinates of
the allowed space are entered into the system and/or only specific
locations of known devices are white-listed, and so any intruder from
an outside position cannot pretend to be an authorized user even if he
succeeds in finding a vulnerability in the encryption.
69. The system of any of the above claims wherein in order to save bandwidth
when looking for updates, at least one of the following is done in browsers
and/or the html protocol is changed:
a. The html protocol is changed so that it is possible to define "refresh on
a need basis", which means that the refresh command is initiated
automatically by the site when there is any change in the page, so that
the browser can get a refresh even if it didn't ask for it;
b. The html protocol is changed so that the browser asks for refresh more
often, but if nothing has changed then the browser gets just a code that
tells it to keep the current page or window as is;
c. When the refresh is sent, it can be a smart refresh, which tells the
browser only what to change on the page instead of having to send the
entire page again;
d. The page or part of it can remain open like a streaming audio or video
so that the browser always waits for new input but knows how to use
the new input for updating the page without having to get the whole
page again and doesn't have to do anything until the new input arrives.
70. The system of any of the above claims wherein at least one of the
following
features exists:
a. When the user enters the task manager he/she can mark multiple
programs and then tell the OS to close all of them at once;
b. When the user tries to force the closing of an application through the
task manager and/or in other contexts, in case said application hasn't
been closed, the OS automatically tries again repeatedly to close it at
least for a certain number of times and/or till a certain time limit.

322,
71. The system of any of the above claims wherein at least one of the
following
features exists in at least one word processor:
a. If track changes is used and the strikeout text contains letters on which
it is hard to notice the strikeout, the strikeout line is automatically
moved higher or lower on such characters, and/or for strikeout line is
automatically made of a different thickness and/or length and/or angle
and/or color;
b. Striked-out words behaves like normal words on the dictionary;
c. The user can mark one or more areas in the file and activate the
"accept changes" command and then the "accept all changes" can be
automatically done only in the marked areas;
d. When there are different sets of marked changes, the user can instruct
the word processor to automatically accept all the changes but only
from a certain date or dates or a certain source or sources;
e. The dictionary allows the users to use back arrows in order to go back
to previous points in the dictionary. Another preferable improvement
for example in words processors, and especially for example;
f. When the user wants to correct intermittently two or more sections in
the same file, the user can press a key or combination of keys which
causes the position in the word processor to jump automatically
between the various last edited sections;
g. The word processor automatically checks the date in the system in
short intervals and thus updates the date field automatically whenever
it has changed, and not just if the user reopens file or prints it;
h. The user can mark with the mouse more than one area at the same
time by pressing some key that tells the application not to remove the
mark from the previous marked area or areas;

323
i. When track changes is used and a section is deleted and then reentered
next to the deleted text, the word processor can automatically integrate
then by removing the deleted redundant part;
j. Word processors and/or other applications and/or the dialogue box can
remember and display automatically the last requested file pattern
when the user tries to open a new file and if the user presses Enter
then this last pattern is used;
k. When the user tries to make a repeated change but confirm it at each
step (instead of just global change), the position of the search-and-
replace dialogue box is always kept constant and the text itself is
automatically always scrolled so that the relevant part is visible;
l. When the user tries to make a repeated change but confirm it at each
step (instead of just global change), the position of the search-and-
replace dialogue box can move, but when it moves the mouse cursor
automatically jumps with it, so the user does not have to move the
mouse to correct for the change is the position of the search-and-
replace dialogue box;
m. If the user copies and pastes a new http link over a previous http link,
the word processor (or other application) automatically replaces also
the internal link to automatically comply with the visible link, or saves
only the visible link and uses that information when the user tries to
access the link;
n. When the thesaurus is used the dictionary shows near each newly
found word of the thesaurus also its translation to the other language
and/or a short description of its more precise meaning in a few words;
o. The thesaurus and/or the dictionary automatically takes into
consideration the context in which the word exists in the file, so that
when displaying semantic trees or groups of semantic branches the
groups or branches are pre-sorted according to the most likely
meaning when taking said context into consideration and/or only the
most likely meaning branch is shown;
p. The automatic typing-error-correction system takes into account also
the context, and at least one of: The system chooses the word most
likely according to context when there is more than one reasonable
correction and/or in cases the system is not sure it shows the user that
there is more than one likely correct word and asks him/her to choose
the preferred one;
q. The user can activate a command which automatically indicates all the
words in which spelling errors were previously automatically
corrected the word processor, so that the user can check specifically
these words to see if there were any such errors of changing the word
to something that was not indented by the user;
r. The user can change page definitions also for a single page or range of
pages and not just automatically for all the pages;
s. When using cut & paste if the user presses by mistake again "~C"
(copy) instead of AV (paste), the user can press some undo key which
brings back the previous copy buffer.

324,
72. A computer Operating System in which in word processors and/or in editors
that are used for editing software programs the editor can mark automatically
matching pairs of brackets in a way that the user can easily see the matching
pairs and wherein said marking is done by at least one of
a. Showing each pair in a different color;
b. Show the matching pairs in a different style or for in a different height.
73. The system of any of the above claims wherein at least one of the
following
features exists:
a. In the dialogue box that allows the user to choose directories and files
and/or in the explorer Window file extensions are shown even when
the associated application is known;
b. In the dialogue box that allows the user to choose directories and files
and/or in the explorer Window in addition to the icon that shows the
associated application the window shows also an additional Icon that
represents the general type of the file regardless of the associated
application;
c. The user can change the position of the normal boxes on the taskbar
that represent normally running programs by dragging them with the
mouse, so that the user can conveniently re-arrange their position
without having to close and reopen these programs.
74. The system of any of the above claims wherein at least one of the
following
features exists:
a. If the user aborts a virus scan and later wants to continue, the program
can automatically continue from the last point reached;
b. The user can add to a portable computer a mini-keyboard which
completes for the side keypad and/or any other keys in a way that tells
the portable computer not to regard it as a replacement keyboard that
disables the portable's built-in keyboard but regard it as adding certain
keys to the internal keyboard;
c. The user can use the combined fax/printer/scanner and/or a normal
scanner to send faxes directly through the Internet through the
computer's Internet connection, which is enabled by a change in the
device's firmware and/or by adding the appropriate software to the
computer, so that the user can send faxes directly and instantly the
same as he/she would be sending them through a normal phone line,
except that the fax is sent through the Internet;
d. If the user closes an application window or tab he/she can still press
some undo button which automatically reopens the last closed window
or tab or file, and this is enabled by the relevant applications and/or
the OS creating automatically a temporary backup of the open window
or file;
e. When trying to delete a directory through a command prompt window
the OS tells the user that it is a directory and tells him/her also the

325
number of subdirectories and/or the total number of files in that
directory tree and/or the total size;
f. The user can tell the OS not to enter sleep mode until a specific
application has finished running;
g. The user can tell the OS not to enter sleep mode until a specific
application has finished running by clicking on the applications
window or for example on the square that represents it in the task bar
and marking the relevant option in a menu;
h. If the user does not find a certain file name the OS automatically
checks for similar names and shows the user the list of closest file
names available, sorted by closeness;
i. If the user does not find a certain file name in the start menu or on the
desktop the OS automatically checks for similar names and shows the
user the list of closest file names available, sorted by closeness;
j. When an internal Window of a program is in front of a background
window of that program and does not allow accessing the background
window until the front window is closed, the OS automatically allows
the user at least to move the previous window and/or perform at least
other acts that do not change the way the software behaves but allows
the user at least to control the view of the background window;
k. The fax logs automatically indicate near each communication also the
resolution that was used in the transmission and/or if the fax was in
B/W or in color;
1. The user can indicate example that the firewall should not close the
web and/or the screen saver should not be activated until a certain
application has finished performing some operation;
m. When a computer becomes compromised by a Trojan and becomes a
spam-relay station, there are special sites or routers which identify the
attacking computers and can send the users who's compromised
computers have participated in the attack automatic warning
messages, directly to their IP address or to their email;
n. IP addresses of compromised computers are automatically updated in
one or more special URLs in real time and the OS and/or the browser
automatically checks regularly in one of these official sources and sees
if the IP address fits the real current IP address of the current user's
computer and then warns the user;
o. There are on the internet databases which automatically link email
addresses or other identity indictors with the current IP of the user,
which are automatically updated each time the user connects or
disconnects from the Internet and allow also efficient searching
according to the IP, and they can be used for sending automatic email
warnings to users who's computers have been compromised and have
become spam relay stations;
p. The firewall and/or the Security system and/or the OS can also
indicate to the user automatically whenever some application is trying

326
to download a file, or the user is warned only if an apparently
executable file is being downloaded;
q. The firewall allows the user to change the permissions of multiple
applications at the same time in the firewall's table by marking entire
columns or other areas and then changing automatically the
permissions in the marked areas.
75. The method of any of the above claims wherein in order to market the OS in
low-income countries without damaging sales in countries where a normal
price can be charged, the OS is sold at the desired low-income countries at
the low price with few or no limitations that result in reduced functionality
to
the user, at least one of the following steps is used:
a. Limiting these cheap versions so that at least part of the interface
and/or some application works only in languages that are not
useful to most people outside the cheap countries;
b. Displaying a warning whenever the OS is started that it is illegal
to use this version of the OS in any either countries than the list
of qualifying countries, unless the user has a citizenship of one of
these countries and/or is resident there;
c. The OS checks automatically when the user connects to the
internet if his/her IP address is in one of the qualified countries
and, if not, require some certification to be filed which proves
that the user is entitled to use that version of the OS outside of
those countries and/or automatically stop working or start
working with only limited functionality after a certain time period
if said certification has not been filed;
76. The system of any of the above claims wherein at least one of the
following
features exists:
a. If there are more than once CD and/or DVD installed on the same
computer they can be connected to a common audio connector in
parallel or with some multiplexor, or cables from more than one drive
can lead to a common connector or multiplexor near or at the sound
card;
b. No direct connection to the sound card is needed from any of the
drives, and each CD or DVD that contains sound is played by
activating the sound card directly through the software that plays the
data, in the same way that the sound is played from an avi file on the
hard disk.
77. The system of any of the above claims wherein at least one of the
following
features exists:
a. When uploading a file while submitting a form in an Internet browser,
the browser specifically warns the user about the file name and/or path
and/or size, so that the warning is more specific about such files,

327
instead of or in addition to the normal warning if the user really
intends to submit the form itself;
b. When the user types text for entering in some field in a form, the
browser and/or the OS can keep it automatically in some buffer, so
that if the user starts to type before the actual form field is reached, the
typing is not lost but is added automatically the browser or by the OS
to the beginning of the input line;
c. The user can perform commands that affect a group of open windows,
such as entering a command that prints all of them or that saves all of
them or that bookmarks all of them - by entering the global command
in one of the open windows of the same application, or by marking
multiple boxes in the task bar and then entering the command;
d. The user can perform commands that affect a group of open windows,
and in this mode the user choose automatic carrying out of the global
command or to be prompted for each of the windows with the option
to choose yes or no in each case;
e. The internet browser lets the user to darken with the mouse a group of
checkboxes and then with one command mark or unmark the entire
group;
f. The internet browser lets the user drag the mouse over a group of
checkboxes, so that dragging it with the left button pressed
immediately marks each box on the way and dragging it with the other
button pressed unmarks each checkbox on the way, or vice versa;
g. When the user presses the Shift key (or some other key), marking or
unmarking 2 checkboxes also marks or unmarks all the checkboxes in
between;
h. When the user is filling Online forms, the Internet browser can
automatically take into account the language and/or the character set
of the text near each form field and automatically accept by default the
input in the appropriate language or character set;
i. The user can unmark a radio button by clicking on it again or by using
another mouse key.

328
78. A computer system wherein at least one of the following steps is used to
protect the user from phishing attempts:
a. The browser or the email client automatically indicates to the user
and/or warns him/her when the real href is different from the http
address that is visibly shown in a link, or warns the user about this
after he/she clicks on the link and gives him/her a chance to cancel
before actually going to the link, and/or warns him/her that the link is
phony, and/or displays an explicit recommendation not to click on the
link even before the user clicks on it;
b. The browser or email client automatically indicates to the user also the
real url that is within the href in the normal display of the page - next
to the link or superimposed on it;
c. The browser or email client automatically indicates to the user also the
real url that is within the href in the normal display of the page - next
to the link or superimposed on it, and the browser or other application
makes sure that this is clearly visible and/or ignores any font size
and/or font color command which might hide it and/or makes it
automatically even more conspicuous than the normal text;
d. The browser automatically makes sure that the url in the location
window and/or in the display of real url which is shown even before
the user clicks on the link is indeed displayed exactly like the actual
url that it connects to, and if there are unprintable characters then they
are marked with some sign and do not effect the printing of the rest of
the url;
e. If there is any attempt by Javasrcipt or Active-X or some other
portable code or any other program on the user's computer to put other
data on top of the location Window then this is automatically
prevented by the browser and/or the OS and/or the computer's
Security System;
f. If there is any attempt by Javasrcipt or Active-X or some other
portable code or any other program on the user's computer to put other
data on top of the location Window then this is automatically
prevented by automatically preventing other programs from putting
any windows in front of the browser window unless the user explicitly
transfers the focus to them, and/or by automatically intercepting
windows that have a suspect size or shape or location or that otherwise
have suspicious or unusual qualities;
g. Email messages that contain clearly misleading hrefs where the visible
link does not fit the real link can be automatically blocked by spam
filters, thus not reaching the user at all;
h. Normal spam filters are also improved to identify automatically for
example typical patterns of mixing digits with letters in a way that
tries to bypass word filters;

329
i. When the browser enters a site and/or for even before the user presses
the link, or when the mouse is near the link, the browser automatically
checks also a relevant WHOIS database and displays to the user
automatically also the name under which that domain is registered
and/or the country and/or the length of time this domain has existed
and/or other details that can easily indicate to the user if a site is
phony;
j. If the browser and/or the OS and/or the security system and/or other
software also checks in one or more databases for known phishing
sites, it also identifies suspect servers which were known to host such
sites before and/or also checks if the domain seems to be related in
one or more ways to previously known phishing domains, such as
being registered to the same people, having the same email of the
technical contact or billing contact, etc.;
k. There is one or more database on the Internet which collects typical
word combinations and/or other typical patterns of phishing email
messages, which the browser and/or other application can consult
automatically, and/or the browser and/or other internet application
accumulates the typical wording patterns itself automatically when it
identifies a phishing email by other methods, and thus the browser or
other application can warn the user automatically of any email that
seems like a typical phishing attempt;
l. The browser and/or other application and/or one or more internet
database gather list of at least the most common organization names
used m typical phishing attempts, so that the browser (or other
application) gathers this lists by itself and/or gets it from one or more
online database, and then warns the user automatically about urls
which contain the name of the organization in suspicious places.
79. A portable computer wherein the computer and/or the OS and/or the relevant
part of the hardware can automatically increase or decrease its power
consumption according to sensing if the computer is currently connected to
the network electricity or is currently running on the batteries and/or the
user
can request it explicitly for a short time, wherein at least one of the
following
is done:
a. The hard disk's speed can be considerably improved;
b. The disk has at least two sets of engines or at least two sets of coils,
which are used at different combinations in order to work in the low
speed or in the fast speed; and/or the disk's DSP automatically starts
working at higher MHz when the wall power is sensed; and/or more
than one DSP can be used in order to speed up the processing;
c. The speed of the CPU can be improved so that it consumes more
power and works faster;
d. The brightness of the screen can be increased.

330
80. The method of any of the above claims wherein the automatic error checking
of at least one word processor includes also at least some statistical and/or
semantic checking of unreasonable words or word combinations that are
probably a typing error even if there is such a word and/or even if it is
grammatically possible.
81. The method of claim 81 wherein the word processor uses at least one of the
following methods to check for such errors:
a. Using at least some taxonomy of semantic knowledge;
b. Using a database of typical texts in which words and/or word
combination of up to a few words are indexed according to their
frequency of appearance;
c. Learning from the user's own behavior when such errors are made and
then corrected by user.
82. The system of any of the above claims wherein the user can use a fax card
or
a combined fax-scanner-printer which is connected to the computer in order
to actually send digital data files eventhough the connection starts like a
fax
communication.
83. The system of claim 82 wherein at least one of the following features
exists:
a. The sending device can send one or more pseudo fax images which
are actually digital data, and when it is transmitted by Fax the sending
device uses a special code to tell the receiving device that one or more
pseudo page images are actually a digital file, and the receiving fax is
either a computer with a fax/modem card or for example a combined
fax-scanner-printer which is also connected to a computer and thus
can transmit the digital file to the computer as a digital file;
b. The two devices can automatically recognize each other during the
handshake as having more than Fax communication capabilities, and
thus can automatically switch to some other electronic file transfer
protocol between them for exchanging digital files.
84. The system of any of the above claims wherein at least one of the
following
features exists:

331
a. When the user asks Windows to create a restoration point, the user has
a choice of indicating if he/she wants a normal restoration point or
also creating a full snapshot of the main system and registry files
and/or the user can define in general if and/or when snapshot or
normal restoration point will be generated when the system
automatically creates them and/or the system automatically creates the
snapshot files whenever it is about to make highly significant changes
for example in the system;
b. Rollback info is saved automatically in more than one place, together
with a copy of a sufficient reference base-point, so that the system has
a much better chance of restoring it even if the registry becomes
seriously damaged;
c. The registry entries are made independent of each other so that even if
part of the registry is damaged it will not effect anything else;
d. The system uses transaction sequences in the registry and/or in other
important system files or system areas like in a normal database with
automatic rollback in case the transaction has not been completed;
e. If when trying to boot the system discovers that the system needs to
load a previous snapshot of the registry and/or other critical system
files, during boot the user is advised of the situation and can
automatically view a list of the most recent snapshots and/or otherwise
possible restoration points and can choose the most preferred ones to
attempt and then the system restores it automatically and continues to
boot;
f. At least one of the registry and other critical system files that are
needed for snapshots are always automatically kept in at least two
copies so that if one copy becomes unusable there is always an
immediate backup of the most up to date version;
g. During boot the system uses the wasted time on the part of the user to
display to the user at least one of: Details about the number of safe
restoration points that exist, various indicators of the health of the
system, the current automatic back-up policy that exists, the amount of
remaining free space on the disk, and the percent of disk
fragmentation.
85. The system of any of the above claims wherein the system includes a
firewall
which allows giving specific applications differently rights for downloading
and/or uploading information from the Internet and/or through all available
communication channels or through specific communication channels.

332
86. The system of claim 85 wherein the different upload versus download
permissions are enabled by at least one of:
a. Automatically showing the user the statistics of sending/receiving
information near each application that has been allowed to access the
Internet;
b. Defining a maximum ratio between upstream and downstream for
each application;
c. Defining a maximum ratio between upstream and downstream for
each application and automatically blocking excess uploading and/or
warning the user and/or asking for his/her authorization;
d. Defining a maximum absolute amount of information that can be sent
out per time;
e. Programs that the user wants to allow only to download data but not
upload data are automatically prevented from any real access to the
web, and the OS and/or the firewall and/or the security system
intercept any attempt that these application make to contact the web
and send the requests instead, and so only valid normal protocol
requests for accessing web pages and/or for downloading data which
are recognized by the firewall or other intermediate agent are allowed
to go through;
f. The firewall or other agent for example cal also notice other suspect
behaviors, such as requesting a web page with an unreasonable large
parameters line or frequent repeated similar connections with
parameter lines that keep changing.
87. The system of any of the above claims wherein the user can have two or
more Operating systems running at the same time so that the user can jump
between them by pressing some key or key combination or clicking on some
icon, instead of having to shut down Windows and reboot, without using
emulation.
88. The system of claim 87 wherein at least one of the following features
exists:
a. There is a mirror image of the loaded and running OS like in sleep
mode, so that while the user is in one OS the other OS is dormant;
b. The user can switch between the OS's after entering sleep mode;
c. Both Operating systems can be actually running at the same time and
one or more additional OS elements are operating below the two (or
more) Operating Systems and are in charge of the resource sharing
between them;
d. Both Operating systems can be actually running at the same time and
in this mode certain functions are automatically disabled or are
available to only one OS.

333
89. The system of any of the above claims wherein at least one of the
following
features exists:
a. The hard disk has one or more separate heads which are used only for
checking the media for errors and move automatically all the time or
periodically once in a while to check this without interfering with the
normal function of the hard disk;
b. The task manager automatically shows near each process also to
which program and/or path and file name it belongs;
c. The OS and/or the word processor can identify automatically
incremental updates of the same file according to at least one of the
beginning of the file name and/or sequential numbering and/or date
and time and/or by keeping automatically a log of the sequence of
updating a file incrementally,
d. The OS and/or the word processor can use the knowledge of the
update sequence of a series of files to search for each section or
sentence when was the first time that it was entered;
e. The word processing program can ask the user automatically if various
changes in the way the word processor operates are intended only for
the current file or for all the files in the same directory or all the files
of the same sequence or all files in general;

334
f. The word processor is improved so that when automatically saved
files are offered after a crash, even if the user closes automatically
offered files, he/she can still activate an option that restores them,
even if the user in the meantime closes the word processor and then
later reopens it;
g. The word processor keeps one or more buffers which point to the
automatically saved files and has an indication which groups of files
belong together and/or to which crash event they are related, and these
files are kept in the original directories of the relevant files and/or in a
special directory at least for a certain time period and/or as long as
there is sufficient disk space and/or until their cumulative total space
exceeds some value;
h. In the word processor the user can mark one or more sections and then
toggle automatically between modes so that automatic numbers and/or
letters can become manual letters and/or numbers and vice versa;
i. When the user searches for a specific file or file pattern in the
windows explorer and/or in similar utilities either the files are
displayed by default before the directory names or the user can easily
indicate if he/she prefers the directory names before the file names or
vice versa;
j. The word processor or browser can keep in memory different search
strings in different open windows of the same application, so that the
user indicates if he/she prefers sharing search strings between the open
Windows or having one for all;
k. After the user makes changes in a certain position in the documents
which causes jumping there he/she can also jump back to the position
he/she was before the jump;
l. When copying text for example by copy & paste into an empty new
file the headers and/or other file parameters can be automatically
inserted into the new file automatically. Preferably the headers and/or
other parameters are copied automatically but the user preferably can
also choose for example to disable this feature or for example to
disable parts of it;
m. When copying text for example by copy & paste into an empty new
file the headers and/or other file parameters can be automatically
inserted into the new file automatically, and the user can also choose
example to disable this feature or to disable parts of it;
n. The user can simply jump between two places and then press some
key (or click one of the mouse buttons) which marks the entire block
between them;
o. The user can mark one place and then jump to another place and when
reaching the desired destination press some key (or a mouse button)
and the entire area between the two marks becomes marked;
p. The user can tell the browser to automatically merge two or more
bookmark files while keeping the date of visiting and/or any other
criteria as the ordering factor

335
q. Copy & paste are automatically available from any messages
displayed on the screen;
r. Copy & paste are automatically available from any messages
displayed on the screen and/or the OS or some special application
automatically allows the user to copy and paste from any text that
appears on the screen, regardless of which program it belongs to.
90. The system of any of the above claims wherein at least one of the
following
features exists:
a. After programs finish installing and request a restart, by default the
OS automatically determines if a full restart is needed, and then the
OS automatically performs just logoff and logon instead of a full
restart whenever it can determine that this is sufficient;
b. Program installers are improved so that the software vendors can
easily indicate if after installation logoff-logon is sufficient instead of
full restart;
c. When the user himself/herself initiates a restart command, the OS
automatically asks the user if he/she really wants a full reboot and, if
not, offers the user to automatically perform logoff-logon instead;
d. The logon/logoff is added also to the normal Restart/Turnoff menu, so
that for instead of showing only 3 options (Standby, Turnoff and
Restart) the option of fast Logoff/Logon is also added;
e. If the user chooses full reboot and/or even if he/she chooses just logoff
and the system begins to close applications, first of all only user
applications are closed and not system processes, and the user can still
press some key if he/she changes his/her mind in order to abort the
reboot, and then the attempt to reboot is aborted if it has not gone too
far, and/or the system can automatically undo the process and even
return the OS to the state it was before the reboot was requested.
91. The system of any of the above claims wherein at least one of the
following
features exists:
a. DVDs and/or blue-ray or High Definition DVDs and/or other larger
capacity drives support also smaller pocket-size DVD's as burn-able
media and/or as ready pre-recorded media;
b. DVD capacity is further increased by using UV or extreme-UV lasers
instead of red or blue;
c. The bookmarks list in the internet browser automatically shows also
near each bookmark the date it was entered, and/or the bookmarks are
automatically grouped by days, with a different color for each group
and/or some border marked between the groups;
d. The Internet browser keeps in memory recent changes to various form
fields in the same page and/or also on previous pages, so that jumping

336
back to a previously filled field on the same page or also on a previous
page or pages will still allow the user to undo changes in that field;
e. If the user wants to copy more than one application at the same time
from the "all programs" pop-up list which is activated through the
Start button, to the desktop, then the user can mark more than one item
at a time and/or the list remains open even after dragging an item;
f. The user can drag a shortcut also from open applications on the
taskbar and/or by dragging something from the top and/or other parts
of an open window and/or from the file name as it appears in a DOS
or cmd window;
g. If the user wants to uninstall more than one program at the same time,
the user can mark multiple programs and then all the marked programs
are uninstalled automatically;
h. The user can activate a command which automatically jumps each
time to the next window in the normal task bar on in the internal group
of open windows that belong to the same application or between open
tabs in the same application, so that each time the user moves to the
next window systematically;
i. The user can define drives and/or directories to become shared when
connected by cross-linked Ethernet cable between two computers so
that they become automatically not shared when connected by normal
cable to the Internet;
j. If the OS gets stuck during or after the boot, the system can
automatically sense it after a short time and automatically
identify the driver or application that caused it to get stuck and
can automatically roll-back to the state it was in before the
problematic driver or application was loaded and/or before the
registry change or other relevant change and can automatically
continue without the problematic driver or application and/or can
for automatically search for a replacement driver or application
and/or automatically instruct the user what to do in order to fix
the problem;
k. At least part of the OS runs below the normal OS and contains
also a knowledge base about known problem that can occur, with
instructions on how to solve it and automatically tries to follow
those self-repairing instructions whenever possible and involves
the user only if for some reason it is unable to perform whatever
is necessary;
l. At least part of the kernel and/or part of the OS, which is
hardware independent, is able to boot properly even if there are a
lot of hardware changes, so that any adjustment problems can
then be fixed after this initial boot;
m. When the OS does not allow the user to access a file because it is
locked by another process, the OS also lets the user know the

337
identity of the clashing process and the clashed resource and
allows the user also options such as terminate the clashing
process or freezing it temporarily until the user releases again the
problematic resource;
n. When there is more than one physical hard disk on the same
computer and more than one partition on at least some of these
disks, the OS automatically adds some mark to each drive name
that indicates to which physical hard disk it belongs.
92. The system of any of the above claims wherein at least one of the
following
features exists:
a. Fax machines are programmed by default (and/or at least the user
can choose this option) to respond with fax sounds only if fax
sounds are heard in the incoming phone call;
b. The receiving fax is improved so that it is preferably able to
automatically identify voice calls and thus avoids making fax
sounds if it identifies human voice and/or stops immediately and
gets off the line even if it started making fax sounds, as soon as it
identifies the human voice;
c. The ability of the scanner/copier to overcome wrinkles in papers
or overcome the black stripe that appears when scanning or
photocopying books when the user can't press the book down
strongly enough - is improved by adding at least one more light
source in the scanner, so that shadows are automatically reduced.
93. The system of any of the above claims wherein at least one of the
following
features exists:
a. The user is supplied with an electronic pen which can write on
normal paper and at the same time both writes with visible ink on
the paper and transmits the writing sequence to the computer, so
that the user can write normally while also obtaining an
automatic copy on the computer;
b. In tablet PC's and/or in digital book readers and/or in programs
such as winamp or other software media players and/or in other
gadgets for playing songs or films, the software and/or the device
is able to measure automatically not only which songs or films or
books (or other media) are more or less liked by the user, but also
which parts or sections in them are the best and/or which parts
are less good or problematic.
94. The system of any of the above claims wherein at least one of the
following
features exists:
a. The user can create a copy of the OS on another partition with an
automatic command, and then the system with the installed
programs is automatically copied to the new partition and the
drive letter references in the new installation are automatically

338
updated to refer to the new drive letter, and the choice of the new
partition is automatically added to a boot selector;
b. The user can also change the name of a boot option and/or add
comments to it, while booting and/or from one or more
applications that are available after the boot;
c. Partitions can be identified also by names longer than 1 letter, so
that these longer names can be used in the same ways that any 1-
letter name partition can be used;
d. The user can also use an update or synchronize command, which
automatically updates any differences between two or more such
OS-installed partitions, so that the user can update the other
partition according to additional changes made in the original
partitions, and/or the opposite - automatically correct the original
partition according to one of the backup partitions, and/or the
user can also request automatic undo of such updates;
e. Even the new partition itself for the automatically copies OS
installation can be automatically created by the special copy
command, if needed, so that the user does not even need to have a
new partition ready before requesting the special OS-copy
command;
f. The user can mark only one or more specific installed programs
and/or drivers and/or other parts to be automatically copied to the
other partition, instead of automatic full copy of all the installed
elements into the other partition;
g. The user can automatically backup one or more installed
programs to a back-up media, so that automatically the relevant
registry entry is copied to the backup media and all the relevant
components are automatically copied through the relevant
registry information;
h. When activating for a command like SFC (which checks the
integrity of installed system files and/or compares them to their
source on the installation CD and restores them when needed),
this or similar commands can be used also from another OS or
another installation of the OS on another partition and/or from the
installation CD or DVD itself.
95. The system of any of the above claims wherein in order to prevent debug
features in motherboard bridges from being used for hardware-based attack
below the OS, at least one of the following is done:
a. The motherboard chipset is changed so that such debug features
and/or direct communications between hardware cards and the
hard disk are enabled only if some hardware element allows it,
such as a jumper or a switch which has to be manually enabled by
the user;
b. The user can add a card to one of the PCI slots and/or add another
external device which keeps sending commands to the bridges
which can over-ride any attempt by other devices to tell the

339
bridge to sniff on data or to communicate directly with the hard
drive and/or the communication channels;
c. The OS and/or a software Security System is able, through the
OS kernel or even below it, to take complete control of the bridge
and give it instructions that override any undesired attempts by
hardware elements to sniff data and/or access directly the hard
disk and/or the communication channels;
d. If some devices need to be able to exchange data with the hard
disk directly, at least any command sent from the device to the
hard disk can be monitored and filtered by the OS and/or by a
security system installed on the OS, so that the OS and/or the
security system can control what files and/or directories can be
accessed directly from the device and what commands can be
transmitted to the hard disk;
e. The configuration can be set to enable such a debug feature only
for one or more specific slots and/or one or more specific
devices, and/or other limitations are enforced.
96. An improved computer system wherein computer cases are improved so that
the same case can be used either in desktop position (lying in a horizontal
orientation) or as normal tower (vertical orientation), thus giving the user
more flexibility in choosing the most convenient orientation without having
to buy different cases, and at least one of the following features exists:
a. The case is made strong enough to support even large screen on
top of it when used in the desktop orientation;
b. At least the area that supports the external CD and/or DVD drives
is rotate-able between two positions, so that the user can easily
choose one of these two position, at least by screwing the part
when the case is open, and/or the user can rotate the part even
when the case is closed;
c. The frame that holds the 3.5 devices is also similarly rotate-able.

340
97. A method for avoiding "DNS poisoning" comprising at least one of the
following steps:
a. Internet Browsers and/or other internet applications which need to
access domains automatically query multiple DNS servers in different
locations and if there is a mismatch between the IP address reported
by them for the same domain then the browser (or other application)
checks in additional DNS servers and chooses the one that appears in
most places, and also warns immediately the user that there might still
be a risk due to the mismatch;
b. The browser or other Internet application checks in one or more
domain name registrars to see if the IP address given to the domain is
compatible with the DNS servers that are associated with the domain's
records;
c. The browser (or other Internet application) keeps historical data of IP
addresses of domains that the user has accessed and whenever there is
suddenly a change performs automatically various checks;
d. The browser (or other Internet application) keeps historical data of IP
addresses of domains that the user has accessed and whenever there is
suddenly a change performs automatically various checks, and said
checks are at least one of querying multiple DNS servers, and
checking in one or more domain name registrars;
e. The browser (or other Internet application) keeps historical data of IP
addresses of domains that the user has accessed and whenever there is
suddenly a change performs automatically various checks and said
checks are done before letting the user access the site;
f. The DNS servers themselves perform automatically similar checks to
those described above, such as keeping historical data and checking
with multiple sources;
g. The DNS servers themselves perform automatically similar checks to
those described above, such as keeping historical data and checking
with multiple sources immediately when there is a change, and/or
checking with multiple sources whenever new data arrives;
98. A method for avoiding "DNS poisoning" comprising at least one of the
following steps:
a. Using long encryption keys for any communication between DNS
servers;

341
b. The DNS automatically identifies "birthday attacks" (statistical
bombardment with guessed session Ids in order to find the correct
session Id) or other statistical based attacks by keeping track of
multiple communication attempts with false session Ids purportedly
coming from the same server;
c. The DNS automatically identifies "birthday attacks" (statistical
bombardment with guessed session Ids in order to find the correct
session Id) or other statistical based attacks by keeping track of
multiple communication attempts with false session Ids purportedly
coming from the same server and then automatically ignores any
packets from the spoofed other DNS and automatically switches to
other DNSs at least for a certain time;
d. The browser (or other Internet application) and/or DNS server
automatically checks back any IP address in multiple reversed
databases which find the domain name from an IP address;
e. The browser (or other Internet application) and/or or DNS server
automatically checks back any IP address in multiple reversed
databases which find the domain name from an IP address whenever
giving it in a reply or when it changes;
f. The browser (or other Internet application) and/or NDS servers check
how long the IP address has been associated with the domain
according to registrar records, and if it has been associated for a short
time below a certain threshold performs various checks and/or warns
the user;
g. When an IP address changes, the browser (or other Internet
application) and/or DNS server checks in one or more reversed
Databases (which give the domain name from the IP address) if the
original IP address now indeed points to a different domain, and if it is
still pointing to the original domain then it is perceived as indication
of possible DNS poisoning.
99. The system of any of the above claims wherein when the OS and/or various
applications support 3D objects, at least one of the following features
exists:
a. The objects can be resized or moved in various directions in a way
similar to the current processing of 2d objects;
b. The objects can be resized or moved in various directions in a way
similar to the current processing of 2d objects and size parameters are
automatically updated and displayed;
c. A large taxonomy of object prototypes is available to choose from,
and these objects or prototype objects can be dragged into position and
then can be changed on the spot by fast scrolling over multiple objects
of that prototype or sub-prototype, so that the object changes

342
immediately in view, and/or this scrolling can be done also for
modular elements of the objects;
d. A large taxonomy of object prototypes is available to choose from,
and these objects or prototype objects can be dragged into position and
then can be changed on the spot by fast scrolling over multiple objects
of that prototype or sub-prototype, so that the object changes
immediately in view, and/or this scrolling can be done also for
modular elements of the objects, while the mouse drags a scroll bar
next to it;
e. Various elements can be reshaped dynamically in a way similar to the
Goo program, except that when pulling on a part only that part is
reshaped without affecting the parts next to it.
100. An improved search engine which can automatically determine the
information value of the search results wherein the search engine can
determine if a web page is probably more scientific and/or has higher
information value according to at least one of:
a. Using various heuristics for determining the information value of the
search results and automatically improving the ranking of web pages
according to their information value and/or indicating near each link
its information value;
b. Diagnosing automatically whether it contains references and/or how
many references and/or how scientific and/or of high information
value are the sources that are included there;
c. Lexical and/or semantic analysis of the details about the author if such
details exist;

343
d. Lexical and/or semantic analysis of the details about the author if such
details exist such as if he/she has a PhD. title and/or has a background
relevant to the field that the article deals with;
e. Determining if a web page is probably more scientific and/or has
higher information value by link structure (incoming and/or outgoing)
that indicate that the page (and/or the site in general) has links to
and/or from other pages (and/or sites or for subdirectories in it) which
are considered more scientific and/or of higher information value by
the system;
f. Determining if a web page is probably more scientific and/or has
higher information value by link structure in terms of percent of
scientific or high information value incoming and/or outgoing links
and/or in terms of absolute scientific or high information value
incoming and/or outgoing links;
g. Determining if the site is on a university or in a government institute;
h. Determining if the site is on a university or in a government institute
according to the top level domain;
i. Determining if the site is on a university or in a government institute
and taking into account also how high the page is in the subdirectory
structure of the domain;
j. If a page in a government site appears to deal with a scientific subject
the search engine can assume that there is less chance for bias than if
the subject is political.
101. The system of claim 100 wherein this is done in a way similar to the
way that Google uses recursively the number of incoming and outgoing links
to determine the authoritativeness of pages and/or sites (where
authoritativeness is actually defined by popularity), except that in this case
the recursion uses as criteria also various indications about the scientific
or
information value of the pages and/or sites and/or sub-areas in the sites.
102. The system of any of claims 100-101 wherein at least one of the
following features exists:
a. Determining the initial indications can be according to various
heuristics based on the content of the pages and/or additional
indicators, such as starting out with known scientifically accredited
sources;
b. These indicators are reassessed automatically again for each page
and/or domain and/or directory tree or sub-tree, in order to avoid
degradation of the information value score or scores as the recursion
continues;
c. The taking into account of the information value can be applied
automatically as an improvement of the results ranking algorithm;
d. The user can indicate that he/she prefers to take this into account by
marking default preferences and/or by adding some special keyword
or mark to the search string, and/or the search engine has a few search

344
windows, so that one or more are defined in advance for searches for
more official and/or authoritative and/or scientific information;
e. The search engine can decide automatically how much weight to give
to the information value of the results according to the content of the
search string itself and/or by letting the user use of semantic qualifiers;
f. The user can choose in advance more official and/or authoritative
and/or scientific information by at least one of adding an indication
and choosing the appropriate search window.
103. The system of any of claims 100-103 wherein the search engine can
automatically ignore sources and/or results and/or pages and/or sites and/or
domains and/or subdirectories in them which have an information value
below a certain threshold, or mark or indicate the threshold so that results
below the threshold are displayed in a separate section or window.
104. The system of any of the above claims wherein at least one of the
following features exists in at least one word processor:
a. When the word processor automatically offers the user automatically
saved files, the word processor automatically runs file comparison
between each such file and the equivalent last saved version and
shows the user by track changes the differences between this and the
saved version;
b. When the word processor automatically offers the user automatically
saved files, the word processor automatically runs file comparison
between each such file and the equivalent last saved version, and if
there are no differences then the word processor automatically does
not even offer that file;
c. When the word processor automatically offers the user automatically
saved files, the word processor automatically runs file comparison
between each such file and the equivalent last saved version and
shows the user by track changes the differences between this and the
saved version, and when showing automatically the differences, the
word processor marks them differently from previous marked
changes;
d. When the word processor automatically offers the user automatically
saved files, the word processor automatically runs file comparison
between each such file and the equivalent last saved version, and the
word processor automatically indicates the amount of difference;
e. When the word processor automatically offers the user automatically
saved files, the word processor automatically runs file comparison
between each such file and the equivalent last saved version, and the
word processor can let the user jump automatically to those sections
where the changes are;
f. The system indicates to the user when he/she is about to undo things
to a state before the last saved version of the file and asks for his/her
confirmation for that;

345
g. The user can search for a specific text which has one or more specific
attributes, such as underline, color, marked changes, marked new text,
marked deleted text, or other attributes or styles;
h. The user can define or chose from a number of available options how
marked text will be shown instead of being inversed;
i. When normally searching for text marked by track changes, the word
processor does not mark the changed section in black but simply
jumps to its beginning, since it is already marked anyway;
j. In Word 2003 the user can toggle between viewing track changes in
the old or in the new format without affecting the way the headlines
and page breaks and/or images are shown;
k. The user can automatically convert marked additions to normal
underlines, and/or vice-versa - automatically convert underlined
sections into sections marked with track changes;
l. When searching for word combinations the word processor has an
option of automatically ignoring redundant spaces;
m. When the user saves a file under a different name the user has an
option to request to automatically keep open also another window with
the original file.
105. The system of any of the above claims wherein at least one of the
following features exists:
a. When the computer is in standby (hibernate) mode, even if the user
turns the power off or even plugs the electrical wire out of the wall,
when the user returns the power, the system still automatically tries to
return from standby instead of normal boot;
b. When the user activates standby mode, the system first creates the
image and then can for go into a mode where power is used only or
mainly for keeping the RAM refreshed, and so if the power remains
on, when waking up the system does not even have to restore itself
from the image, and if power has been turned off then the system
automatically checks first to see if there is a recent image and then
recovers from the image if possible.
c. Word processors or browser or other application can remember the
last search strings or search strings that were used the pervious time
one or more windows of the application were open, and lets the user
choose automatically the last search string or chose from a group of
recent search strings;
d. Before sending an email with attachments the user can easily change
the order within the list of attachments;
e. Before sending an email with attachments the user can easily change
the order within the list of attachments by pointing the mouse to one
of the attachments and dragging it to a different position in the list;
f. When printing pdf files from the Internet, the pdf viewer automatically
adds the url info at least on the first page of the printing or on each
page;

346
g. When saving web files the browser and/or pdf viewer and/or other
applications automatically add the url info to the file, in the form of a
comment or any other form which does not effect the way the file is
displayed, or add it as a visible text on each page or at least on the first
page;
h. The user can request to automatically reopen the entire set of windows
and/or tabs that was opened last time when reopening the browser
after previously closing it even after the user closes it normally;
i. Even after the user tells the browser to start from the beginning or
closes the various windows or tabs, the user can enter some history list
which contains the previous states of multiple browser windows
and/or tabs, and thus the user can scroll back to previous sets of tabs
and/or windows that were previously open together and can go back to
that same state of multiple open windows and/or tabs.
j. When deleting directories the system automatically keeps a backup of
the directory structure and/or a rollback log, so that if the user made a
mistake the directory tree can be instantly restored;
k. When the user moves backwards and forwards with web browsers, if
the user chooses a different link after going back to a previous page
and then goes back again, the browser automatically displays the
different paths available if the user moves forward again.
106. The system of any of the above claims wherein in 3D map
applications at least one of the following features exists:
a. The 2D images are processed in advance to create extrapolated 3D
representations according to relevant visual cues, and/or by making
the photographs in advance with two or more lenses or 2 or more
cameras;
b. At least in popular public places, multiple photographs from multiple
angles are added, which are automatically combined into the
processed 3D representations and/or at least become automatically
integrated when the rotation and/or angle is appropriate;
c. At least in popular public places, one or more local streaming video
cameras are added, which broadcast real time streaming data, so that
when the location and/or angle is appropriate the real time streaming
data is automatically integrated;
d. The displayed normal images include special marks which indicate to
user "hotspots" where addition 3D images are available and/or more
details are available and/or live streaming data is available;
e. The displayed normal images include special marks which indicate to
user "hotspots" where addition 3D images are available and/or more
details are available and/or live streaming data is available, and the
user can ask the program to automatically take him/her to such spots
automatically;
f. When the user for example wanders sideways the program
automatically guesses from the pattern and/or direction and/or speed
of the user's movement where he/she is most likely to continue next

347
and so the details for next area or areas are downloaded in advance
before the user goes there, thus preferably reducing significantly the
waiting experience;
g. If the user clicks on s point he/she is interested in and then continues
with the zoom, the spot that was clicked upon is automatically moved
by the application to the center so that is remains in focus;
h. The system can automatically predict the zooming sequence of the
user, so that if a user is apparently trying to zoom into the marked
spot, the system tries in advance to get each time the additional details
at least one step before the user requests it.
107. The system of any of the above claims wherein at least one of the
following features exists:
a. The user can indicate or mark to the OS a set or range of hours in
which the computer will automatically go into sleep mode (hibernate)
at a certain set of hours;
b. The user can change the size of all the open windows and/or tabs of
the same application or make other format changes that affect
automatically all of them;
c. If the user wants to print an article and does not notice that there is a
link for a printer friendly version, the browser looks for this link
automatically in the page and can ask the user automatically if he/she
wants indeed to print the page as is or to use the printer friendly link;
d. web servers are improved so that if a page is not found the server itself
offers a list of likely pages according to similar pages in the same
directory and/or in similar directories;
e. The firewall protects also additional communication devices in
addition to or apart from the network card or modem, and even when
the user supposedly allowed such a device to be accessed, the user is
given also a real time indication that the device is working;
f. When the webcam is filming and/or recording, the security system
and/or the OS and/or some other software and/or and/or the webcam
itself continuously flash some light and/or otherwise indicates to the
user clearly that the webcam is currently filming and/or recording
what is happening in the room;
g. In shopping meta-search the meta-search engine automatically
deduces the user's country according to his/her IP and/or example asks
the user about the country where he/she wants the goods shipped to,
and can automatically mark near each shop alternative if it has
shipments to the user's country and/or puts such shops in a separate
group, and/or can exclude shops that don't ship to the user's county if
the user requests that;
h. When searching for academic results, the user can request the search
engine to show only results from articles from a certain date onward or
before a certain date or within one or more range of dates;

348
i. When searching for normal web pages, the user can request the search
engine to show only results from pages which were last updated from
a certain date onward or before a certain date or within one or more
range of dates;
j. The search engine uses its historical data to estimate if the amount of
change and/or the type of change justifies regarding the page as
recently updated;
108. The system of any of the above claims wherein a firewall and/or
security system is used that protects against tempering with DLLs and/or
other components that are used for accessing the web by at least one of:
a. Automatically checking for in certified database or databases the
correct CRC or other fingerprint or fingerprints of the various known
components and thus determining automatically if some component is
suspiciously with a wrong fingerprint;
b. Lookup in encrypted database or databases of the OS, in order to
check that relevant OS components have not changed;
c. When such a component is changed the firewall warns the user about
it after the change or when they are changed and/or the next time the
relevant application that uses the changed component tries to access
the web;
d. When such a component is changed the firewall warns the user about
it, and is also able to tell the user which application changed it and
when;
e. Constantly monitoring the relevant components and intercepting at the
moment that an application is trying to make a change and asking the
user if to allow it and which program is trying to change the
component.
109. The system of any of the above claims wherein accessing directories
with a large number of files or sub-directories through the dialogue box is
speeded up by saving automatically the structure of the current directory in
at
least one buffer in memory (and/or even in the disk) in the same sorted order
in which it is displayed.
110. The system of claim 109 wherein at least one of the following features
exists:
a. The at least one buffer is automatically updated in memory (and/or on
the disk) when something changes in the directory;
b. This is done automatically for any directory recently accessed by the
dialogue box, and/or the word processor (and/or other applications)
can tell the OS already when they are activated to prepare the at least
one buffer of their current default directory in memory;
c. An additional sorted copy of directory entries is saved automatically
for directories anyway;

349
d. Changes in file names and/or additions and/or deletions of files are
automatically updated in the at least one buffer by merging them with
the already sorted directory, instead of re-sorting it again each time.
111. The system of any of the above claims wherein at least one of the
following features exists:
a. When open windows of the same application are shown in the lower
task bar as one group, the other windows of the same group can be
shown in another task bar;
b. When open windows of the same application are shown in the lower
task bar as one group, the other windows of the same group can be
shown in another task bar at the top of the screen and/or at least when
the user is viewing at least one of the windows of the group, and/or
within the typically blue top of the main open window of the group
and/or at least the user can toggle into this mode;
c. When the user clicks on the icon of a group of windows in the lower
taskbar, instead of a list of names in lines below each other, the group
can automatically expand into small images of the relevant Windows;
d. When the user clicks on the icon of a group of windows in the lower
taskbar, instead of a list of names in lines below each other, the group
can automatically expand into small images of the relevant Windows
and the size of the images is preferably automatically determined by
the number of windows;
e. When the user clicks on the icon of a group of windows in the lower
taskbar, instead of a list of names in lines below each other, the group
can automatically expand into small images of the relevant Windows,
and by clicking on any of these preview images the user can jump into
it;
f. When the mouse is on top of an icon in the bottom task bar and a
preview small image of the window is shown, if the icon is below a
certain minimal width, the image is automatically made wider than the
icon;
g. The user can choose the desired size of these preview windows so that
by resizing such a window the other preview windows will be of the
new size defined by the user, until he/she resizes it again, and/or at
least as long as it is above some minimum size defined by the system;
h. As the user moves the mouse vertically up or down over the list of
names in grouped items, a preview image of the window which the
mouse is currently over its name appears near the item and/or near the
list.
112. The system of any of the above claims wherein at least in the first few
minutes
after the boot the OS automatically gives higher priority to actions taken by
the
user by at least one of increasing the frequency of sampling for user input
and/or increasing the priority to tasks which the user is interacting with.

350
113. The system of any of the above claims wherein at least one of the
following
features exists:
a. The user can mark one or more programs in the startup menu to have higher
priority so that they are loaded first, and/or the OS monitors automatically
what the user normally does and/or knows which programs need higher
priority to load earlier;
b. The OS knows which programs need higher priority to load earlier by using a
convention of type indicators for various applications and/or by monitoring
their behavior;
c. When the user clicks on some application in order to activate, the newly
clicked application gets higher priority for loading than other already
running
applications, and/or if there is some problem to open it fast enough then at
least some window or message appears and informs the user that the OS is
trying to open the specific application but there is a problem;
d. When the user clicks on some application in order to activate, the newly
clicked application gets higher priority for loading than other already
running
applications, and/or if there is some problem to open it fast enough then at
least some window or message appears and informs the user that the OS is
trying to open the specific application but there is a problem, and the
problem
is described shortly or at least named and the OS shows an automatic
estimate of how much time it will take till the application window appears.
114. The system of any of the above claims wherein at least one of the
following
features exists:
a. When the system tells the user during boot that unless he/she presses some
key a scandisk will start in N seconds, the system also gives the user an
option to press a key that starts the disk scan immediately, thus saving an
unnecessary wait;
b. The scandisk or similar disk-checking applications during boot and/or also
when activated normally after boot, automatically leaves a log of what errors
were found and what was done;
c. The OS keeps a table of all the files that have been truncated due to
various
scandisk operations, so that files that were truncated by scandisk or by
similar programs are automatically marked as truncated files when the user
sees them in the explorer or in the Save or Open dialogue box or when typing
"dir" in a CMD or DOS window;
d. When there are problems found during the scandisk during the boot (and/or
also when the user runs scandisk for normally after the boot) the system
sounds an audible indication, so that the user can pay attention if he/she was
concentrating on something else, and/or the OS also provides a vertical lever
which the user can use to go back in the scroll-lines on the screen, and/or if
errors were found the system waits for user input at the end of the scandisk
before continuing with the boot, or after the boot is finished a message is
displayed about the errors found during the scandisk during boot;

351
115. The system of any of the above claims wherein text or images displayed
during the boot are presented at the refresh rate which the user last used
before
restarting the computer, or at least 75 Hz or more or 80 Hz or 85 Hz or more.
116.The system of claim 115 wherein this is done by at least one of:
a. Keeping the last used normal refresh rate and/or the monitor plug and play
identifier and/or also the last used resolution in variables in a file which
can
be read during the boot so that, at least if the monitor has not been changed,
the OS can be sure that the monitor is able to display this refresh rate
and/or
at least the parts of the driver that talk to the plug and play element on the
monitor are loaded at the beginning of the boot, and/or during the boot the
OS can assume that any normal monitor is capable of using at least a refresh
rate of 85 Hz at the typically low resolution used during the boot or can
protect itself by switching to a lower refresh rate automatically if it can't;
b. Loading the normal display driver in advance at the beginning of the boot,
so
that not only the correct refresh rate can be safely used at this stage but
also
the higher resolution which the user is used to;
c. If more than one OS is available, the last known refresh rate and the plug
and
play identifier of the monitor are available in a standard place for to all
the
OSs, or at least available to the boot selector, so that even the boot
selector
itself can be displayed that way;Of course various combinations of the above
solutions can also be used;
d. The monitors themselves and/or for display cards are improved so that they
automatically ignore or can be programmed to ignore commands for working
at refresh rates below 85 Hz or below 75 HZ, (unless at the high resolution
used the display card or the monitor is able to work only at a lower Hz, in
which case it uses the next best available option), so that even if the OS
tells
the monitor or the display card to work at 60 HZ, the display card or the
monitor will ignore the command and work at a higher resolution.
117. The system of any of the above claims wherein at least one of the
following
features exists:
a. If the display card has connectors for more than one monitor and the OS
and/or the display card driver or some other relevant application discovers
that the monitor is now connected to the other connector and there is no
monitor on the original connector, the display driver automatically switches
to the connected connector, and/or the display card or the OS senses also if
the monitor is turned on and takes this into account;
b. If the user switched between the two monitors and the OS discovers that
their
positions on the connectors are now reversed, the OS and/or the display
driver or other application or service which is in charge of this
automatically
switches the resolution and/or refresh rate and/or color corrections and/or
video overlay definitions, and/or other definitions between the two monitors
so that the user does not have to do this manually.

352
118. The system of any of the above claims wherein at least one of the
following
features exists:
a. When the user creates a System checkpoint the OS allows the user to choose
each time if to create a full copy of the relevant system files or just a copy
of
the incremental changes;
b. If more than one set of heads is used (i.e. more than one independent arm)
on
the hard disk, this can also be used for creating more efficient
defragmentation, so that one of the independent set of heads can be used for
defrag while the user is working normally with another set of heads, thus not
slowing down at all the performance while performing also defrag, and/or
when the user is away or working on something that does not require
intensive disk accessing, two (or more) independent sets of heads can work
simultaneously in cooperation on defragmentation, thus saving the need for
jump back and forth between two places when moving files;
c. The system can activate automatic defrag mainly or only on the files and/or
directories which the user uses most often and/or on the free space, so that
no
or little time is wasted on defragmenting files which are only rarely or very
rarely used, and/or their defragmentation is automatically set for lower
priority;
119. The system of any of the above claims wherein the clear desktop view is
automatically added to the list of available options when pressing Alt-Tab or
other similar keys or controls for jumping between open windows or
applications, so that the user can also jump to the clear desktop through
this.
120. The system of any of the above claims wherein at least one of the
following
features exists:
a. The user can enable or disable Cleartype separately for various uses or
contexts, and/or the user can define, in general or for each type of
application
or section or context, not only if to use Cleartype or not but also to what
extent to use it;
b. For choosing these separate settings for cleartype these different options
are
added to the normal menu in which the user chooses between standard fonts
or Cleartype, and/or by right-clicking on the text of an icon on the desktop
or
in other applications the user can change the Cleartype setting, and/or the
user can toggle between Cleartype to standard fonts instantly without going
through a menu;
c. The chosen mode of using or not using cleartype becomes the default also
for
other windows of the same application and/or for similar windows.
121. The system of any of the above claims wherein the user can increase or
reduce
the size of the icons and/or of their text by zooming in or out on the
desktop.

353
122. The system of claim 121 where this is done by pressing control and moving
the mouse wheel.
123. The system of any of the above claims wherein at least one of the
following
features exists:
a. The automatic typing-error-correction system in the word processor takes
into account also the context and so preferably chooses the word most likely
according to context when there is more than one reasonable correction, and
the context can be based on pre-gathered automatic statistics from Internet
knowledge bases and/or specifically from the user's files and/or from the
specific file or similar files;
b. Automatic logging of the evolution of the file name can also be used to
automatically increment the numbers and/or letters which the user has been
incrementing, so that the save menu contains an option which automatically
increments the correct element and thus saves the new version in a new file;
c. The user can mark the relevant area in the file name and right click with
the
mouse in order to choose a menu option that defines this as the area that
should be incremented automatically;
d. The Internet browser can create an automatic increment of one or more
numbers or letters in a url;
e. The browser can automatically learn from the user after a few manual
increments what area needs to be incremented and automatically adds a "next
page" (and/or also a "previous page") icon in this case (or these icons are
there before but start working for that page only after the relevant area in
the
url has been automatically learned or has been defined by the user), or the
user can explicitly mark the relevant area and right click with the mouse in
order to choose a menu option that defines this as the area that should be
incremented (or decremented) automatically;
f. The word processor does not block programs from accessing open Word files
if they only open the file for reading, and/or after the file is saved with a
new
name the original file with which the word processor was opened is released;
g. The word processor enables the user also an option to save a currently open
file under a new name without closing the original window (or tab - if tabs
are also supported in the word processor.
124. The system of any of the above claims wherein at least one of the
following
features exists:
a. Changing the language in the text in the word processor (for example from
English to Hebrew or vice versa) is made independent from the text when the
user saves or opens a file name;
b. Changing the language in the dictionary does not change the language in the
text of the document or vice versa;
c. The user can copy words from the dictionary into the main text also by a
single click instead of having to use cut & paste, so that by simply clicking
on the word the word is copied to the current position of the cursor;

354
d. When the user requests in the word processor translation of a word which is
in plural the translation can show the translated word also in the plural, in
addition to or instead of showing it in the single form;
e. If the word is a verb in the present form (ending with "ing"), the Word
processor's translation or dictionary can show also the translated form also
in
the present form in addition to or instead of showing it in the normal form,
but preferably in addition);
f. The user can define separately if to report an error for cases where the
digit
or digits are at the beginning of the word before the letters, cases where the
digits or digits are in the middle of the word, or cases where the digit or
digits
are at the end of the word after all the letters.
125. The system of any of the above claims wherein at least one of the
following
features exists:
a. Error checking and/or automatic correction is also enabled by default when
the user is writing an email message in the email client or in the browser, by
including an error checking engine in the browser and/or the email client or
the browser or email client can be configured to communicate with the error
checker of the word processor.
b. Search engines automatically offer in cases of words that contain a digit
or
digits also the correct word or words without the digit.
126. The system of any of the above claims wherein at least one of the
following
features exists:
a. The word processor uses heuristics for catching grammatical errors, such as
marking automatically as suspect cases where two verbs or two nouns appear
one after the other, without a',' or '-' or '/' or other punctuation marks
between them, or the combination of words like "the" followed immediately
by a verb instead of noun or followed by a conditional like 'if ;
b. In cases of words that can be both a verb or a noun the word processor can
avoid the marking as suspect error or take into account the likelihood of the
combination according to the known statistics;
c. The word processor can automatically correct for cases of a comma
appearing after a space, coupled to the next word, into appearing coupled to
the previous word and followed by a space (and vice versa in Hebrew or
other right to left languages), or at least mark these places as suspect
errors;
d. The word processor can mark as suspect errors cases where a verb ends with
an 's' after a noun in plural or without an 's' after a noun in single;
e. If the word processor is not sure enough for making an automatic correction
for an error the user can press a control key or choose a menu option which
automatically lists more than one possible corrections for the same word and
then the user can choose the correct option.
127. The system of any of the above claims wherein at least one of the
following
features exists:
a. When text marked with track changes is also underlined, an additional
underline is added, and/or the underline becomes in a different color

355
from the text to which it is coupled, and/or there is still only one
underline but it becomes thicker and/or moves up or down at the area of
the underlined text, or becomes with a different pattern or becomes split
into two very thin lines in the place of the original line, and/or some
other visual indication of the underline is given;
b. When searching for word combinations the word processor offers
automatically also results with a dash between 2 words instead of a
space or vice versa, and/or offers also results where two adjacent search
words appear as a single word, and/or offers automatically also results
with another order of the search words, and/or offers automatically also
"Near" search;
c. When the user changes the left margin of the document (in left-to-right
languages, and/or the right margin in right-to left languages), for the
entire document or for one or more marked sections, by moving the
border on the ruler, the entire structure of the paragraphs is moved right
or left without changes in the structure itself.
128. The system of any of the above claims wherein at least one of the
following
features exists:
a. Search patterns with a numeral of the words in between or a"NEAR"
operator and/or suggesting automatically also synonyms, are enabled also in
the word processor;
b. Search patterns with a numeral of the words in between or a "NEAR"
operator and/or suggesting automatically also synonyms, are enabled also in
the word processor, and then the word processor moves the user to the
relevant area each time and/or automatically marks all the relevant words that
were found in it and/or also the synonyms of these words if synonyms were
also requested or offered automatically;
c. If the user searches for two or more words next to each other and no
results
or few results are found in the web search or in the word processor search,
the search engine or the word processor can automatically offer to the user to
perform a"near" search, and/or display already how many results will be
shown in that case, and/or if there are no or too few results the search
engine
or word processor automatically shows also the results from "NEAR"
searches or moves the user directly to them;
d. When "near" search is used, the search results are automatically sorted at
least partially according to the distance between the words;
e. The user can preferably use a search options in the word processor which
can
find automatically areas where the search word or words appear in the
highest concentration absolutely and/or relative to the size of the section;
f. The word processor brings the user first of all to the area with the
highest
concentration and/or the word processor also marks the area and/or its
borders automatically and also all the occurrences of the search words in that
area, and when the user repeats the search he/she is brought to the next best
area, or all areas with a concentration beyond a certain threshold are
considered a correct results and the user is brought to them in sequential
order each;

356
g. If a user clicks on a link in the results of a search engine, the browser
automatically identifies this, and then, at least as an option which the user
can
enable or disable, the browser can automatically mark the words that the user
searched for in the web page when displaying it;
h. The Desktop Search can be activated also on a specific document or can
automatically react to currently open windows of documents which the user
is currently editing and conduct for example the "near" search on them.
129. The system of any of the above claims wherein at least one of the
following
features exists:
a. Upon reload the browser gives higher priority in download and/or in cache
allocation to the tabs which the user most recently viewed before closing the
browser the last time, and/or if the user after reopening the browser clicks
on
a certain tab handle or also if he/she merely hovers over it, the browser
immediately gives download priority to that tab, and/or if the user opens a
new tab that tabs gets the highest priory;
b. There is gradual change in priority after the tab that is in the user's
immediate
focus;
c. Similar priorities are automatically used if the user presses on a key
which
causes automatic reloading of all the tabs.
130. The system of any of the above claims wherein at least one of the
following
features exists:
a. If the user presses by mistake the Reload-all control, the user can abort
this by pressing Esc or some other control or clinking on some icon;
b. If the user presses by mistake the Reload-all control, the user can abort
this, and for this the browser keeps a copy of the last version of each tab
and does not erase it at least until the reload data of that page is
complete;
c. When going back to a previous page in the browser the user has also an
option of opening the "Go-back" in a separate tab;
d. The user has an option of duplicating one or more tabs, in which case a
new tab (or tabs) is created and the history of the current tab (or tabs) is
automatically copied to it, so that the user can then go pack to a previous
page in either the copy or the original tab;
e. The browser also enables to open any button into a new tab or new
window, and the user can choose this from a menu by right clicking on it
with the mouse;
f. After the user has gone back one or more steps within the same tab, the
user can also request to go forward into a separate tab even when the
user previously was there in the same tab.
131. The system of any of the above claims wherein at least one of the
following
features exists:
a. The user can tell the browser to automatically reverse the text in pages
with
negative text to positive (i.e. cases where the background is more dark than

357
the color of the text fonts, and/or this automatic correction of inverse text
is
automatically done by the browser by default;
b. This correction of inverse text is done without damaging or changing any
other format and/or features in the page.
132. The system of any of the above claims wherein at least one of the
following
features exists:
a. In the track changes in the word processor the user can change the color
without changing the author.
b. Much more than 10 colors are available for track changes;
c. The user can also request that text of marked changes for a specific author
and/or from a specific date and/or for all authors and/or dates will have a
different design than normal text;
d. The user can indicate a time and date from which the new colors apply
and/or
until a certain time and date;
e. The user can change any color of tracked changes to any other color;
f. For changing the colors of text in track changes the user can use the
search
and replace command with the color as a parameter, and/or the user can right
click with the mouse or use some other command or control on one of the
sections with the old color and then choose the new color from a menu, so
that all the tracked changes with the same color change into the new color;
g. The user can edit a table which lists all the current colors of tracked
changes
and can mark near each of them the new desired color and then click on an
option which activates the changes;
h. The word processor saves also a code of the specific color used for each
set
of track changes and does not change it on its own;
i. Even with the method of having to change the user in order to change the
color, more than 10 color are available and the word processor displays in
advance all the available colors and the user names that can be associated
with them;
j. The user can tell the word processor to avoid marking tracked changes on
the
page numbers and/or the date and/or this is the default;
k. When the user executes the "accept changes" command he/he can request to
accept automatically (with or without individual confirmation for each
change) only the changes of a specific authors and/or color and/or group of
color and/or accept all changes except a specific color or colors, and/or
accept all changes from and/or until a certain date of when the change was
made, and/or similarly reject a specific set of changes selected this way
and/or search text in a specific set of changes selected this way;
l. When the user chooses the relevant accept/reject changes menu he/she is
offered the color options as color bars or squares which he/she can mark or
not mark and/or the date options as fill-able fields or moveable dates;
m. The user can also activate a command which removes from a file all the text
except the tracked changes or only a subset of the tracked changes, or can
mark automatically all the tracked changes or a subset and then automatically
copy only the tracked changes or a the subset of them to a separate file;

358
n. The user can change the author for only a specific document or specific
group of documents.
133. The system of any of the above claims wherein at least one of the
following
features exists:
a. The user can tell the desktop search to move it's index to another drive or
another partition;
b. If the free space on the partition becomes too small, the desktop search
can
automatically move at least part of the index to another partition;
c. The user can tell a newly installed OS to use another index which has
already
been created in another OS and/or when installing in the new OS, the desktop
search application or the OS itself finds automatically if such an index
exists
already in one or more other partitions that belong to another OS and can
automatically suggest to the user to use it, thus avoiding unnecessary re-
indexing if the index was already created by a previous OS (thus saving both
time and disk space), and so the new OS continues to update the same index
while the new OS is run;
d. When the partition where the OS is installed becomes with too small free
space the OS automatically transfers at least some of the restore points
automatically to one or more other partitions;
e. The OS creates automatically for the restore points in the other partition
a
directory which contains in its name and/or in one or more files within it
information about the partition of the installed OS which these restore points
belong and/or other identifiers about this OS;
f. When showing the user the list of available restore points the OS indicates
near each restore point the drive letter and/or the full path where it is
stored,
and/or the OS also enables the user to copy one or more restore points to any
other drive and/or directory which the user desires, thus creating an
additional backup;
g. The OS automatically moves the swap file or one or more parts of it to
another partition if the partition on which the OS is installed becomes with
too small free space, or notifies the user about the problem and asks the user
to choose the partition;
h. The OS automatically starts installing by default new programs into a new
"program files" folder in another partition when the free space on the OS
installation partition becomes too small.
134. The system of any of the above claims wherein if a search engine
automatically tries first "and" relations and then also "or", instead of
giving
only the number of total results, the search engines gives also the number of
results with only "And", and/or gives separately the number of results with
only "And" and the number of additional results with "Or", and/or shows a
numbers of statistics, such as the number of results with only "And", number
of results with 1"Or", number of results with 2 "Or"s, etc., and/or a clear
border is drawn between the area of results that have fulfill the full set of
"And" and the area of results where at least one "And" was regarded as "Or",

359
and/or near each item in the results the search engine displays also the
number
of "And" terms that were fulfilled in that link.
135.The system of any of the above claims wherein if the ribbon in the word
processor is minimized and then expands, when the ribbon expands the text is
automatically scrolled up or down as needed so that the section which the user
was currently editing will still be visible, and/or the range of the elevator
is
automatically adjusted to move only in the new visible area.
136.The system of any of the above claims wherein merely hovering with the
mouse on one of the tabs of the ribbon in the word processor automatically
displays the options of that tab.
137.The system of any of the above claims wherein merely hovering with the
mouse on one of the tabs of the ribbon in the word processor automatically
displays the options of that tab, so if the ribbon is minimized in Microsoft's
way then hovering over one of the tabs also automatically expands the ribbon
without the user having to click on it.

Description

Note: Descriptions are shown in the official language in which they were submitted.


DEMANDES OU BREVETS VOLUMINEUX
LA PRESENTE PARTIE I)E CETTE DEMANDE OU CE BREVETS
COMPREND PLUS D'UN TOME.
CECI EST LE TOME DE _2
NOTE: Pour les tomes additionels, veillez contacter le Bureau Canadien des
Brevets.
JUMBO APPLICATIONS / PATENTS
THIS SECTION OF THE APPLICATION / PATENT CONTAINS MORE
THAN ONE VOLUME.
THIS IS VOLUME 1 OF 2
NOTE: For additional volumes please contact the Canadian Patent Office.

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 1/365
System and method for improving the efficiency, comfort, and/or reliability in
Operating Systems, such as for example Windows.
This Patent application is a CIP of US application 10/775,027 of Feb. 8, 2004,
which claims prioritv from Israeli application 154349 of Feb. 7. 2003, hereby
incorporated by reference in its entirety, and also claims benefit and
priority from
US provisional application 60/464,171 of A r. 14, 2003 and from Canadian
application 2,444,685 of Sep. 29, 2003 and from Canadian ayplication 2,457,957
of
Jan. 6. 2004, hereby incorporated by reference in their entireties.
This patent application is also a CIP of US annlication 10/756,839 of Jan. 11,
2004
(which claims nriority of from Israeli application 153893 of Jan. 12, 2003 and
from
US Provisional patent applications 60/452,362 of Mar. 2. 2003 and 60/464,171
of
Apr. 14, 2003, and from Canadian patent application 2,428,648 of May 3, 2003),
hereby incorporated by reference in their entireties.
This patent application is also a CIP of US application 10/907,274 of Mar. 28,
2005,
which is a CIP of the above US application 10/775,027 of Feb. 8. 2004 and of
the
above US application 10/756,839 of Jan. 11, 2004, and which also claims
priority
from Canadian application 2,457,981 of Feb. 9. 2004, and from US provisional
application 60/557454 of Mar. 28, 2004, and from US provisional application
60/561,160 of Anr. 9, 2004, and from US provisional application 60/575,981 of
May 31, 2004, and from US provisional application 60/602,946 of Aug. 20, 2004,
and from US application 10/939,494 of Sen 14 2004, and from British
application
GB0422065.3 of Oct. 5, 2004, and from British apnlication GB0500002.1 of Jan.
5,
2005, hereby incorporated by reference in their entireties.
This application is also a CIP of US application 11/382.698 and/or 11/382,701
of
May 10, 2006, which is a CIP of the above ayylications and which also claims
priority from British anulication 0509451.1 of May 10, 2005 and from British
application 0516308.4 of Aug. 9, 2005, and from British application 0517366.1
of
Aug. 26, 2005 and from British application 0517795.1 of Sen 2. 2005 and from
British annlication 0519932.8 of Sep. 30 2005, and from British application
0521475.4, of Oct. 21, 2005, and from British application 0523627.8 of Nov. 21
2005, and from British application 0524183.1 of Nov. 28, 2005 and from British
gpplication 0524764.8 of Dec. 5. 2005 and from British application 0525740.7
of
Dec. 19, 2005, and from British application 0602413.7 of Feb 7. 2006, and from
British application 0603399.7 of Feb 21 2006, and from British application
0607131.0 of April 10, 2006, and from British application 0609047.6 of May 9,
2006, hereby incorporated by reference in their entireties.
This apnlication also claims priority from British application 0521475 4 of
Oct. 21
2005, and from British apnlication 0523627.8 of Nov. 21 2005 and from British
application 0524183.1 of Nov. 28, 2005, and from British application 0524764.8
of
Dec. 5, 2005, and from British application 0525740.7 of Dec. 19 2005, and from
British anplication 0602413.7 of Feb 7 2006 and from British application
0603399.7 of Feb 21. 2006, and from British apblication 0607131.0 of April 10

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 2/365
2006, and from British application 0609047.6 of May 9, 2006, and from British
application 0616951.0 of Auiz. 29, 2006, and from British application
0619787.5 of
Oct. 6, 2006, and from British application 0621022.3 of Oct. 23, 2006, hereby
incorporated by reference in their entireties.

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 4/365
Back2round of the invention
Field of the invention:
The present invention relates to operating systems, and more specifically to a
System and method for improving the efficiency, comfort, and/or reliability in
Operating Systems, such as for example Microsoft Windows. This can include for
example also things that are related for example to Word processing (since for
example in Microsoft Windows, Word behaves like an integral part of the
system)
and things that are related to the user's Internet surfing experience (This is
important
since for example in Microsoft Windows, Internet Explorer is practically an
integral
part of the OS). The invention deals also with some preferable improvements in
the
performance of the hard disk.
Background
Although MS Windows (in its various versions) is at present the most popular
OS
(Operating System) in personal computers, after years of consecutive
improvements
there are still various issues which need to be improved, which include for
example
issues of efficiency, comfort, and/or reliability. In the area of efficiency,
one of the
things that still need improvement is the time it takes the system to boot.
For
example if windows 98 gets stuck, the user might have to re-boot the system, a
process which can take up to a few minutes, especially if there are many
programs
in the start-up folder and/or if the system starts to scan the disks (If the
user does not
interrupt the disk scan). Although Windows Me and XP for example include a
Hibernate function, it does not help much if the system gets stuck, since
Hibernate is
mainly useful if the user requests the system on his/her own initiative to "go
to
sleep" for fast awakening afterwards. This is accomplished typically by saving
an
Image of the current state of the computer's memory on the disk when the user
issues the "Hibernate" command, and reloading it quickly when the user
requests
"wake-up". US Patent application 20020078338 filed on Dec. 15, 2000 by IBM,
describes an improvement in which the Image is saved automatically immediately
after the normal boot sequence has finished, so that, during the next boot,
the boot
can be automatically set to much faster if there is an Image of the state of
the
computer and the OS at the end of the last boot. However, this still does not
solve
the problem completely, since for example if Scandisk is needed, it can still
take
considerable time, such as for example a number of minutes or even more, and
also
for example some peripheral devices checks and/or initializations might still
be
needed and can take for example even up to a minute even during the "instant"
boot.
The IBM patent does not even mention the problem of the peripheral devices or
drivers. Issues of convenience can include for example the fact that various
things
happen automatically in Windows without asking the user's permission - for
example one thing that can aggravate users is the ability of other programs to
suddenly snatch the focus from the current Window. If this happens for example
while the user is trying to type something, it can be very irritating,
especially if it's
for example some pop-up commercial advertisement in a browser window while the
user is surfing the web and is trying for example to type some data in a form
input

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 5/365
line or in the URL line. Another convenience issue is for example the problem
that
when installing a new version of Windows over an existing system, typically
the
user has a choice of either overwriting the current system, in which case the
desktop
will remain the same as much as possible (but the user will have to give up
the
option of still booting the old system), or to install it in a new partition,
in which
case the user typically has to install almost everything again from scratch.
An
example of a reliability issue is the fact that making errors, such as for
example
launching a program which contains a virus or a malicious code, or installing
a
program which accidentally causes damage for example to the Windows registry
or
to various directories, can be very difficult to correct. Although, for
example,
starting from windows ME, there is an option to undo the last installation, it
is
typically limited to only very specific types of changes in the system, such
as for
example changes in the registry, but cannot undo other changes, such as for
example
ruining other directories or files.
Clearly it would be desirable to have improved versions of Windows or of
similar
Operating Systems, where such problems are solved.
Summary of the invention
The present invention tries to solve the above problems in new ways that
include
considerable improvements over the prior art.
Regarding the boot problem, preferably the system allows a "Reset" function
which means that preferably an Image of the state of the OS (including all
loaded
software) is saved immediately after a successful boot on the disk and/or on
other
non-volatile memory and is preferably automatically updated when new drivers
and/or software that changes the state after a boot is added. Another possible
variation is that more than one Image can be saved, so that for example if
something
goes wrong after updating the Image, the system can preferably go back for
example
to the previous Image. Whenever the system gets stuck (and/or for example if
the
user simply wants to clear the computer's memory and go back to a state like
after a
normal boot), preferably the user is able for example to press some special
button or
some key or keys on the keyboard and/or for example click on some icon or menu
item or link (however a hardware key at least as one of the available
activation
options is important since otherwise the user might not be able to activate it
for
example if the system got stuck for some reason) in a way that causes the
computer's memory to instantly Reset from the saved Image, without a need to
go
through a boot sequence at all. The special button or key (or icon or menu
item, etc.)
is preferably sensed either by hardware or by some process which preferably
runs
below the Operating system and thus in not affected even when the system
becomes
stuck. In addition, preferably any cut & paste buffers are preferably
automatically
saved also on the disk and/or other non-volatile memory preferably whenever
they
are created, so that they can be immediately available on the next boot or
after the
next Reset. Similarly, preferably any currently edited files or windows are
preferably automatically saved on the disk and/or on other non-volatile memory
preferably after sufficient minimal changes have accumulated (such as for
example

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 6/365
after at least 10 new characters, or any other convenient number, have been
added or
changed) or every short while (for example every 30 seconds), so that they can
be
immediately available on the next boot or after the next Reset. Preferably,
during or
after a fast-boot or a Reset that uses the memory Image (and/or even during or
after
a normal boot), if the FAT of the disks needs to be checked, preferably it is
done in
the background and without significantly slowing down the disk or the CPU,
after
the user can already start working, since waiting for scandisk to finish can
take
several minutes and can be very aggravating to most users. Preferably the
system
runs a minimal scandisk in advance at most only on the area where the image
itself
is stored or does that only if there is for example some CRC problem when
trying to
get the image, since only that area might have to be scanned before the boot
or Reset
if there is a problem, and the rest of the scandisk is preferably done in the
background after the boot without disturbing the user. Another problem is that
even
without scandisk usually after the system boots typically various start-up
applications keep loading (for example both in Windows 98 and in Windows XP)
and during this time the user can almost do nothing since the start-up
applications
take control most of the time. So preferably this is improved so that after
the boot
(i.e. preferably for example in the first few minutes after the boot)
preferably the OS
automatically gives higher priority to actions taken by the user (such as for
example
clicking with the mouse on something and/or typing text). This can be done
preferably for example by increasing the frequency of sampling for user input
and/or increasing the priority to tasks which the user is interacting with, so
that the
user can preferably start working immediately without having to wait for the
start-
up programs to load. Preferably this works of course in combination for
example
with the feature described elsewhere in this application - of avoiding
snatching away
of the focus while the user is for example typing something. However,
preferably
the user can also mark for example some programs (i.e. one or more) in the
startup
menu to have higher priority so that they are loaded first, such as for
example the
firewall or for example the DirectCD application, so that for example the
firewall
will be fully loaded before the user connects to the Internet and the DirectCD
will be
loaded before the user tries to access the writeable CD, and/or the OS
monitors
automatically what the user normally does and/or knows for example which
program is the firewall and gives it automatically higher priority to load
earlier
(Preferably the OS knows this for example by using a convention of type
indicators
for various applications and/or for example by monitoring their behavior, such
as for
example which functions or drivers they hook, etc). Another problem is that
for
example in Windows XP many times the user clicks on some application (for
example a web browser such as Opera or Firefox) in order to activate it but it
takes
or 20 seconds or more till the user sees that it indeed opened, which can be
very
annoying and also the user is not sure in such cases if his/her click was
accepted and
might click several times and then several windows might open together after
the
delay. So preferably this is improved so that the newly clicked application
gets
preferably higher or much higher priority for loading than other already
running
applications since if the user just clicked on it then obviously it is at the
focus of
his/her attention and he/she expects it to open immediately, and/or if there
is some
problem for example to open it fast enough then preferably at least some
window or
message preferably appears preferably instantly and preferably informs the
user that

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 7/365
the OS is trying to open the specific application but there is a problem and
preferably the problem is described shortly or at least named and preferably
the OS
shows an automatic estimate of how much time it will take till the application
window appears. Another possible variation is that for example when the system
tells the user during boot that unless he/she presses some key a scandisk will
start in
N seconds (as is done for example in Windows XP), preferably the system also
gives the user an option for example to press a key that starts the disk scan
immediately, thus saving an unnecessary wait of for example additional 10
seconds
each time. Another problem is that for example in Windows XP, if the user did
not
click on something to skip the scandisk during boot, he/she can not stop it
once it
started. So preferably this is improved so that even after the scandisk
started the user
can for example click for example on Esc or some other key or click with the
mouse
on something and stop the scandisk immediately. Another problem is that if the
user
doesn't watch closely as this scandisk-during-boot progresses, he/she has no
way if
knowing if and what error were found and/or corrected because the OS does not
keep a record. So preferably this is improved so that preferably the scandisk
(or
similar disk-checking application) during boot and/or also when activated
normally
after boot, preferably automatically leaves a log of what errors were found
and what
was done so that the user can know for example which files are now truncated
because of errors even if he/she did not attend during the boot (Preferably
there are
multiple such logs or for example the log is cumulative, for example with
dates and
times, so that the user can see also what happened at earlier Scandisks).
Another
possible variation is that this automatic log automatically contains also at
least some
undo information so that the user can for example request automatic undo of
the
recent changes or some of them. Another possible variation is that the OS
keeps for
example also a table of all the files that have been truncated for example due
to
various scandisk operations, so that the user can know exactly which files
need to be
restored for example from backup or installed again (preferably this is marked
also
for example in the directory entry of each such file, so that for example
files that
were truncated for example by scandisk or by similar programs are preferably
automatically marked as truncated files for example when the user sees them in
the
explorer or in the Save or Open dialogue box or when typing "dir" in a CMD or
DOS window, so that the user can know that there is a problem with such files,
and
for example if the user fixes the file the mark that the file was truncated is
preferably automatically removed and preferably when removed this updates
automatically also for example the central table of truncated files. Another
possible
variation is that preferably when there are problems found during the scandisk
during the boot (and/or for example also when the user runs scandisk for
example
normally after the boot) preferably the system sounds an audible indication,
so that
the user can pay attention if he/she was concentrating on something else,
and/or
preferably the OS also preferably provides for example a vertical lever which
the
user can use to go back in the scroll-lines on the screen, and/or preferably
if errors
were found the system preferably waits for user input at the end of the
scandisk
before continuing with the boot, or for example after the boot is finished a
message
is preferably displayed about the errors found during the scandisk during
boot,
preferably together with a link to the log file so that the user can
preferably click the
link in order to access directly the log file that details the programs that
were found

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 8/365
and fixed during the scandisk. Another problem is that for example in Windows
this
dialogue about scandisk during the boot is presented at a refresh rate of 60
Hertz,
which can be very painful to the eyes, and also for example the boot selector
in
Windows Vista is in 60 Hertz, and also the boot logo for example in Windows XP
and Vista is presented at 60 Hz, which probably occurs because Windows does
not
load yet the appropriate display driver. So preferably this is improved so
that
preferably any text or images displayed during the boot are presented for
example at
the refresh rate which the user last used before restarting the computer, or
at least
for example at 75 Hz or more or for example 80 Hz or 85 Hz or more (this is
preferably done not only in normal reboots but also for example when
installing a
new OS - for example Vista, at least if it is installed for example from an
exiting OS
installation, so that preferably even during the installation preferably the
higher
refresh rate is used even after additional boots and even during the
installation -
preferably by saving this information and/or any additional relevant
parameters
about the existing display parameters or the details of the current display
driver in a
file which is then read also after the subsequent boots). This is preferably
done for
example by keeping the last used normal refresh rate and preferably also the
monitor
plug and play identifier and preferably also the last used resolution (which
were
used during the last normal Windows session after the boot) in variables in a
file
which can be read during the boot so that, at least if the monitor has not
been
changed, the OS can be sure that the monitor is able to display this refresh
rate (for
this preferably at least the parts of the driver that talk to the plug and
play element
on the monitor are loaded at the beginning of the boot) and thus can
preferably use it
starting even from the boot selector. Preferably the OS uses at this early
stage for
example basic display drivers of its own (in order to avoid the risk of
malware in
drivers) and preferably these drivers can work in a ring above ring 0 and
preferably
the OS can also automatically for example switch them after the boot finished
and
replace them for example with the more exact or more complete drivers which
are
normally used after the boot. Another possible variation is that, since
typically
during the boot the resolution used is relatively low anyway (for example
640x480),
preferably the OS can assume that any normal monitor is capable of using at
least a
refresh rate of 85 Hz at this resolution or can protect itself by switching to
a lower
refresh rate automatically if it can't. Another possible variation is that the
normal
display driver (i.e. the same driver that is already installed to work after
the boot) is
preferably loaded in advance at the beginning of the boot (preferably together
with
the parameters that were used in the last normal work before the restart),
before the
first boot logo even appears, and so preferably not only the correct refresh
rate can
be safely used at this stage but preferably also the higher resolution which
the user is
used to. If more than one OS is available, preferably the last known refresh
rate and
the plug and play identifier of the monitor are available in a standard place
for to all
the OSs, or at least available to the boot selector, so that even the boot
selector itself
can be displayed that way, unless for example it is in text mode like in
windows XP,
since the text mode at 70 Hz is readable without problems anyway. Of course
various combinations of the above solutions can also be used. Another possible
variation is that for example the monitors themselves and/or for example
display
cards are improved so that preferably they automatically ignore or can be
programmed to ignore for example commands for working at refresh rates for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 9/365
example below 85 Hz or for example below 75 HZ (unless for example at the high
resolution used the display card or the monitor is able to work only at a
lower Hz, in
which case preferably it uses the next best available option), so that even if
the OS
tells the monitor or the display card for example to work at 60 HZ, preferably
the
display card or the monitor will ignore the command and work for example at 75
Hz
or 85 Hz or more (at least until the user changes this setting). This should
be no
problem in terms of usage because it is very difficult to conceive of a
situation
where a user would prefer to work at 60 Hz instead of for example 85 Hz.
Another
problem is that if for example there is more than one bootable OS installed on
the
same computer and the user for example switches between two monitors on the
two
monitor connectors on display cards that support dual monitors, or for example
disconnects one of the monitors and then reconnects it and disconnects the
other, or
switches monitor connectors for any other reason, it will be updated properly
on the
current OS but other OSs which for example expect the monitor on the other
monitor connector will show a blank screen. So preferably this is improved so
that if
the OS and/or for example the display card driver or for example some other
relevant application discovers that the monitor is now connected to the other
connector and there is no monitor on the original connector, preferably the
display
driver automatically switches to the connected connector and preferably also
displays a notice about it to the user (this is no problem since virtually all
monitors
today are plug-and-play monitors, and even for example with a non-plug and-
play
monitor its presence or absence on a connector can be easily sensed
electronically).
(Preferably, as explained elsewhere in this application, preferably for
example the
display card or the OS preferably senses also if the monitor is turned on and
takes
this into account). This is also important for example in case the user has to
restore
the system into an earlier checkpoint in which the monitor was connected to
the
other connector. Similarly for example if the user switched between the two
monitors and the OS discovers that their positions on the connectors are now
reversed, preferably the OS and/or for example the display driver (or for
example
other application or service which is in charge of this) preferably
automatically
switches also the definitions between the two monitors (such as for example
resolution, refresh rate, color corrections, video overlay definitions, etc.)
so that the
user does not have to do this manually. Another possible variation is that
preferably
when the user creates a System checkpoint preferably the OS allows the user to
choose each time if to create a full copy of the relevant system files (such
as for
example the Registry_Machine and Registry_user files in Windows XP) or just a
copy of the incremental changes, for example by asking the user automatically
each
time or for example providing two separate links for these options. Another
possible
variation is that the Scandisk (or similar software) is backed up by hardware,
for
example in a way similar to the hardware that supports automatic disk
rollback,
described below. Preferably this is done by using hard-disks or other non-
volatile
memory wherein a special area or areas is dedicated for FAT information, and
preferably independent head or heads or other access means are used for read
and
write in those areas. This has the further advantage that any reading or
writing of
files can become faster even if they are fragmented, since less movements of
the
heads are needed to access the FAT area each time some jump is needed (Of
course
the FAT can be also for example loaded into RAM or into cache memory for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 10/365
reading, but due to safety reasons changes to the FAT have to written to the
hard-
disk or other non-volatile media as soon as possible, and that is why these
improvements are very important). Since each disk can have more than one
partition, preferably the FAT areas of all partitions are kept in the same
special area
or areas. Preferably these areas are also guarded better in terms of security,
so that
for example any write-access to them is monitored more closely. If more than
one
set of heads is used (i.e. preferably more than one independent arm, which
typically
access multiple plates), this can also be used for example also for creating
more
efficient defragmentation, so that for example one of the independent set of
heads
can be used for defrag while the user is working normally with another set of
heads,
thus preferably not slowing down at all the performance while performing also
defrag, and/or for example when the user is away or working on something that
does
not require intensive disk accessing, (such as for example when working on the
word processor), preferably for example two (or more) independent sets of
heads
can work simultaneously in cooperation on defragmentation, thus saving the
need
for example to jump back and forth between two places when moving a file.
Another possible variation is that for example, preferably at least as one of
the user-
choosable options, (preferably also in normal disks with only one head or one
set of
heads) the system can preferably activate automatic defrag for example mainly
or
only on the files and/or directories which the user uses most often
(preferably by
running and keeping automatically such statistics) and/or for example on the
free
space, so that for example no or little time is wasted on defragmenting files
which
are only rarely or very rarely used, and/or for example their defragmentation
is
preferably automatically set for lower priority so that they are defragemented
for
example only if and when there is sufficient free time to work on it in the
background and preferably only after the higher priority defragmentation of
that
media has been completed. Of course the Image and/or any other saved data can
be
kept also, in addition or instead, on any non-volatile type of memory, such as
for
example MRAM (Magnetic RAM), which will become available in a few years, 3d
Nano-RAM chips, etc. In such cases, instead of separate or independent heads,
for
example separate or independent access channels or processors can be used.
Another possible variation is that for example the hard disk has one or more
separate heads which are used for example only for checking the media for
errors
and for example move automatically all the time or periodically once in a
while to
check this without interfering with the normal function of the hard disk.
Another
problem is that for example in Windows XP many times after a program has
finished installing it requests the user to do a complete restart of the
computer,
which can take considerable time especially for example if the motherboard
contains
a RAID driver for some of the devices (typical for example in new motherboards
which support for example both IDE and SATA), while in almost all cases
logging-
off and logging-on again into Windows would be quite sufficient and of course
much faster. Full restart should normally be required only for example if a
new
hardware has been added (in most cases this requires turning off the power so
a full
restart happens anyway) or for example in some cases of rewriting the flash
memory
of some devices. So preferably by default either the OS automatically
determines if
a full restart is needed (for example according to the nature of the new
installation),
and then preferably the OS automatically performs just logoff and logon
instead of a

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 11/365
full restart whenever it can determine that this is sufficient, and/or for
example
standard installers are improved so that the software vendors can easily
indicate (for
example through some flag or flags) if logoff-logon is sufficient (for example
even
mark it as a set of automatic conditional rules, depending for example on
various
parameters, such as for example the OS version and/or various hardware
parameters). Another possible variation is that preferably when the user
himself/herself initiates a restart command (especially for example if no new
software has been installed since the last boot and/or for example if the user
has not
recently inserted a bootable diskette or CD into one of the drives),
preferably the OS
automatically asks the user if he/she really wants a full reboot and, if not,
preferably
offers the user to automatically perform logoff-logon instead. Another
possible
variation is that at least for example the logon/logoff is added also to the
normal
RestartJTurnoff menu, so that for example instead of showing only 3 options
(Standby, Turnoff and Restart) preferably the option of fast Logoff/Logon is
also
added. Another possible variation is that for example if the user connects new
hardware while the computer is running, such as for example a different
keyboard or
a different mouse and/or other hardware, preferably the OS automatically
detects the
change in the hardware and preferably automatically updates the relevant
drivers or
drivers preferably without having to reboot the system. For this preferably
the OS
can use for example an additional abstraction layer for example between
programs
and device drivers so that for example there is a meta-driver layer with which
the
applications talk which intermediates between them and the actual drivers, and
so if
a driver has changed the OS for example preferably only has to update this
layer
without having to let the applications know about the change, and thus does
not
have to restart them. Another possible variation is that for example if the OS
detects
a new device (whether added while the OS is running or before the boot) and
does
not succeed to automatically fmd a sufficiently appropriate driver, preferably
it tells
the user also the specific hardware Id of the device (such as for exatnple
what type
of device it is, the manufacturer and the model - which is no problem since
the OS
automatically reads this data from the hardware itself before starting to
search for
the driver), so that the user can know exactly for example what driver to try
to
download from the Intemet. This is better than the prior art, in which Windows
can
for example tell the user that it is a display device or a sound device, but
does not
indicate the manufacturer and/or the exact model, and then the user might have
to
turn off the computer and open its case to check what is written on the card
and then
reboot, which is very inefficient. Another possible variation is that if the
user is
trying to install a device for example from a certain directory in a CD or DVD
or
other device and the system for example does not succeed to find an
appropriate
driver there or does not succeed to install it, preferably the user can for
example use
a Back arrow or icon to go back to the previous menu and for example choose a
separate directory, instead of having to start again form the initial menu of
updating
the driver. Another possible variation is that when the user removes a device
from
the device manager preferably the OS offers the user also an option of marking
the
removed device so that the system will not rediscover it again automatically
for
example on the next boot for example until the user removes this mark. Another
problem is that if the user for example wants to install another copy of the
OS (for
example Windows XP) on a separate partition and for example the original CD
did

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 12/365
not include service pack 2 and the user already installed service pack 2, the
OS does
not allow the installation while running, claiming that this is a lower
version of the
OS, and for example the OS makes it almost impossible to install for example
Windows XP home if for example Windows XP Professional is already installed,
even when booting from the CD for installation, even if the user wants to
install it
on another partition or for example another hard disk. So preferably this is
improved
so that if the new installation is on a separate partition the existing OS
does not
prevent the user from installing the other OS even if it is considered a
downgrade
(or for example at least unless the existing OS thinks that the new OS might
screw
up for example the boot selector). Another possible variation is that
preferably when
installing the OS preferably the user is asked all the needed questions at the
beginning or at the end of the installation - including for example the
country
settings, so that the installation can preferably really complete unattended.
Another
possible variation is that for example during installation and/or during
normal boot
or when shutting down or logging off the system preferably displays
automatically
to the user at least some general feedback on what it is doing at each stage
(such as
for example the applications that are being loaded or closed or at least some
general
categories of activities), which is useful for making the time seem to flow
faster and
can also help the user to find for example problem areas that slow down the
process). Another possible variation is that if for example the user installs
a new
installation of Windows on the same partition of a previously existing version
of
Windows, preferably common standard directories, such as for example "My
Documents" and "Program Files" are automatically renamed or moved to be a
subdirectory of some other directory - for example those of the original
installation
and/or those of the new installation, and preferably the OS in which the
change is
applied preferably automatically makes this the new default for example for
Word
documents or for new installations. Another possible variation is that these
directories become virtual directories which appear for example to all
applications
as if they are in their normal places but are in practice for example a
subdirectory of
another directory, as explained above. Another possible variation is that when
the
computer is in standby (hibernate) mode, even if the user for example turns
the
power off or even plugs the electrical wire out of the wall, preferably when
the user
returns the power, the system preferably still automatically returns from
standby
instead of normal boot. This is very easy since the saved image of the system
is still
the same, and the system can preferably identify from it and/or from some flag
or
other indication that it should be returning from hibernation, even if it had
been for
example completely powered off. This means that preferably when the user
activates for example standby mode, preferably the system first creates the
image
and then can for example go into a mode where power is preferably used only or
mainly for keeping the RAM refreshed (and for example the CPU, disk and screen
are ofo, and so for example if the power remains on, when waking up the system
preferably does not even have to restore itself from the image, and if power
has been
turned off then preferably the system automatically checks first to see if
there is a
recent image and then recovers from the image if possible, and only if there
is a
problem then it preferably automatically switches for example to normal boot.
Another problem is that sometimes when the user requests for example to enter
standby mode or to restart the computer or to logoff for example in Windows
XP,

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 13/365
the system says for example "Windows is shutting down" or "entering standby
mode" but sometimes the system gets stuck indefinitely after this message and
the
user has to press reset. This typically happens if for example one or more
services or
drivers get stick and do not terminate. So preferably in order to prevent this
the
system preferably explicitly shows the user the list of services and/or
drivers and/or
other processes that still have to be closed and preferably indicates when
each
service or driver or process is closed, so that preferably the user can see
where the
system is stuck, and preferably the user can for example press a key which
hastens
the shut down in cases of processes or services that have not closed and/or
the
system for example automatically terminates (or for example freezes if needed
in
case of entering standby) such services or processes after a certain
preferably short
time limit for example even if it is stuck. In order to enable this preferably
there is at
least one or more processes below the OS which can automatically monitor such
situations and preferably take the appropriate actions even if for example
important
parts of the OS have already shut down. Another possible variation is that if
for
example the system still gets stuck for example while trying to shutdown or
for
example while trying to enter Standby mode, preferably at least the screen
saver is
automatically activated (preferably after the normal time without user
activity for
activating it has passed), since that would typically mean that user is not
around and
does not know that the system did not succeed to shut down or enter standby.
This
means of course that preferably even while shutting down or entering standby
there
is at least one or more active processes, for example below the OS and/or
which
remain open till the end, which preferably can still activate the screen saver
as long
as the system has not actually completed the shutdown or standby. Another
possible
variation is that the user can for example choose in the normal restart menu
between
nonnal standby/hibernate (with mirror image) and standby in which only the
activity
is turned off and power is at minimum, in which case preferably the system can
instantly freeze any activity without having to wait for example for any
services
and/or drivers and/or applications to reach a certain state, and/or for
example even
when creating the image preferably the system can freeze anything instantly
without
having to wait for any services and/or drivers and/or applications. Another
possible
variation is that preferably when the system creates the image for hibernation
it can
preferably save only the changes instead of the entire image, for example by
separating in advance parts of the booted OS image that do not normally change
between boots and keeping them at a separate place, and preferably when the
system
returns from hibernate the changing parts are preferably automatically added
to the
constant part to recreate the OS image. (Even if new drivers are installed for
example, typically there will still be large parts of the booted OS image that
would
not change). Another possible variation is that preferably if the user chooses
for
example full reboot and/or even if he/she chooses just logoff and the system
begins
to close applications, preferably first of all only user applications are
closed and not
system processes and preferably the user can still for example press some key
or
click on some icon if he/she changes his/her mind in order to abort the
reboot, and
then for example the attempt to reboot is preferably aborted if it has not
gone too
far, and/or the system can automatically undo the process and even return the
OS to
the state it was before the reboot was requested (for example by keeping in
one or
more buffers also the state of the open files and/or windows and/or processes
so that

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 14/365
they can be restored automatically to their state before the reboot was
requested).
Another possible variation is that preferably one of the logoff-related
options which
the OS offers the user (for example in the normal logoff menu) is to logoff
with
immediate automatic logon again, which means that preferably as soon as the
logoff
is complete the system automatically log-on again to the same user. Another
possible variation is that preferably one of the options for restart is fast-
restart or
fast-logoff (available preferably for example as one of the options when
pressing
Ctrl-Alt-Del and/or in the restart menu), which means that preferably the OS
waits
until the first few seconds (or other threshold) when there is no disk
activity and
then preferably instantly freezes all further disk activity and logs off or
restarts
immediately without waiting for any services or processes to close. This can
also
work for example with the instant Reset described elsewhere in this
application,
instead of the normal restart. Another possible variation is that preferably
the
installers are improved so that preferably even after the installation already
starts
(for example after the user finishes choosing all the options and presses
"Next",
preferably the user can still for example use at least some scroll bar to view
his/her
previous choices, so that for example when installing Word 2007 the user can
check
again to make sure that he/she indeed chose not to remove previous versions of
Word even while the installation is already proceeding, or for example the
installer
automatically lists a summary of the user's choices preferably at each stage,
so that
preferably even before pressing the last "Next" and preferably also after that
the
user can still see a summary of his/her choices (this variation is more
preferable
since this way the user can notice if there were any mistakes in his/her
previous
choices even before pressing the last "Next"). Another problem is that for
example
if the user installs more than one version of Word in the same OS installation
(for
example Word 2003 and Word 2007 or Word 2000 and Word 2007) then each time
when opening for example a version of Word after last using the other version
(for
example by clicking on its icon on the desktop), the newly opened version
automatically goes through some installation completion process, which can
take
even up to a few minutes, and can be very annoying to the user, especially if
he/she
has to finish something urgently. (This apparently includes for example the
newly
opened version of Word registering itself again as the default program for
opening
.doc documents). So preferably this is improved so that for example the newly
opened version of Word does not register itself as the new default unless the
user
explicitly requests it to, or for example asks the user when the user clicks
on it if
he/she want this to become the default, and, if not, preferably opens
instantly, and/or
for example the process of registering itself as the new default application
is
preferably done almost instantly - for example by merely changing one value in
some configuration file which the OS looks at when the user clicks on data
files.
Apart from this, preferably any other needed configurations are preferably
saved
separately for each installed version of the word processor, so that switching
between versions preferably does not need any new configurations, and so
preferably for example opening Word 2000 after working with for example Word
2007 or vice versa, preferably works instantly.
Of course, various combinations of the above and other variations can also be
used.

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 151365
Regarding the focus-grabbing problem, preferably when the user is in the
middle
of typing something, preferably the focus cannot be automatically snatched
away by
another program, so that for example the change of focus can occur only after
the
user has stopped typing for a certain minimal period, such as for example a
few
seconds or more. Another possible variation is that other programs can snatch
the
focus only in case of emergency, such as for example an event that is
intercepted by
the computer's security system, the firewall, or the OS. Preferably this is
done by
allowing this only to the OS and/or the security system of the computer and/or
for
example the firewall, and/or any other software which has been given explicit
permission by the user to have such rights. Another possible variation is that
programs are not allowed to snatch away the focus while the user is in the
middle of
typing something, as above, but for example in case of emergency, for example
instead of snatching away the focus, important messages can be displayed for
example by flashing a message on some part of the screen and/or by any other
conspicuous visual means and/for example by audible sound (for example a
spoken
vocal message), so that the user's attention can be immediately grabbed,
without
automatically disturbing his typing efforts. Another possible variation is
that if the
focus is snatched while the user was typing, preferably his/her keystrokes
continue
to be kept for example in a special buffer, so that when the user notices that
the
focus has changed and goes back to the original window where he/she was
typing,
the keys that he/she typed while the focus has changed are again available.
This can
be done for example by a special process (for example part of the OS, or some
dedicated service) that keeps a copy of the most recent keystrokes and can
replay
them even if the keystrokes were supposedly wasted in another process that
popped
up during the typing. On the there hand, as explained in other applications by
the
present inventor that deal with computer security, preferably the security
system
and/or the OS can prevent programs from hooking the keyboard at all or without
user permission, and preferably when the OS or security system asks for the
user's
permission preferably the user is informed specifically for example about
attempts
to hook the keyboard or to log keystrokes, since for example Zonealarm
Security
Suit now asks the user for authorization for programs that are trying to
monitor user
activities, but does not differentiate for example between keyboard logging to
other
activities, so the user is not sure what the program is really trying to do.
Another
possible variation is that preferably even if the user for example allows such
keyboard logging for one or more program or drivers, preferably the security
system
or the OS can for example monitor and/or log what such programs are doing
(preferably by hooking the keyboard and/or other resources before them and
monitoring also other activities of such programs), and thus can preferably
report to
the user more exactly what was logged, or for example if certain things that
the user
typed (for example when filling form or entering credit card data, etc.)
suddenly
caused such programs to start new activities (for example saving in a file or
accessing he web). In addition, focus snatching for example in order to
request
authorization can be very dangerous, because in the prior art if the user is
for
example typing while looking at the keyboard and not at the screen and for
example
the security system or the firewall ask something without the user noticing
it, then if
the user continues for example to typing a word which contains the letter 'n'
this can
be considered a "No' by the focus snapping security system or firewall and if
the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 16/365
user continues typing a word which contains the letter 'y' then it can become
a
"Yes", perhaps without the user even noticing at all that there was a security
message. So preferably, first of all, if the focus snatching has to be done
for a
security reason, then, as explained above, it is preferably accompanied by an
auditory indication, and preferably the focus is not snatched automatically
after the
auditory indication, so that the user has to actively click for example on a
flashing
element to see what the security question is. Another possible variation is
that
preferably if the security software for example expects a'y' or an 'n' for an
answer,
then preferably if the user types anything else then preferably the security
software
or the OS preferably automatically sounds an auditory error message preferably
for
each different character which the user types, so that the user can notice
immediately that he/she is now interacting with something else. But, if used
alone,
this is still not reliable enough since the user might accidentally be typing
for
example 'n' or 'y' as the very next character after the security message
appears,
even though the user still thinks that he/s is interacting for example with
the word
processor. Another possible variation is that answering such security
questions can
only be done with the mouse, so that there is no way that typing at the
keyboard
while the user has not noticed the security message will create a reply to the
security
question without the user's attention. Of course, various combinations of the
above
and other variations can also be used.
Another possible variation that is also related to the focus issue, is that
for
example clicking with the mouse on any part of the desktop (or for example
pressing some key or keys on the keyboard) will immediately bring the desktop
fully into the foreground like clicking on any other windows, so that there is
no need
to click for example on the special icon in the taskbar to do that, as exists
today for
example in Windows. In the prior art clicking on the desktop does not cause
other
windows that cover parts of it to move down to the task bar, eventhough it can
change the focus, so the user has to click on a special icon if he wants to
get a clear
view of the desktop. Preferably this option is made available to the user in
addition
to and not instead of the icon that brings the desktop to the foreground,
since
sometimes there is no piece of the desktop available for clicking on it, but
on the
other hand, if part of the desktop is in view, it is much easier to click on
it than to
have to go down to the specific location of the small icon, and also in the
current
prior art situation it can be quite frustrating that clicking on a visible
part of the
desktop does not automatically bring the desktop to the foreground, unlike any
other
windows where clicking on any part of it does bring it automatically to the
foreground. Another possible variation is that for example the clear desktop
view is
automatically added to the list of available options when pressing for example
Alt-
Tab (or other similar keys or controls for jumping between open windows or
applications, including for example the flip 3d), so that preferably the user
can also
jump to the clear desktop for example by keeping the Alt key pressed and
pressing
Tab until the correct icon is reached, and/or simply pressing for example one
or
more keys on the keyboard in order to jump directly to the clear desktop.
Another possible variation that is also related to the focus issue is to add
for
example a feature that allows the user more easily to define or increase or
decrease

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 17/365
the priority of various processes or open windows, since for example many
times
the user wishes some program to continue working on something lengthy in the
background while he/she is doing other things, but many times the OS
automatically
assumes that if the user diverted the focus to something else, the processes
that are
in the background (i.e. not in focus) can be given much lower priority and so
left to
work much slower, so that the user fmds that very little progress has been
made
when he/she goes back for example to a process that could have been finished
in a
few minutes if it was in the foreground or given higher priority (This can
happen for
example especially with programs that are running in a DOS window for example
in
Windows 98). Preferably the user can easily define the desired priority level
for
such background processes, for example in terms of percentages, and/or in
terms of
increasing or decreasing some default values for example in a few discrete
steps,
and/or for example in terms of more general definitions such as for example
"Very
high, high, medium, low, very low", etc. Although typically a programmer can
define the level of priority for a process, the user for example in Windows 98
does
not have such a choice except in a few programs in which the programmers chose
to
explicitly give the user such an option, and also the user does not typically
know
which priority was set by the programmer. So preferably the OS also indicates
to the
user clearly, for example by colors (for example brighter colors for higher
priority
process) and/or by numeric and/or textual values and/or by appropriate icons,
the
level of priority that has been given to each process, for example by
indicating it
near or on each square in the for example bottom taskbar that shows active
processes, and/or indicating it for example at the top line of the window of
each
process. For example on the square in the taskbar it can be more preferable to
indicate this by a color, since there is little space, and for example on the
top line of
a window it is easier to indicate this for example by a combination of color
and/or
for example more exact numeric indication. Therefore, the default first
priority
shown to the user can be for example a default priority automatically set by
the OS
or the priority set by the programmer, or for example the priority set by the
user the
last time the program was run. Preferably the user can easily change the
priority for
example by clicking on the place where the priority is indicated at or near
the
taskbar and/or on the window of the process (for example at the top line), so
that for
example the clicking opens a preferably small windows where the user can
choose
the priority or for example a lever is shown which the user can pull up or
down.
Preferably the OS remembers the priorities given by the user to various
processes
and uses these defaults or at least takes them into consideration for
assigning
automatically the priorities the next time the user does similar things or
activates the
same processes, unless the user again changes the priorities. Although Windows
XP
for example allows the user to choose between more or less priority to
background
processes in general, this does not allow the user to choose it for individual
processes, and the user has to go into the control panel to reach the place
where it
can be changed. On the other hand, in Windows XP the user may choose among a
few priority levels for each process by pressing Control-Alt-Del and entering
the
task manager, however this does not show automatically the priority for each
process, and the user has to click on each process in the task manager
separately and
choose from a menu in order to view or change its priority. On the other hand
the
user may for example use the Process Viewer (Pviewer.exe), a tool on the
Windows

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 18/365
NT Resource Kit 4.0 CD, to change also the priority of individual processes,
but this
requires entering a special window where all the processes are listed.
Similarly for
example a shareware called Priority Master (version 3.2) includes even more
options, and can indicate for example the priority of a process if the user
hovers the
mouse for about a second above an item in the bottom task bar, and also shows
this
indeed on the title line of an open window. However, the above suggested
improvement of constantly displaying the priority near each square in the task
bar is
more convenient and more efficient. Another possible improvement is that the
taskbar can show automatically for example also how much percent of CPU is
being
used on average by each open process. Although windows XP for example allows
the user to view CPU usage of various processes in a special window,
preferably the
user can also see this directly on the task bar without having to go through
special
menus for that. Another possible variation is that the priority of background
and/or
foreground processes is automatically dynamically increased according to the
type
of the work the user is doing in the foreground window, so that if the user is
for
example typing on Word or surfing with Netscape, more CPU resources can be
automatically allocated to the background programs. This is especially
important for
example when DOS programs are involved since in the prior art usually if they
are
in the background for example in Windows 98, they can remain with very low
priority even if the user is just typing or even if the computer is not really
doing
anything, whereas much more CPU could have been allocated to them. Another
possible variation is that for example when the user enters the task manager
(for
example by pressing Control-Alt-Del), he/she can for example mark multiple
programs or processes (for example by dragging the mouse over a range of them
and/or for example by marking a group with the shift or control key pressed
down
and/or for example by requesting to close all the instances of the same
program, for
example even if they are stuck) and tell the OS to close all of them at once,
instead
of the prior art where the user has to mark and close them one at a time and
also
press Control-Alt-Del again each time (Although windows XP allows marking and
closing multiple applications at the same time it does not enable doing this
for
processes). Another preferable variation is that preferably the task manager
automatically shows near each process also to which program and/or path and
file
name (for example on the hard disk) it belongs. Another possible variation is
that
preferably the user can choose to automatically sort the processes shown in
the task
manager for example alphabetically and/or according to how much resources they
consume (for example CPU, memory, Internet bandwidth, disk space, etc.),
and/or
for example according the programs they belong to, and/or other criteria.
Another
problem is that for example in windows 98 many times the user has to try
multiple
times to close an application through Control-Alt-Del (or for example when the
system tells the user that the application perfonned an illegal action and
asks the
user if to close it) until the application is really closed. So preferably in
case it hasn't
been closed the OS automatically tries again repeatedly to close it,
preferably for
example at least for a certain number of times and/or till a certain time
limit, and
preferably the OS lets the user know if there is still a problem after the
number of
times and/or the time limit has been reached if the OS was still unable to
close the
application. (Preferably the automatic re-attempting is also accompanied by
some
visual indicator which preferably shows that the system is automatically
continuing

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 19/365
to work on closing the chosen program or programs and preferably lets the user
automatically know when the system has finished closing the program or group
of
programs). Preferably the OS can also show the user automatically in which
stage
the OS is in trying to close the application and/or for example what is the
specific
problem or problems if there is a problem or problems. Of course, various
combinations of the above and other variations can also be used.
Regarding installation of a new operating system in a new directory or
partition,
preferably during the installation the new system preferably automatically
copies the
desktop configuration and links from the old system into the desktop of the
new
system. Since some installed components will not work the same between two
different versions of Windows (such as for example when running installed
components of windows 98 on windows XP), preferably the system automatically
checks which programs can work automatically without problems also in the new
system (for example applications that don't have to access the registry,
etc.), and
preferably for example indicates to the user which applications might need
some
adjustment and/or tries automatically to solve this problem for those
applications
too. There are a number of possible preferable solutions for this, of which
preferably
at least one is used:
1. During installation of the new system, preferably the system tries to
automatically convert components that are different between the two systems
to work on the new system, for example by automatically converting system
calls, memory structures (if needed), etc.
2. During installation of the new system, preferably the system tries to
locate
the original files which were used for the installation and then tries to
reinstall automatically the correct drivers or components that are needed for
the new system. For this, preferably each Windows system keeps information
(for example in the registry and/or in one or more of the directories where
the
installed program or component or drivers resides) about the path and name
of the original file from which it was installed, so that the installation can
be
automatically repeated into the new system, this time with the components
that are needed for the new system. If for example the same item can run also
on the new system as is (and/or for example the new system is in general
compatible with the old system anyway - for example Microsoft Vista is
installed on an additional partition and the previous installation is XP) then
preferably the user is automatically asked for example if he/she wants for
example all or some (or for example asked for each icon separately) if the
copied desktop icons should point to the same application as installed on the
previous OS or for example a new separate installation should be created for
example in the new partition for the new OS, and/or for example a Copy-on-
Write version of the application should be created.
3. If the system does not succeed in converting the relevant links or
components
to work on the new system or for example the original installation program is
limited only to the old system (for example Windows 98) and does not
contain for example drivers for the new system (for example Windows XP),
then preferably the system marks the relevant links on the new desktop as
non-operational (for example by giving them dim gray color) and encourages

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 20/365
the user to look for other versions of those programs that are fitted to work
on
the new system. Another possible variation is that in such cases the system
allows the link to activate the version that runs under the old system (or for
example creates another copy of it) and uses emulation of the old system
when needed in order to let it run (at least temporarily until the user
installs
the new version). Another possible variation is that the system can
automatically try to locate on the Internet (preferably in a limited list of
well
certified sites) any needed variations or drivers that will work on the new OS
and for example recommends them to the user and/or for example can
download them automatically from certified sources (preferably of course
only after user authorization for each downloaded file). (This is relevant
mainly for example for shareware programs).
4. Preferably a new protocol for installing programs is implemented so that
each
installation of new software preferably installs both the appropriate drivers
or
components (for example Windows 98 drivers on a windows 98 system) and
one or more sets of alternate drivers or components (for example for
Windows NT/XP or other Operating Systems), and preferably each time the
program is loaded into memory the appropriate set of drivers or components
is automatically chosen by the OS. However, since in some programs part of
the installation requires for example updating registries and/or installing
various components in system directories, preferably those parts of the
installation are suspended and are executed automatically for example the
first time that the new OS is activated for the first time after installing
it.

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 21/365
Another possible variation is that when installing the new system the new OS
first copies the old system, preferably as is, into a new partition (which
preferably
the user can specify, and the system preferably creates it automatically if it
doesn't
exist before), and then preferably all the references to the drive letters of
the original
partition in the OS and preferably also in the existing applications are
preferably
automatically replaced to refer to the new drive letter (for example by
changing
them on the disk or for example by an application which runs below the
application
and corrects the driver letter on the fly when needed - for example whenever
the
relevant file access services are activated). After that preferably the system
installs
the new OS over the new copy of the old OS (or for example over the original
copy
of the previous OS - preferably by offering the user to choose between these
options), in a way similar to a normal upgrade installation. After that if
there are for
example compatibility problems with programs that are not fit for the new OS,
as
explained above, preferably any of the above described solutions can be used
to
solve this. The end result is that the user has a new OS either on the
original
partition or on a new partition, without losing the original OS. Another
possible
variation is that preferably the same principles can be used also for example
for
porting the OS together with the installed programs to a new computer - by
first
creating an image of the installed OS of the old computer preferably in a way
that is
independent of specific disk sectors, then loading this image on the new
computer,
and then installing over it the new OS, or for example again installing it in
another
partition, thus creating on the new computer for exarnple preferably a
bootable
working mirror of both the old OS and the new OS.
Of course, various combinations of the above and other variations can also be
used.
Regarding the undo problem, preferably any changes in the entire hard disk or
other types of preferably fast mass storage non-volatile memory after or
during the
installation of new software, are preferably completely undo-able at least for
a
certain time period. This is more comprehensive than the current "undo"
feature that
Microsoft for example offers after installing new software, since the current
features
only allow restoring the registry and system files, and even that not always
completely, whereas any other changes to directories or files cannot be
undone. A
more extreme variation is that for example any changes at all that happen on
the
hard disk or other non-volatile memory (and possibly even on other connected
media) at any time are completely undo-able at least for a certain time
period, in a
way similar for example to the undo feature in a single Word document. The
above
Undo features are preferably accomplished by keeping one or more rollback log,
preferably backed up by appropriate hardware on the disk - as explained below
in
the reference to Fig 2.
Other possible improvements in word processing programs such as for example
Microsoft Word can include preferably at least one of the following:
1. Adding to word processors such as for example Word, for example a smart
file-compare features that can show exactly the textual differences between

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 22/365
two or more files while disregarding irrelevant data such as line breaks,
fonts,
etc. In the prior art this can be done for example by a text file compare
program after saving the word file as text files with line breaks, but then
the
comparison might show many irrelevant changes for each paragraph because
of changes in line breaks for example if even one word was changed near the
beginning of the paragraph. Another possible variation is to allow the
program to merge for example two files into a single file with highlighted
changes just as if one of the files was created out of the other while keeping
the "highlight changes" option to On. This is very useful for example for
checking changes between a current version of a file and any of the previous
versions retroactively even if no change tracking was used during the time
that the changes were made. In order to accomplish this preferably the
changes are checked in a way similar to the non-merging file comparison,
except that the results are displayed in the form of the merged file. Another
possible variation is that for example cut & paste of one file over another
file
(and/or in fact cut & paste a section, such as for example a few words or a
few lines or one or more paragraphs, over another section) when "highlight
changes" is set to ON automatically generates the highlighted changes
between the two sections as if they were made by actually changing one to
the other, instead of the current prior art in which the results of such cut &
paste are that the old text area is simply marked as deleted by strikeover and
the new text is simply marked as added (this is preferably accomplished,
again, by simple automatic comparison between the original text and the
pasted text, and marking the differences by the conventions of highlighted
changes, as if the changes were made manually). Although Microsoft Word
currently allows an option of file comparison, which marks the changes
between the two files as if the "track changes" was set to On between the old
file and the new file, as explained above comparing sections by cut and paste
does not work (the previous text is simply marked as deleted and the pasted
text is marked as new, instead of making a comparison), and even the
comparison of two files is not sufficiently reliable and has at least the
following problems:
a. If at least one of the two compared files already contains marked
changes, Word warns you that it may not be able to show all the
changes, and there is no differentiation between previous marked
changes and the changes that are indicated by the comparison itself. In
order to solve this preferably in such cases a different indication is
used between the old changes and the new changes generated by the
comparison, for example by using additional colors, and/or using for
example different special icons and/or marks near the old changes
and/or near the new changes, andlor using for example different
special squares and/or other fiames around the old and/or the new
changes, and/or using for example special fonts and/or other font
characteristics, and/or other preferably clearly visible indications.
However, using for example different colors could be problematic
since different colors are already used for indicating who made each
set of changes, so this might be confusing, and in addition, if such a

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 23/365
file (that resulted from a comparison) is then again compared with
another file, more and more colors might be needed. A more preferred
variation is that for example in each stage of the comparison the old
changes are automatically marked for example by more faded or less
lit colors (but preferably keeping the original colors), and if
comparison steps continue then preferably at the next step preferably
all previous changes now become faded, and the new comparison
changes are marked with brighter colors. Another possible variation is
that for example at any time the user can activate a command which
tells the word processor to start using a new color for the changes,
which can be very useful for example when the user wants to keep
previous changes marked but also to differentiate between them and
new changes. Eventhough the user can achieve today a similar result
in Microsoft Word by changing the author, such a change just in order
to change the color of the tracked changes is confusing, so preferably
the user can change the color without changing the author. This is
preferably done for example by adding an option to the menu of track
changes, which preferably enables the user to choose separately the
color of changes that were made so far and the color of subsequent
changes (preferably with a free independent choice of colors for each
and preferably much more than 10 colors are available - preferably for
example any color which is available for graphics, and/or for example
preferably the user can also request for example that text of marked
changes for example for a specific author and/or from a specific date
and/or for example for all authors and/or dates will preferably have a
different design than nonnal text, such as for example different
inclination or different font or different width and/or height, however
changes that change the size of the font are less preferable because
that means also changes in pagination which will revert when the
changes are accepted, so the use of more available colors is more
preferable), or for example the user can indicate for example a time
and date from which the new colors apply (and/or for example also
until a certain time and date) (which can be useful for example if the
user already started to type in the new changes and then decides for
example that all the new changes for example since today should be
marked with a different color). Preferably the user can also change any
color of tracked changes to any other color, which is very important
since som etimes for example Word decides on its own to suddenly
for example switch colors between authors (for example simply
closing and reopening the document can cause the color to change),
which can be confusing or annoying since the user can already be used
to a certain color as the color of the current changes), or the user might
for example simply prefer a different color. For changing the colors
preferably the user can for example use the search and replace
command with the color as a parameter, so that for example changing
the color of tracked changes can be done the same way as changing
the colors of normally colors sections, as described elsewhere in this

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 24/365
application, and/or for example the user can for example right click
with the mouse (or for example use some other command or control)
on one of the sections with the old color and then for example choose
the new color from a menu, so that all the tracked changes with the
same color change into the new color, and/or for example the user can
(for example in the menu of the track changes options) for example
edit a table which lists all the current colors of tracked changes
(preferably together with the name of author of each color or for
example the range of dates covers by each color) and then the user can
for example mark near each of them the new desired color and then
for example click on an option which activates the changes, which is
most convenient for example in case the user for example wants to
switch between two colors, for example convert the blue tracked
changes to red and vice versa). Another possible variation is that
preferably the word processor saves also a code of the specific color
used for each set of track changes and does not change it on its own.
Another possible variation is that even with the prior art method of
having to change the user in order to change the color, preferably
more than 10 color are available and preferably the word processor
displays in advance all the available colors and the user names that can
be associated with them (for example the same name with an
incremental number) so that the user can know in advance what color
will be given to the next user name instead of having to guess or use
trial and error even just to find the desired color. Another possible
variation is that preferably the user can tell the word processor for
example to avoid marking tracked changes for example on the page
numbers and/or the date and/or this is preferably the default, since this
marking this is unnecessary and makes the title line ugly. Another
possible variation is that for example when the user executes the
"accept changes" command he/he can for example request to accept
automatically for example (with or without individual confirmation for
each change) for example only the changes of a specific author and/or
color and/or for example group of color and/or for example accept all
changes except a specific color or colors, and/or for example accept all
changes from and/or until a certain date of when the change was
made, for example automatically accept all the changes that were
made until Dec. 12, 2005, and/or for example similarly reject for
example a specific set of changes selected this way and/or for example
search text in a specific set of changes selected this way. (Preferably
when the user chooses the relevant accept/reject changes menu he/she
is offered the color options for example as color bars or squares which
he/she can mark or not mark and/or the date options for example as
fill-able fields or moveable dates). Another possible variation is that
preferably the user can for example also activate a command which
for example removes from a file all the text except the tracked changes
(or for example only a subset of the tracked changes, for example by
author or authors and/or color or colors and/or date range), or can for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 25/365
example mark automatically all the tracked changes or a subset as
explained above and then for example automatically copy only the
tracked changes or a the subset of them to a separate file. Another
possible variation is that this is done together with intelligent
heuristics, so that for example if the tracked changes are in a middle of
a sentence then preferably the entire sentence is copied (or in case of
deleting everything except the track changes the sentence is preferably
kept.) Of course after the deletion or copying preferably the tracked
changes retain their colors and insertion date information (for example
unless the user explicitly requests otherwise). Another possible
variation is that the user can for example use the right mouse menu
(and/or for example some control key or keys) to delete for example
all of the current paragraph. Another possible variation is that the user
can preferably also change the author for example for only a specific
document or specific group of documents (instead of only globally as
it is in the prior art Word 2000 and even Word 2003), and in this case
of course this definition preferably carries on also every time the user
saves the file under a new name until the user explicitly changes the
author again. However, these are just examples and any type different
marking can be used. Another possible variation is that for example a
summary table or other type of index is automatically generated so
that the table or index indicates which color was added on which date
(preferably taken automatically from the date of the file which each
color of changes represents), so that the user can clearly see which
change was entered at each date (and/or time). Another possible
variation is that, in addition or instead, the date in which each section
or element was added or changed is automatically indicated near the
relevant text, for example by a bubble that is shown when the user
points the cursor or the mouse on the relevant section, but more
preferably this is marked all the time, preferably at the side or margins
of each section (so that it doesn't cover any text), so that it is clearly
visible even without having to hover over the section, and preferably it
is clearly visible also in the printed version near each section (of
course the user can preferably also request to disable or hide this for
example on the screen and/or when printing, and/or for example
activate this only for example only for a certain section - for example
a certain sentence or an area which he/she marked with the mouse). In
order to accomplish this preferably at least when two or more file are
merged preferably the files are automatically sorted by date before
creating the comparison, and each new section or element is dated
automatically according to the first time it appeared. (Although for
example Word 2003 can show the time and date each marked section
was added when the user puts the mouse over it, this works only while
the section is marked and cannot be reconstructed after the changes
have been accepted, as described above, and for example when two
files are merged for comparison the added parts in Word 2003 are
marked as if they were added at the date of the comparison. So

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 26/365
according to the above variations this is preferably improved so that
preferably if the added section was not previously marked as a change
then the date shown is the date of the file from which it was added,
and if it was marked then of course the original date is kept as
originally marked in the changed section). (Preferably the above
generation of the date each section was added can preferably be done
with or without requesting file merge, and preferably the user can
mark the set of relevant files for example by marking multiple files in
the dialogue box that shows the directory, or for example the word
processor preferably automatically keeps a history log of file renaming
and/or saving under a different name and so preferably when the user
requests the word processor to enter the date each section was added,
preferably the word processor can automatically generate the relevant
list of files from this history log). Another possible variation is that
preferably the word processor can automatically save for example the
time and/or date information for each section also after it is accepted
and/or even when track changes is not used at all (preferably by
simply keeping this automatically), but in that case preferably it is
saved locally, for example in the same directory, preferably with some
link which relates it to the file, but preferably does not become part of
the file, so as not to damage the privacy of the user if he/she for
example sends the file to someone else (of course the user can
preferably disable or enable these options, and/or can preferably for
example also request this information o be kept within the same file
)(Preferably the linked file that contains this information is
automatically copied when the file is for example copied to another
name and/or directory or saved under a different name and/or renames
along with the fie if it is renamed, but preferably the user can also
easily delete this file for example if he/she so desires, so preferably
this linked file has a simple name convention, such as for example the
same name as the document file, but for exaYnple with a different
automatic extension and/or with some automatic addition to the name
itself). Another possible variation is that such information about the
date each section was added (which, as explained above, can
preferably, at least as one of the options, preferably be automatically
generated even if the text was entered without track changes), can also
be for example kept if the file is saved for example in PDF or XPS or
other format, so that preferably the date each section was entered can
preferably be shown for example also in the converted format when
the user hovers with the mouseover it, preferably unless the user for
example disables this or for example only if the user explicitly enables
this before converting to the other format and/or for example requests
this for the specific conversion. Preferably when the date a section
was added is displayed for example on the side of the section,
preferably the word processor can display for example one date for
each consecutive text which has the same color in the track changes
(even if there are different dates within the text of the same

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 27/365
color)(which can be for example the first date or last date or for
example both of them or for example the average date - preferably it
is by default the min and max date next to each other, with a range
indicator between them, but preferably the user can easily change
this). Another possible variation is that the user can for example defme
some conversion table which indicates for example a list of conversion
rules, so that for example that all texts added between a certain range
of dates will be marked by the word processor (preferably on the side)
as having been added at a specific date, all texts from a second range
will be marked as having been entered on another date, and so on (this
can be useful for example for quickly keeping track of the priorities of
sequential patent CIP filings of the same cumulative patent since for
example changes entered between a certain range of dates might have
been submitted for example 1 or 2 days later then the last entry of that
section and of course even more days after the first entry of that
section. Another possible variation is that for example if there are
different dates within the text of the same color preferably the word
processor can also for example automatically draw a curved line that
surrounds each inner section which has the same date and then
indicate the date of this subsection for example on the side with an
arrow that points to the sub-section (this level of detail is more similar
to what happens when the user hovers with the mouse on the section
because then the date of each subsection is displayed). Preferably the
text with these markings can be both displayed on the screen and
printed. Another possible variation is to use similar fading for exaxnple
also with normal incremental changes when track changes is used, so
that for example the user can use a command that fades (or otherwise
changes) the color of preferably all the older changes so that all the
new changes from that point on will stand out. This is very important
for example when a file is changed in incremental steps and each time
for example the new version is sent by email to someone else. Another
possible variation is that for example the OS and/or the word
processor can identify automatically incremental updates of the same
file (for example according to the beginning of the file name and/or
date and/or for example by keeping automatically a log of the
sequence of updating a file incrementally), so that the OS and/or the
word processor can use the knowledge of the update sequence of a
series of files for example to search for example for each section or
sentence when was the first time that it was entered.
b. The file comparison is not always reliable and may get sections
confused, so that for example when comparing two patent files, the
comparison can confuse for example between a claims section and a
specification section, thus marking entire areas as deleted and added
instead of properly comparing them. In order to prevent this,
preferably the system uses preferably various heuristics in order to
extract from the document important information about its structure,

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 28/365
so that for example a section that appears after a clear headline (which
is typically for example on a separate line and is typically emphasized
for example by boldface and/or by underline and/or sometimes for
example by capital letters) is preferably automatically recognized as a
different section of the documents, and this way for example a section
that appears after the headline CLAIMS will not be confused with a
specification section. In addition, the system can use for example other
cues about each section, since for example the claims section is clearly
characterized by short paragraphs that each start with a consecutive
number, which is unlike any other part in the document. Such cues
and/or heuristics are preferably used in a fuzzy manner, so that they
are considered as part of the evidence but not as absolute guidelines,
so that for example if there is more evidence that indicates otherwise,
such cues can preferably also be ignored. For example a thorough
academic article from 1988 about file comparisons at
http://citeseer.ni .nec.com/cache/papers/cs/6985/http: zSzzSzwww. ime.
usp.brzSz-iszSzpapirzSzsctp.pdf/simon88seguence.bdf shows that the
file comparison problem is theoretically and practically not completely
solved yet, but this article deals mainly with various methods of
increasing the speed of such algorithms (which is far less critical
today, now that computers are thousands of times faster than 15 years
ago), and much less with how to improve the reliability of such
algorithms. US patent 6,526,410, issued on Feb. 25 2003 to the
Hitachi company, shows how to improve such algorithms in explicitly
structured documents, such as for example X1VIL documents, by
making the comparison first between the X1VII, structures, and then
comparing the text only between structures that are determined to be
within the corresponding sub-structure, and typically working with a
table of explicit comparison rules. However their solution does not
solve the problem for example for Word documents, which are the
most common type of documents for example in legal documents such
as for example contracts and for example patent applications, where
file comparison can be very important. Therefore, the above suggested
solution is much more general since it can work for example also with
word processing documents, such as for example Word documents,
where there is no explicit hard-definition structure, but smart
heuristics can easily use relevant cues to identify actual sections, and
in addition the above solution is more flexible since the identified
sections preferably don't become absolutely binding, so that for
example if other criteria (such as for example the percent of the
common sequences found) indicate that it is better to ignore one or
more apparent section indicators, this is preferably done. In addition,
preferably the same principles are used and applied recursively when
needed. Another possible variation is that for example if the user sees
that a certain part of the documents (or more than one part) has not
been properly merged (for example the end of the specification
together with the claims), then the user can preferably for example

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 29/365
mark, for example with the mouse, the problematic section or sections,
and then tell the system to try again to merge more properly the
problematic section or sections, and then for preferably the word
processor (or other application) can work much better because is has a
much smaller problem area on which to concentrate.
c. Only 2 files can be compared at each step. So instead, preferably the
system allows to compare also more than two files in each step, and so
in the merged file of for example 3 files, changes that come from
different files are preferably marked in different colors (for example in
a way similar to marking changes that were added by different people
in different colors), or marked differentially by other methods, for
example such as those mentioned in clause 'a' above.
2. Another big problem with the current track-changes features that exist for
example in Word 2000 and Word 2002 and even in Word 2003 is that if the
user for exatnple breaks an automatically numbered paragraph, where for
example each part is automatically marked by a letter or by a number (such
as for example in patent claims) into two paragraphs, the part after the break
becomes marked (typically in red) as if it is a new text, instead of marking
only the real change, which is the new line break and the changes in the
subsequent automatic numbers. On the other hand, if the user makes the
changes without the track-changes feature On and then uses file-compare, the
comparison does not mark the text after the break as a new text (which is
good) but now the showing of the changes in the subsequent automatic
numbers is not done). This is of course a problematic lack of consistency. So
preferably this is improved so that when the track changes feature is On and
the user breaks an automatically numbered paragraph, only the new break
and the change in subsequent renumbering is shown and the part after the
break is not marked as new text, and when comparing files the same
consistent difference is shown. In addition there is a problem that when a
text
is marked as deleted, for example as a result of track changes or of file
comparison, if the user wants to undelete it or part of it, the user cannot do
it
directly (unless it is the most recent change and can be restored by normal
Undo), and the user cannot even mark and copy the deleted text and convert
it to non-deleted text. Although in the prior art Word the user can do it by
marking the deleted text with the mouse and then going the "accept/reject
changes" and rejecting the changes in the marked area, but this is much more
cumbersome. So preferably this is improved so that when a text is marked as
deleted as a result of track changes or of file comparison, the user can mark
the deleted text or part of it and press for example a key or button or for
example right-clicking with the mouse und choosing undelete from a small
menu or otherwise execute a preferably single command which can instantly
undelete it. In addition, the user can preferably also mark and copy text that
is marked as deleted or any part of it and can preferably paste it back at the
same place or elsewhere for example as normal text. (Another possible
variation is that he can choose for example if to paste it as normal text or
as
text marked as deleted). Another preferable improvement is that preferably

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 30/365
the user can switch between the Track changes On and Off states also by
some control key instead of having to go through a series of menu choices, as
it is currently in Word. In addition, preferably when the user copies and
pastes text that contains marked changes (for example within the same file or
between files), the user can preferably indicate, preferably when pasting, if
he/she wants the pasted text to contain the marks of the 'track changes' or
not. Another possible variation is that the user can for example mark one or
more areas in which track changes is marked as On (or Off), so that the other
areas for example remain with track changes Off (or On), etc. This can be
very useful for example with the new required format for amendments in the
USPTO, since when answering for example an Office action the user
typically has to use track changes when making changes in the area that
contains the amended claims but remove the track changes when moving to
the comments section. In addition, in the prior art, even when just working on
the section of the amended claims, the user has to switch to track changes Off
when adding for example the words "(Original)" or "(Currently amended)" at
the beginning of the claim and then switch back to track changes On when
changing the claim itself, etc. So preferably, the user can for example
automatically add for example the default of the word "Original" at the
beginning of each claim for example by using a command that allows
defming an automatic rule for this structure, as explained above, and then for
example define or choose in the automatic rules command (or for example
mark the entire claims area and define in the claims area) a mode which
automatically adds for example the "(Currently amended)" when the user
makes changes in that claim, so that the user does not have to switch to Track
changes off, and the words "(Currently amended)" are preferably
automatically added without track changes. Similarly, in this mode preferably
for example deleting an entire claim preferably automatically causes the
deleted text to disappear, and the word "(Canceled)" to automatically appear
instead, as if track changes has been temporarily suspended. Similarly, for
example when adding new claims at the end of the claims section, preferably
the track changes is automatically set to Off and the word "(New)" is
preferably automatically inserted at the beginning of the new claim. Another
possible variation is that if the user for example made a mistake and typed
text in "track changes oif' mode and wants to make the new text marked,
he/she can for example use ~z to temporarily remove the newly entered text,
activate the track changes and then for example type ~y and the new text
preferably automatically becomes marked. Another problem with the track
changes feature is that typically on the screen the changes are most
conspicuous when shown in color (especially for example in red, which is the
default for example in Word, if only one user makes the changes), however
when printing the file for example in laser printers the red typically becomes
a weak gray shade which can be difficult to read. Although Word allows the
user to change the color of the marked changes for example from the typical
red/blue to black, in the prior art this affects both the on-screen display
and
the printing, which is very inconvenient for the above reasons. So instead
preferably this is improved so that the user can preferably define separate

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 31/365
colors for displaying the changes on the screen and when printed. Preferably
by default the on-screen display is the automatic colors, and the printing is
preferably by default in black if a black and white printer driver is used and
preferably automatically by default in color if a color printer is used (or
for
example black by default also in color printers unless the user changes
it)(Typically the system knows which type of printer is used either by plug
and play or by the default printer driver). Another possible variation is that
the user can for example also change these defmitions in a way that applies
only to a given file, instead of being able only to change it globally in a
way
that affects all files until changed again by the user, and/or for example
change these defaults for all the files in the same directory and/or for
example change it automatically in all the files with have a very similar file
name or for example identical first characters (for example first 7 characters
or for example first 50% of characters, etc), or for example all files which
are
previous versions of the same current file (which means that preferably the
word processor also keeps automatic track of version history and/or for
example generates this automatically for example according to file names
and/or sequential numerals and/or time & date, etc.). Another possible
variation is that preferably the user can for example automatically convert
marked additions for example to normal underlines, and/or for example vice-
versa - automatically convert underlined sections into sections marked with
track changes. Preferably the word processing program can ask the user
automatically for various types of changes in the way the word processor
operates if the change is intended only for the current file or for example
for
all the files in the same directory or for example all of the files of the
same
sequence all the files in general or for example one of the other options
detailed above. Another problem is that the strikeout on some characters is
almost invisible - for example the digit 4 has a horizontal line almost at the
exact position of the strikeout line. So preferably the strikeout line is
automatically moved higher or lower on such characters, or for example in a
line or a word or a section where such characters exist the entire strikeout
line is automatically made lower or higher as needed (for example by 1 or
more pixel lines), and/or for example the strikeout line is automatically made
of a different thickness and/or length and/or angle and/or color (for example
just over the problematic character or over the problematic word or section or
line). Another problem is that for example in Microsoft Word if the cursor
stands on a word that is marked as deleted and the user enters the dictionary,
the word is not seen by the dictionary, and trying to access it in the
dictionary
can also cause the cursor to jump one word backwards. So this is preferably
improved so that the striked-out words behave like normal words on the
dictionary. Another possible variation is that for example when a section (for
example one or more characters or words) is deleted and then reentered next
to the deleted text (for example a deleted digit 9 next to a newly entered
digit
9), preferably the word processor can automatically decide to integrate them
by removing the deleted redundant part, since it adds no information and
looks confusingly like a change where there is really no change, so that for
example "thethe" becomes automatically "the". Another possible variation is

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 32/365
that preferably, when the color of the changes is set to be according to the
user, the word processor allows the user to choose by himself/herself what
color his/her new changes will be (and/or what the color of previous changes
will be), since in the prior art this is determined automatically and
sometimes
for example Word can assign to the user by mistake a color that already
belongs to one set of changes even if these comments were not made by
him/her. Another problem is that for example in Word 2003 the marked
changes are shown in a way that might be confusing or inconvenient for
example to users who are accustomed to the way that the changes are shown
for example in Word 2000 (especially for example the way deleted text is
marked with comments at the side). Although Word 2003 allows the user to
view the changes in the old format by choosing "Normal View" instead of
"Print layout" in the "View" menu, this is problematic because in this mode
the user cannot see the page numbers and in fact cannot see at all the
headline
of each page, and graphic images are not shown. So preferably this is
improved so that the user can choose to view the track changes in the old or
the new format preferably without affecting the way the headlines and page
breaks and/or images are shown, and preferably the user can toggle between
showing the page numbers and headlines or not independently of the format
of the marked changes. Another problem is that in the new marked changed
format if the user for example simply moves the mouse over for example text
which is marked as newly added, many times suddenly a yellow square
appears which repeats the inserted text and gives the time and date that it
was
inserted, but this yellow square many times covers partially the original
text,
which can be very annoying. So preferably this is improved so that the time
and date or at least the date appears only at the side without covering the
original text, and there is no need to repeat it anyway.
3. Preferably the word processing program behaves consistently with cut &
paste where Internet pages are involved, so that for example images are kept
properly as an internal part of the document (preferably including also any
internet links that the images are pointing to), just as if they were included
out of a file for example. For example the way Microsoft Word currently
behaves is that if you save a remote Internet page by cut & paste (such as for
example http://news.google.com) then the images don't show up at all. On
the other hand, if you first save the page locally and then use cut & paste
then
the images do show up, however they are linked to the local directory where
the images were saved, so if the user for example later sends the same Word
file to someone else then the images are again missing when that someone
else opens the file. (This same problem happens also if the page that was
saved locally is properly opened by Word as a local web page and for
example is then saved as a Word document). This is inconsistent with the
behavior of other images, which become an integral part of the file. so this
is
preferably solved as follows: If the links are to local images then preferably
they are automatically inserted into the document file itself, and if they are
based on links to the actual Internet then preferably they are also included
internally in the document and/or they can also be saved as links (preferably
the user is asked which these options he/she prefers).

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 33/365
4. Preferably the word processing program (or other programs that deal with
opening files, such as for example other Office programs) remembers
automatically for example in the "Open file" dialogue box and/or in the
"Save" dialogue box if the user typed last time a filename (or path) in
English or in another language (for example Hebrew) and preferably leaves
this as the default for the next time. This is very important since it can be
very aggravating if the program for example insists each time to start the
dialogue box in Hebrew even though the user wants each time to type a name
in English. Preferably this default is remembered of course also after closing
and re-opening the word processor (for example by saving it automatically in
some preferably small configuration file). Similarly preferably when the user
opens a new file preferably the word processor automatically moves to the
language in which most of the opened file is written (For this preferably the
word processor simply counts for example the number of words or letters in
each language, so that for example if the file is mostly Hebrew preferably
after opening the file the word processor automatically expects to get new
input in Hebrew) or for example in the language which the user used when
working on it the last time. (In the prior art, since Word for example changes
its language within the nonnal text according to the language of the file
name, if the user for example has Hebrew files which have an English file
name, the word processor always enters them waiting initially for input in
English instead of in Hebrew). Preferably the word processor also remembers
similarly according to the last internal search in which language the user
prefers to perform the search within the file. Another possible variation is
that preferably the word processor and/or other applications and/or the
dialogue box for example remembers and displays automatically the last
requested file pattern when the user tries to open a new file (for example
'f\pats\betwin*13*') and for example if the user for example enters new
input - instead of for example pressing enter (to use this pattern) or for
example using the arrows and making changes - then the pattern is removed,
instead of the prior art, where the input line is empty and the user has to
search in a scroll list to find previous search patterns. Another problem is
that
if the user for example wants to save a web page (for example by pressing
Control-S) and tries by mistake to save the same page twice, the user has to
press once "No" to the question of if to overwrite the existing file, and only
then press Escape to close the save-file dialogue box. So this is preferably
improved so that the user can simply press Esc also instead of the "No", and
so the user can for example simply press Esc twice in order to cancel the
save. In addition, if a file with the same name already exists in the target
directory, preferably the browser checks also if it was saved a very short
time
ago (for example within minutes) or for example a few days or weeks ago,
and for example if it is more then a few minutes ago (or for example if it is
not from the same day) preferably checks also to see if the saved file and the
current file are identical (for example by size and/or text comparison and/or
by checking first of all if it was saved from the same URL) and preferably
advises the user automatically if it is the same name but a different file
(and

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 34/365
as explained elsewhere in this application, preferably the browser
automatically includes also the url when saving files, preferably in some
comment, preferably at or near the beginning of the page, which is preferably
ignored by the browser when displaying the page). Another problem is that
for example when the user tries to save a locally on his computer a web page,
for example Opera and MSIE offer the user as the default file name the title
of the web page (i.e. the text which appears at the header section of the web
page between <title>. </title> and typically shows at the blue top header of
the window) - which is good heuristic in general and much better than
Firefox (which offers by default only the local file name at the url, even
without the http address, which is much less informative), but still sometimes
it is not good enough because for example with some news items the title
might be short and/or uninformative while the visible title of the article
itself
(which is visible typically at the top of the main column in the web page
itself) is more informative. So preferably this is improved so that if the
user
tries to save a web page locally, the browser preferably checks also the
visible title and preferably selects for this the largest text preferably at
the top
of the main column (which will typically be marked for example within
<hl>..</hl> or <h2>..</h2>), and preferably compares this with the text of
the above-described text of the <title> section and preferably at least in
cases
where the text of the <title> contains much less words than the visible title,
preferably the browser offers instead as default file name the visible title
or
for example a combination of both titles. Similarly, when saving for example
pdf files the browser preferably offer as default file name the title of the
pdf
itself (which is preferably identified automatically at least in pdf text
files for
example by finding the largest text of more than 2 words which appears
typically at the beginning of the text or near there), since in pdf files
there is
no <title>..<title> text. Another possible variation is that for example the
url
itself is automatically also added for example to the suggested file name (for
example before or after the title), but this is less preferable since it can
become an annoyingly long partially meaningless file name, so preferably the
url is preferably automatically added to the saved file, preferably at the
beginning of the text, for example as a visible text or within an invisible
comment, as explained elsewhere in this application (and if for example the
pdf format does not enable an invisible comment that preferably it is added to
the format). Preferably these rules are applied also for example when sending
a link to a web page by email, since the subject of the email is also
generated
for example by Opera only according to the header title, so the above or
similar rules are preferably also applied for sending a link or web page by
email. Of course similar rules can be applied also to other types of non-html
files that exist or might exist in the future. Similarly, if the user tries to
save
for example a newsgroup message (for example through groups.google.com
or through a newsgroups client) preferably the browser or other newsgroup
client preferably automatically suggests as file name preferably the subject
field of the message (and/or for example preferably automatically adds to the
suggested file name for example also the newsgroup and/or the date and/or
for example the sender's email. In addition, preferably similar rules are

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 35/365
applied for example when saving a bookmark, or for example the main
visible title (or for example even additional titles or even all the titles in
the
text of the web page) is preferably added automatically to the name of the
bookmark preferably always, preferably in addition to the top window title,
which means that preferably the user can search for bookmarks with
additional keywords. As explained above, the visible titles are preferably
identified automatically for example by finding the largest text of more than
2 words which appears typically at the beginning of the text or near there (or
also in other places, if more titles are automatically identified). Larger
text
can be identified for example in html documents for example by finding
header tags (typically marked for example by <hl> and ending with </hl>,
or other numbers after the 'h'), or by finding font size tags which increase
the
size of a certain section (typically for example a sentence) more than the
size
of surrounding text. Another possible variation is that if the user for
example
saves a bookmark of a page and adds something to the suggested name and
then saves the page, or vice versa, or for example adds this to an email
subject and then also saves the page and/or a bookmark, preferably the
browser remembers automatically the corrected name and preferably offers it
automatically also for the saving of the page or for the bookmarking of it or
for the subject of the email. Another possible variation is that if the user
for
example tries to bookmark a url which he/she already bookmarked, for
example a few minutes or seconds ago (which happens many times if the user
is not sure if he/she already pressed for example ~d), preferably the browser
automatically ignores the redundant additional bookmark, at least for
example if it is also the last bookmark which was saved and/or for example
the browser asks the user for confirmation if he/she wants another bookmark
of this url even though he/she already made one). Another possible variation
is that preferably the browser offers as one of the options for example
pressing a special control which at the same time activates both saving a
bookmark and saving the web page itself (which has the further advantage
that if the user for example wants to change something in the suggested name
it is done automatically for both of them at the same time). Another possible
variation is that preferably the browser automatically recommends to the user
to also save a copy of the page itself when the user saves a bookmark - at
least for example when this is a news site, since typically at least some news
sites make a news item inaccessible after a few months or less or for example
put it in an archive and charge money for accessing it later. Preferably the
browser can for example identify the site as an online news source for
example by keeping some automatic intelligent track of how the user got
there - for example if the user got there by clicking on a link in Google News
or by clicking on a link in an email sent by Google News alerts. Another
possible variation is that for example when the user saves the page the
browser for example automatically adds also for example the domain or the
url to the name. Another possible variation is that preferably when the user
sends email (for example by composing a new email message or by sending a
web page as a link), preferably the browser enters automatically by default
the recipient or recipients of the last email which the user sent (since

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 36/365
typically many times the user sends email repeatedly to a small number of
recurring recipients), and for example if the user starts typing something
else
on top of the first recipient (or replaces it by choosing from a pop-up menu
of
fitting addresses that is updated after each letter, as is done for example in
Opera) then preferably this or all of the other automatically pre-assigned
recipients are preferably automatically removed by the browser and so
preferably only the newly entered recipients become relevant. Another
problem is that if for example Word and/or Windows crashes, the next time
that the user opens the word processor he/she is typically given the option to
re-edit an automatically saved copy of the files that were open before the
crash, but if he/she closes them he/she cannot automatically regain access to
them, even if for example he/she later finds out that he/she does indeed need
one or more of them. So preferably the word processor is improved so that
even after the user closes those automatically offered files, he/she can
preferably still activate an option that restores them, preferably even if the
user in the meantime closes the word processor and then later reopens it. For
this preferably the word processor keeps one or more buffers which point to
these automatically saved files and preferably has an indication which groups
of files belong together and/or to which crash event they are related, and
preferably these files are kept in the original directories of the relevant
files
(and/or for example in a special directory) for example at least for a certain
time period and/or for example as long as there is sufficient disk space
and/or
for example until their cumulative total space exceeds some value (and then
preferably the oldest files are deleted if needed). In addition, since many
times the user does not know if he/she needs the automatically offered files,
another possible variation is that preferably the word processor automatically
runs file comparison between each such file and the equivalent last saved
version and preferably shows the user by track changes the differences
between this and the saved version, and preferably if there are no differences
then the word processor automatically does not even offer that file. When
showing automatically the differences, preferably the word processor marks
them differently (for example by a different color even if the 2 files for
example already contain marked changes), and preferably the word processor
automatically indicates the amount of difference (for example in terms of
number of letters and/or words and/or sentences and/or sections changed),
and preferably the word processor can let the user jump automatically to
those sections where the changes are. This is important since in the prior art
most of the times the user assumes that he/she saved whatever was important
and so usually ignores the offered files. Another problem is that when the
user for example wants to open a file or use "save-as" for example in Word
2003 on windows XP it usually takes quite a long time till the dialogue box
shows the available files in the directory (at least if there are many files
and/or subdirectories in the current default directory), even if this is done
for
example just a few seconds after the previous access to the dialogue box. So
this is preferably improved so that this is done preferably instantaneously or
almost instantaneously. Preferably this is done for example by saving
automatically the structure of the current directory in one or more buffer in

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 37/365
memory (and/or even in the disk)(preferably in the same sorted order in
which it is displayed), and preferably the OS automatically updates this
buffer in memory (and/or on the disk) for example even if some other process
which is running at the same time for example changes something in that
directory. Preferably this is done for example automatically for any directory
recently accessed by the dialogue box, and/or for example the word processor
(and/or other applications) can preferably tell the OS already for example
when they are activated to prepare the buffer of their current default
directory
in memory, and/or for example any directories are automatically saved also
in the sorted order (For example the OS keeps for each directory or at least
for many directories automatically also a sorted copy of the file names and/or
sub-directory. This is good anyway since it can serve also as another backup
of the directory table). In addition, preferably any changes in file names
and/or additions and/or deletions of files are preferably automatically
updated
for example in the buffer by simply merging them with the already sorted
directory, instead of re-sorting it again each time. What is even more
annoying in the dialogue box of Word 2003 is that when there are many files
in the directory (for example a few thousands), while it is scanning the
directory, the dialogue box may not even show the user what he/she is typing
in the input line until 5-10 seconds later. So preferably this is improved so
that the dialogue box samples more frequently what the user is typing and
preferably displays it immediately. In addition, preferably the dialogue box
monitors all the time the user's input line and for example if the user starts
typing the path to another directory (for example typing a"\" at the beginning
of the line followed by one or more letters which are different from the
current path) then preferably any scanning or sorting of files in the current
directory is preferably immediately aborted. Another possible variation is
that preferably when the list of recently opened files is displayed for
example
in the Word processor preferably the user can for example mark more than
one such file at the same time and for example automatically open all of the
marked files for example into new windows or new tabs. Another possible
variation is that preferably the word processor or for example the dialogue
box can also keep more than one default directory (for example according to
recency and/or frequency of use) and so for example when the user starts
typing a file name to open preferably the list of most likely paths is
preferably shown near it, for example as a pull down menu which the user
can choose from if he/she wishes. Another problem with the dialogue box is
that for example in Microsoft Word (including Word 2003) when the
dialogue box is open (for example for opening a file or saving a file), if the
user tries to jumps to another open Word window, the box of the other
window on the task bar seems to be activated but in practice the open
dialogue box still remains in front and the user still remains in the original
Word window, which can be both confusing and annoying, especially for
example if the user is trying to look for example at the file name of the
other
window in order to decide what to answer to the dialogue box. So preferably
this is improved so that the dialogue box is linked only to the Window from
which it was opened, so that when the user open a dialogue box from one

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 38/365
Word window preferably the user can jump to other Word windows just like
he/she can jump to windows of applications even while the dialogue box is
still open, and preferably each Word window can have its own dialogue box
open even at the same time independently of other Word windows. Similarly,
for example in the Opera browser, if the dialog box is open the user cannot at
all jump again to the tab from which it was opened or to any other tabs
(eventhough the user apparently can jump to other Opera windows with no
problem) until the dialogue box is closed. So preferably this is improved so
that opening the dialogue box does not prevent the user from retuming to the
original tab from which it was opened or to other tabs, and if the user does
that then preferably the dialogue open box becomes accessible again for
example through a special icon or for example the open dialogue box
becomes accessible though a special handle like the other tabs (so that
preferably when that icon or handle is clicked the user is returned to the
last
tab from which it was opened and the open dialog box shows on top of that
tab) or through reopening the dialogue box. Another problem is that for
example in Word (both Word 2000 and even Word 2003), when the user
searches for a word or string and the string requires jumping to a new page
(i.e. is not within the current text that is already shown on the screen), the
word processor always displays the line with the found text on the top line of
the screen, which is not efficient since it prevents the user from seeing
better
the context, and if the user for example wants to see also for example 2-3
lines before the found string he/she has to scroll backwards. So preferably
this is improved so that the found text is automatically shown by default for
example with at least 1 or more previous lines on the same screen,
and/orpreferably the user can easily change the default position, for example
through an option in the search menu, and/or or for example if the user
scrolls back for example 1 or 2 or more lines after a string is found and
shown, preferably the word processor learns this automatically and adds
automatically 1 or 2 or more previous lines when a string is found and shown
on text that was not previously on the screen. These principles can be used of
course also in other applications, such as for example when searching for
strings for example in documents displayed by the web browser or for
example when searching in pdf documents, etc.
5. Preferably the user can use for example ~z (Control-z) (or other similar
commands) to undo the last changes even after closing and reopening a file,
unlike the prior art, in which this can only be done as long as the file
remains
open. This is preferably done either by saving the undo data in the file
itself,
or (more preferably) by saving it preferably in another local file, so that
the
original file preferably only contains a link to the associated local undo
file
(preferably this saving is done also automatically and not only when the user
saves the file, for example preferably based on time interval and/or on the
amount of changes, so that this can work also after a crash). This has the
advantage that when sending for example the file to someone else the
previous versions and last changes are not transmitted together with that file
to the other person, and yet the original user has flexibility to use the undo

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 39/365
even after the file was already closed, as explained above. In this case
preferably the system indicates to the user when he/she is about to undo
things to a state before the last saved version of the file and preferably
asks
for his/her confirmation for that. (This means of course that this feature can
also be used for example for merely returning after reopen to the last
position
which the user was editing before the file was closed, for example by using
the control for Undo and immediately afterward Redo). Another possible
variation is that for example after a crash or even after normally closing a
file, preferably when reopening it the user is given an option to jump back to
the last position that he/she edited even if Undo at this stage is not
available,
which means that preferably only for example the offset of the last editing
position is preferably automatically saved in this case. Another possible
variation is that for example the word processor or browser or other
application can keep in memory different search strings in different open
windows of the same application (and especially for example if some are for
example in English and some are in for example in Hebrew or some other
language), so that for example the user indicates if he/she prefers sharing
search strings between the open Windows or having one for all. Another
possible variation is that for example the word processor or browser or other
application (for example pdf viewers) can remember the last search strings or
search strings that were used the pervious time one or more windows of the
application were open (for example by saving it in some configuration file or
other file on the disk), and preferably lets the user choose automatically the
last search string or for example chose from a group of recent search strings.
Another possible variation is that for example after the user makes changes in
a certain position in a document which causes jumping there (for example
presses ~Z and then ~Y) preferably he/she can also jump back to the position
he/she was before the jump and/or for example if the user changes something
in a certain area in the document and then jumps to another area and changes
something there and forgets where he was before, preferably he/she can
automatically jump back there without having to undo the last change. This
can be done for example by a command which for example keeps a list of the
most recently areas of the document in which the user was working, so that
for example pressing some key (for example ~j) or choosing the appropriate
option in a menu) causes the user to jump back to the previous area he/she
was working on, and/or for example open a pull down list which shows the
relevant sections for example each in one or more lines and/or show preview
windows and the user can click on the desired choice. Another possible
variation is that when copying text for example by copy & paste into an
empty new file preferably the headers (for example containing author name,
date and page numbers, etc.) are automatically inserted into the new file
and/or for example other file parameters are also copied automatically.
Preferably the headers and/or other parameters are copied automatically but
the user preferably can also choose for example to disable this feature or for
example to disable parts of it. Another possible variation is that for example
copy & paste and/or for example print and/or save are automatically available
from any messages (including for example any application window or area

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 40/365
on the screen) displayed on the screen (This can be accomplished for
example by supplying standard communication tools that support this to
various software, and/or for example the OS or for example some special
application automatically allows the user to copy and paste and/or print for
example from any text that appears on the screen, regardless of which
program it belongs to, preferably by being able to locate any text on the
screen or in any application, and/or for example automatically applying OCR
for example in case the text is graphic).
6. Preferably the word processor program allows the user also options of
searching and/or substituting for example based on style (including of course
for example text color and/or background color and/or underline and/or
boldface and/or italics and/or font type and/or any other feature) and/or
shape
and/or size instead of just character strings, so that for example the user
can
request to find the next underlined word (or words or section), or for example
the next words that are in italics or for example to jump to the next marked
change (when changes were marked for example by using the "track
changes" feature or the file comparison feature, for example any marked
change in general or for example only changes of a specific author or color -
for example in general or in combination with searching for a specific search
string) or for example jump to the next word marked as possible error
(preferably there is for example also a specific control key combination for
each of these options) or for example request to automatically convert all the
words that are in italics to underline or vice versa, or for example to
automatically convert all fonts of size 13 to size 14 for example without
affecting other font sizes, or for example to increase automatically all the
font
sizes by a certain additive or multiplicatory factor (so that for example each
font size will increase by 1 pixel), or for example to convert one or more
word to another word or words and defme that the new word or words will
for example be marked by underline and/or other style and/or shape and/or
size in each occurrence that is thus substituted, etc. (Preferably in order to
enable the user to easily indicate that he/she wants for example to search or
substitute something for example only within the purple marked changes or
for example within a certain date range, preferably the search dialogue box
contains automatically mark-able colors and/or changeable dates preferably
near the Search and Substitute fields and/or the user can for example ad to
the search and/or substitute field one or more control words or characters
which indicate this). (Although when activating the "accept changes option"
Word for example allows the user to jump to the next marked change, this is
much less convenient and for example marks the found change in black
block, and the user has to click on a number of menu options to reach this,
whereas it would be much more convenient if it became a standard available
search option like any other search, so that the user can preferably also
afterwards for example simply jump to the next such text preferably by a 1-
key or 2-key command, for example by simply pressing Ctrl-PgDn, like in
other repeat-searches). Of course preferably this can also be combined, so
that for example after normal search the user can preferably with a single

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 41/365
click or key request also to accept or reject the change, and/or for example
after using the search of the accept/reject window preferably the user can
close the window and continue searching for the next section (for example by
simply pressing Ctrl-PgDn, like in other repeat-searches). Another problem is
that for example when the user searches for a letter preceded by a"~" in
Word (for example AS or AN or ~T), the word processor for some reason is
unable to find them. So preferably this is improved of course so that the word
processor can regard this search string as normal text and find it normally.
Another problem is that for example when added text is marked in track
changes it is always underlined, so the user cannot know when the text or
part of it also contains a normal underline (which will become visible only
after the user accepts the change). So preferably this is improved so that
when text marked with track changes is also underlined, preferably for
example an additional preferably thin underline is added (for example below
or above the original underline of the track changes), and/or for example the
underline becomes in a different color from the text to which it is coupled,
and/or for example there is still only one underline but it becomes for
example thicker and/or for example moves up or down at the area of the
underlined text, or for example becomes with a different pattern (or for
example even becomes split into two very thin lines in the place of the
original line), and/or for example some other visual indication of the
underline is given. Another possible variation is that the fact that the text
is
underlined is shown for example only when the user hovers with the mouse
over the underlined text, but that is less preferable. Another problem is that
when searching for the next change if for example a paragraph number has
changed, word marks in black the entire paragraph even though just the
number has changed, so preferably this is improved so that only the changed
number is marked. In addition, at least when normally searching for text
marked by track changes, preferably the word processor does not mark the
changed section in black (since that makes it much harder to read) but
preferably simply jumps preferably to its beginning, since it is of course
sufficiently marked anyway. Another possible variation (which can be used
for example for any situations where marked sections are used) is that the
user can for example preferably easily define or chose from a number of
available options how marked text for example in general will be shown (for
example with a preferably slightly different background and/or different
foreground color and/or other visually convenient ways instead of inversing
it). Of course, preferably this can also be used in combination with other
search criteria, so that for example the user can preferably search for
example
for a specific text which has one or more such specific attributes, such as
for
example search for all instances of the word "drivers" in which the word is
marked as deleted, or for example in which the word is marked as newly
added, etc. Of course these additional search options can be very easily
supported by the word processor since these text areas have these attributes
marked anyway. Another possible variation is that for example when
searching for word combinations the word processor preferably has an option
of automatically ignoring redundant spaces (for example if there are 2 or

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 42/365
more spaces between two words instead of one space for example by user's
choice or by default) and/or for example offering automatically also results
with a dash between 2 words instead of a space or vice versa, and/or for
example offering also results where for example two adjacent search words
appear as a single word, and/or for example offering automatically also
results with another order of the search words, and/or offering automatically
also "Near" search, as explained elsewhere in this application. Preferably the
word processor by default offers this option automatically unless the user
sets
it to look only for the exact amount of spaces between words. Another .
problem is that when the user for example tries to make a repeated change in
Word but confirm it at each step (instead of just global change), the position
of the search-and-replace dialogue box many times changes (in cases where
otherwise it would cover the relevant text), which forces the user to move the
mouse to the new position instead of just keeping his/her hand at the same
place and just pressing the Replace or Find-next buttons. So preferably
instead, either the position of the search-and-replace dialogue box is always
kept constant and the text itself is automatically always scrolled so that the
relevant part is visible, or if the position of the search-and-replace
dialogue
box does move, preferably the mouse cursor automatically jumps with it, so
the user does not have to move the mouse to correct for the change in the
position of the search-and-replace dialogue box. Another problem with the
search and replace dialogue box is that even for example in Word 2003 the
text length that can be entered into this dialogue box is limited to about 3%2
lines. So preferably this is improved so that there is preferably no such
limitation or at least the limit is much larger, such as for example whole
paragraphs or even a length of a full page or even multiple pages. Another
possible variation is that the user can mark one or more areas in the file and
activate the "accept changes" command and then the "accept changes" (for
example accept ALL changes) or "reject changes" can be automatically done
only in the marked areas (preferably with or without verify). Another
possible variation is that when there are for example different sets of marked
changes (for example according to the time or file version in which the set of
changes was made, and/or according to the source of the changes), preferably
the user can for example instruct the word processor to automatically accept
all the changes but only for example from a certain date or dates or a certain
source or sources. For this preferably the word processor automatically
shows the user a menu of the available options and allows him/her to choose
for example by marking one or more of the desired options. Another possible
variation is to include in the search also logical paragraph numbering, so
that
the user can for example search for a clause that starts with an automatically
numbered letter or number (for example "a. " or "35. "). Another possible
variation is to allow the user for example to automatically reformat all the
logically numbered paragraphs and/or for example to use a certain constant
indentation factor without having to mark them, so that for example in patent
claims (numbered automatically with numbers, in which some of the claims
contain for example sub-clauses marked automatically by letters), the user
does not have to mark and move the sub-clauses for each claim separately (as

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 43/365
he would have to do in the prior art, since marking for example all the claims
together would change both the clauses and the sub clauses to the same
indentation) but can for example change some global definition that
automatically affects each type of automatically numbered element or for
example affects all of them only in the marked section (for example all the
claims) - for example a definition for all the 1" level clauses, a definition
for
all the 2 d degree sub-clauses, etc., or for example the user can define
general
indentation rules, so that for example for each sub-level the indentation is
defined for example as 3 more characters to the right, than the previous
level,
etc. Similarly, preferably the user can also preferably easily define other
rules
which apply to all similar structures (preferably by defining an example or
choosing for example from general rules), so that for example the user can
easily define that in structures such as patent claims each sub-clause within
a
claim will automatically end for example with a ";" and only the last sub-
clause will automatically end with a".", etc. Similarly, when the user
changes for example the left margin of the document (in left-to-right
languages, and/or for example the right margin in right-to left languages),
for
example for the entire document or for one or more marked sections by
moving the border on the ruler. preferably the entire structure of the
paragraphs is moved right or left without changes in the structure itself (so
that for example the same indentations remain for the beginning of
paragraphs and/or for clauses and/or automatically numbered clauses, etc.).
This is better than the prior art, in which changing the margin this way for
example in Word causes the internal relations within the structures to change,
since in most case when the user wants smaller or larger margins he/she does
not intend to change any structures. On the other hand, if this is enabled,
preferably there remains also an additional preferably separate command
which the user can use in the unlikely case/that he/she indeed does wants for
example to collapse all the structures within the marked area to start at
exactly the same place, thus changing the internal relations. Actually Word
does allow this but only from the "Page setup" submenu of the "File" menu
(which is less intuitive and takes time to discover), but it is page oriented,
so
that if the user for example changes this way the left margin of a selected
section, the selected section is forced to become alone on a separate page,
which can be very annoying if the user only wanted to change its margin
without moving it to a separate page, broken from the text before and after
it.
So preferably this becomes available directly also for example when merely
marking a section and moving the left edge of it (for example in English or
for right for example in Hebrew) on the ruler, and preferably no page breaks
are added there unless the user requests them explicitly. This has the
additional advantage that the margins can be moved directly visually and
intuitively instead of specifying a distance in numbers. Preferably for
example the normal triangle on the ruler keeps, at least by default, the
internal indentation when moving the margin, and for example the user can
change this default or for example an additional separate marker can be
dragged in order to change the margin in a way that destroys the original
internal indentations, or for example when dragging the left triangle in

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 44/365
English (or right one in Hebrew, etc.) an automatic submenu preferably
appears which asks the user if the keep the internal indentation relations
within the dragged section or destroy it. Another preferable variation is that
the user can for example mark one or more sections (for example with the
mouse) and then for example toggle automatically between modes so that for
example automatic numbers and/or letters can become manual letters and/or
numbers and vice versa (for example in the CLAIMS section of a patent).
This is much better than the prior art, where the user has to manually convert
each number or letter one at a time from automatic mode to real numbers and
letters one after the other, or vice versa. The word processor can do this
very
easily for example by simply changing the attributes of the relevant text and
adding the appropriate characters or vice versa. (Of course, a conversion
from automatic to real numbers and/or letters can be done for example by
saving the Word document as a text file, but that is much less convenient and
has other disadvantages because it entails losing other format features).
7. In the prior art Microsoft Word, deleting the "Enter" between two
paragraphs
can cause for example the first paragraph to change automatically its font
(for
example become bigger or smaller or a different font or in a different style)
for example according to some qualities of the empty line that was deleted
between the paragraphs or some other reason. Since obviously at least in
most cases the user does not intend to create such changes by merely deleting
an empty line between two paragraphs, preferably no such changes are
created automatically. Preferably fonts and/or style are automatically
changed for example only in the 2nd paragraphs after connecting it with the
1 s' paragraph (and in this case preferably to become like in the first
paragraph
and not like some empty line in between them), and even that is preferably
not done automatically but only if the user allows this by default or requests
this specifically for example by pressing some key or some button. A similar
problem is that for example in Word 2000 and even in Word 2007 beta 2,
many times when the user presses "Enter" and continues to type, the font
suddenly changes to some other default instead of continuing with the same
font and style and size of the previous paragraph, and the only way the user
can overcome this is by adding at least one character in front of the cursor
before pressing the "Enter". So this is preferably improved so that the font
and/or style do not change when pressing "enter" or at least not if the user
continues to type at that position immediately or within short time period,
unless the user requests this explicitly.
8. Another problem with word processors such as for example Word, is that
URL links (typically Internet links) (for example
htta://www.opnix.com/products services/orbit1000/Middle Mile Mayhem
df are not treated properly when paragraphs are automatically aligned, so
that for example a URL link that is too long can jump to the next line and
cause the words in the previous line to become with too many spaces
between them (as it happens for example with the above exemplary link), and
if the user manually fixes this for example by breaking the URL for example
at the position of one of the slashes, this will cause the link not to work

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 45/365
properly, and also, if the paragraph is then changed again, the broken part of
the link might come back to the previous line, thus causing the link to appear
as if there is a space between the two parts. On the other hand, if the link
is
too long to fit even an independent line, it is currently broken by Word at
the
last character that fits the line (as happens in the above exemplary link),
instead of breaking it more smartly, preferably according to the closest
slash.
So preferably this is improved, so that links are preferably automatically and
dynamically broken and restored between the lines as the paragraph changes,
preferably according to slashes (and/or for example sometimes underlines
and/or dots and/or question marks and/or other special characters), and
preferably when the user presses the link, it is treated as one consecutive
link
regardless of this automatically changing break between the lines. Similarly,
if the link for example occupies almost all of the line (so there is no room
for
adding any additional word), and the paragraph is block-aligned (i.e. made
straight on both sides), since the url typically does not contain spaces,
preferably the alignment for example to the right (for example in an English
paragraph) (or for example to the left in right-to-left languages) is
preferably
done in this case by adding automatically for example micro-spaces between
letters (an/or for example increasing the length of underlines between words
when such underlines exist in the url). Another very serious problem with
URL links is that for example if the user copies and pastes a new http link
over a previous http link for example in Word, the address appears as if it
has
been changed, but when the user presses the link he actually gets the original
link. So preferably the word processor (or other application) automatically
replaces also the intemal link to automatically comply with the visible link,
or for example saves only the visible link and uses that information when the
user tries to access the link, so there is no additional internal link which
can
become different from the visible link. These rules are preferably similarly
kept for example also in pdf files, because in the prior art for example if
this
bug occurs in Word and the file is later saved as pdf, the misleading links
carry over also to the pdf file.
9. Another problem is that in large files if the user wants to mark large
areas
with the mouse (for example from a certain point till the end of the file),
he/she must continue to hold the mouse pointer near the bottom of the page
with the mouse key pressed, which can be quite annoying. So preferably for
example while the mouse key is still pressed (or for example even if the user
lets go of it but presses an appropriate command), the user can for example
use other location commands, such as for example Control-PageDown or
Control-End or for example End or preferably other single key, or search
commands, and then preferably the entire area till the next location becomes
marked, instead of having to wait for the page to scroll. Another possible
variation is that the user can for example simply jump between two places
and then press some key (or for example click one of the mouse buttons)
which marks the entire block between them, or for example mark one place
(for example with the mouse or by pressing some key) and then jump to
another place and when reaching the desired destination press some key (or

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 46/365
for example a mouse button) and the entire area between the two marks
becomes marked. Another possible variation is that for example pressing
some key can significantly increase the speed of the scrolling or for example
moving the mouse further to a more extreme position significantly increases
the speed of the scrolling (preferably this is linear, so that the speed
changes
gradually according to how extreme the position of the mouse is, but it can
also be for example exponential so that for example going the extreme
bottom position will almost instantly cause the position to jump to the end of
the file). Another possible variation is that if the user already marked a
section for example with the mouse and then for example uses the mouse to
click on something else and then wants to go back and for example increase
or decrease the marked area, he/she can still use the mouse and/or other keys
for example to go back and extend or reduce the section without having to
start marking again from the beginning. This can be also useful for example
if the user first uses for example ~a to mark the entire file and then for
example uses the mouse and/or other keys to reduce the marked section or
remove parts of it. Another possible variation is that the user can mark more
than one area with the mouse at the same time, for example by pressing some
key that tells the application not to remove the mark from the previous
marked area or areas. Preferably these options are done for example by
pressing some key which tells the word processor (or other application) to
keep the previously marked area and add to it and/or for example to
automatically restore it if the user clicked on something that already created
a
new marked area instead of the previous marked area, and then the user can
for example increase the marked area or reduce it or for example mark one or
more additional sections while the original marked section remains marked.
Of course these and/other features can be used also with other types of files
and not just in word processing programs, such as for example with Internet
browsers, etc.
10. Another important improvement is that preferably the user can for example
choose a specific font color and/or for example specific font attribute (for
example underline) which preferably is kept automatically until changed
again, so that this text preferably appears wherever the user adds it to
previous text, regardless of the color or other attributes of the section of
the
previous text in which the new text in inserted. This is very convenient for
example for keeping track of additions (for example when the user does not
want to activate the automatic track changes), or for example for adding
comments for example in another color. This is in contrast to the prior art,
where for example in Word such options must be chosen again in each
section, otherwise when the user starts to add text at a different place it
automatically assumes the color and attributes of the surrounding text.
11. Another improvement is that preferably the word processor can allow the
user to easily define page numbering that starts from a certain value other
than 1, for example since page 50 (or any other desired number) since for
example sometimes the user might want to print pages that will be attached

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 47/365
after other already printed pages as if they are part of the same file. This
can
be defined for example by letting the user use a formula, so that for example
if the current page number is marked for example in Word as "#", the user
can preferably specify for example "#+49", so the page numbering will start
for example from 50 instead of 1, and then preferably for example the total
number of pages is automatically updated accordingly even if the user does
not enter the formula there too. Another possible variation is that for
example
when the user enters for example in the top page title for example the # mark,
which in Microsoft Word means automatic page number, the system
automatically shows for example a scroll window near it with the default of 1
and the user can instantly for example increase the number by scrolling the
window or typing a different number there. (Although for example Word
allows the user to cause the page numbering to start at a different number, it
is done in a much less intuitive way since the user has to go to the
"addition"
menu, then choose "page numbers", then go to "Pattern" and then indicate a
page number to start from). Another possible variation is that the user can
for
example change the rules of page numbering in a way that affects for
example only the current page or for example a group of marked pages or for
example from the current page until another such change is defined, so that
for example the user can define the last pages in a parent which contain
figures to be automatically renumbered starting from there as 1 and/or for
example change other things in the header of these pages without affecting
the headers of the rest of the pages. For this preferably the word processor
keeps in the saved file information for multiple headers, preferably each set
tagged with a beginning page and end page, for example.
12. Another problem is that for example Word sometimes decides to move
paragraphs to the next page without any apparent reason, thus leaving
sometimes a large empty space in the previous pages. So preferably the user
can for example click in any such case for example on the empty space or on
the moved paragraph and/or for example enter a command that tells the word
processor that the user does not want such empty spaces, and/or for example
the user can activate a command that automatically fixes all such unnecessary
empty spaces globally and/or prevents them from being created.
13. Another problem is that in Word for example when switching between the
Hebrew dictionary to the English dictionary or vice versa, the language in the
small window where the checked word is entered does not automatically
change in accordance, so many times the user has also to press Alt-Shift in
order to switch to the desired language in the small window, which can be
very aggravating if the user starts typing and then sees that the language is
the wrong language. So preferably this is improved so that switching the
dictionary also automatically switches the language correspondingly in the
small window or area where the word has to be entered, so that for example
if the user switches to Hebrew/English dictionary then the language in the
small window preferably automatically becomes Hebrew, and when the user
switches to English/Hebrew the language in the small window or area where

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 48/365
the word has to be entered preferably automatically becomes English.
Another preferable improvement is that when switching language, if the user
has already entered a word in the translation window, preferably the word is
not automatically erased when the user switches the language. Similarly, if
the user for example switches the language in the small window, preferably
this can automatically switch the direction of the dictionary accordingly, so
that for example if the user types or paste s a Hebrew
word the dictionary preferably automatically becomes Hebrew->English, and
vice versa. Another possible improvement is that preferably when using the
dictionary the user can use also forward and/or backwards movement (for
example by clicking on an appropriate icon or a keyboard key), so that he can
go back or forward to previously checked words (in a way similar to
browsing a directory or to browsing the Internet). Of course this preferably
done with any relevant languages. Another preferable improvement is that
the dictionary preferably allows the user to use back arrows in order to go
back to previous points in the dictionary for example if the user clicks on
various words in a sequence. Another preferable improvement is that when
the thesaurus is used preferably the dictionary shows near each newly found
word of the thesaurus also its translation to the other language (for example
Hebrew) and/or a short description of its more precise meaning in a few
words, for example within brackets next to the word, and for example
clicking on any of the words or explanation words or the translated words
(for example in Hebrew) preferably activates the thesaurus and/or the
dictionary again recursively on the clicked word. In addition, preferably the
thesaurus and/or the dictionary automatically takes into consideration the
context in which the word exists in the file (for example the next few words
and/or the sentence and/or the general subject) so that preferably when
displaying semantic trees or groups of semantic branches preferably the
groups or branches are pre-sorted according to the most likely meaning when
taking said context into consideration and/or for exainple only the most
likely
meaning branch is shown. Similarly, preferably the automatic typing-error-
correction system preferably also takes into account also the context and so
preferably chooses the word most likely according to context when there is
more than one reasonable correction (and/or for example in cases the system
is not sure it preferably shows the user that there is more than one likely
correct word and asks him/her to choose the correct one for example by
scrolling to the preferred one), since in the prior art many times the
automatic
error correcting system for example in Word corrects a word which contains
a spelling error into a different word which the user didn't mean at all and
then if the user doesn't notice it the sentence might be perhaps even
dangerously wrong. (The context can be for exarnple based on pre-gathered
automatic statistics for example from Internet knowledge bases and/or for
example specifically from the user's files and/or for example from the
specific file or similar files (for example those that have a similar name or
were part of the same project, which preferably the word processors knows
automatically by keeping automatically a list of file renaming history), so
that for example if the word "windows" appears a lot in the same file or for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 49/365
example in the series of files from which the current file evolved, the word
processor preferably gives wrong words that could be "windows" a higher
chance for being corrected into this, and so for example the frequency of the
word itself in the user's document or relevant documents and/or the chance
of it occurring with the actual next word or words (for example before and/or
after it) is preferably also taken into account. Another possible variation is
that for exainple the automatic logging of the evolution of the file name can
also be used for example to automatically increment the numbers and/or
letters which the user has been incrementing, so that for example the save
menu contains an option (which can be called for example "Save next"),
which automatically increments the correct element and thus saves the new
version in a new file (this is no problem since the automatic logging
preferably automatically indicates to the word processor for example which
number and/or letter the user has been incrementing in each subsequent
saving of the file), and/or for example the user can mark the relevant area in
the file name and for example right click with the mouse in order to choose a
menu option that defines this as the area that should be incremented )
automatically. Another possible variation is that similarly for example the
Internet browser can create an automatic increment of one or more numbers
or letters in a url (so that the user can preferably move to the next page
preferably with a single click instead of for example having to manually
increase the number). Preferably the browser can for example automatically
learn from the user after a few manual increments what area needs to be
incremented and preferably for example automatically adds a "next page"
(and/or also a "previous page") icon in this case (or for example these icons
are there before but start working for that page only after the relevant area
in
the url has been automatically learned or has been defined by the user), or
for
example the user can explicitly for example mark the relevant area and for
example right click with the mouse in order to choose a menu option that
defines this as the area that should be incremented (or decremented)
automatically. Another problem is that for example Word does not allow an
open file to be backed up for example by pkzip, and typically also keeps
preventing this even if the file is saved for example with incremented
numbers if is the first file which was opened. So preferably this is improved
so that Word (or other word processor) does not block programs from
accessing open Word files if they only open the file for reading, and
preferably after the file is saved with a new name the original file with
which
Word was opened is released. Another possible variation is that preferably
the word processor enables the user also an option for example to save a
currently open file under a new name without closing the original window (or
tab - if tabs are also supported in the word processor, as described elsewhere
in this application) preferably like opening a link into a new page or tab in
a
browser (for example by adding this additional save option to the save file
menu or for example by adding it as an option is the Save file dialogue box).
(In the current prior art for example in Word the user would have to save the
file under the new name in the same window and would have to copy the
original file name before it and then user again Open file and past the name),

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 50/365
Another problem is that for example in Word changing the language in the
text (for example from English to Hebrew or vice versa) can affect also the
text when the user saves or opens a file name, so preferably this is made
independent, since the user might for example want to type in Hebrew but
prefer for example the file name to remain in English all the time. Similarly
preferably changing the language in the dictionary does not change the
language in the text of the document or vice versa. This is very important,
since for example even in Word 2003, if the user is working for example on
an English document and types for example a word in Hebrew in the
dictionary in order to find the English word for it, then when continuing to
type on the document itself the new text is typed in Hebrew until the user
changes it back again, which is certainly not what the user intended. Another
possible variation is that preferably the user can copy words from the
dictionary into the main text also for example by a single click instead of
having to use cut & paste - for example by simply clicking on the word
preferably the word is copied preferably to the current position of the
cursor.
Another problem for example in bilingual Word is that for example numbers
or brackets can exist in either of the 2 languages, and for example many
times Word breaks brackets or numbers that are attached to words in a way
that the user did not intended - such as for example putting an opening
bracket alone at the end of the line or braking between the word and the
number even if they are attached without a space between them. So this is
preferably improved so that these things are automatically avoided regardless
of the language in which the digits or brackets are. Another problem is that
for example in Word 2000 if the user tries to translate a world in plural the
system shows that it exists but does not show the translation until the user
converts it to single, and in word 2003 in this case the single form is
indicated and the translation is in single. So preferably this is improved so
that if the word is in plural the translation can preferably show the
translated
word also in the plural (in addition to or instead of showing it in the single
form, but preferably in addition). Similarly, preferably if the word is for
example a verb in the present form (ending with "ing") preferably the Word
processor's translation or dictionary can show also the translated form also
in
the present form in addition to or instead of showing it in the normal form,
but preferably in addition). Another possible variation is that the user can
for
example activate a command which automatically indicates all the words in
which spelling errors were previously automatically corrected by the word
processor, so that the user can check specifically these words to see if there
were any such errors of changing the word to something that was not
indented by the user. (This means of course that preferably the word
processor (or other application) preferably keeps for each word in the same
file or in a separate file a tag that says if it was automatically corrected
and
preferably also what it was before the correction). Another problem is that
for
example in Word if the user for example inserts by mistake a digit in the
middle of a word (for example "t6hat" or "smart homle") the error correction
function ignores this and does not mark this as a possible error. So
preferably
this is corrected so that for example at least if there is a digit in the
middle of

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 51/365
a word (and/or for example also if it is attached at the beginning of the word
and/or for example also if it is attached at the end of the word) it is
preferably
at least marked as a possible error. Actually it turns out even word 2000
allows the user for example to change the default so that words which contain
digits will not be ignored, but there is no differentiation according to the
position of the digit or digits within the word, so preferably this is
improved
so that the user can define separately if to report an error for example for
cases where the digit or digits are at the beginning of the word before the
letters, cases where the digits or digits are in the middle of the word, or
cases
where the digit or digits are at the end of the word after all the letters.
Another possible variation is that preferably error checking and/or automatic
correction is also for example enabled by default when the user is writing an
email message for example in the email client or in the browser, preferably
for example by including an error checking engine in the browser and/or the
email client or for example the browser or email client can be configured to
communicate for example with the error checker of the word processor.
Similarly preferably search engines (for example Google) preferably
automatically offer in such cases the correct word or words without the digit,
for example "did you mean 'smart home'?" Another preferable improvement
for example in words processors, and especially for example in editors that
are used for editing software programs (such as for example in integrated
visual compiler environments), is that preferably the editor can mark
automatically matching pairs of brackets in a way that the user can easily see
the matching pairs - preferably by automatically showing each pair in a
different color, and/or for example an unmatched bracket is immediately
marked as an error. Another possible variation is to show them for example,
instead or in addition, in a different style or for example in a somewhat
different height, however changing the color is more preferable since it is
more conspicuous and much more variations are available. Another possible
improvement is that when the user wants for example to correct
intermittently two (or more) sections in the same file (for example the claims
and the relevant part of the specification in a patent application),
preferably
the user can for example press a key or combination of keys which causes the
position in the word processor to jump automatically between the various last
edited sections. This is preferably done by the Word processor preferably
automatically saving a buffer of all the last separate positions that the
cursor
was last on (for example if the distance between them is more than N
characters), and then pressing for example some key or key combination
moves the position accordingly (This can be done for example automatically
between the last two places, and if the user wants more jumps backwards
preferably a different command is used). Another preferable variation is that
preferably the automatic error checking of the word processor includes also
at least some statistical and/or semantic checking of unreasonable words or
word combinations that are probably a typing error even if there is such a
word and/or eventhough it is grammatically possible, such as for example if
the user writes by mistake "any pother way" instead of "any other way".
Since the word "pother" does exist and the combination is apparently

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 52/365
grammatically possible, Word does not indicate any error, eventhough any
normal human reader would immediately see that it is a mistake and the
correct word is "other". In order to accomplish this preferably the word
processor uses at least some taxonomy of semantic knowledge, and/or at least
the word processor preferably has a preferably large database of typical
texts,
for example from newspapers and/or books and/or web pages, and/or
preferably all single words and/or up to a few word combinations are indexed
according to how many times they appear (preferably based on previous
preferably automatic statistical analyses of such texts), so that preferably
the
word processor can instantly check for example for highly irregular
combinations and/or at least run the check for example when a rare word is
involved, etc., and preferably the word processor issues the error message
especially if there is clearly a very similar word combination that is much
more common (such as for example if the user typed by mistake "the if'
instead of "then if', or "than preferably" instead of "then preferably", or
"fir
example" or "foe example" or "or example" instead of "for example" (which
can preferably be marked as possible error also for example because it is two
consecutive nouns), or for example "to choose" instead of "to chose" (which
can preferably also be identified directly as a grammatical error of wrong
verb usage), or for example "if course" instead of "of course", or for example
"and or" instead of and/or" or for example "Anther possible variation"
instead of "Another possible variation" (which is clearly wrong also because
a noun should not be before the word "possible"), or for example "id that"
instead of "is that", or for example typed "more then" instead of "more than"
or "better than" instead of "better than" for example without a "," or "."
between the words - since that will almost always be an error, or for example
types "be replaces" instead of "be replaced" or for example similarly with
any other verb in this combination), or for example "It very hard" instead of
"It is very hard" (again this can preferably be easily identified for example
based on the fact that these are two consecutive nouns). Preferably the Word
processor can also for example automatically update its statistics for
exainple
once in a while from one or more online web sites which for example
automatically analyze texts (for example from newspapers and/or books
and/or web pages, as explained above) and preferably enable downloading
directly the relevant statistics of word frequencies, word combination
frequencies, etc., as explained above. Another possible variation is that the
word processor preferably uses also some additional preferably easy
heuristics for catching grammatical errors, such as for example marking
automatically as suspect cases where for example two verbs or two nouns
appear one after the other, for example without a',' or '-' or '/' or other
punctuation marks between them, which is usually a very good heuristic
(which can also catch for example errors like "he book" instead of "the
book", etc.), or for example the combination of words like "the" followed
immediately by a verb instead of noun or followed by a conditional like 'if,
etc. Although there are some exceptions they are relatively rare, so this can
give very good results without having to really parse the grammatical
structure (much more real positives than false positives)(preferably the word

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 53/365
processor marks these suspect grammatical errors for example less
conspicuously than word that don't exist in the dictionary). This is also very
easy to apply since typically the word processor, such as for example Word,
already has a built-in dictionary, so looking up to see for each word if it is
for
example a verb or a noun or other part of the sentence can be done almost
instantly, for example by using a hashed look-up table. In cases of words that
can be both a verb or a noun the word processor can for example avoid the
marking as suspect error or for example take into account the likelihood of
the combination according to the known statistics for example as explained
above. Another possible variation is that for example the word processor can
automatically correct for example all the cases of a comma appearing after a
space, coupled to the next word, into appearing coupled to the previous word
and followed by a space (and vice versa for example in Hebrew or other right
to left languages), or at least mark these places as suspect errors. Another
possible variation is that for example the word processor can mark as suspect
errors for example cases where a verb ends with an 's' after a noun in plural
or without an 's' after a noun in single (which is again very easy since the
word processor can easily know if the noun is plural or single according to
the built-in dictionary). Another possible variation is that if the word
processor is not sure enough for making an automatic correction for an error
the user can for example press a control key or choose a menu option which
automatically lists more than one possible corrections for the same word for
example as {wordl/word2/word3} and then preferably the user can simply
click on the correct option and it instantly replaces the word. Preferably the
word processor also takes into account for example the laynut of the typical
keyboard (so that for example an error of adding a'p' before the 'o' or for
example substituting 'o' with a'p' or vice versa is much more likely than for
example making a substitution of far letters) and/or also takes into account
acoustic information (for example words that sound alike, etc.). Another
possible variation is that the word processor for example learns from
recording the user's own behavior when such errors are made and then
corrected by user (especially for example if this occurs repeatedly), and then
preferably warns the user automatically when such errors are made again
and/or for example automatically corrects it the way the user has typically
corrected it before. Of course various combinations of the above and other
variations can also be used.
14. Another problem is that when opening files for example with the windows
dialogue box (for example from Word) the dialogue box does not display the
full file name if the file name is too long. In windows 98 the problem was
even worse since the dialogue box cannot even be enlarged at all, whereas in
Windows XP at least the user can enlarge the window of the dialogue box by
dragging for example its bottom right corner with the mouse. However, this
is still not convenient, since the system allows for example to define file
names of length up to 256 characters, but the dialogue box by default will
typically display only up to a little more than 80 characters. So preferably
this is improved so that the dialogue box preferably automatically adjusts its

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 54/365
size to a size that is sufficiently large to display the full file name if one
or
more of the file names that are displayed is longer than the default, and/or
for
example a slide bar is added (for example at the bottom) that allows the user
to scroll and see the full name (in other words preferably the dialogue box
automatically finds the largest name and adjusts its size according to it).
However, sometimes the name is even too long to fit the line even when the
box is in full size and/or for example too long to fit the top line of the
Word
Window (and/or in other applications), and/or for example it shows truncated
in the yellow explanation box that Word shows when holding the mouse over
the file name, so preferably is such cases the filename is preferably
automatically for example wrapped into two or more lines and/or for example
the font that displays the file name is automatically reduced in size for
example by making it smaller and/or thinner, but more preferably by making
it only thinner, and/or for example the user can click or otherwise jump to
the
end of the line and see the rest of the file name and/or for example cause the
filename to scroll for example sideways for example my moving a bar. In the
prior art the slide bar is enabled only if more file names are displayed
sideways, but moving the slide bar jumps one column to the side without
letting the user see the rest of the name if the name is too long. The
automatic
resizing can be done for example also in other types of Windows, so that for
example when sending email with attachments for example in Netscape
preferably the size of the right internal window that shows the attached file
names preferably automatically increases if the file name is longer, at least
for example if there is sufficient room, since typically the email addresses
on
the left internal window are not very long. Another problem is that if for
example one file name is very long the dialogue box shows a large gap
between the columns of file names even if for example between two columns
which don't contain such a long file name. So preferably this is improved so
that the distance between each two columns is for example preferably just a
little more than the length of the largest file name in the left column.
Another
possible variation is that for example even in the dialogue box file names
that
are too long can for example be automatically wrapped into more than one
line instead of further increasing the distance between the columns beyond a
certain threshold and/or for example the fonts of the long name can for
example be automatically reduced in size or at least only made thinner,
preferably without affecting the rest of the display (preferably for example
the dialogue box decides about this automatically on a need basis). Another
possible variation is that for example the dialogue box can automatically
display also the date of last modification for each file name (for example
near
each file name automatically, or for example at least if the user hovers the
mouse over the file name), and/or the user can for example request to sort the
dialogue box display by the last modification date instead of alphabetically.
Another possible variation is that for example before sending the email with
attachments the user can for example easily change the order within the list
of attachments, for example by pointing the mouse to one of the attachments
and dragging it to a different position in the list. Another preferable
improvement is that for example when deleting a file in the dialogue box that

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 55/365
displays existing file names, preferably by default immediately after the
deletion the display is updated so that the list of files is displayed more or
less in the same position (preferably the display up to the deleted file
remains
the same, and is updated only from the deleted position onwards), since
typically the user will want to continue at the same place after the deletion.
In
the prior art deleting a file in the dialogue box causes the display to jump
back automatically to the beginning of the list. Another problem is that the
dialogue box that allows the user to choose directories and files and the
explorer Window show file extensions only when the file type is unknown,
so for example if the same file name exists both as an rtf file and as a Word
doc file the user has no indication which is which (unless he/she tells for
example Word to show only files of one of the types). So preferably this is
improved so that in the dialogue box and/or in the explorer Window or for
example in the automatic list of recent files which can be reopened the
extension is shown even when the associated application is known and/or for
example if the user opens it for example with Word (or with some other
application), then preferably the extension is displayed for example on the
top bar of the window, so that the user knows which file he/she opened and
so that if for example he/she opens for example both a doc and an rtf version
of the same file he/she knows which is which. Another problem is that when
the user searches for a specific file or file pattern (for example a file name
with a wild card) the explorer window or dialog box shows first directory
names and only afterwards files, which can be very inconvenient if there is a
large number of sub-directories in the directory where the relevant files are.
So preferably in the windows explorer and/or dialog box and/or in similar
utilities either the files are displayed by default before the directory names
or
for example the user can easily indicate which of these orders he/she prefers.
Another possible variation is that for example instead of or in addition to
the
icon that shows the associated application (for example Word) the window
can show also an Icon that represents the general type of the file (for
example
music file, video file, word processing file, C program file, HTML file, etc.)
regardless of the associated application. Another possible variation is that
for
example even when an interrrnal Window of a program is in front of a
background window of that program and does not allow accessing the
background window for example until the front window is closed, preferably
the OS automatically allows the user at least to move the previous window
and/or perform at least other acts that preferably do not change the way the
software behaves but allows the user at least to control the view of the
background window.
15. Another problem for example in Word is that drawing tools are very limited
so that for example various lines can only be positioned at certain minimal
jumps of a few mm distance from each other instead of at any desired pixel
positions. This creates unnecessary limitations on the available resolution
and
other problems. So preferably this limitation is removed, so that the user can
preferably position any object on any position where a valid pixel exists (an
object can also be for example a line within a more complex object - for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 56/365
example a rectangle, so this can mean of course not only moving the objects
but also for example moving parts of them, i.e. preferably the user can also
change their size in pixel-level resolution). Similarly there is a problem
that
the user cannot for example simply mark one or more images for example
with the mouse, for example in order to delete it or cut and paste it
elsewhere.
In the prior art Word the marking usually works only on a group of images
depending for example if there is a text before and after them that can be
included in the marked block, and so that normally the user has to mark
manually multiple elements in an image in order to copy or move it or has to
manually group the image. So preferably this is improved so that the user can
simply mark any area in an image or part of it (for example even according to
pixel lines and/or columns, or for example by marking a rectangle or other
shapes around whatever part he/she wishes like in paint programs) and then
for example delete it or copy it or move it. This is very easy to do since the
word processor (or other application) knows which part of the image or
images is displayed within the marked area. Another possible variation is that
for example after the user marks such a section he/she can for example not
only cut & paste and/or copy or delete the marked section but also for
example rotate it so that preferably all the elements in the marked section
are
rotated in synchrony, etc. (for example in any desired amount of degrees,
etc.) and/or for example move it without having to tediously mark all the
elements one after the other, and/or preferably the user can also for example
reduce or enlarge the image for example by pulling its corner (for example
like any image from a file) while preferably keeping the proportions (this
should be no problem at all since for example images composed of lines or
dots or squares or other automatic shapes are vectorial anyway and so are
true type fonts, so the word processor can for example automatically increase
or reduced the font size in the same proportion that the other vectorial
elements are increased or reduced). The application can do this for example
by vector graphics manipulations or by computing the changes on a pixel
basis. Another possible variation is that for example if the user is marking
multiple elements in the image and the for example clicks on the next
element without keeping the finger on the shift key (thus losing all the
previous marks), preferably by pressing for example AZ or some other control
the user can undo the last click, thus restoring all the previous marks.
(Preferably this undo feature for restoring the marking can be used for
example also in other similar situations, such as for example when marking
multiple files in the explorer and/or for example when marking multiple
items in a list in some browser form, etc). Another possible variation is that
preferably the user can include for example also in Word documents and/or
for example pdf documents also instead of still images video files (such as
for example ".avi" files, ".flv" files, ".wmv" files, etc.), so that
preferably the
positioning of the "image" is done similarly to the way a normal still image
is
positioned, but preferably when the user is on the page with the video image
then preferably the video starts playing automatically (for example until the
user clicks on it to stop) or for example the image is marked as video so that
the user can click on it to activate it, and preferably the user can for
example

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 57/365
click on the image or for example drag its corner in order to increase the
size
of the displayed video or for example increase the page that contains the
video and this increased also the playing video (for example like Opera and
MSIE 7 work now with embedded videos in web pages). Another possible
variation is that preferably when using for example the wavy line (in the
automatic shapes menu) preferably the user can use undo (for example ~z) to
cancel the last curve or go back to previous curves. This is better than the
prior art for example in Word, in which if the user makes a mistake he/she
has to delete the wavy line start creating it again. Another problem is that
for
example if the user types the word "OSs" in Word, the word processor keeps
trying to correct it each time automatically to the word Ross when the user
types the space in order to enter the next word, so if the user doesn't notice
it,
the word is completely diverted from the original meaning, and Word keeps
doing it again and again no matter how many times the user corrects it back
(even the public Word 2007 beta 2 still does this). So preferably this is
improved so that the word processor preferably automatically learns from the
user's behavior and does not keep correcting the same word if the user goes
back and corrects it one or more time back to the version which the word
processor "thought" was wrong. Another possible variation is that preferably
the word processor can mark with a special marks all the cases where words
were automatically corrected so that the user can review them and/or for
example marks them when the user activates a relevant command, and/or for
example if the user later corrects for example such a word back to the
previous version but there were earlier cases which were automatically
corrected and the user did not correct back (perhaps because he/she didn't
notice) then preferably the word processor can for example automatically
mark these specific other instances of the word or and/or for example ask the
user if he/she wants to correct them, automatically (preferably with verify).
16. Another possible variation is that preferably for example in word
processing
programs and/or for example Internet browsers and/or other software
preferably the user can move any icon and/or for example any menu item
and/or sub-menu item (preferably including for example within pull-down
menus) to any desired position (preferably simply by dragging it with the
mouse) and preferably the same icon and/or menu item automatically
continues functioning on the new position (this means of course that
preferably the user can also for example change the position of the tab
handles line to be lower or higher or even for example move it to the bottom
of the browser windows instead of the top part), and this new position is
preferably saved automatically also after the user closes the application, and
preferably the user can also undo any such changes, preferably even after the
application has been closed and reopened (which is preferably accomplished
by keeping a rollback log in a separate configuration file and preferably for
example by using variable pointers for the menu items). This is better than
the prior art in which for example the user can sometimes move certain
groups of elements together but not in a consistent manner and not for each
item independently (for example in Microsoft Word). This feature is

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 58/365
preferably supported automatically for example by compilers such as for
example visual C, so that preferably the programmer does not have to do
almost anything in order to enable it. Another possible variation is that the
user can also for example change the position of the normal boxes on the
taskbar that represent normally running programs (preferably by dragging
them with the mouse), so that the user can conveniently re-arrange their
position without having to close and reopen these programs.
17. Another possible variation is that preferably the user can for example
mark
an area in the word processor with the mouse and preferably activate a
command which for example automatically removes any table or other
structured formatting from that area, so that preferably the text is still
divided
preferably the same way, but after this the user can for example make any
other changes as if the table or other structure never existed. Another
possible
variation is the opposite - so that the user can for example enter text that
looks like in a table but without the actual structure and then activate a
command which automatically adds the structure - for example by guessing
the most likely structure that fits the given shape of the text.
18. Another possible variation is that for example the copy command (typically
~C) can also be activated cumulatively (for example by activating some flag),
so that for example a certain sequence of ~C commands can create a
cumulative buffer of for example consecutively pasted texts, so that
afterwards for example ~V at a certain position will preferably paste back the
consecutive group of pasted texts as one sequence.
19. Another possible variation is that preferably the word processor
automatically checks the date in the system in short intervals (for example
every few minutes) and thus updates the date field automatically whenever it
has changed (for example when the user has included the date field in each
page header), and not just if the user reopens file or prints it, as is done
for
example in the prior art Word. Another possible variation is that for example
the user can change page definitions (for example size of top and bottom
margins and/or other parameters) also for example for a single page or range
of pages and not just automatically for all the pages as in the prior art
Word.
Of course, like other features of this invention, these features can be used
also
independently of any other features of this invention.
Additional improvements in the OS preferably include also at least one of the
following:
1. Preferably the OS allows the user to defme at least one User which the
system (such as for example Windows NT or XP) will enter by default and
without a password if the user does not request to enter a particular User
after
a certain time (for example 30 seconds 50 seconds or other reasonable time
limit, which can preferably changed by the user) after the system reaches the
menu that's asks to choose a User. This has the advantage that for example
after a temporary power failure the system can automatically resume the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 59/365
original User. Preferably this is accompanied by the ability to define for
example a sequence of actions to be taken upon entering this User by default,
such as for example connecting to the Internet and activating a server and/or
whatever other program or programs need to be resumed after a power
failure. This is somewhat similar to programs in the startup menu, except that
this feature is preferably more powerful, so that it enables for example to
define also various sequences of actions or for example to carry on
automatically certain activities only if the User was entered automatically by
default. Another possible variation is that preferably the user can,
preferably
easily, also define the priorities for programs in the startup list (for
example
by dragging them to the top of the list or marking their priority), so that
for
example the user can specify that for example the firewall will always start
before any of the other programs or at least for example among the first 3-4,
and/or for example the OS itself and/or for example the security system for
example automatically moves the security system and/or the firewall to the
top of the list and/or makes sure that it runs below any other applications
and/or drivers and/or for example in a ring below the other drivers and/or
below the OS and preferably also makes sure that it stays there, and/or for
example at least part of the security system starts running even before the OS
or below it, as explained in other applications by the present inventor. In
addition preferably the system also allows the user for example to add
programs to the startup list for example by simply dragging them onto the
list. Another possible variation is that if the system enters the default User
without password, preferably it enters a limited mode where for example it
takes no commands from the keyboard or mouse and/or has other limitations,
for example until the user for example comes back and enters some
password. For example the system can enter immediately the state that it
would be in if a screen saver was activated and a password is needed to
resume operation with the keyboard or mouse. Another possible variation is
that the user can for example request that the user selection screen will not
be
shown at all for example when returning from sleep mode and/or for example
from any mode (including for example nonnal boot), so that for example
every time the system comes back for example after sleep mode it will go
directly into the desktop (for example of the last user that was working, if
more than one user is defined), and/or for example into the user which is
defined as default. Another possible variation is that preferably when
resuming for example from restart and/or from logoff and/or from sleep
mode or hibernate preferably by default the OS automatically reenters the last
user in which it was (preferably after waiting N seconds as described above),
for example at least if no other default user was explicitly defined and/or if
the return for example from restart and/or from logoff and/or from sleep
mode or hibernate is done within a certain time limit from the time of
starting
the shut-down (for example within N minutes). Another possible variation is
that preferably while waiting for the user during booting to click on a user,
preferably the OS automatically starts loading into memory already for
example all the drivers and/or startup programs which have to load anyway
for all users, so that when the user clicks on a specific user the boot will

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 60/365
continue faster. Another possible variation is that at that stage (or for
example after the OS finishes loading the common things for all users, if the
user still hasn't clicked on a user) preferably the OS loads already also
other
things that are different for specific users (preferably starting with the
last
used user or the most often used user), and if the user eventually click on
another user then for example the OS preferably automatically removes from
memory for example the startup-programs and/or drivers that are not relevant
for that user. Of course various combinations of the above and other
variations can also be used.
2. Preferably if the user uses for example write-once CD's (and/or for example
DVDs) for backup and uses direct writing software, such as for example
DirectCD, if the user copies the same file more than once onto the same CD
(to the same directory), then preferably the backup software can
automatically rename the old files for example with some automatically
sequenced extension, so that the user can automatically keep and track also
older versions this way. This is quite useful for version tracking and is
better
than simply overwriting the file, since in such CDs the old data cannot really
be overwritten anyway. Of course, preferably the user has an option of
turrrning this feature on or off, and/or for example can activate it
retroactively
for example for write-one CD's or DVD's in which it has not been used (in
this case preferably the system automatically reconstructs the version
sequencing according to the time and date each "deleted" previous version
was saved). Another possible variation is to apply such automatic sequencing
automatically for example also to other drives and/or directories that the
user
defines as back-up drives or directories and/or to other types of backup
devices. Another possible variation is to enable by default (or for example to
allow the user to request it) automatic backup of important files to the
default
backup directory and/or drive and/or device, so that for example each doc file
(or for example program source file, or other for example office type of file)
that has been created or changed and has not been updated for more than a
certain time period (for example 1 day or a few hours or a few minutes),
and/or more preferably for example after a certain threshold amount of
change even if less time has elapsed (such as for example after every few
words), is automatically backed-up on the default back-up media and/or for
example on the hard disk (for example_in a special backup directory or in the
same directory but preferably with some extension to the name so that even if
the user for example erases something important by mistake and then saves
the file, preferably the backup with the missing part also exits), and/or for
example the word processor or other application saves only a roll back log of
the changes in order to save space, and/or for example browser bookmark
files are back-up like this, etc. (The important types of files are preferably
defined automatically by default and/or user-defmed). This can be a great
help for example for users who forget to make backups. After the media
becomes full and/or for example shortly before that the system can for
example report this to the user and prompt him/her for example to insert a
new blank writeable CD (or other media), etc. (In case of backup on the hard

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 61/365
disk preferably the older backups can be deleted automatically for example
after a certain amount of time has elapsed and/or after there are for example
too much space taken up). (In case of the bookmarks file for example, if for
some reason the latest version has crashed or was damaged in anyway,
preferably the system can automatically reconstruct the latest version for
example by taking the last backed-up version and adding to it preferably
automatically all the links that were visited from that time onwards, for
example according to the browser's recent history list). Another possible
variation is that for example normal CD creation programs which write a CD
file image as a single transaction, such as for example CD Creator, preferably
enable compressing files on the fly (for example as zip or other common
compression formats). This is better than the to the prior art, where such
compression is available only when the CD is accessed like a disk, for
example through programs like "Direct CD", which when there is a large
number of files write to the CD significantly slower than for example
programs like CD creator. Another possible variation is that the user can for
example select files for backup according to a certain range of sizes (for
example backup automatically all the files that are smaller than 1 megabytes
or 10 megabytes, etc.) or for example define automatic backup rules for files
according to their types (so that for example every new doc file is backed up
automatically for example more frequently than less iinportant files, etc.).
Another preferable improvement is that like smaller pocket-sized CD's,
preferably DVDs and/or similar larger capacity drives (such as for example
blue-ray or High Defmition DVDs) support also smaller pocket-size DVD's,
preferably both as bum-able media and as ready pre-recorded media. Another
possible variation is that instead of or in addition to selling high
definition
DVD movies as Mpeg2 files on Blue ray or HD DVD media, preferably the
content suppliers make available high definition movies on normal DVD's
(at least for example for the next few years until the blue ray and HD DVD
drives and/or devices become cheaper and more prevalent) - preferably by
using mpeg 4 (for example divx or xvid) or similar or other high-
compression format, while preferably keeping the normal DVD menu system
and anything else with the normal look and feel of DVDs (in other words this
preferably includes also for example multiple audio tracks and multiple
subtitles which can preferably be switched on the fly like when normally
playing the dvd in MPEG2). Similarly, preferably programs that convert
from Mpeg2 to Mpeg4 or avi or divx or similar high compression formats
preferably automatically keep also dvd menus at least as an option and/or at
least keep automatically also the information that divides the stream into
chapters, so that on playback the user can preferably instantly jump between
chapters. Another possible variation is that preferably heavy processing
programs such as for example applications that compress video files into Avi
or Mpeg 4 or other high-compression formats preferably automatically divide
the file into multiple sections and preferably run the processing of each
section in a separate independent thread, so that the OS can automatically
optimize them for example when multi-threading and/or multi-core
processors are used (which is no problem since base frames are used anyway

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 62/365
at certain intervals, so preferably each thread starts of course with an
independent base frame). Another possible variation is that the OS tells such
applications for example how many threads and/or cores exist and/or for
example automatically recommends to such applications how many threads
to create while taking into account for example what other processes are
currently running, so that preferably if for example it is a single-core
processor preferably fewer threads are created so as to avoid unnecessary
overhead (preferably these recommendations are kept for example in some
standard dll or file or for example are communicated as parameters when the
application runs). Another possible variation is that when the user activates
such a program the OS itself can for example automatically divide the file
into multiple sections are run the program in a separate thread on each
section, but that is much less preferable since it is much more efficient and
less problematic if the application itself is designed to work as explained
above. In addition, if the user is normally working at a resolution below the
maximum resolution available on the giver monitor and graphic card,
preferably when playing high-definition movies or videos (from whatever
source or method of compression), preferably, at least when the user is
watching the movie at full-screen mode, preferably the player can
automatically switch the display to a higher resolution (which is preferably
the highest resolution supported by that monitor and graphics card, but
preferably the user can defme or pre-define what resolution to jump to in this
mode, since the user might for exatnple prefer to go in this mode to a
resolution below the highest one available in order to have for example a
higher refresh rate), and preferably when increasing the resolution the player
preferably automatically scales for example its skins and menus (including
preferably fonts, icons and anything else in the user interface, and
preferably
also for example the font size of the subtitles) to appear preferably the same
size as in the lower resolution which the user normally works with, so that
preferably everything seems the same size at the higher resolution except that
the picture is sharper, with more details. (However, preferably the user can
also change for example the size of the above mentioned elements and/or
user interface and/or for example of the subtitles, preferably independently
of
the resolution, if for example he/she prefers them bigger or smaller in
general). Another preferable variation is to improve DVD capacity even
much more for example by using UV or extreme-UV lasers instead of red or
blue. However, preferably the media for such DVDs are made sensitive to
writing only at a strength and/or frequency which is sufficiently different
from normal UV radiation from the Sun, so that for example exposure to the
Sun will preferably not have a degrading effect on the media or at least only
a
small effect. Another possible variation is that for example when making
backups onto multiple CD's or DVD's, for example with programs like Nero
(multi-volume backups), preferably the backup system automatically tries to
optimize the division of files between volumes in a way that takes into
account file sizes, so that preferably there is no need to break large files
between volumes (unless of course the file itself is too big to fit on one
volume). Another problem for example with programs like Nero is that the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 63/365
user can only request a backup with file compression or without but cannot
request that only some files be compressed and some not. So preferably this
is improved so that for example the user can mark near each selected file or
directory if to back it up compressed or not, and/or for example the backup
system can automatically decide for example according to file type or
extension or other characteristics if to compress a file or not (thus for
example automatically avoiding compressing of files that cannot be
compressed efficiently or are already compressed, such as for example mp3
files, mpeg files, avi files, zip files, etc.) and/or for example
automatically
compressing text files (for example doc files or program source files), unless
for example the user explicitly requests not to compress them anyway.
Another problem is that for example when burning to a cd or DVD with
automatic verify, the burning can take much longer than burning without
verify (sometimes even for example 3-4 times longer) - typically because the
files are fragmented and/or scattered in various places on the disk and so
either the disk heads or the DVD or cd laser head has to jump all the time
when comparing sections since the sections do not appear on the same order
on the hard disk and on the cd or DVD. So preferably this is improved so that
especially if it is for example a backup (which is by definition not accessed
too often but the verification is important), preferably if the user requests
burning with verify, preferably the sections are automatically arranged on the
cd or the DVD at the same order that they are on the hard disk (or for
example other storage media), so that the cd or DVD becomes organized in a
less efficient manner but the verify can be much faster since both heads
preferably move in the same order (preferably this is accompanied by
planning in advance the movements of the head of the hard disk to move in a
single direction, so that preferably the head can read parts of the relevant
files
not file by file but by the order of the relevant sections regardless of the
division into files). Another possible variation is that preferably the
burning
software offers the user also for example an intermediary verification option -
which is preferably based on a preferably large CRC or similar fingerprint
which is preferably taken for example for the entire set of files in the
backup
or for example for each file or for example even for sub-sections of large
file
for files that are for example bigger then a certain threshold or for example
even each physical sector on the CD or DVD, and preferably these values are
kept in the RAM memory and so preferably the verification is simply based
in reading the files or sectors back from the backup media and comparing
them with the CRC or other fingerprints that are kept in memory from the
original files. This can be very reliable since the chance for error is very
small, and thus the user can have almost certain verification in a way that
hardly slows down the burning or for example slows it down only by the time
it takes to read again all the data form the cd or DVD. Another possible
variation is that for example while burning each section (which can be for
example a sector or any other unit which preferably fits in a convenient
hardware supported access window preferably regardless of division between
files - for example the area covered by one step of the laser head),
preferably
the laser head gets the crc or fingerprint value from the original data for
that

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 64/365
sector and preferably automatically reads back the data from that section
after
writing it and compares it to the fingerprint before going on to writing the
next position, thus making the verification preferably almost take no more
time than without verification since the laser head does not have to go over
the entire data again for reading for verification but moves to each location
only one - for writing and then reading back and comparing to the original
fmgerprint of the section. For this the burning software (and/or for example
the firmware of the CD or DVD) preferably first computes the relevant crc or
fmgerprint value of the section that it is about to bum, and then burns it and
reads it back and compares it preferably before moving the head to the next
position. In order to enable this preferably the switching speed of the laser
is
improved so that it can preferably switch instantly between writing mode and
reading mode, or for example more than one laser exists on the same head, so
that for example one laser is used all the time for writing and another laser
is
used all the time for reading. Another possible variation is to put a copy of
this fingerprint or CRC also on the CD or DVD itself, for example at the end
of it or for example near each file or each section which is covered by said
CRC or fingerprint (this can be used for example for later comparison, for
example if the user wants later to check faster if the data is still intact,
for
example after a few days or weeks r months or other period). Of course in
this and in all other features that refer to hard disks or to cds or DVDs the
same or similar principles can be used also for example with other storage
media and/or other backup media that are available or will become available
in the future. Another possible variation is that for example when the user
copies a large number of small files between two hard disks (for example by
using xcopy or for example by copying whole directories through the
explorer)(for example when hundreds or thousand of files or more are
involved), preferably the OS can automatically optimize the speed of the
copying by first reading the FAT of the source disk into memory and then
preferably copying the files in the order they appear on the original disk, in
order to reduce the number and length of disk-head jumps needed. Another
possible variation is to do this also at the level of sub-sections within such
file, so that even if they are fragmented this will still work efficiently,
except
that in this case the price is that the files may be similarly fragmented in
the
target disk. Another possible variation is that preferably when there are for
example 2 or more processes or threads which work intensively with the hard
disk (such as for example copying or processing large files), and preferably
especially if they work automatically without user interaction at this stage,
then preferably the OS automatically changes the frequency of swapping
between them to a lower rate compared to programs which the user interacts
with, so that preferably there is much less overhead of disk jumps when
switching between these tasks. Another possible variation is that preferably
DVD and/or CD drives and/or other devices that have a moving mechanical
part when they are opened preferably have sensors that automatically detect
for example if there is a mechanical obstacle, such as for example if a chair
or other object does not allow the tray to fully come out, or for example if
the
CD or DVD has not been placed properly at the center of the tray and gets

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 65/365
stuck when the tray starts to go in, and preferably when the senor or sensors
detect such a problem preferably for example the engine that moves the tray
preferably immediately stops and/or moves a little back in the other direction
and/or for example the engine releases the tray in such cases and allows the
user manually to push it in or pull it out without resistance, for thus for
example making the drive behave temporarily like a cd or DVD drive in a
laptop in which the tray is pushed in or out manually by the user. This is
important since otherwise mechanical damage can be caused to the tray or to
the media. Another possible variation is that preferably the CD and/or DVD
drive has also at least one additional eject button, preferably for example at
the left and/or top side of the front of the drive (or instead of the normal
eject
button on the right, but more preferably in addition to it), because many
times
the PC is in a tower case on the floor to the right of the user, and so in the
prior art the user many times finds it less convenient to reach the eject
button
on the right and also usually has trouble seeing it when the drive is open,
which causes many users to close the cd or DVD tray by pushing it (instead
of pressing again the eject button), which is more dangerous. Another
possible variation is that for example in interfaces that allow switching
between internal hard disks without opening the computer box (for example
by sliding a disk and out of a box that sits in an empty 5'/ inch slot),
preferably the box contains a mechanical element which is automatically
moved when the computer power is on - to a position that locks the disk in,
and is moved back automatically when power is turned off into a position
that allows removing and inserting a disk - in order to make sure that the
user
does not swap a disk while he computer is working. Another possible
variation is that for example the mainboard is improved so that the user can
indeed swap disks even without turning off the computer - for example by an
automatic switch that can automatically temporarily turn off the power
supply to the hard disk in a safe way. Another possible variation is that the
user can switch between 2 or more disks for example by pressing or moving
or rotating a preferably external preferably one or more electric switches on
the outer side of the computer case, which preferably switches between them
preferably through a hardware multiplexer, so that it preferably cannot be
overridden by software, except that the user does not have to physically slide
disks in or out. This is preferably done for example by creating computer
cases which have the multiplexer built-in and preferably the hard disks sit in
their normal places and the switch that operates the multiplexer preferably is
connected electrically to the multiplexer and preferably protrudes for
example at the front panel of the computer case, or for example in existing
computer cases preferably the multiplexer and the switch can preferably be
added for example by locating the multiplexer at the position of one of the
possible externally accessible drives (so that for example the multiplexer can
preferably occupy for example the space of a 5% drive or the space of a 3%z
drive, but preferably it can use either of them for example by being the size
of 3%2 and coming with a removable frame that makes is also fit 5'/), and in
this case the electrical switch is preferably at the front panel of the drive
which the multiplexer occupies. In both cases preferably the set of 2 or more

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 66/365
disks that the user want to switch are preferably all connected for example to
SATA or IDE connectors on the multiplexer, and the multiplexer is
preferably connected for example to a normal SATA or IDE connector on the
mainboard or for example to both of them, so that preferably the user can
even witch for example between disks of either type, in which case
preferably the multiplexer connects SATA disks to the SATA connector and
IDE disks to the IDE connector. Another possible variation us that the user
can either switch only between disks of the same kind (for example all disks
in the switch-able set have to be SATA or all of them have to be IDE).
Another possible variation is that the mutiplexer connects only for example
to a single SATA connector or only a single IDE connector on the mainboard
an preferably has circuitry and/or DSP and/or processor which can convert
SATA interface to IDE or vice versa so that the set of switchable disks can
still contain multiple types of disks. Another possible variation is that the
multiplexer is for example integrated on the mainboard, so that the disks that
the user want to switch between are preferably connected to various for
example SATA or IDA connectors on that multiplexer section of the
mainboard. Of course similar configurations can be used also to switch for
example between additional or different types of disks which might exist
today or in the future. The multiplexer preferably works only on the data
connector so that the each of the disks is preferably connected to the power
even when switched off, or for example the multiplexor switches also the
power between the disks - preferably in systems in which the switching is
done when the computer is off. Another possible variation is that the disks
are connected normally and all the switching can be done for example
through the BIOS but there is preferably at least part of the BIOS which
cannot be accessed through the OS or through software (so that preferably
even in order to flash it preferably the user for example has to press a
special
switch that enables it, so that the OS or various software cannot override
this
switching), or for example through a program that preferably runs below the
OS (such as for example the hypervisor for example in systems that are
supported for example by Intel's by Vanderpool or for example the similar
ANID technology), so that preferably the disks that are switched out become
invisible to any OS's or other software running in that computer. Of course
the hypervisor can preferably also segregate between virtual environments
for example at the level of partitions and/or directories and/or even files or
sub-files, (preferably based on saving only the changes separately), so that
preferably one or more of these can me for example made accessible to only
one of or some of the guest OSs, however segregating at the level of physical
hard disks can involve even stronger hardware enforcement, for example by
the hypervisor electronically activating such a hard-disks multiplexer when
switching between Ross (at least in this case preferably the multiplexer works
only on the data connector, so that preferably the all the switched disks are
of
course preferably fully powered and rotating all the time). Of course this can
preferably be done also for example in a configuration in which one or more
of the disks can be shared between the OSs. Another possible variation is that
preferably through the hypervisor the user can define for example which

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 67/365
physical disks are visible to which OS or OS's, so that preferably any OS or
software installed on the computer can only access the hard disks through the
hypervisor (preferably by enforcing this through the processor itself). This
is
much better than the prior art, in which the user can enable or disable disks
through the BIOS but for example an OS like Windows Vista ignores these
BIOS definitions and sees all the disks anyway. In addition, preferably if the
multiplexer is used then preferably it connects to one or more connectors on
the mainboard that enable booting, and if for example the solution with the
hypervisor or the hidden BIOS part is used then preferably all the connectors
can be made bootable, since otherwise the switching ability might be limited.
Another possible variation is that preferably the bookmarks list automatically
shows also near each bookmark for example the date it was entered, and/or
for example the bookmarks are automatically grouped for example by days,
for example with a different color for each group and/or some border marked
between the groups, and then for example the date can appear once for the
entire group instead of near each bookmark in the group. Another possible
variation is that the user can for example tell the browser to automatically
merge two or more bookmark files while keeping for example the date of
visiting (and/or any other criteria) as the ordering factor. Preferably the
user
can also choose for example if the two (or more) bookmark files will be
merged as is or for example duplicates (same urls that appear more than
once) will be automatically deleted, and/or for example the user can activate
(preferably whenever he/she wants) a command that deletes duplicates from
the current bookmarks regardless of how the duplicates were created. When
deleting duplicate bookmarks deleted preferably for example the remaining
entry can indicate for example more than one creation date, or for example
the date of creating the first created of the duplicates of the same url
becomes
the date of creation and for example the latest visitation date of the
duplicates
become the last visitation date, or for example the last creation date is
used,
since this can mean for example that the user bookmarked the url more
recently in another browser and thus might be more interested in it than
earlier created bookmarks, and this is especially important for example if the
bookmarks are sorted according to their creation date. Preferably the user can
choose between these options for example in a menu. Another possible
variation is that for example when merging bookmarks and/or when
activating the "remove duplicate bookmarks" command the user can
preferably choose for example between removing all duplicate urls or only
duplicates which have also the exact same entry time (which is what happens
for example if the user imports bookmarks back and forth for example
between different browsers on the same computer or for example between
two or more computers), which means that book.marking the same url at
different times is not considered a strict duplicate. This has the advantage
that
this way the merged bookmarks list can behave as if the different browsers
are sharing the same bookmarks file (and in any normal browsing the user
can for example bookmark the same url twice without the previous entry
being deleted), but this way the bookmarks file does not multiply itself each
time the user makes two-way merges. Another possible variation is that for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 68/365
example if the user uses two or more different browsers on the same
computer (for example MSIE, Firefox and Opera), preferably the user can tell
a browser for example to automatically regularly (for example once every
hour or for example once very day or any other convenient time) merge new
bookmarks from the bookmarks file of one or more of other browsers
(preferably the browser can automatically find the location of the requested
browser's bookmark file), and so the bookmarks remain synchronized as if
the browsers are sharing the same bookmarks file. Another possible variation
is that for example the user can indeed tell for example Opera to save its
bookmarks in the active Firefox bookmarks file or vice versa (preferably in
the appropriate format), so that they can indeed share the same physical
bookmarks file, for example in the way that two different installed versions
of Netscape can for example share the same bookmarks file, but that is less
preferable since it is more safe to have two independent copies, and also by
keeping its own bookmark file each browser is not limited by the limitations
of the other browser. Another possible variation is that the user can for
example define more than one email account in the same browser or email
client and thus choose each time for example between the available sender
accounts for example from an automatic menu that shows up when
composing an email message (so that for example the user can use 2-4
different sender accounts for different activities) Another possible variation
is
that the user can request for exaYnple to sort the list of programs in the
Add/Remove programs menu according to the date and time they were
added, and preferably this date and time is automatically displayed near each
program there. Although Windows XP allows to sort them according to time
last used, this is much more useful. In addition, preferably the Add/Remove
programs menu includes also information about the path and file name of the
installation file from which the program was installed, and preferably for
example the desktop search or the OS or some other application also
automatically follows this file (for example according to some digital
signature), so that if the file is for example moved to another directory the
desktop search or OS or other application can still locate it, and/or for
example the desktop search or the OS or some other application also for
example monitors these files automatically and can for exatnple report to the
user if it was removed and copied for example to a cd or DVD and thus the
user can at least for example know from the date in the log in which dvd or
cd to look for the file if for example it was erased form the hard disk but
needs to be reinstalled for some reason. Another possible variation is that
preferably the user can use a search feature in the add/remove programs
window, preferably click-based without having to press Enter, in a way
similar for example to the Google Desktop Search. Another possible
variation is that for example programs that try to protect deleted files while
there is sufficient space, such as for example Norton, and/or for example
even the OS itself, preferably can keep for example in or near the entry of
deleted files in the directory (or elsewhere - for example in a cumulative log
that covers multiple files) the name of the application that deleted it or the
user interface from which it was deleted and/or the time and date it was

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 69/365
deleted. Another possible variation is that preferably the desktop search
(such
as for example the Google desktop search) preferably shows automatically
also the drive letter and/or the path of each result (preferably directly in
the
list of results) at least of there are duplicate (i.e. for example the same
program installed in multiple places), or for any results. Another possible
variation is that for example the word processor has special icons for various
saving options, such as for example an icon for saving a copy of the file on
CD and/or for example an icon for saving on diskette or for example other
removable media (and preferably when clicking on such an icon the word
processor preferably saves a copy of the file with the same name on the CD
or other removable media and preferably also for example automatically
saves at the same time also on the default directory hard disk in order to
keep
the synchronization between the hard disk and the backup), and/or for
example an icon for "save as" (the normal icon is for saving under the same
name), and/or for example an icon for "save with automatic increment", as
explained elsewhere in this application. Preferably when clicking for
example after that on AS, preferably the file is automatically saved also on
the
back-up or backups. Another possible variation is that this does not change
the behavior of ~S or for example when clicking again on AS the user is asked
if to save it also on the backup, or for example the user can toggle between
these options for example by clicking on some icon or menu option. Another
possible variation is that preferably the dialogue box for saving files and/or
the dialogue box for opening files preferably show in the top area that
indicates the directory - preferably also at least the drive letter and/or the
path, because otherwise if there exists more that one directory with the same
name the user cannot see immediately which of these directories it is (in the
prior art for example in Windows only the directory name is displayed
without path info or drive letter).
3. Preferably the OS allows the user to access at least one CD-ROM drive
(and/or dvd drive) even when the OS is started for example in "safe mode",
otherwise it can be very frustrating when the user might not be able to fix
various things for example because he/she cannot fix anything from the
installation CD while in safe mode. Another possible variation is that
preferably at least as one of the options (but preferably by default) safe
mode
starts with the correct display driver loaded and so preferably uses the
normal
resolution and/or refresh rate which the user uses normally (for example
unless the user explicitly requests otherwise or for example a specific
problem with the display driver is automatically detected) and/or at least
preferably uses by default a resolution of at least 75Hz or more preferably at
least 85Hz and/or preferably at least a higher resolution than 640x480, since
otherwise working in safe mode can be slow and painful to the eyes without
justification. Another possible variation is that at least after the safe mode
boots the user can preferably increase the refresh rate and/or the resolution
while in safe mode, so that preferably it is lowered again only if there is
for
example a problem with the display driver which causes this mode not to
work properly, but as explained above more preferably the safe mode boots

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 70/365
like this by default, for example unless for example there is a problem with
the display driver. Another possible variation is that preferably if for
example
the user for some reason still chooses to use safe more with a lower
resolution than the normal resolution he/she uses in normal boots (or for
example it becomes necessary for example due to a problem with the display
driver), preferably any changes made in the arrangement of icons on the
desktop are preferably automatically undone when the user returns to normal
mode and/or at least the user is preferably at least automatically offered the
opportunity to automatically restore the icons to their normal arrangement.
Another possible variation is that for example any change in resolution that
results in a changed arrangement of the icons is preferably automatically un-
doable for example automatically upon return to the previous resolution
and/or by offering this option to the user. Preferably this is done by saving
automatically the relevant information about the arrangement of the icons on
the desktop preferably separately automatically for each resolution, and if
for
example the users adds or removes a specific icon and/or installs or
uninstalls
the relevant application, preferably this can be taken into account for
example
after restoring the previously saved arrangement. Preferably the undo option
is available anyway for any changes in the arrangement of the icons,
preferably by saving automatically a rollback log of such changes, preferably
by the OS (and/or preferably the user can also save various specific
arrangements of the desktop as various snapshot points), as explained
elsewhere in this application, which is preferably done independently of the
various System Restore Checkpoints. In addition, if for example the OS
becomes unstable or cannot complete a boot for example because of a
problem with some driver, preferably the system is able to automatically
remove and/or ignore and/or report to the user the driver that is causing the
problem. Even if the problem for example crashed the computer completely
so that the OS could not report anything, preferably during each boot the
system for example keeps a log of all successful steps in the boot, and so
even if a certain step causes a crash so that the system can't even report the
problem, preferably in the next boot the system knows by the incomplete step
in the log exactly where it crashed the last time and can preferably
automatically complete the boot this time without the problematic step and
preferably reports to the user exactly what the problem was andlor preferably
automatically removes the problem and/or offers the user for example to
chose among a few possible corrections to the problem so that the problem
does not occur at all again after that. Another possible variation is that
various data (such as for example the condition of the CPU, heat, various
memory parameters and/or other parameters) are constantly kept at
preferably small intervals, for example in one or more circular buffers, and
preferably for example a special mark is added to the current position of the
buffer after each new boot, so that if for example the system crashes for an
unknown reason and resets (for example even while being unattended), the
user and/or the OS can automatically know after the next boot what caused
the crash. Another possible variation is that whenever the system crashes
these parameters are automatically saved for example by some special

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 71/365
application that preferably runs below the OS and can still perform this
operation even if the OS is completely stuck. This application can for
example also be responsible for an automatic reset if it senses that the
system
has indeed crashed or got stuck or for example if it senses that the CPU or
some other element or device has become too hot or is otherwise dangerously
malfunctioning (in which case preferably an automatic shutdown is activated
instead of an automatic reset), and/or for example some special hardware
element is responsible for that. Of course, various combinations of the above
and other variations can also be used.
4. On the other hand, preferably the user can disable the Autorun feature that
enables programs on CD's to start running automatically when the CD is
inserted into the computer, preferably without having to disable for that the
Auto insert notification for that drive, since this feature is very unsafe in
terms of security. In the prior art the user can disable this in Windows only
by disabling also the auto insert notification, which is not desirable, since
disabling the auto insert notification can cause other problems.
5. Preferably the Windows OS allows executing files in DOS (CMD mode in
Windows XP or NT) also by clicking on or near their name instead of having
to type it. This is very important for example in Windows NT or XP, since,
unlike for example Windows 98, the user has to type the whole name of the
command instead of being able to type also instead only the 8 character DOS
name of it. Since for example in Windows NT and XP the user can in DOS
mode click on the mouse in order for example to mark a name for cut and
paste, preferably the execute command is added for example to the menu of
these available options. (Of course there are programs that can be used for
example for automatic file completion, but this is another option that allows
more flexibility and convenience to the user). Another possible variation is
that preferably the log of screen output in DOS or CMD windows at least
when the user is in the nonnal shell mode is preferably kept automatically in
a log or buffer, so that for example the user can use for exainple a lever for
example at the right of the DOS or CMD window which preferably allows
the user to go back and see for example the previous lines that were scrolled
out, preferably for example until a limit of a few thousands of lines (or any
other reasonable limit, which can preferably be changed by the user), and/or
for example until the beginning of the open session with that DOS or CMD
window.
6. Preferably the OS itself and/or various relevant applications can display
for
certain activities approximately how much time it is going to take and/or for
example the percent completed and/or the percent remaining - even if these
are complex activities such as for example when scanning for viruses.
Although many applications do give such information - these are typically
applications that deal with a single file or a pre-specified list of files,
whereas
for example virus scanning programs do not, which can be aggravating to
users, since such activities can typically take for example anywhere between
5-20 minutes. So preferably the relevant applications and/or the OS can

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 72/365
automatically calculate for example the number of files and/or their
cumulative size (preferably of course only for the relevant types of files
that
are to be scanned), and thus for example the application and/or the OS can
display to the user an estimate of time and/or percent done and/or percent
remaining. Preferably this is made available for example also to the
application's programmer, for exainple as an OS function that can return for
example the total number of files of a certain type and/or extension and/or
their cumulative sizes, for example on the entire computer or for example on
a given drive or directory (preferably automatically including all of its sub-
directories). Another possible variation is that if the user for example
aborts a
virus scan and later wants to continue, the program can automatically
continue from the last point reached. This can be done for example by saving
the position in the directory structure and continuing automatically from
there, preferably for example if the time since the last scan is no longer
than a
certain time (for example 1 hour or any other reasonable time gap), and for
example if the time gap is bigger then preferably the program asks the user if
he/she wants to continue from the same point or restart the scan.
7. Preferably commands such as for example "copy" are extended so that
multiple destinations can be used, so that for example copy "bet*.doc 1: n:"
will copy all the relevant files to all the destination drives/directories.
Also,
when copying to multiple destinations (for example 2 or more separate drives
or partitions or directories) at the same time, preferably the OS also works
more efficiently, so that for example multiple files and/or sections and/or
sectors are preferably copied at once each time (for example until the
memory buffer is full), and are then preferably copied from the same read
operation to all the destinations before going on to read the next group of
for
example files and/or sections and/or sectors, etc. Another possible variation
is that such multiple destinations can also be specified for example when
copying through the windows explorer, and in this case preferably for
example the user can preferably press for example the Control key or Shift
key or some other key in order to mark for example with the mouse multiple
destinations without the previous marks being removed. Another possible
improvement is that preferably when copying a large group of files (for
example from one directory to another, for example in a DOS or CMD
window - for example with 'copy' or 'xcopy', or with the Windows explorer)
the user also has an option of "No to all" or for example "Never" if he is
asked if to overwrite files with the same name, so that preferably only files
that don't exist already in the target directory are copies and preferably for
higher speed the file names that have been skipped are not shown on the
screen during the copy process. In the prior art the user has to answer this
for
each file that has the same name individually or can choose "yes to all" but
there is no "no to all" option.
8. Preferably various Undo commands are applied also to various memory
related commands where they do not yet exist, so that for example if the user
works with an Internet browser and presses a "clear form" button, preferably

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 73/365
the user can undo it for example by pressing control-z or for example
pressing for example some undo button for example on the browser.
Similarly, preferably the browser itself keeps in memory for example recent
changes to various form fields in the same page and/or for example also on
previous pages, so that for example jumping back to a previously filled field
on the same page or for example also on previous pages will still allow the
user for example to undo changes in that field, for example by pressing ~z.
Another problem is that for example browsers can remember various form
fields in order to fill them automatically for the user, but for example
Netscape and MSIE remember only according to searching for keywords in
the simple text near the field and remember only the last value. Therefore
another possible variation is that preferably the browser (or other
application)
can remember preferably automatically more than one value for each field -
for example the last N values, so that for example if the user is not
satisfied
with the automatically inserted value he/she can preferably for example use
the mouse or arrows or other keys in order to scroll back to other previously
filled values. (This scrolling back can preferably be activated for example
for
the current field or for example for the current section or for example for
the
entire form). Another possible variation is that the browser (or other
application) can preferably remember preferably automatically also more
complex structures, so that for example if a form contains a name filed or
address or phone or other types of fields in multiple places (for example the
form at httus://stratesis.ic.gc.ca/secure/cgi-bin/sc mrksv/cipo/uatbrev-
filinsJAatent.cgi, which contains such fields in different sections, for
example "4.1 Applicant", "7. Patent Agent or Associate Patent Agent" and
"8. Canadian Representative"), so preferably if the user has previously used
different values for example for the name and address etc. in the different
sections, preferably the browser preferably remembers also the values per
section, and if the user later uses again the same or a similar form
preferably
the browser suggests to the user the appropriate recently used values
according to each the section. Another possible variation is that the browser
or the OS or the security system preferably warns the user and requests
his/her authorization whenever some program tries to install or register
itself
as a plug-in for one or more browsers. Another possible variation is that
preferably the browser or the security system or the OS preferably warns the
user (at least the first time) whenever a browser plug-in tries to access an
online form which the user is filling - since there are malwares which install
themselves as browser plug-ins in order to steal data when user is fills
forms.
Another possible variation is that when the browser for example asks the user
if to install some plug-in preferably the user can also, preferably as one of
the
options, tell the browser not to ask again about plug-ins of that type or
general type. In addition, preferably, as explained also in Canadian
applications 2,455,342 of Dec. 17, 2003 and 2,452,778 of Dec. 29, 2003 by
the present inventor, preferably the HTML command set and/or for example
the Javascript command set is improved, so that preferably it is possible to
define for example which button (or buttons) will be activated by default for
example if the user presses for example the Enter Key and/or for example the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 74/365
Space Key, and/or for example what action (if any) is to be performed when
various keys are pressed. Preferably the keys can be linked for example to
Javascript buttons for example by a definition in each button (however, if for
example in more than one button the same key is defmed as activating the
button then preferably there are rules that define which button ovenules),
and/or for example additional commands are added (preferably within HTML
tags that define directly various actions that can be performed and/or buttons
that should be activated when a certain key is pressed). This is very
important
since for example in standard HTML forms there is a problem that pressing
the Enter key for example when an input text line (or even for example a
radio button or a checkbox button) is in focus can cause the form to be
submitted. Sometimes this is undesirable (for example when the user is
required to fill a form with multiple items), and in the prior art the only
solution is adding various Javascript checks and issuing error messages for
example if there are still empty fields. But if the user pressed enter for
example after filling in a text line and did not intend to submit the form,
such
messages are aggravating. So preferably to prevent this, the above additional
commands can be used for example to generally define for example that
pressing the Enter key for example anywhere in the form (for example by
adding the appropriate command within the "<form..." tag that appears at the
beginning of the form or for example within the tag that defines the submit
button) will have no effect or at least will not cause the form to be
submitted,
or for example this can be defined in specific fields (for example within the
tag that defines the field).
9. Another problem with Internet browsers is that in some cases lines are
truncated when printed, which can happen sometimes for example when
forms or tables are used. In order to prevent this, preferably the browser
and/or the OS and/or the printer driver (and/or of course for example any
other software) preferably automatically check if this is about to happen
(preferably by simulating the printed page into memory and checking the
representation of the results) and, if so, this is preferably automatically
prevented, for example by automatically converting to landscape mode,
andlor by automatic additional line wrapping if possible (for example, if it
does not damage a format of a table), and/or for example by automatically
reducing the left and/or right page margins and/or by automatically reducing
the font size (for example just in the horizontal dimension or both
horizontally and vertically, in order to keep the aspect ratio), and/or for
example informing the user about the problem and asking him to choose
from a number of possible solutions (such as for example any of the above
described solutions) and/or allowing the user for example to decide to
truncate less important parts on the left of the pages (for example if the
user
is printing an article and the left column for example contains only links
and/or advertisements and/or irrelevant images). Another possible variation is
that the user can for example mark just part of the displayed HTML page (for
example with the mouse) - for example just a specific column, and then use a
command that prints only the marked area. Another possible variation is that

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 75/365
the user does not even have to mark the entire area (which can be annoying
for example if it is a long page) but can for example simply click for example
on the relevant column (typically the middle column) and for example then
print only the relevant column or columns till the end if he/she so desires
(for
example as one of the print options or for example by right clicking with the
mouse on the column and choosing from a menu automatic marking of the
column till its end and/or printing of only the column which was clicked
upon till its end as one of the options, or for example using a control key or
keys or clicking on an option or icon which automatically marks the column
till the end). Another possible variation is that for example when the user
prints for example a web page the browser for example automatically offers a
number of possible printing options such as for example print the entire page
or print for example just the main column or columns or the column which
the user last clicked on, or the column which the mouse currently hovers on,
etc. The browser can preferably automatically identify the main column or
columns (for example by finding the largest consecutive sections that contain
mainly text, and/or by checking for example first of all if the middle column
is indeed the main one and/or offering it to the user as default and asking
him/her to confiim, since that is usually the case). The Opera browser for
example prints only the marked section in a web page if a section is marked
but does not allow automatic marking or printing till the end of the column or
choosing if to print just the marked section or all the page. Also, if the
user
for example searches for a word or word combination in the page it becomes
marked when found and then when printing Opera prints only the marked
word or words. So preferably this is improved so that text that was marked
for example as a result of a search does not automatically cause the printing
to be limited to just the search word or string since it is very unlikely that
the
user intended this (preferably the browser remembers how the word or words
got marked and preferably also takes into account the number of words
marked). And also, when printing only a marked section Opera does not print
the url but only the page title, whereas as explained below preferably the url
is also printed automatically of course, and also when printing only the
marked section the Opera browser prints just text and ignores any formatting
information, including for example html links (which are typically blue with
underline), and so in the printed version only normal text appears instead of
the link, so when reading the printed page the user is even not aware of the
links that were in the page - which is clearly not properly printing the
column (unless the user for example explicitly wants such a thing. Of course
in the current prior art the user can for example mark an area in the page
that
is displayed by the Internet browser and then use copy and paste and print it
for example from Word (when using cut & paste to copy web pages from
most browsers - for example MSIE, Netscape and Firefox - the copy usually
transfers of course also images and page formatting, including the links), but
the above option allows the user preferably to do this in a faster and more
convenient way, and also at least the url address is preferably automatically
also printed, even if only part of the page has been marked and printed.
Another possible variation is that for example at least the headline and/or

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 76/365
logo and/or first few lines of the page are also printed automatically, for
example with some mark that indicates the jump between that till the marked
section, since this can give the user a better feel of identifying later the
page
from which the extract was printed. In addition preferably the user can also
mark multiple sections in the same page, for example by pressing the shift or
control key or some other key while marking with the mouse a new section,
so that the previous marked section or sections remains also marked, and/or
for example after marking a section (or for example even without marking
one or more sections) preferably the user can for example "unmark" or
unselecf' one or more sections or images that he/she does not want printed,
such as for example if there are one or more large images that are
advertisements for example in the middle of the desired column or for
example to the side of it. Preferably this is done for example by right
clicking
on the undesired image or images for example with the right mouse button
and selecting from a menu an option to ignore it while printing (preferably
this option is used for example if the user wants to print the entire page
excepts for example one or more large images or advertisements), or for
example after marking a section which includes the undesired image, holding
for example the shift key or control key and then clicking with the mouse on
one or more marked images, and thus unmarking them while leaving the rest
of the desired area still marked. This is very important, since it can be very
annoying for example if the user can mark a single column, which will print
properly with all the normal images and links, etc, but cannot get rid of
annoying large advertisement images which can for example waste a lot of
ink on inkjet printers. Another possible variation is that for example at
least
by default the browser automatically unmarks images which are labeled as
advertisements, so that they are preferably automatically not printed for
example unless the user marks them explicitly for printing or changes this
default. Recently (a long time after this feature was already included in
prior
applications of which this application is a CIP), Microsoft indeed added to
the Beta of MSIE 7 the feature of printing only the marked area when there is
a marked area, and without the loss of images or text formatting within the
printed section, and including the URL. However, both Opera and MSIE for
example enable only marking one consecutive section in the web page, and in
MSIE this means for example that the user cannot get rid of undesired images
- for example advertisements - within the section that the user wants to
print.
(Also, like Opera, MSIE does not ignore the marking of a few words due to
searching for one or more words, as explained above, and thus will print just
a few words in such a case). Another possible variation is that when the user
requests to print for example a marked column and/or for example even when
printing a whole web page the browser for example asks him/her if to print it
with or without the images, but of course at least the links are preferably
always printed properly as links even when printing without the images. In
addition, preferably the user can tell the browser for exaYnple if to print
the
chosen column with the original width of the marked column or for example
to automatically expend it to make better use of the width available,
preferably without changing for example the original separation into

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 77/365
paragraphs (preferably this automatic widening is the default, since otherwise
it still wastes more pages and much of the advantage of printing only the
marked column is gone) and/or for example it is printed at the best width and
the user cannot change that. As explained above preferably apart from
preferably automatically widening the column to fill the page, preferably all
the other formatting such as for example marked links, text color, font type
and size, etc. is kept as the original (or for example the user can choose
differently for example when printing or by changing some parameters for
example in the print menu). This means that preferably for example if the
paragraph ends with <br> after every line then preferably these <br> controls
are automatically removed or relocated and/or for example the browser
identifies automatically the paragraphs (for example by finding an empty line
between them and/or by finding other commands which can separate
paragraphs) and preferably respects the paragraph separators but ignores
other commands which are used for line breaks. Another possible variation is
that for example when printing the browser asks the user for example if to
print backgrounds of text which are non-white as they are or convert them
automatically to white (and/or for example the user chooses this once as
preferences and it stays like that until the user changes this). Another
possible
variation is that preferably if links are for example marked by blue or some
other color without the normal underline (as is done for example in all the
Wikipedia pages) or for example marked with an underline but an
unconventional color, preferably by default the browser automatically adds
the underlines (and/or for example corrects the color for example to the
convention of blue for not yet visited links and purple for visited links) for
example on the screen and/or when printing the page, and especially for
example at least adds automatically the underline if the printer is a black
and
white printer, such a for example a non-color laser printer. In the prior art
when printing for example Wikipedia pages the links don't even show in blue
on color printers, so preferably the browser at least by default automatically
disregards any commands which can cause this and/or simply automatically
adds the color and/or underline to the links when printing, regardless of the
commands which prevented it. Another possible variation is that the user can
also request for example when printing to expand the links, which means that
preferably the browser automatically adds near each link in the printout also
the url (for example in brackets next to it). Another possible variation is
that
preferably the user can also apart from printing for example save the
currently marked sections together in a file (preferably, like in the
printing,
including at least the title and the URL and preferably also the headline or
headlines) or for example send them to a cumulative open file or window or
tab where they are added cumulatively (in this case also preferably each such
marked sect group of section is preferably automatically added with the title
and url at the beginning of it. Another problem is that for example Opera and
MSIE enable the user to save a web page in a way that saves also its images
only if the user has opened the page itself and not if is saved by right
clicking
on the ink and requesting to save its target. So preferably this is improved
so
that for example when right-clicking on a link the user is offered for example

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 78/365
one option to save the target including images and one without it or for
example the images are automatically saved also in this case unless for
example the user changes some general flag that enables or disables it.
Similarly when clicking for example on a marked group of links as explained
elsewhere in this application, preferably the same is done automatically for
the entire group of marked links, and preferably they can be also saved either
as multiple files or as one consecutive file (for example if the user wants to
save chapters from an ebook which are each on a separate page into a single
file, and/or for example also the normal save-as option in the browser's menu
can either save on a new file or add to a cumulative file). Another possible
variation is that the browser enables the user for example to normally click
(or for example to right-click and choose from a menu) also on html
addresses within the web page which are not links (i.e. appear as simple text)
and thus open them for example in a new tab or new window. Opera for
example enables this only if the user marks the link, so the above variation
is
better and faster. Another possible variation is that the browser also
automatically shows such html addresses as normal links (as if they have
been defined with the normal href tag) for example with the normal typically
blue underline convention, or for example with a special color or other
identifier that indicated that this was not officially defined as a link in
the
page. Another possible variation is that the user can for example mark any set
of words in the text of the web page and then can for example right-click on
it with the mouse and then preferably one of the options in the menu that
appears is to open for example a new search tab (or window) with these
words, wherein the default search engine's is preferably pre-defined by the
user (for example http://eoosle.com) and preferably stays like that as default
until the user changes it again. (For this preferably the browser opens the
search page with those words added after a"?" to the url of the search engine,
however since the format of the query might be different for various search
engines preferably the browser has in advance pre-defined information about
the correct query format for accessing at least the most common search
engines and/or can get automatic updates about that for example from the site
of the developers of that browser. Another possible variation is that this
data
contains also information or templates for processing the search results from
these engines and so preferably the user can also request the search from
more than one search engine at the same time and thus the browser preferably
does for the user the integration of the results like a meta-search engine.
Another preferable improvement is that for example the browser or the
printer driver shows the number of pages that will be printed before the user
starts the actual printing. (For example the browser can show the logical
division of pages if the Internet page will be printed or at least show the
total
number of printed pages at the bottom of the page display on the screen, or
for example when the user presses Control-P, preferably the print dialogue
window shows the projected number of pages that will be printed). In the
prior art the user had to start the printing of normal html pages in the
browser
and wait till the first page has been printed in order to see on the first
page
how many pages will be printed from the displayed Internet page. In addition

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 79/365
preferably the user can easily reduce or increase the size of the printed
fonts,
for example by a specific command when printing (or for example by
changing defaults for example on a configuration or preferences menu of the
browser, such as for example "large fonts on print", "save on pages when
printing" or for example defining specific font sizes which preferably affect
for example the fonts of the main column, which is preferably identified
automatically by the browser, as explained elsewhere in this application,
and/or affect the fonts which have the highest occurrance on the page, and in
that case preferably the other fonts are automatically reduced or enlarged
with the same proportions), or for example by reducing or increasing the size
of the fonts on the screen so that this affects automatically also the
printing
(however, if this is done then preferably it is done with appropriate
conversion preferably for example by reducing or enlarging at the same
factor compared for example the default printing size which would have been
used normally, since obviously in general the user needs larger fonts on the
screen than on paper since the resolution and contrast of the printer are
typically much better than the screen). In the prior art for example in
Netscape the user can reduce or increase the font size of web pages on the
screen by pressing Control+ or Control-, but these changes have no effect on
the printing of web pages, and also they affect only the fonts and not the
images. Preferably this reducing or increasing of fonts can be also done for
example for a specific web page and/or for a specific site instead of
Globally,
since for example in Netscape the changed size remains also when the user
moves to other web pages (however preferably the browser remembers the
changed size of the page or for the site for which it was made). Another
possible variation is that the same command that reduces or increase the font
size on the page (and/or another command) can cause also the images to
automatically grow or shrink in addition to or instead of the fonts, and this
preferably also affects also the printing (for increasing the image sizes,
preferably the images are vector-based images (for this preferably for
example the jpeg or gif formats or some other format or formats are
improved to save normal image files automatically as vectorial data, at least
as one of the options, for example like a single frame in an avi file), or for
example the browser simply enlarges them eventhough the resolution
remains the same, or for example the http protocol is improved so that
images are automatically saved by web servers and/or by relevant web
authoring tools in more than one size and for example the browser can
automatically request the same image again with some parameter that tells
the server to send it in a larger size and then the server automatically sends
again the same image in a larger size. If the last variation is used then it
means that preferably the web page designer includes an image of higher
resolution and preferably the web authoring tool or the web server and/or the
user's browser can automatically generate also the reduced resolution
versions). Preferably when the user for example increases or reduces the size
of a web page (preferably both fonts and images, as explained above) or for
example Word (or other word processor) documents (and/or for example if
the user moves from partial window to full screen or vice versa, or for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 80/365
example accepts changes in the Word processor), preferably the browser (or
other application) preferably automatically keeps the point that was at the
cursor or at the center of the screen at the preferably more or less the same
position after the reduction or enlargement (and preferably similarly also for
example if the user increases or reduces the line spacing or the font size or
the margins or for example makes other changes which change the page
size), so the current center of attention preferably remains more or less at
the
same place (or preferably at least makes sure that it does not run out of the
screen). This means that preferably the up-down position of the center
remains the same, and preferably for example if a horizontal lever for moving
right-left is created then preferably the center also remains more or less at
the
same place in terms of right-left or at least does not run out of the screen
into
the margin. In case of web pages the cursor position is preferably determined
for example by the position of the mouse, since usually the user keeps the
mouse pointer at approximately the text area which he/she is currently
reading, and/or for example the word that is currently at the center of the
page is considered the current position and/or for example the position which
the user last clicked on with the mouse is considered the current position
(for
example if the click has been within a certain time window from the time of
enlarging or reducing the page), and/or for example if there is a central
column then preferably the central column is automatically identified and the
enlargement automatically preferably keeps the sideways center of the
column or the point which was at the position of the mouse at the same
position sideways as the text expands to the right and to the left (and/or for
example the left border of the central column is kept at the same position in
case of left-to-right languages and/or for example the right border for
example in case of right-to-left languages), and/or for example if a word or a
section is marked (a marked word or few marked words would typically
means the result of a search) then preferably the word or group of words is
considered to be the center (and if it is for example the size of a few
sentences or a paragraph then for example the center of the paragraph or its
beginning is considered to be the center, preferably depending also on its
position on the screen for example before the enlargement and/or for example
the position of the mouse, etc, as explained above), and/or for example a
sensor is used which tracks the user's eye movements. Another possible
variation is that preferably the user can also for example activate a command
which reduces or enlarges the fonts and/or images for example for all the
open tabs at once instead of having to do it for each tab individually.
Another
possible variation is that preferably when changing for example from user
mode to author mode or vice versa for example in the Opera browser,
preferably only the background color and/or fort color changes (and/or for
example even choosing for example a default user-preferred font size and/or
font type at least for the main text, wherein the main text is preferably
detected automatically for example as the text of the main column and/or for
example as the font size which composes most of the text in the current web
page, and if it is increased or decreased then preferably fonts of other sizes
are also increased or decreased proportionally) but preferably there are no

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 81/365
other format changes (this is better than the prior art since currently for
example in opera 8.5 and 9.0 switching between these two modes can also
make many other changes in the format in which the web page is displayed.
Another problem for example in Opera is that after the user for example
enlarges (or reduces) the font (and/or the image size on a web page) and/or
changes from author mode to user mode or vice versa, the changed size and
user/author mode is kept also if the user opens in the same tab (or even in
new tabs opened from this tab) links that are entirely unrelated or for
example goes back to a previous unrelated page in the same tab, which can
be very inconvenient because usually the user changes the size and/or the
mode only if there is a specific problem in some page or site and this might
be usually not desired in other sites. So preferably this is improved so that
changes in user/author mode and/or in font size are preferably reverted back
automatically for example at least if the user moves on to a different domain
and/or goes back to a previous page which the user viewed previously before
making the change in size and/or in mode, and/or for example even when the
user moves to another page in the same domain, at least if that page has by
default a different font size than the page in which the user changed the
size.
Another possible variation is that the user can mark a section (or sections)
of
the page and then preferably these changes can affect for example only the
marked section. Another problem is that unlike the printing of web pages, in
which the browser adds the URL usually at the top or at the bottom of the
page, when printing for example pdf files from the Internet, the pdf Acrobat
reader does not add this info and so the user can later forget where he/she
found the document. So preferably this is changed so that for example the pdf
viewer preferably automatically adds this info also preferably on each page
or at least on the first page of the printing. Another problem is that when
saving web files both normal browsers and for example the pdf viewer do not
include anywhere the url information. So preferably this is also improved so
that preferably the browser and/or pdf viewer and/or other applications
automatically add the url info for example at the beginning of the file (for
example in the form of a comment or any other form which does not effect
the way the file is displayed but can for example be automatically displayed
for example by the browser, or for example pdf viewer in case of pdf files,
when the file is later reopened locally, or for example it is automatically
inserted as a visible text for example on each page or at least on the first
page
so that it can be viewed automatically when displayed by any editor or
viewer). Another possible variation is that preferably any text that the user
adds to a pdf file (for example in pdf files that are designed with fillable
areas
or for example with programs like for example Foxreader 1.3, which allow
the user to add text anywhere even on an ordinary pdf file, preferably the
user
can save the version with the added text, for example as a file that contains
both the original pdf data and the added text or for example the application
saves the added text automatically separately on a file which preferably point
to the original pdf file, thus saving a lot of space. Another possible
variation
is that the user can for example reduce the size of fonts and/or icons and/or
images on the computer's desktop by a similar command that preferably

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 82/365
affects the entire desktop (and/or for example a marked section in it)
automatically, preferably by any desired factor, and preferably without
having to restart the computer to see the change. Preferably this change is
seen instantly, like when increasing or reducing for example the font size in
the browser. Another possible variation is that preferably the user can for
example use the corners of the box surrounding the text of desktop icons to
charge the width and/or height of the text box, so that the text length of the
icon name can be made for example wider and in less lines or vice versa
and/or change the font size (and/or for example change the width of this font
independently of its size) and/or the type of this text (for example for the
current icon or for a grouped of marked icons or globally for all the icons on
the desktop), instead of the prior art where the use has no control about
this.
In addition, for example in Windows Vista there is a problem that if the text
contains 2 or more words many times the OS automatically hides the end of
the text when the user is not on the icon. This can be very annoying since
many times for example the user might have more than one version of the
same software installed and so the end of the text near the icon (which
typically ends with the version number) is the most important for
differentiating between them. So this is preferably improved so that the used
can choose if to enable this truncation of text or not, and preferably by
default it is not truncated (and also there is no need for this truncation,
especially if the user can for example change the font size of this text), and
if
truncation is used then preferably the system automatically finds the
differences between similar names and automatically hides only the identical
parts (preferably except the beginning) and not the differentiating parts.
Another possible variation is that for example if the text of an icon becomes
too long preferably the OS can automatically for example reduce its size or
for example only make the font thinner without reducing its height, thus
saving space with much less burden on the eyes. In addition, if for example
increasing the size of fonts and/or of icons on the desktop and/or changing
the screen resolution causes a problem that some icons no longer fit on the
desktop, preferably this is automatically handled by creating vertical and/or
horizontal scroll bars at the edge of the desktop, like in a normal directory
window in which there items that don't fit in the Window. This way the user
can for example drag items back in and/or resize the desktop in order to get
rid of the scroll bars. Another possible variation is that in this case the
system
can automatically reduce spaces between icons and/or recommend to the user
the maximum size that can be used without problems. In addition, the OS
preferably supplies the user with an Undo command (and preferably also a
Redo command) for example for changes in the desktop icon sizes and/or for
moving icons (and/or for example also for other changes, such as for example
removing or adding or changing the position of items that constantly appear
near the taskbar, for example at the top or the side of the taskbar, etc.),
and
this undo is preferably also available for example when moving and/or
resizing icons in a directory and/or in other windows. Preferably this undo is
incremental, so that the user can preferably roll back for example till the
start
of the changes (Preferably this is accomplished by automatically saving the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 83/365
positions or the changes between the various configurations for example each
time after the movement of one or more icon has been completed or for
example after the user closes the window, which is less preferable). (In the
prior art Windows undo is not available for resizing windows and/or
changing positions of icons). This is much better than the prior art in which
changing the font size and/or the resolution might cause icons to become
invisible on the desktop or to crowd over each other. Preferably this undo
and/or redo is available also if the user installs new applications (and
preferably, like explained in other places in this application, the user can
even do a redo that branches into more than one path if the user for example
undo's some icon movement and then changes something and then activates
the redo again), and preferably the user can also for example use a command
with saves a snapshot of the desktop and can preferably also restore such a
snapshot of the desktop preferably instantly (preferably without having to
reboot the system - unlike when restoring for example from a system restore
point). Preferably this is done in a smart way so that preferably if the user
for
example restores an earlier state of the desktop that does not include some
newly added icons, preferably the system automatically adds the missing
icons after restoring the previous state of the desktop. These icons are
preferably restored according to the most recent positions in which they
were, and/or they are marked in a special way at least when doing the restore
so that the user can notice them, and move them to a different position if
he/she so desires, and/or for example the user can also scroll back separately
to previous positions of these new items. Another possible variation is that
preferably the OS saves automatically information about the positions of the
icons for each resolution and/or icon size, so that for example if the user
tries
a new resolution and/or enlarged icons and there is less place for the icons
and the user has to move them or they are moved automatically and then
changes his/her mind and returns to a higher resolution or smaller icon size,
preferably the system can restore automatically the icons to their previous
positions or at least asks the user if he/she wants to do this, and then for
example newly installed icons are preferably dealt with as explained above.
Similarly, preferably the user can also save and later restore for example
various resolution settings (such as for example dpi settings, font size, icon
size, etc., preferably as a group), and this can preferably be restored for
example independently without losing installations of new programs that
were done after this and preferably independently from saving the order of
icons on the desktop. For this undo and/or Redo preferably the OS (or other
software) keeps automatically a rollback log of the changes and/or for
example also various snapshots of the icon arrangements, at least once in a
while (for example according to time periods and/or amount of change, in
order to have additional backup for example in case the cumulative log gets
corrupted). This is very important since for example in Windows XP it is
very annoying that many things can cause multiple icons to suddenly jump
into different positions, such as for example opening some side tools,
activating an additional screen, changing the screen resolution, etc. Another
possible variation is that preferably the user can for example set as wall

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 84/365
papers not just still images but for example also animated gifs or video files
(for example avi, mpeg, VBO, and/or other formats). Preferably without
needing to install any specific software for this, and then preferably the OS
(or some other application) can preferably automatically use this as an
animated wallpaper on the desktop (for example a sea view like the popular
Azul XP wall paper, except that for example the waves really move and/or
for example the palm trees sway a little in the wind or ships move around.
Another possible variation is that this preferably moving scenery (or a
stationary scenery) contains 3d depth information (for example by being
photographed in advance by stereo cameras) and preferably the user can
choose for example to move into 3d desktop or back and forth between 2d
and 3d, and in the 3d mode preferably the user can for example move icons
into various depths of the wallpaper, so that for example icons that are moved
to far way (deeper) portions of the scenery (for example an island or
mountain in the depth of the scenery) become smaller, and preferably the
user can also zoom into various section of the 3d view and thus see them
more clearly. Of course this can work even better when stereo view displays
become more popular. Another problem is that many or even most of the
desktop wallpapers offered for example by Windows Vista contain black or
dark areas, which are very inconvenient for placing icons over them since
icons placed on such a dark area are either not clearly visible or using
brighter text than the background is tiresome to the eyes. So preferably this
is
improved so that preferably images that are listed as choosable wall papers
are preferably automatically converted into brighter images for example by
increasing the brightness and/or increasing the gamma factor, and/or for
example this is applied automatically only to the black or dark areas in the
image, so that preferably the other parts are not affected or less affected.
Another possible variation is that if a web page for example contains multiple
links to images which show for example just an image, preferably instead of
pressing each time a link in order to view just one image and then return to
the main article, preferably the user can for example press some key in the
browser which automatically expands all the images in the text and thus
preferably integrates them into the text as if instead of href links they were
"IMG src" commands (or for example at least in a marked section of the
page), for example for viewing on the screen and/or for example in a way
that automatically affects the printing of the page. Another possible
variation
is that for example the browser enables the user to dynamically change
various elements in the outline of displayed web pages (preferably without
needing any change or cooperation from the web server), for example by a
drag of the mouse, so that for example the user can move various icons or
images to various places on the page and/or for example change their size
(for example only of a specific image) and/or change font type and/or
arrangement (so that for example a column becomes wider or narrower, etc.)
and/or for example add content from other web pages, including for example
dynamic content, such as for example streaming video boxes or RSS feeds,
and preferably the browser can remember this automatically also the next
time the user enters that page. Preferably the browser accomplishes this for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 85/365
example by making automatically a few corrections in the html code
accordingly each time after fetching the page to the user's local computer
and/or for example associating some transformation command over the
existing html code, and preferably the user can also undo the last change or
series of such changes for example with ~z. Another possible variation is that
for example the user can tell the browser to automatically reverse the text in
pages with negative text to positive (i.e. cases where the background is more
dark than the color of the text fonts, which is much harder on the eye and can
be every annoying, and in this case preferably the inversion can be done for
example by automatically switching the color between the text and its
background or for example by choosing automatically from one or more
typical most common or convenient text color-background color pairs).
Preferably this automatic correction of inverse text is automatically done by
the browser by default (preferably unless the user for example tums this off
for a specific site or domain or in general), and preferably by default the
chosen correction is by default simply black on white - which is the easiest
to read (again, preferably unless the user for example selects another color
combination as the favorite for cases where the automatic inversion is
required). And preferably this correction is done without damaging or
changing any other format and/or features in the page (as explained
elsewhere in this application, which is preferably done also if the user
manually switches for example from author mode to user mode or vice
versa), since for example in the prior art Opera browser, switching between
user to author modes usually also creates weird changes in the format. (Of
course the browser can very easily find if the text is inversed for example by
simply checking if the color numerical value for the background indicates a
darker value the color numerical value of the text, or for example the text is
preferably judged by the browser to need automatic correction also if the text
is too bright beyond a certain threshold, in this case even regardless of the
background). This way preferably for example if a site has some special color
or pattern in the background which is not too disturbing to the eyes (and even
if the text is not in standard color but is still not in inverse), the user
preferably still sees it by default as intended by the author, but when the
text
is in inverse color or reaches some other threshold of unreadable-ity,
preferably this is automatically corrected by the browser by default
(preferably accompanied by some indication for example on the top corner
that the color of the text and/or of the background in this page has been
automatically corrected), preferably unless the user explicitly disables this
for
example for this site or this domain or in general. Another possible variation
is that the user can tell the browser for example to automatically adjust the
size of too small text, so that for example any text that is below a certain
font
size is (for example the equivalent of a font size of 10 or 11 or less in a
word
processor) is preferably automatically increased by the browser to the
minimum specified size by the user (for example size 13), and preferably in
this case the text is increased automatically without automatically increasing
also the near images, but preferably for example adjacent headlines are
preferably also automatically increased by the same ratio in order to preserve

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 86/365
the proportions. Another possible variation is that by default preferably the
font size is automatically changed by the browser for example according to
the user's behavior in other similar pages, so that for example sizes of web
pages at least in the same domain are preferably automatically increased
when needed to fit the size which the user himself/herself chose by enlarging
or reducing previously other pages. When automatically increasing the size
of fonts in web pages preferably the size is not increased to a point where a
horizontal lever would be required to move the page right or left, or for
example the size can be automatically increased even to a size which requires
such a lever - at least for example if the font in so small that only by such
increase a minimal reasonable for size can be achieved. Another possible
variation is that the user can preferably for example tell the browser to
automatically fit for example the size of web pages to the screen so that for
example web pages that do not take advantage of the full available space are
preferably automatically increased (in this case preferably the text together
with the images), and/or for example if the font is already big enough (as
determined for example by being of a certain threshold size or larger, which
can preferably also be changed by the user) for example paragraphs can be
automatically reformatted to take better advantage of the wider space, and/or
for example web pages that contain for example a horizontal scroll bar (for
example because of containing a table) can preferably automatically be
reduced in size and/or for example at least the browser automatically makes
the fonts for example in the relevant table areas preferably automatically at
least thinner. Preferably the user can specify independently if he/she wants
pages to be increased in size automatically and if he/she wants pages with a
horizontal scroll bar reduced automatically. Another possible variations is
that preferably the OS or the firewall or security system or some other
application preferably also prevents programs or drivers from changing or
switching for example between icons for example on the desktop or on the
quick launch line without user permission, since if icons are switched for
example by a virus or worm or trojan or other malicious application (even
without changing the linking of file types to applications that run when the
user clicks on them) then the user can be misled to activate the wrong
program while intending to activate another program (and if the user has for
example allowed this by mistake, preferably the above described undo can
also fix that, preferably without having to launch for example system
restore). Another possible variation is that the system or for example the
security system can for example display automatically for example upon
request a list of which applications are the default opener currently
associated
with each type of file, and preferably the user can also edit this table in
order
to correct or change associations. Preferably this is not just a table of
which
file type is associated with what application but the table preferably
contains
also for example near each file type also a list of all the applications that
can
open it, so that if the user wants to change the default opener he/she can
preferably choose from any of he other listed application for example by just
ticking a box near it. Another possible variation is that the user can defme
these associations also in a way that is dependent on the location and/or the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 87/365
context, so that for example the default player for flv files is zoom player,
but
if an flv file is for example clicked on in the browser then preferably it is
opened by another application, or for example the default opener for doc files
is for example Word 2007 but if they are in a certain directory then the
default opener is for example Word 2000. Another possible variation is that
the user can preferably also lock one or more such file types, for example by
clicking on a special icon in the line that represents that file type in the
table,
so that preferably other applications cannot become the default openers for
that type until the user explicitly removes the lock, or for example if the
file
type is locked then when an application tries to become associated with it as
its default opener preferably for example the OS or the security system
request from the user explicit permission for this, or for example any such
change for any file type requires explicit permission by the user without the
user having to explicitly lock it first, as explained in no other applications
by
the present inventor that deal with computer security. Another possible
variation is that the table can also sort the file types for example by higher
categories (such as for example document files, sound files, video files,
images, etc) and/or just alphabetically, and/or the user can preferably also
associate for example at the level of the higher category, such as for example
marking that video files will be handled by default by Zoom player. Another
possible variation is that the user can also ask for example the OS to sort
the
table for example so that the entries are the applications and the entry for
each application shows to which file type it is associated. Another possible
variation is that for example when the user hovers with the mouse over a data
file (or for example when he/she clicks on it with the right mouse button)
preferably the OS automatically shows which application will be activated if
the user clicks on the file. Another possible variation is that the OS for
example enables the user to easily edit the options that are shown when the
send-to menu option is chosen, such as for example removing or adding
items to it. Another problem in the prior art (for example in Windows XP) is
that reducing the resolution and/or increasing the system font size can cause
the window that asks if to keep the new resolution to appear outside of the
desktop (i.e. become invisible) and/or cause the text in various system
message windows to appear truncated. This is preferably automatically
prevented, and for this preferably the system automatically calculates the new
size and ratios and thus makes sure that all the message windows appear in a
visible area and that the text size in them fits the message window, and if
not
then preferably the message window's size is automatically adjusted as
needed and/or the font size in the message window is automatically reduced
as needed and/or for example scroll bars are added to it as needed. Although
Microsoft recently announced that the new Longhorn version of Windows
will contain smooth scaling (a feature which exists already in Macintosh OS
X), there is no indication that the above described features regarding the
desktop will be included, and the smooth scaling is apparently relevant
mainly to flicker free animation and to DPI scaling or window scaling instead
of only window resizing, i.e. the ability to automatically change the size of
text and images through the graphics card, so the some of the above

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 88/365
described features will be easier to implement (but without the above
features, changing for example the scaling of the desktop can lead to exactly
the problems that some of the above features are intended to solve). Also,
preferably the ability so increase or decrease for example the size of the
text
and/or of the images and/or icons for example in web pages or in other
windows as described above is preferably independent of the size of the
window, since scaling the size of the text and images automatically by the
window size is more relevant for special animation effects involving the
windows (such as for example juggling or rotating windows around the
screen), but when the user wants to work on the window typically he/she
would want to be able to choose the most desirable size of fonts and/or
images regardless of the size of the window (This means that for these
purposes the resizing is preferably done by reformatting the page, like in the
above described Netscape feature, and not by some purely graphic effect
performed by the graphics card). Another possible variation is that for
example if the user changes the screen resolution, the fonts and/or icons on
the desktop and/or in other places or applications (which means of course
also for example menus, the taskbar, and/or anything else in the user
interface, preferably the entire user interface) by default remain more or
less
the same size (unless for example the user explicitly requests to change them,
which can preferably be done independently of any change in screen
resolution), preferably by using for example the smooth scaling to
automatically correct for the changes caused by the changed resolution, so
that if the user increases the resolution, the fonts and/or icons and/or
images
(and/or anything else in the user interface) can be automatically increased in
size to compensate for this and if the user decreases the resolution the fonts
and/or icons and/or images can be automatically reduced in size to
compensate for this. So if the user for example switches from a resolution of
1024x768 to a resolution of 1280x1024, the fonts and/or icons are preferably
automatically increased in size by the appropriate factor (in this example
preferably they are increased in width by 25% and increased by height by
33%, and/or the aspect ratio is maintained by default so that the width and
height are for example both increased by the higher value or by the lower
value or for example by some average value. This means that preferably for
example even the mouse's movements are automatically compensated
accordingly, so that for example if the resolution for increases and so the
number of pixels the mouse has to travel is larger, preferably the speed of
the
mouse's movement remains the same, so that the same distance of mouse
travel on the desk is still needed for traveling for example from one edge of
the screen to the other edge (preferably unless the user changes this
explicitly, which is preferably again independent of the resolution). Even if
for example for any reason the OS still needs for example a reboot in order to
apply these changes throughout the system, then preferably while the user is
changing for example the resolution for example to a higher resolution
(which according to the above should preferably actually mean only that the
text and images become sharper and/or with more derail, but the user
interface does not become automatically smaller) or the user is changing the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 89/365
size of the user interface independently of the resolution (which means that
for example preferably everything in the user interface or at least the main
elements in the user interface grow or shrink (for example except some
automatic adjustments, such as the taskbar for example always automatically
filling the full width of the screen, etc.), preferably the OS automatically
displays to the user these changes in real time as a preview, so that
preferably
the user can for example move one lever for example left or right and see
preferably a smoothly changing preview of the effects of changing the
resolution as he/she is moving the lever, and preferably similarly moving for
example a separate lever which changes the user interface size is preferably
accompanied by a preferably smooth preview of the changed size of the user
interface (for example the size of the icons on the desktop and the area
occupied by them, the size of the taskbar, menus, fonts, etc). This preview is
preferably done at least by emulation, so that the OS preferably displays it
at
least while the user is for example moving the lever. Another problem is that
for example icons that have not been designed for higher resolution might
appear a little zigzaggy at the higher resolution, So this is preferably
solved
so that if for example the new resolution is for example close to twice the
original resolution then preferably each pixel is automatically duplicated,
and
if the ratio is not a direct multiple, then preferably for example the missing
pixels are interpolated heuristically, for example by using different colors
and/or brightness and/or contrast and/or saturation for the added pixels, for
example in a way similar to the way that the resolution of fonts is increased
in the Cleartype method. Another possible variation is to use for example
similar automatic interpolation when increasing images in web pages -
especially for example in cases of diagonal lines and/or graphic bitmap
images of fonts (since in this type of images the zigzags upon enlarging are
much more conspicuous than for example when enlarging photos), so
preferably diagonal lines and/or graphic images of fonts and/or the zigzags
themselves (for example compared to the situation before the enlargement)
are preferably automatically detected (for example by any known OCR
methods) and are preferably automatically corrected as explained above (for
example all zigzags or more or less the same granular size are preferably
automatically identified as resulting from the enlargement and then
automatically corrected). Another possible variation is that for example such
graphic letters and/or images are preferably automatically converted by the
browser for example to preferably high-resolution vectors before the
enlarging, for example based on various heuristics. Another possible
variation is that the user can for example increase or reduce the size of the
icons and/or of their text by zooming in or out on the desktop itself for
example by pressing control and moving the mouse wheel, in a way similar
to increasing or reducing for example the text and images in web pages (so
that preferably for example if there is not sufficient room for example the
gaps between the icons are automatically reduced or for example, as
explained elsewhere is this application, a scroll bar is added when needed for
example sideways and/or up-down so that the user can reach also icons
which become out of the screen and can move them back manually). Another

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 90/365
possible variation is that this can affect also for example the size of the
background, but that is of course less preferable since normally it would
mean unnecessary change in the background, so preferably if the user wants
to zoom-in or out on the background this is preferably done by separate
controls. If for example the default is the average, this has the advantage
that
by default the minimum change in icon shapes will be perceived. However
since, as explained above, the desktop preferably remains the same size,
preferably by default at least the distances between the icons are corrected
in
each direction by its appropriate ratio of change, i.e. in the above example
preferably 25% in width and 33% in height, with or without similar change in
the aspect ratio of the icon. Preferably the user can choose among these
options). Of course various combinations of the above and other variations
can also be used. Another possible variation is that if the user for example
wants to copy more than one application at the same time for example from
the "all programs" pop-up list which is activated through the Start button,
for
example to the desktop, then preferably he/she can mark more than one item
at a time (for example by dragging the mouse to darken a group of them
and/or for example by marking a group with CTRL or Shift pressed) and/or
the list remains open even after dragging an item (unlike the prior art, where
immediately after dragging the first item to the desktop the list disappears
and has to be opened again from the Start button, unlike for example a
window created through Explore). Another possible variation is that
preferably the user can drag a shortcut also for example from normal open
applications on the taskbar (for example by dragging the square on the
taskbar that represents the application) and/or for example by dragging
something for example from the top and/or other parts of an open window
(for example by clicking on the right mouse button, for example onto the
desktop), and/or for example from the file name as it appears in a DOS or
cmd window (so for example after opening once the task manager preferably
the user can drag it from its square on the taskbar to become an icon on the
desktop, so that next time it can also be activated from this icon). If for
example the desktop is not visible due to full open windows, preferably the
user can for example hover the dragged item near or over for example the
"show desktop" icon and then preferably the desktop shows and lets the user
take the item to wherever he/she wants and preferably after dropping the item
there the windows preferably automatically return to the state they were in
before the dragging of the item. Another possible variation is that the user
can for example drag for example onto the desktop also menu items within
the user interface (for example within the options in the menus of the taskbar
or within the menus that show when the user clicks on the Start button, so
that the dragged menu option becomes a separate icon on the desktop that can
then be activated directly from the desktop, and in this case preferably the
icon becomes automatically for example with the shape and text of the menu
option that was dragged there and of course the user can preferably change
the icon and/or the text to whatever he/se wants. So for example the user can
preferably drag to the desktop this way for example the Screen Saver (from
the Display Properties menu), the "Create a Restore Point" (From

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 91/365
MSCONFIG -> Launch System Restore menu), Another possible variation is
that for exampling when going over programs or program folders within the
Start menu (for example after choosing "All Programs") preferably the user
can also mark multiple programs and drag them together to the desktop (for
example when reaching the Office folder in the "All Programs" menu),
Device Manager, Task manager, etc. Another possible variation is that for
example in Windows Vista the internal search of the Start menu and/or for
example the general desktop search (for example the Google desktop search)
can preferably also search for example within menu options of at least the
OS's user interface (for example by automatically following the available
menu options after the user goes through them at least one time or by
indexing it directly for example from one or more elements in the user
interface files), so that if the user for example searches for the words
"create
restore point" or "restore point" the system can preferably automatically
display the menu option of creating a restore point eventhough it is an option
within the system restore, and for example if the user types "device manager"
preferably that menu option is automatically shown. Another possible
variation is that preferably various applications or at least one or more of
the
more complex ones - such as for example Word, preferably enable the user
for example also to search for various functions in a search menu instead of
having to find them in various pull-down menus or in the new ribbon of
office 12 (later renamed Office 2007), so that for example preferably the top
of the word processor window contains a search window for entering a word
or words which the user searches for in the user interface, so that for
example
if the user types the word footnotes preferably an automatic menu shows up
with commands related to footnotes (for example in a pull-down menu or for
example in the ribbon) or for example if the user types the word translate or
dictionary for example the menu items related to the dictionary automatically
become visible and/or for example the dictionary window is automatically
opened, or for example typing the word paragraph in the menu search box
will display a menu of all the commands that are related to paragraphs or for
example have the word paragraph as part of the menu option, and/or for
example typing the search word can automatically select the most appropriate
option within the ribbon (or other menu system) as if the user reached it in
the normal way, or for example typing the word "ruler" will automatically
enable the user to add the normal ruler on the top of the page with the slide-
able triangles which users are used to in previous versions of word but does
not show by default in Word 2007. Preferably when the menu is shown the
searched-for option is also pre-selected, so that for example simply hitting
the Enter key can choose the option (however the user of course preferably
can also click on it with the mouse). Another possible variation is that for
example any typing by the user on the area of the top menus or on the ribbon
achieves this result without having to type directly within the search box or
even without a search box. Preferably the above search works instantly like
the Google desktop search so that the response is instantaneous as the user
types characters, without having to press Enter at the end. In addition,
preferably when clicking again on the internal search window (after doing

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 92/365
something else) or for example on the normal desktop search window, or for
example on the search window within the start menu, or for example on the
search box for finding bookmarks in the browser, preferably before the user
types the first character preferably the search engine or application
preferably
instantly displays as default the results of the last search that was
conducted,
and only then it is preferably changed or removed if the user starts typing an
character that is incompatible with the previous results. Another possible
variation is that when the user gets the results from this search in the
bookmarks preferably he/she can jump from the search line to any desired
result also by using the arrow keys, like in the results of the Google desktop
search, instead of being able only to move the mouse in order to click on a
result (this is more efficient, since after the user types the search string,
his/her fingers are still on the keyboard, so moving with the arrows at that
stage is faster than having to move the hand away to the mouse and then
move with the mouse). Another possible variation is that if the user decides
to enter the "Help" file, the commands that he/she finds there are also
clickable and preferably when clicked upon bring the user directly to the
correct menu option or for example ribbon configuration as it would look if
the user had reached it the normal way through the menus or through the tab
handles of the ribbon. Another possible variation is that preferably the word
processor can use also for example the descriptions in the help file related
to
each command for adding them automatically to the above described
searchable command/menu options index, so that the user can find a
command or menu option also if he/she does not remember its name but only
for example something which describes it. In addition, preferably the internal
command search uses also the thesaurus, since the user mighty for example
use some different wording than the actual name or description of the
searched command. Another possible variation is that for example the
desktop search (such as for example the Google desktop search) can
automatically for example follow the menu items for example in the ribbon
or pull down menus (for example by letting the user define the relevant
screen area or more preferably by following though heuristics the relevant
typically squared areas on top of the screen) and generate for example
automatically an index for finding these commands, but this is much less
preferable since it is much more reliable and powerful to build this from
inside the application. Another problem for example with Word 2007 is that
it forces the users to work only with the new interface without an ability to
go
back to the old interface, which means that for some things which the user
knows instantly how to access on previous versions (for example Word 2000
or Word 2003) the user might have to spend a long time to learn how to reach
them in the new ribbon interface, which can be annoying and frustrating even
with the above internal commands/menu search variation (since the user still
has to type the search string instead of clicking directly on something which
he could do instantly in the old interface and the user still has to remember
the new way to reach it even if the search result also includes automatically
configuring the ribbon to the same state it would be if the user choose it
through the appropriate tab handle /or submenu option, as explained above).

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 93/365
So preferably another improvement is that preferably, at least as an option,
the user can choose for example to have the old menu available at the top of
the page in addition to the ribbon (and/or for example to temporarily hide the
ribbon in this case, to save even more space), which is very easy since at the
top above the ribbon there is sufficient room to add the normal classic menu
of File, Edit, View, etc, with the normal pull-down menus (which are
preferably updated to include also the new features of Word 2007). Another
possible variation is that if the user for example prefers to use the above
menus without hiding the ribbon, preferably for example when choosing
anything on the top menus or with pull-down menus, preferably the ribbon
automatically, preferably instantly, changes also to the appropriate
configuration, so that the user can also instantly see how to reach the same
command through the ribbon tab-handles and sub-menus. For this preferably
the Word processor has, preferably for example in the same index used for
the above described internal command search feature, also for example a link
for each entry to the menu steps needed in order to reach it for example
through the ribbon, so that after reaching the command (for example either
through the old classic menu system or through the instant search) the system
can preferably instantly show also the correct ribbon/menu configuration for
reaching it. Of course, the above described internal command search and/or
for example the desktop search or for example the search within the start
menu can preferably also be activated by voice commands, and preferably the
system knows to which type of search the voice command refers for example
by looking at where the mouse is currently hovering, or by the user adding
for example a selector keyword at the beginning of the voice command.
Preferably in case of voice commands or when typing the search string in the
internal command search preferably the user does not have to go through the
normal menus but can preferably access any menu option directly, but if
there are more than one likely result then preferably all the relevant results
are automatically shown for example listed one below the other, preferably
with some context identification so that the user can understand what each
command is, and the user can preferably move with the errors and choose
any command, in a way similar to choosing applications for example in the
results of the Google desktop search. (However as explained above,
preferably in addition to this list, the most likely top result or the result
chosen by the user is preferably also indicated automatically in the ribbon or
menu system configuration so that the user can also see how to reach it the
normal way). Another possible variation is that preferably the user can for
example copy any item from the ribbon or preferably from any other menu
option for example to the area above the ribbon so that for example the
commands which the user uses most frequently become available for instant
direct clicking, and/or for example the word processor can do it automatically
for the user by identifying the commands which he/she most frequently uses
in general or for example in the last N minutes or the last N commands
(where N is any a reasonable periods or a reasonable number of commands).
If for example the word processor also enables tabs as an alternative to
opening additional windows, then preferably the tabs handled of these tabs

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 94/365
are above the tab handles of the ribbon. But preferably below any to-level
menu if for example the user request to enable also the classic to menus, as
explained above. Another possible variation is that preferably at least some
of the pull-down menus for example in Word 2007 or most or all of them are
preferably made at least partially transparent so that the user can also see
at
lest in general the text below them. This is very important for example when
various styles which effect the whole page are shown, such as for example
various options of placement of pictures, because hiding part of the page
makes it harder to have a preview of the results. Another possible variation
is
that for example the various choices within the pull-down menu (such as for
example the various patterns or options that the user can choose form, such
as for example the various latter shapes in the WordArt of Word 2007) are
preferably semi-transparent or even non-transparent, but the window that
surrounds them in the pull-down menu is preferably fully transparent (for
example whenever this pull-down menu is shown or at least when the user
hovers with the mouse on one of the choices within it), except for example
some preferably thin border, so that at least the user can see the text
between
the options that can be chosen in the pull-down menu, and/or for example the
other possible choices become transparent or semi transparent when the user
hovers with the mouse over one of the choices. Similarly for example in
Windows Vista when choosing a desktop background there is an even bigger
problem that each time after choosing a background most of the background
is hidden by the window of the choosing menu, so the user has to minimize
this window or click on the "Show desktop" icon in order to see the
background in real size, and then the user has to open again the choice
window if he/she wants to test additional backgrounds. So preferably this is
improved so that preferably merely hovering on the small image of a
background with the mouse preferably immediately shows a preferably full-
size preview of it (preferably by showing the full-size desktop with the
selected background and the icons on it), and/or the window that lets the user
chose is preferably made transparent (except for example for some preferably
thin borders) for example at least when the mouse is hovering on one of the
choices or when the mouse is hovering one of the exposed areas of the
desktop or even all the time that this choice window is open, so that
preferably only the small backgrounds are preferably non-transparent.
Another possible variation is that preferably when the user hovers with the
mouse over a visible part of the desktop preferably even the small
background images preferably become semi-transparent or for example fully
transparent or with just some frame border, and when the user moves the
mouse near there area preferably all of them automatically reappear, and so
preferably mere movement of the mouse without having to even click on any
background can preferably instantly show a preferably full-size preview of
the background, preferably with all the icons on it as if it has been chosen.
Another possible variation is that (for example when the user is in the menu
that allows selecting desktop backgrounds or for example in a program that
displays images) the user can preferably for example simply press some
control key and use for example the mouse wheel at the same time, and this

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 95/365
way preferably the user can move quickly preferably over a large set of
possible wallpapers, which preferably show up preferably instantly
preferably in full size and with the icons in place, so that the user can
preferably instantly see how each background will look in practice, which is
much faster and more efficient than the prior art method of needing multiple
clicks just to test a single wallpaper. Another problem with choosing a
background is that although there is typically a nice selection of beautiful
backgrounds (usually outdoors scenery), most of these backgrounds are not
really suitable for use as desktop backgrounds because they have too many
dark areas or otherwise have for example too many different brightness
levels. The problem apparently stems from the fact that the human brain is
accustomed from evolution to perceive black as foreground and white as
background, so any situation where the icon or text is bright on a dark
background can be very tiring to the brain, similar to the problem of reading
white text on a black background. So this is preferably improved so that
images that are added to the menu of available desktop background are
preferably automatically converted by the OS preferably at the time of adding
them to the menu (and this converted copy is preferably automatically saved
in the relevant directory of background choices), so that preferably for
example their general brightness and/or gamma values are automatically
increased or for example only the dark areas are automatically identified and
increased for example in brightness and/or gamma level (for example by
going over all the pixels and picking automatically any pixel with a darkness
level beyond a certain threshold and preferably converting such pixels to
values that represent for example higher brightness and/or higher gamma
levels). This means that the pictures may become somewhat distorted, but the
resulting desktop background when covered with icons becomes much less
tiring to the brain and more pleasant to the eye. Another possible variation
is
that the user can for example point with the mouse to one or more areas that
annoy him/her when icons are placed on them and preferably the system then
automatically finds the borders of such areas and preferably automatically
converts them for example as explained above. (Preferably areas that are
considered as dark are not only for example dark or blackish areas but
preferably also for example strong red or orange, which can have a similar
effect). Similarly, for example too white (or otherwise too bright) areas on
the wallpaper can also be problematic, since in this case white part of the
text
of the icons become less visible, and also the whiter sections might dazzle
the
eyes compared to the other areas and thus create eye strain, so another
possible variation is that in such areas for example the gamma is
automatically lowered and/or for example these areas are automatically
converted and saved as less bright, and/or for example in such areas the ratio
between the white and the black outlines of the text near icons that are on
such areas is automatically changed so that for example the font of the texts
which accompanies the icons becomes for example automatically with a
wider black outline and/or for example the white part of the outline
preferably becomes automatically of a darker color and/or for example is
removed altogether so that the text there becomes only dark (this effect of

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 96/365
changing the appearance of the text as long as the icon is in such an area is
preferably only a display effect, so that preferably it is not saved in the
file of
the icon. Another possible variation is that for example when choosing a
background the user can preferably for example move one or more levers
which preferably automatically become available (for example in the
background-choosing menu or for example in one of the normal menus of
customizing the desktop), for example for changing the gamma and/or
brightness and/or other parameters, and then the changed image is preferably
saved as an additional choose-able background, preferably with an indication
for example near its name that it was customized by the user, so that the user
can preferably easily find it again if he/she for example experiments with
additional backgrounds and then decides for example to return to it. Another
problem is that the ribbon increases the control area at the top of the page
at
the expense of the visible area of the document, which can be inconvenient
for example to uses of Word 2000 or 2003 who are used to and prefer to have
a bigger visible text window. So preferably this is improved for example by
enabling the user for example to drag upwards the border at the bottom of the
ribbon (and/or for example borders above the ribbon, but preferably dragging
the bottom of the ribbon is sufficient to affect also items above the ribbon),
which preferably causes the height of the ribbon and/or of the parts that are
above it to shrink in height automatically preferably proportionally but
preferably in a smart manner, so that for example the ribbon tab handles can
preferably become shorter by reducing unnecessary spaces below and above
the tab handle names preferably without the letters themselves shrinking in
height, and/or for example similarly the top header line which contains the
file name can preferably shrink in height similarly preferably without the
letters themselves shrinking in height, and/or for example similar principles
can be used for shrinking the height of the ribbon itself (which means for
example shrinking the height of the graphical icons of the ribbon and/or of
the spaces above and/or below them), and/or this automatic shrinking is for
example done by default by the word processor (and/or the user can pull the
bottom border of the ribbon and/or other borders for example above it down
if so desired, in order to increase the height of the ribbon). In word 2007
beta
2 TR (after the above was already included in earlier priorities of this
application) Microsoft added the option to minimize the ribbon, but this
minimization is based on removing all the info except the ribbon tab handles
(which is less functional than the above solution), and whenever the user
clicks on one of the tabs the full ribbon shows again. Another problem with
this new addition is that when the ribbon expands again it can cover the top
lines of the text even if the user was for example in the middle of editing
them (which can be very annoying and confusing), and it can also cover the
right elevator so that the user can become very confused. So preferably this
is
improved so that if this feature is used, preferably when the ribbon expands
the text is preferably automatically scrolled up or down as needed so that the
section which the user was currently editing will still be visible, and
preferably the range of the elevator is preferably automatically adjusted to
move only in the new visible area. In addition, as explained elsewhere in this

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 97/365
application, preferably merely hovering with the mouse on one of the tabs of
the ribbon preferably automatically displays the options of that tab, so
preferably if the ribbon is minimized in Microsoft's way then preferably
hovering over one of the tabs also automatically expands the ribbon without
the user having to click on it. However, another problem with using hover
over items of the ribbon to have an affect like clicking is that in Word 2007
currently if the user hovers on at item a short explanation is displayed after
2
seconds. So preferably this is solved so that (as explained elsewhere in this
application) the hover preferably instantly has the same effect as clicking in
the tab handle or item, but if an explanation is needed (which is preferably
only in a small percent of cases where the menu that is opened after hovering
or clicking is still not sufficiently clear without fiu ther explanation),
then
preferably the explanation appears automatically as part of the menu which
opens (for example at the top or side of it or at the bottom, when needed).
Another possible variation is that for example clicking on various links in
the
relevant help file can also automatically display the relevant menus for
example in the word processor and make the user jump do that option.
Another problem is that for example the Opera browser enables the user to
mark a text (or for example use ~A to mark the entire web page) and then
right-click on it with the mouse and choose "speak" to hear the text through
synthesized voice. However this is still not useful enough for example for
people who are visually impaired because they might have a problem with
choosing the speak option or clicking on the text. So preferably this is
improved so that this works preferably in combination with voice commands,
and for example when "speaking" the text preferably the browser states when
it is a link and lest the user for example to request going into the currently
spoken or the last mentioned link or to request for example "Go to previous
link" or "Go to previous kinks" and then preferably the browser for example
reads only the text of the previous links and asks the user through voice
communication which one of them to go to. Another problem is that both the
Microsoft desktop search and the Google desktop search ignore for example
file extensions when the user is searching for something. So preferably this
is
improved so that if the user for example types also the file extension for
example after a dot or separated from a string within the file name for
example by a space or spaces or by wildcards (for example the user types in
the search box "*epiph*.avi" or "epiph*avi" or "epiph avi"), preferably files
that contain the word in their name and also contain the desired extension are
displayed in the results before files that don't have that extension, or for
example files without that extension are not displayed, but the first
variation
is better because the user might make a mistake in the extension, so
preferably he/she can see it the following results. Also, preferably files
that
contain the desired string closer to the beginning of the file name are
preferably displayed before files that contain it at the middle or end of the
name, but preferably, as explained above, files with the desired extension
preferably appear earlier. (Preferably the user can this way for example also
look for all the video files of one or more types, etc.). Another possible
variation is that for example the desktop search can monitor which

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 98/365
application or applications the user is currently using and take this into
account as context for the search, so that for example if the user has just
opened for example the PowerDVD program (especially for example if the
user has an open browse window in that application) and then goes to the
desktop search preferably the desktop search shows first results that are
related to video files even if the user did not indicate it, since it is most
likely
that the user will be looking for such files in this case. Another possible
variation is that for example the application itself (for example PowerDVD)
can preferably interface with the desktop search for example through a
standard common interface and for example look automatically for all the
files of certain types and thus add them for example automatically to an
automatically generated play list or for example open an internal search box
which searches for example only for video files and preferably gives instant
results as the user types the letters, but preferably gets its results from
the
indexes generated by the desktop search, preferably by communicating
directly with the desktop search application. Another possible variation is
that preferably the user can also use for example regular expressions in the
search string in the desktop search. Similarly preferably including for
example "/" signs before and/or after and/or within the string preferably
indicate searching for directories so that preferably the desktop search shows
at higher positions results which fit the desired path. Another possible
variation is that preferably if the desktop search is for example floating,
like
for example one of the common modes of the Google desktop search,
preferably the floating desktop search bar is at least semi-transparent so
that
the user can see also the text behind it, since for example normally it might
be most convenient to put it for example on the top of the screen but
sometimes this will cause obstruction for example of part of the title of for
example a web page or a word processing file (which typically appear in the
top header of the window), and/or for example when the floating desktop
search bar hides text, preferably it can be moved automatically for example
down preferably one line and/or sideways (for example by the OS or by the
security application, which are preferably the only processes that are allowed
to see the final overlay positions of texts on the screen from multiple
windows), and so preferably when the desktop search floating bar hides text
for example the OS preferably automatically finds the nearest sufficiently
empty space and moves the floating bar there. Another possible variation is
that preferably the user can preferably tell the desktop search for example to
move it's index for example to another drive or another partition, and in this
case preferably the desktop search application automatically copies the index
to the new destination and erases it from the original destination. This is
important for example if the partition which contains the windows
installation (and also by default the index of the desktop search) becomes
with to little free space. Another possible variation is that if for example
the
free space on the partition becomes too small, the desktop search (which can
be for example Google desktop search or for example Vista's inherent
indexed search) can preferably for example automatically move at least part
of the index to another partition (and preferably it chooses automatically for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 99/365
example the partition with the largest empty space for this, and preferably it
marks automatically in the new directory to which partition and/or OS the
index belongs and/or preferably it informs the user about it and/or lets the
user confirm the suggested partition or partitions and/or choose one or more
other partitions for this). Another possible variation is that preferably the
user
can tell for example a newly installed OS to use another index which has
already been created in another OS - for example by indicating the drive
letter, and/or for example when installing in the new OS, the desktop search
application or for example the OS itself (for example if this feature is
integrated in the OS itself, such as for example the indexed search in Vista)
preferably finds automatically if such an index exists already in one or more
other partitions that belong to another OS and can preferably automatically
suggest to the user to use it, thus avoiding unnecessary re-indexing if the
index was already created by a previous OS (thus saving both time, which
can take for example even a few days if the disks are very large, and disk
space), and so the new OS preferably continues to update the same index
while the new OS is run, so that when the user retums to the previous OS the
index is preferably already updated for example with the new files and
directories that the user added while working in the new OS. A similar
problem is that for example in Windows XP and even for example in vista
RC1 if the partition where the OS is installed becomes with too small free
space the OS automatically deletes the older restore points or even all of the
restore points without even warning to the user. So preferably this is
improved so that when the partition where the OS is installed becomes with
too small free space preferably the OS automatically transfers for example at
least some of the restore points automatically to one or more other partitions
(Preferably the OS chooses for example automatically the partition with the
largest free space and/or for example informs the user about it and asks the
user to accept the suggested partition or mark one or more other partitions
where restore points can be saved, and preferably the OS creates
automatically for the restore point sin the other partition for example a
directory which contains for example in its name and/or for example in one
or more files within it information about the partition of the installed OS
which these restore points belong and/or other identifiers about this OS). In
addition, preferably when showing the user the list of available restore
points,
preferably the OS indicates near each restore point the drive letter and/or
the
full path where it is stored. In addition, preferably when showing this list
the
OS also enables the user for example to copy one or more restore points for
example to any other drive and/or directory which the user desires, thus
creating an additional backup which the user can always access for example
if the OS later deletes that restore point from the OS's automatically
managed set of restore points. Another possible variation is that the user can
for example mark one or more restore points as protected, so that as long as
they are marks they can never be deleted automatically for example until the
user unmarks them. Another possible variation is that similarly preferably the
OS preferably automatically moves the swap file or one or more parts of it to
another partition if the partition on which the OS is installed becomes with

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 100/365
too small free space (and preferably chooses automatically for example the
partition with the largest free space on it), or for example notifies the user
about the problem and asks the user to choose the partition. Another possible
variation is that similarly preferably the OS preferably automatically starts
installing by default new programs into a new "program files" folder in
another partition when the free space on the OS installation partition becomes
too small, or for example notifies the user about the problem and asks the
user to choose the partition. (In all of the above variations the other
partition
can preferably be of course on any of the available disks and not just on the
same physical hard disk - if there are more than one hard disks installed, and
preferably in the new partition the relevant file or files and/or directory or
directories are preferably marked as belonging to the OS or partition which
created them or at least there is some other information which identifies the
OS and/or partition which created them). Similarly for example when
downloading one or more files in the browser, preferably the browser
calculates in advance if the free space in the target partition is sufficient
for
all the files that are currently being downloaded into it (almost always the
size of the downloading file is known in advance so the browser can easily
calculate this), and if there is not sufficient space then preferably the
browser
automatically suggests to the user to transfer one or more of the downloaded
field into another partition with more free space. Preferably the browser runs
this check for example each time when the user request to download another
file, so that preferably the total predicted space of the files that are
already
being downloaded into the target partition is preferably already deducted in
the browser's calculation from the available free space of that partition, so
that the browser preferably does not even start downloading a new file into a
partition were the predicted free space will not be sufficient but instead
preferably recommends to the user in advance a partition with more free
space (preferably the partition with the largest free space) and/or asks the
user to choose it. But since for example the size of the partition can become
smaller during the download also for other reasons (for example if the swap
file is also on that same partition), then preferably the browser also runs
this
check at least once in a while during the download even if no new files are
added (for example at least if the free space is less than a certain relative
or
absolute threshold), and if the browser finds that now the space will no
longer be sufficient to complete all the current downloads, preferably the
browser can even for example in the middle of downloading files for
example suggest to the user automatically to redirect one or more of the file
that are currently being downloaded - into another partition (and preferably
if
the user is away than, at least if the space indeed runs out, then preferably
the
browser automatically puts at least part of at least one of the downloaded
files in another partition (but preferably the entire file), and preferably
lets
the user know about it for example by an automatically displayed message
when the user returns. The switch to another partition while in the process of
downloading the file is preferably done by any of the methods described
elsewhere in this application for making such a switch in the middle of
downloading, or for example the browser transfers to the other partition one

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 101/365
or more of the file it already finished downloading. Another problem is that
for example in Vista build 5728 a problem with the sound blaster drivers can
make the OS become unable to go back to previous restore points or to
generate new restore points, giving a message that "Windows cannot create a
shadow copy do to internal error in other system components. For more
information view the event log" (and when viewing the event log the entry
shows for example "ASR Error: Failed to collect critical information for ASR
Backup. Reason: Unable to obtain disk information for device 0 (Win32 error
code Ox15)". So this is preferably improved so that even if such errors occur,
preferably the system ignores it and at least enables generating new restore
points (even for example without the problematic part) and/or going back to
previous restore points (since no new information is needed for going back to
them so there is no reason why this error should prevent going back to a
previous restore point - especially if it is a restore point which was created
before the problem started). Similarly, if the user for example wants to
uninstall more than one program at the same time (for example in the control
panel), preferably the user can mark multiple programs (for example with the
convention of shift or control pressed while selecting items) and then
preferably all the marked programs are uninstalled automatically (preferably
one after the other). Another problem is that for example in Windows XP if
there is some problem restoring the system to an earlier state then the system
merely states that the system cannot be restored to the requested restore
point
but does not give any additional data. So preferably his is improved so that
in
such cases the system also displays preferably the exact problem or problems
that prevented the restore and preferably also offers the user various
solutions, such as for example fixing the problematic element from a
different restore point, which is preferably recommended automatically by
the system, and/or for example the system can preferably check automatically
if the same problem exists in other near restore points and can then for
example recommend to the user the closest next restore point or points which
can be used without the problem. Another possible variation is that if the
user
for example requests to restore the system to a specific restore point and the
changes his/her mind even after the restore process has already started,
preferably he/she can press some abort key or for example click on some
abort icon or menu option, which preferably causes the system to instantly
stop the restore process and copy back the relevant system files from the
copy of their state before the restore operation was started, and preferably
without any reboot. This is much better than the prior art, in which the user
would have to wait until the entire restore has completed, which includes also
a reboot in the process, and the user could only then undo it or request a
different restore point. Another possible variation is that preferably the
system enables the user for example to correct or add to the description of
restore points which were already created - for example if the user discovers
later that he/she made some error in the description or forgot to add
something.

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 102/365
10. Another problem is that for example in MS Word (all versions) if the user
is within the header field and clicks on some position on the normal text of
the document the user cannot continue to work on the position he/she clicked
on in the normal text unless he/she clicks again or clicks on the close
button,
and when then the user is returned to the previous position where the cursor
was before entering the header and not to the position which the user clicked
upon, and similarly the same occurs when the user tries to enter the header
field after working on the normal text of the document (so actually the user
has to click THREE times in order to get where he/she wants in the other
field, which is very inconsistent with the normal experience of simply
clicking anywhere the user wants to go in the document. So preferably this is
improved so that a single click can let the user jump between the header and
normal text or vice versa, and preferably directly to the position on which
he/she clicked (preferably of course when the user is in the header, the
header
indeed becomes more alive and the normal text more gray to indicate that it
is a different field, as is done in the prior art, but that the hassle of
having to
click 3 times in order to get anywhere when moving between these fields is
preferably avoided by the above improvement. Similarly, for example in
Word 2007 it appears very inefficient that the user has to click on the menu
tab handles above the ribbon in order to see the related items on the ribbon
instead of being able to simply hover over it with the mouse. So preferably
this is improved so that merely hovering with the mouse over the tab handle
automatically shows the related items on the ribbon without actually having
to click on the handle, and preferably this is done instantly, without for
example having to wait for example 2 seconds over the first tab handle or
having to click on one of the tab handles in order to get started in this mode
(and/or for example the user can choose if it will work based on hover or
he/she needs to click on the tab handle) .Preferably the related items that
belong to the tab handle over which the user hovers remain visible as long as
the user does not hover over another tab handle, and this means that after the
related items appear on the ribbon, if the user wants to click on one of these
items on the ribbon the user preferably has to move the mouse through then
bottom of the current handle and thus enter the ribbon and start moving over
it to the desired item. (Although in the 2 d Technical Refresh of Word 2007
of March 13 2006 Microsoft added the ability to use the mouse wheel in
order to scroll through the tabs handles, this is much less efficient since it
is
harder to stop exactly on the tab handle which the user might have in mind.
In addition this is problematic because the scrolling ends when the user
reaches one of the two ends, so the user has to change direction each time. So
preferably this is improved so that the scrolling becomes cyclical, so that
after the last tab is reached on the right preferably the next tab is again at
the
extreme left tab, and vice versa when reaching the extreme left tab handle
when going in the other direction). Another problem is clear lack of
consistency in various items within the ribbon itself, so that for example in
some of them hovering over them will show a direct temporary effect on the
current paragraph and on others the user has to click. For example when
hovering over the style samples the preview works but when hovering over

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 103/365
the 4 alignment icons (The vertical stripes that represent Align left, align
right, align center, or align both ways) nothing happened and the user has to
click on them. So this is preferably improved so that the same rules apply for
example for all the features or at least all the similar features (for example
all
the changes that can instantly be displayed visually, such as for example
changing the alignment), and preferably all the visible effects due to
hovering
on some option become available instantly. In addition, preferably the
explanation bubbles which appear when the user hovers over some menu
options preferably appear instantly and not after 2 seconds and/or at least
the
user can preferably easily change these time defmitions. Similarly, preferably
any submenus are opened automatically when hovering with the mouse over
the options that open them instead of having to click on them (and preferably
this is done instantly without having to wait 2 seconds), so that for example
when hovering for example over the "Change style " option in the ribbon that
associated with the "Write" tab handle, preferably the submenu of the options
appears preferably immediately without having to click on it for the submenu
to show, preferably together with the explanation bubble, which preferably
becomes integrated for example at the top of the sub-menu that opens, and
for example hovering over the "Switch windows" option within the ribbon
associated with the "View" tab handle preferably immediately shows the
menu of open Word windows, or for example hovering over the "Columns"
option in the ribbon associated with "Page layout" preferably shows
immediately the pull-down menu that open, instead of having to click on it in
order to see the submenu, and then for example hovering over options in this
submenu preferably instantly shows their effect preferably on the section
with is currently visible on the screen, and for example hovering over the
option of "Chart" or "Table" in the ribbon associated with the "Insert" tab
handle preferably instantly temporarily adds a preferably small chart or table
at the current cursor position as a preview, and at the same time preferably
also shows the submenu of available table or charts, and then preferably
hovering over any of them (for example in the "Quick Tables" sub- menu)
preferably instantly changes the preview table or chart into that option, and
since this is just a preview, of course when moving to another option on the
ribbon the temporary preview table or chart is preferably automatically
removed if the user hasn't actually chosen anything by clicking on it.
Another problem is that for example when clicking in Word 2007 on the
"WordArt" option and thus creating for example 3d colorful fonts with
shadows on the marked section, these special fonts become an image and are
not further editable directly at text, so that in order to further make
changes in
this text the user has to right-click on the image and enter a special window
that enables the user to edit this text, which is inconsistent with normal
editing regardless of font shape or size or color. So preferably this is
improved so that the cursor can be moved to any position within this text by
normally clicking on it an then preferably the user can edit this text
normally
in place like any other text (such as for example deleting or adding
characters
at the position the cursor is on. (This is preferably done by creating instead
of
a joint image for the entire marked text, a separate image for each character

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 104/365
(or for example 2-3 characters if the shadow for example effects also for
example the next 1 or 2 character on the right), and preferably updating only
the affected characters on the fly as the user types, so that the other
characters
after that are merely shifted in position and do not have to be redrawn. And
preferably, like the above examples, preferably the available styles of the
"WordArt" option on the ribbon are preferably shown instantly when the user
hovers with the mouse over this option, and then preferably hovering over
any of the actual styles in there is preferably instantly shown as a preview
over the currently marked section of the document (if no section is marked
then preferably for example only the current word or line is affected).
Similarly preferably for example when hovering over the various watermarks
available preferably a preview of the watermark on the viewable text is
preferably instantly shown without having to click on it, and in addition
preferably the user can also choose for example the color of the watermark.
Similarly, preferably for example hovering over the Italic or boldface or
underline icon preferably automatically shows a preview of that style for
example on the current marked section or for example on the current word or
current paragraph, etc. Another possible variation is that for example if no
specific section is marked then preferably all or most of the preview effects
the entire section that is currently visible on the screen (preferably until
the
new formatting fills the screen - for example if the fonts become bigger).
Another problem is that since the ribbon can change fast and there are many
submenu options, the user might at first forget how he/she reached some
options that he/she already found. So preferably the user can for example
click on an icon or top menu option which opens some command history
which preferably opens in a pull-down menu and preferably shows the user
automatically the most recent commands that he/she used, preferably sorted
automatically by recency and/or by frequency of use (which is also good of
example simply for faster access even of the user does remember how to
reach these commands). Another problem is that for example Word 2007
allows the user to save documents as pdf files, but when reopening such
saved files or other pdf files the user cannot edit them anymore. So this is
preferably improved so that preferably pdf files that are opened by Word are
preferably automatically converted to a normal doc format which can be
edited, and/or for example when saving a Word document in pdf format
preferably additional information is automatically saved which complements
any additional data that might be needed for editing the file (for example
within hidden comments within the pdf file and/or for example though
separated linked files). Another possible variation is that for example if the
user tries to open for example a word processor file or for example a video
file and does not find it for example because he/she does not remember the
correct directory where it was saved or the exact name, preferably for
example the word processor or the video playing application (or other
relevant application) or the dialogue box can preferably automatically for
example look for the file in all the other directories which the user recently
edited or saved such files in or at least in the directories which the user
most
frequently used (preferably this list is kept automatically for example by the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 105/365
word processor or by the relevant OS service) and can preferably
automatically show the user any other such directories where the file does
exist, or for example this automatically activates the desktop search for the
file and/or for example displays all the directories where such a file or a
similar file exists, for example based on the application or the dialogue box
automatically querying also for example the desktop search in such cases.
11. Another problem is that for example when creating an automatic table of
contents in Word the user can only create one such table since there is no
way of marking headers for a separate table, so for example the user cannot
generate this way also an automatic list of all the tables and/or figures
separately from the normal table of contents if the user wants also the table
of
contents. So preferably this is improved so that the user can create
automatically more than one table. This is preferably done for example by
letting the user use a different header style for example for items that go to
the separate list of tables or figures and thus these items will not show up
in
the nonnal automatically generated table of contents. Another possible
variation is that the list of tables or figures can preferably be generated
automatically by the word processor itself without the need for the user to
use
a special header style for those entries. This is preferably done by simple
heuristics so that for example any fully underlined paragraph which starts
with the word "Table" or "Figure" or "Fig." and especially if it consists of a
single sentence and/or is center-aligned and/or is followed by an image is
preferably automatically picked up when the user requests to generate or
refresh the automatic list of tables/figures (preferably also with automatic
page numbers) and preferably the user can for example go over this list and
remove any items which were added there by mistake which the user does
not want where or for example right-click explicitly on some line in the
normal text of the document which should have been added to the list and for
some reason was not picked up automatically and for example choose an
option from a menu to add it to the list of tables/figures, and then the word
processor preferably remembers these additions or deletions an keeps the list
accordingly also when next refreshed. Preferably there is a default list of
default rules, such as for example starting with the words "Table" or "Figure"
or "Fig." and being at least underlined or for example also having to be
center-aligned, and preferably the user can go over the list and for example
mark or unmark each of these rules or add additional rules or change the
catch words instead of "Table" or "Figure" etc. (In case of a bilingual word
processor, such as for example Word in the English-Hebrew version,
preferably the parallel Hebrew words are also pre-selected there and the user
can also change them if needed). Another possible variation is that normal
automatic table of contents can also be generated automatically by using
similar heuristics without the user having to format any lines in advance as
headers, for example by the word processor picking up automatically all 1-
sentence paragraphs that are underlined from their start, and/or only lines
which start with digits and/or single letters separated by dots. Since the
menu
hierarchy is typically reflected already in these letters and digits at the
start

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 106/365
of such lines preferably the hierarchy of the table of contents is also
created
automatically from this, and if there are any mistakes the user can preferably
correct it easily for example by dragging an item in the automatically
generated table of contents left or right in order to represent its proper
level
in the hierarchy, and then preferably the word processor remembers this
automatically and keeps it at the moved items at the correct level in the
hierarchy the next time the table of contents is refreshed, unless the user
changes it again explicitly or for example changes the letters or digits at
the
beginning of the relevant line in the actual text. Another possible variation
is
that an automatic index with page numbers, for example for the end of books,
can be also similarly automatically generated without having to mark any
specific words for it. For this preferably the word processor has a pre-
defined
list of Ignore-words (such as for example "a", "the", "I", "you", "he", "him",
"her", etc. and other common expressions which should not normally be in
an index, and when the user requests the automatic index, preferably all the
words which are not in the Ignore-list are automatically indexed with page
numbers. The user can then preferably go over the index and delete any
undesired words or for example go over the pre-defined list of Ignore words
and add or remove words from it, and preferably when the user removes
words form the index they are preferably added to a specific Ignore list of
that particular document (but preferably not the general Ignore list which
will
be used for other documents unless the user for example requests that
explicitly or requests to make the local list global) and thus are not picked
up
again when the user requests to refresh the automatic index. This is much
more efficient than the current prior art, where the user has to manually
explicitly mark words which he/she wants to include in the index, and the
index generated by the above methods is much more complete and useful.
Another possible variation is that for example this index of words with page
numbers can be automatically generated for documents for example by
activating for example the Google desktop search or a similar application on
the document and requesting an automatic index with pages, and/or for
example the desktop search automatically keeps also page numbers for words
found when indexing documents. Another problem is that for some reason
for example in word 2003 the user cannot change the left and/or right
margins of the table of contents without screwing it up or change for example
the line spacing within the table of contents (for example 1.5 line-spacing
instead of single spacing) without being reset the next time the user
refreshes
the table. So preferably this is improved so that the user can change these
parameters for the table of contents and they are preferably remembered so
that the next refresh keeps the new margins and line spacing until the user
changes them again (preferably this change is automatically corrected to keep
the original ratio of the line spaces in the table of contents, so that for
example if there is an additional line space for example between entries that
are on the highest level of the hierarchy then preferably these spaces are
automatically increased by the appropriate factor. Another possible variation
is that the user can for example enter a command which enlarges or reduces
the fonts in the table of contents by a given factor (for example by 10%, 20%,

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 107/365
or other ratios) while preferably keeping the hierarchy of larger and/or
otherwise more conspicuous fonts for higher levels in the hierarchy. For this
preferably the word processor automatically picks for each level in the
hierarchy the nearest font type and/or style (for example bold or not bold,
etc.) and/or size in order to keep as close as possible to the appropriate
ratios.
Another possible variation is that the user can for example specify,
preferably
globally for the entire document, for example the exact font type and/or size
and/or style for each level in the hierarchy, which preferably changes
automatically all the relevant entries in the table of contents itself and all
the
relevant lines in the document itself. Another possible variation is that for
example even without the automatic table generation preferably the user can
mark relevant lines much faster than having to mark the whole line and then
choose a style for it - for example by merely right-clicking anywhere on the
line and choosing for example "add to table of contents" or "add to list of
figures" from the menu that appears and then preferably the entire (preferably
underlined) line or 1-sentence paragraph is chosen. In addition, preferably
the
word processor keeps track of what the user is doing and it for exaxnple the
user is jumping over the document and marking lines for the table of contents
then obviously the user is trying to focus on building the table and therefore
preferably the word processor offers these options for example on the top of a
menu that preferably appears for example when right-clicking on the line
and/or for example the menu becomes positioned so that the most likely
option or options (for example according to the last few choices of the user)
becomes automatically aligned near the clicked line, so that the user only
needs the minimum mouse movement in order to choose that option
(preferably this is done by shifting the menu itself up or down to appear so
that the most likely option is closest to the line, but preferably without
changing the order of the options within the menu, since the user might
remember the original order in which the options usually show in that menu
and thus changing the order itself might be confusing)(This can be done also
for example with the normal prior art marking of headers, but as explained
above the above variations are better and more efficient). Another possible
variation is that the user can for example first generate a single table of
contents normally and then for example mark multiple entries there (for
example by pressing Shift for clicking with the mouse on a range or pressing
Ctrl for clicking on single additional entries, and thus the user can for
example mark all the entries that should be removed to the other automatic
content - for example the list of tables and for example choose a menu option
that moves them, and then preferably the word processor creates the other list
and moves the marked entries there and remembers this so that when the user
activated the next refresh the moved entries remain in the other list unless
for
example the user moves them back again. In addition, preferably when the
user hovers with the mouse within the normal text of the document over a
line which belongs for example to the table of contents or to the list of
tables
& figures, preferably a small bubble or other visual indication shows up
which indicates that it belongs there, or for example all such lines are all
the
time automatically visually marked with an indication that they belong to

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 108/365
some table of contents (such as for example automatically surrounding them,
with some rectangle or color or other preferably conspicuous visual
indication. Of course various combinations of the above and other variations
can also be used. Another possible variation is that preferably the user does
not have to manually update for example the table of contents every once in
while but instead it is preferably updated automatically. In order to do this
efficiently preferably the word processor updates it for example whenever the
user jumps to the area of the table of contents in the document and/or when
he/she requests to print the file or to save it (unless of course there were
no
relevant changes since the last saving or printing) or for example whenever
there are changes in page numbers which make any of the lines that belong to
the table of contents move near the page borders (for example by tracking
their position) or whenever the user changes any of these lines themselves.
Since the update usually takes only about 2-3 seconds, even if the user has
for example just jumped to the area of the table of contents, by the time the
user starts actually reading it the table can be already updated. Another
possible variation is that for example when the user right-clicks within the
word processor for example on an image that was inserted from a file
preferably one of the available options in the menu is to show the path and
name of the file from which the image was inserted. Another problem is that
for example when the user splits the word processor into two windows of the
same open file, for example in Word, the split can only be done vertically, so
that one window is at the top of the screen and one at the bottom, which gives
only limited view. So preferably this is improved so that preferably by
default (or as a choose-able option) the split can be created into a separate
tab
or separate window (which has the additional advantage that preferably even
more than one additional window or tab can be opened of the same file) and
the user can preferably switch between them for example by the normal Alt-
tab or Ctrl-tab instead of having to click each time on the other. In this
case
preferably the tabs or windows which are split views of the same document
are preferably specially marked as belonging to the same document, such as
for example a separate color and/or other identifier compared to the other
windows or tabs. Another problem is that for example when using AZ or ~Y
in one of the split views after doing something at the other, the position
jumps to the other split view, and also some changes fn the first view can
shift the position in the second view, which makes it hard to keep track of
the
desired position. So preferably this is improved so that preferably any
changes in one of the views do not change the position in the other view
unless for example the text visible in second view itself becomes for example
deleted or changed, and preferably there is a separate undo and redo buffer
for each split view, so that preferably they behave like two independent
windows or tabs, except that changes in any of them are preferably updated
simultaneously also in the other view. This is of course even more natural in
combination with the above variation of making the split into as separate
window or tab.

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 109/365
12. Another problem is that for example in Windows XP when the "all
programs" pop-up list which is activated through the Start menu becomes
full, additional programs are just out of the screen and are not shown at all,
which can be very annoying and/or confusing. Although the user can ask to
sort the programs alphabetically instead of by order of appearance, this does
not help if the newly added programs start for example with a letter too far
away in the alphabet, and anyway, this is not a real solution since either way
some programs will still remain out of view. Another possible variation, as
mentioned elsewhere in this application is for example to enable the user to
sort the programs for example by descending order of recency so that the
most newly added programs appear first, and/or for example to choose this as
the default order also for the programs that will be later added, however this
again still does not solve the problem of having at least some programs
become invisible (Similarly, when choosing for example alphabetic order
preferably new items are afterwards automatically added according to this
sorting order without the user having to request to sort again alphabetically
after they are added, unlike the current XP, in which even after sorting them
alphabetically new programs are still added at the end). So preferably this is
solved for example by creating in such cases automatically for example a
horizontal bar which moves to scroll the list of programs sideways, and/or for
example if the user moves the mouse for example to the right edge of the
screen the list scrolls automatically to show what is next on the right, and
preferably there is an indication in advance that the list extends beyond the
edge of the screen. Another possible variation is than the system can for
example automatically enable adding more programs for example by
automatically reducing the width of each column for example in advance or
on a need basis (for example by automatically folding long names into two or
more lines and/or showing only part of them (and in such cases for example
when the mouse hovers over them preferably the whole name for example is
preferably instantly shown for example in a pop-up bubble), and/or for
example making the letters at least in the long names automatically thinner
and/or smaller, and/or for example automatically reducing the distance
between the lines of text in the list of programs. Of course various
combinations of the above and other variations are also possible.
13. Preferably the user can logically disable or change the function that
pressing
various keyboard keys has on the OS and/or on any programs that are
running, such as for example the "Windows" key, since if the user is working
for example in text mode in a DOS window, pressing for example by mistake
the "windows" key causes the display to switch and can be very aggravating.
Similarly, if the user buys for example a new keyboard and some keys (such
as for example the ESC key or the CTRL key) are not in the place that he is
used to, preferably the user can simply redefine these keys, for example by
marking the changes on some virtual keyboard that the system displays, so
that for example these keys will switch places, and then the user only has to
switch physically for example the external plastic caps of the keys that he
changed logically (or for example glue new labels on them), and then the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 110/365
change is complete (This means that preferably the keyboard keys are
mapped though the inner conversion table). Another problem is that for
example in portable computers some keyboard keys do not exist, such as for
example the side keypad, which can be very inconvenient to users that are
used to it, and also for example in some text editors the side '*' is the Undo
button and for example the side '-' key copies and deletes a line, but the
normal '* and '-' keys don't have this function. So preferably the user can
also redefine for example some keys for example on the right to become for
example the keypad keys - but for example on condition - for example when
another key is pressed or some switch is moved, and/or for example the
keyboard in the portable computer is defmed like this in advance and
preferably the relevant keys have also the additional keypad marks on them,
or for example the original '*' and '-' automatically become the keypad keys
when the other key or switch is pressed. Another possible variation is that
the
user can for example add to the portable computer (for example when it is
used on a desk) for example a mini-keyboard which completes for example
the side keypad and/or any other keys - for example using the normal plug
that enables adding a keyboard to the portable computer, except that
preferably the complementary keyboard for example sends a special code or
for example has a somewhat different configuration of the connector, that
tells the portable computer not to regard it as a replacement keyboard that
disables the portable's built-in keyboard but regard it as adding certain keys
to the internal keyboard. This can be more convenient and space-saving than
adding a full keyboard that is used INSTEAD of the portable's built-in
keyboard.
14. Preferably the dynamic linking possibilities are improved so that the user
can
call and use any Windows DLL from a DOS program (preferably in an
extended DOS environment) and/or vice versa, so that preferably the two
environments are integrated seamlessly in memory, so that Windows
modules and DOS modules can preferably transfer data between them
without having to use for example intermediary file storage. This way, for
example a program that needs to use the TWAIN interface to work with
various scanners can for example have one or more modules that run in the
Windows environment and can for example connect to the TWAIN DLLs
and for example have also one or more modules that run in DOS mode
(preferably extended DOS) and can thus have backward compatibility for
example with absolute memory addresses or other functions that are available
only in DOS mode. This can be done for example by defming appropriate
stubs and/or API interfaces that bridge between the two types, including for
example any necessary conversions that are needed for compatibility, and/or
using for example various sockets and/or client/server connections within the
same computer.
15. Another preferable improvement is that for example when Faxes are received
directly into the computer by a fax card, preferably the Fax program and/or
the OS is improved so that if for example a fax-transmission has been cut-off

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 111/365
because of some error and the sender wants to send again only the remaining
pages, preferably the program and/or the OS can automatically identify this
(for example by identifying that this is from the same source and within a
short time after the previous fax), and then preferably the continuation fax
is
appended to the end of the previous fax and/or the program at least groups
them together and/or notifies the user that two or more faxes appear to be a
continuation of the same fax from the same source. Another possible
variation is that the receiving fax card can for example automatically return
to the user (preferably by improving the communication protocol so that this
feedback can be received without having to call back the user) a unique
return code that preferably includes a time and date stamp and a serial
number of the communication (as described also in US patent application
10/756,839 by the present inventor), and preferably the user can add this
code on the continuation of the fax, for example preferably digitally (if the
fax is sent from another fax card, or for example as an additional code at the
end of the dialed phone number if the protocol is improved to enable this), or
for example as a printed number at the top of the first continuation page,
together with a code that indicates that this is a continuation (in which case
preferably OCR is used to identify this). Another possible improvement is
that if the user for example sends by mistake in a normal fax or for example a
combined fax-scanner-printer a page that is with the printed side facing away
from the side that is scanned (unless for example if it is a double-side fax
that
can read both sides of the page simultaneously), preferably the system
automatically warns the user that the page is empty on the scanned side
(preferably the system determines this for example according to some
threshold values). Another possible variation is that the user can for example
choose an option on the fax menu which automatically also prints a
photocopy of each fax page while it is being sent (or for example keeps it in
memory and prints it for example immediately after the page is sent or for
example after the entire fax is sent, or for example sends a copy of the faxed
pages to the user's computer so that the user can for example view them on
the screen and only then decide if he/she also wants to print them and/or for
example keep the copy in an archive) and thus the user can immediately see
exactly how the page was scanned and for example see immediately if there
were any scanning problems. Another possible improvement is that if the
user has for example a combined fax-scanner-printer connected to the
computer preferably the OS is able to send faxes also directly through the
attached fax-printer by sending it the data and telling it send is as fax
instead
of printing it. That is preferably done together with an appropriate
enhancement in the attached fax-printer (preferably this is done by a simple
change in the firmware of the all-in-one scanner/fax/printer and/or by adding
the appropriate software to the computer). The pages can be converted to a
fax image in this case for example by software in the OS or by the fax-printer
itself. This has the advantage of better quality than scanning a printed page,
and is useful for example if the computer does not have a modem/fax card
installed in it or if the external fax/printer is faster than the fax/modem
card.
Another possible variation is that the user can for example use the combined

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 112/365
fax/printer/scanner and/or for example even a normal scanner to send faxes
directly through the Internet, preferably through the computer's Internet
connection. This is preferably done, again, by a change in the device's
firmware and/or by adding the appropriate software to the computer. This has
the important advantage that the user can preferably send faxes directly and
instantly the same as he/she would be sending them through a normal phone
line, except that preferably the fax is sent through the Internet and is
preferably sent to the receiving fax either directly also through the Internet
(If
the other fax is also connected to the Internet), or for example through a
local
gateway that converts it to a normal Fax transmission through a local phone-
call, or for example it is received directly into a computer on the other
side.
(Of course, if the file exists for example as a Word document on the user's
computer then using the scanner or combined scanned/fax/printer is not
needed, however the main reason that people send a Fax instead of an email
is typically to send a document that contains a signature or a document which
does not exist on their computer). Preferably the user can for example add
some special prefix to the phone number, which indicates to the sending fax
that the call should be routed through the user's computer, and then for
example, instead of really dialing, the image is sent to the computer for
example through the USB or other connection that exists between them.
Another possible variation is that the user can for example use a fax card or
for example a combined fax-scanner-printer which is connected to the
computer in order to send one or more pseudo fax images which are actually
digital data (such as for example one or more pdf files or other convenient
formats). This can be done for example by a special software that nms on the
computer and/or for example by some firmware change for example in the
all-in-one fax-scanner-printer, so that the computer can send to the fax-
scanner-printer for example the special digital file or files for example
alone
or together with real images or scanned images (for example if some scanned
cover forms or other scanned images are also needed), and when it is
transmitted by Fax the sending device preferably uses a special code to tell
the receiving device that one or more pseudo page images are actually a
digital file, and preferably the receiving fax is either a computer with a
fax/modem card or for example a combined fax-scanner-printer which is also
connected to a computer and thus can transmit the digital file to the computer
as a digital file, and preferably if a normal fax machine that can't handle
such
files responds then the sending device knows that the transfer of digital
files
is not possible and preferably issues some error code and aborts or
automatically sends instead also the digital file as normal fax images. This
can be used for example for sending applications or other documents to
patent offices by Fax (which can, enable for example user identity
confirmation by the telephone's caller ID, without having to deal with digital
signatures, etc.), while allowing high speed transfer almost at the same
speeds of sending email, Even if the file contains for example a 100 pages,
whereas a normal fax of such size might take even half an hour or more and
involves the risk of for example some lines not being scanned properly
without the sender even knowing this, and of course it also saves wasting of

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 113/365
time on OCR recognition at the receiving side. Preferably this is
accompanied by transferring also one or more CRC codes and/or other
integrity data, so that preferably the connected computer on the receiver side
(and/or for example the CPU of the receiving device itself) checks if the CRC
and/or other integrity data fits the actual file that was received, and, if
not,
preferably tells the receiving device to return an error code so that the
sending device can try to resend it. Another possible variation is that the
sending device can for example automatically split the digital file or files
to
multiple sections if for example the file is too large for the desired size of
each pseudo page-image. Another possible variation is that the two devices
can automatically recognize each other, preferably already during the
handshake, as having more than Fax communication capabilities, and thus for
example can automatically (preferably at least when it is more suitable)
switch to some other electronic file transfer protocol between them which is
preferably more directly oriented to exchanging digital files. Another
possible variation is that for example the fax logs automatically indicate
near
each communication for example also the resolution that was used in the
transmission (for example standard, fine, super-fine, photo, etc.) and/or for
example if the fax was in B/W or in color. Of course, various combinations
of the above and other variations can also be used. Of course, like other
features of this invention, these features can be used also independently of
any other features of this invention. Another possible variation is that when
sending a Fax the sending Fax machine can preferably enter automatically
into the sent page (and/or also display to the sender) the local time and date
of the receiving Fax (for example by reading it from the receiving fax or for
example by reading it automatically from the phone company or for example
from the Internet, for example according to the called number). Another
preferable improvement is that preferably the receiving fax machine (for
example a normal fax or for example all-in one devices that contain a fax) is
programmed by default (and/or at least the user can choose this option) to
respond with fax sounds only if fax sounds are heard in the incoming phone
call. This is very important since when the user needs the same line for fax
and voice, if the user does not answer fast enough (for example if the fax is
set to answer at the 5th ring and the user did not reach the phone fast
enough)
the Fax machine on the same line will interfere even in voice calls. Although
the normal Fax protocol has been that the calling fax is supposed to wait for
fax sounds from the receiver side of the phone call before making its own fax
sounds, modem fax machines make these sounds when calling even if there
is no fax sound on the receiving side, so, if the user chooses this option or
this is the default, the only price is that some old stupid fax machines might
not be able to send faxes to the receiving fax when the receiving fax is set
in
this mode, but it solves the problem of the user's fax interfering with
incoming voice phone calls. Another possible variation is that the receiving
fax is improved so that it is preferably able to automatically identify voice
calls and thus avoids making fax sounds if it identifies for example human
voice and/or stops immediately and gets off the line even if it started making
fax sounds, as soon as it identifies. the human voice. Another possible

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 114/365
variation is that for example if the fax and/or the computer or other
computerized device can also record voice messages, preferably the user can
define routing of phone calls to separate virtual boxes according to the
incoming phone number or numbers (for example according a list or lists of
specific numbers, and/or according to ranges of numbers or even patterns
with partial wild cards), and/or for example also according to voice patterns
(such a for example pitch or other heuristic patterns that differentiate best
between individuals), so that for example calls from a specific person can be
automatically routed to a different area even if he/she hides his caller id.
Of
course, like other features of this invention, these features can be used also
independently of any other features. Another preferable variation is that
preferably the ability of the scanner/copier to overcome wrinkles in papers or
for example overcome the black stripe that appears when scanning or
photocopying books when the user can't press the book down strongly
enough - is improved, preferably by adding at least one more light source in
the scanner, so that shadows are automatically reduced. Another possible
variation is that for example when using previous applications as basis for a
new application for example in the EPOline software, preferably all the
original data (including for example the details of the applicants and/or
inventors, address for service and/or agent, and/or even for example priority
data and/or the attachments, so that preferably the user can change or remove
things if needed but can preferably use as much as he/she needs from the
previous application, since in the prior art EPOline software the user has
actually to refill everything from scratch even when "reusing" the pervious
application as basis for the new application.
16. Another problem is that when the user searches for programs in the "Start
menu" the installed programs are typically sorted by the order they were
installed, and so in order to find a specific program the user might have to
scroll over a large list if there are many installed programs. Although the
user
can for example request the System to automatically sort the list of installed
programs in the start menu for example by alphabetic order, preferably the
user has also additional options, such as for example to jump automatically to
a given program in the list for example by typing the first letters of its
name,
and/or for example the user can enter a search string and the system looks for
example for names that are at least similar to the desired name (in which case
preferably all the similar names are displayed, preferably sorted by
descending similarity to the search string), and/or for example the user can
request to sort the programs there according to reversed date of installation,
so that the latest installed software appears first, etc. Another possible
variation is that there is for example a special log of installations of
programs
according to the order in which they were installed, which for example the
OS or the security system can keep automatically, even if for example the
program has not added itself to the list of programs of the start menu or to
the
desktop, which has the advantage that the user can easily fmd programs also
in this case and/or find out for example about installations that occurred
without his/her knowledge (this of course can work very well also with the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 115/365
rollback possibilities discussed elsewhere in this application. Another
possible variation is that the user can for example request automatic sorting
of the programs according to types, such as for example programs that deal
with DVDs, programs that deal with music, Internet application, editors, etc.,
for example in the list of installed programs and/or on the desktop, which can
be done for example by adopting a convention where each program contains
such meta data about its main function and/or for example the system finds
this info automatically for example according to the program's name in one
or more Internet Databases. Another possible variation is that the user can
for
example move or copy for example functions that are available when clicking
the left mouse button for example over the start menu (such as for example
"explore") to be available (in addition or instead, but preferably in
addition)
also when clicking with the right mouse button, or vice versa. This is
important because sometimes the user does not remember if a certain option
is available for example with the right click or with the left click or
prefers
for example that at least certain functions will be available for example by
both clicks. Another possible variation is that for example when the user uses
the explore window he/she can preferably for example add for example on
the top line for example the file name with wild cards (for example
f:\commnet\bet*) and then the explorer window preferably shows only the
files who's names fit the pattern, for example like in the file open or save
dialogue box. Another possible variation is that for example in the explore
window and/or in the Open or Save file dialogue box and/or for example in
CMD windows and/or for example in the Google desktop search or similar
Vista indexed search, preferably the user can also use wildcards also for a
drive letter and/or for the path or part of it, so that for example if the
user
types in a CMD window "dir ?:\mplayer' or "dir :\nplayer" it will show all
drive letters which have a top-level directory named mplayer, and if the user
for example enters in the top line of the Explore for example 'f:\comm*\bet*'
it will list all files that fit the pattern which are in all the directories
which
start with "comm" in partition f.(or preferably for example even if it is in a
subdirectory of such a directory). Similarly preferably for example in a cmd
window preferably the user can for example use wildcards for performing cd
into a long directory name, for example by typing 'cd prog*', and preferably
if there is more than one directory name which fit the wildcard then
preferably the system for example shows the user the list of directories which
fit it and asks him/her to choose. Another possible variation is that the user
can for example type in a cmd window 'cd' followed by a directory name
even if it contains spaces without the need to surround it in brackets, since
the OS can know from the context that this is a directory name and that there
are no additional parameters to this command and thus preferably interprets it
intelligently as if the brackets were there around the entire directory name.
However the above variation of being able to use a wild card is of course
more preferably since it can save much more typing especially if the name is
long, and so is the option of simply clicking on the directory name with the
mouse, as explained elsewhere in this application. Another possible variation
is that preferably the user can use wild cards also for example when choosing

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 116/365
files for burning on a CD or DVD, for example in programs such as Nero.
Another possible variation is that the user can also for example use a date
filter with the 'dir' command, such as for example 'dir bet*
after=01/10/2006' or other similar formats (for example similar to the way
that such date filters can be used with the pkzip program). Another problem
for example in the new explore window of Vista is that since the top line now
shows a series of elements, if the user wants to enter directly a path there
he/she typically has to click on it first multiple times with the mouse before
it
will accept directly typing in the path. So preferably this is improved so
that
even a single click on this line is enough and then the user can directly type
the path. Similarly, preferably the user can use this typing for example on
the
desktop, and then preferably the system for example displays the list of
closest names as explained above and/or for example automatically indicates
the most relevant icons, for example by making them brighter and/or making
them move or flash and/or drawing visually attention to them by any other
means. For example in Windows XP if the user types a letter on the desktop
the system jumps to an icon beginning with that letter but when the user
types the next letter the system jumps again to an icon beginning with the
newly typed letter (and if the user repeats the same letter then the system
jumps to additional icons which begin with that letter), instead of jumping
according to a sequence multiple letters, so that if the user for example
wants
to repeat a search preferably another command is used. Also, preferably the
chosen icons are conspicuously marked (for example by stronger light and/or
flashing), since just darkening the icon a little bit like Windows XP does is
not conspicuous enough so it takes time for the user even to notice what next
icon is marked. Another possible variation is that for example the OS and/or
for example some other software) can for example automatically change the
color (and/or other attributes) of the text near the icons on the desktop,
preferably for example in a way that creates maximum contrast according to
the colors of the background at that specific location (For example the Azul
background of Windows XP has some areas which are too bright for white
letters and some areas which are too dark for black letters, but in Windows
XP the text of the icons is always white). This can be done for example by
choosing automatically black or white and/or other colors according to which
has the better contrast with the local background and/or for example using
some automatic XOR function. This can be done for example automatically
for every pixel or group of pixels in the text and/or for example per letter
or
per word and/or for example all the text of the same icon has the same color,
which means that in this case preferably for example the average background
is taken into account and the average best contrast color is chosen for
example for the letter or the word or the entire icon text, etc. Although
Windows XP partially solves this by using some slight darker shadow below
the white letters, which helps see it also on whiter parts, this can still
cause
fatigue to the eyes and make it harder to see since for example black on white
is usually easier to recognize cognitively than white on black, and also the
duplicity of the shadow can create some inconvenient feeling of lack of
focus, and also but the user cannot choose a different color or for example

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 117/365
sets of more than one colors. Although there are some utilities that allow the
user to change the text color, as far as I know the choice is just one color
for
all the text. Therefore, another possible variation is that for example the
user
and/or for example the OS (and/or other software) can for example choose
also to display text in different sets of more than one color for example by
letting the user choose which color to use for the text and for example which
for a shadow (or for example other effects) and/or for example the OS can
choose two such colors automatically, for example according to any of the
above methods. Another possible variation is that the user can for example
change the color of the taskbar and/or for example choose between various
skins for example with different patterns for example for the taskbar and/or
for example for other elements on the desktop, such as for example the start
menu. Another possible variation is that for example when Stereo display
becomes available, for example the text of the icon and/or the icons
themselves can be made to look as if they are for example protruding from
the desktop, and/or for example such protrusion can be used as one of the
options for emphasizing text for example in word processors and/or Internet
browsers. Another possible variation is that the user can also change for
example the color of the text that shows for example on taskbar items, so that
for example the user can choose black instead of the normal white, which is
easier on the eye (preferably this is made available for example as one of the
menu options for example when right-clicking on the taskbar). Another
possible variation is that for example a stereo view web camera (preferably
with at least 2 lenses - right & left) or pair of cameras (or more than 2) can
be used to automatically generate a 3d model of the user's body for example
for avatar representation in various virtual meetings and/or for example for
measuring clothes for online shopping of clothes. Of course the user can
preferably use also an application which enables various fine tuning of the
body features, but preferably the general image is automatically generated
this way.
17. Another possible variation is that for example the user can preferably
enable
or disable for example Cleartype separately for various uses or contexts, so
that for example the user might want to activate it for example for Word
documents and/or web pages but not for some other applications, or for
example activate it for everything except for example the text near the icons
on the desktop, since that text already comes with a shadow and the
Cleartype makes the shadow even more conspicuous, which some people
may find annoying, and/or for example when Cleartype is used preferably the
OS automatically corrects for example by making the shadow thinner or
otherwise less conspicuous, and/or for example the user can define,
preferably in general or for example for each type of application or section
or
context, for example not only if to use Cleartype or not but also for example
to what extent to use it, so that there are for example a few possible levels
of
it (for example with varying degrees of making the fonts fuller or thicker).
For choosing these separate settings preferably these different options are
added for example to the normal menu in which the user chooses between

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 118/365
standard fonts or Cleartype, and/or for example by right-clicking on the text
of an icon on the desktop or for example in other applications the user can
for
example change the Cleartype setting for example only for text of desktop
icons or for application of the same type, and/or the user can preferably
toggle between Cleartype to standard fonts instantly without going through a
menu, for example by pressing control-R or some other character, and then
preferably the chosen mode becomes the default for example for other
windows of the same application and/or for similar windows. Another
possible variation is that the user can for example change for example the
brightness and/or contrast and/or saturation and/or color and/or for example
gamma correction (and/or other color and/or brightness parameters) for
example separately for different elements in the user interface, which is very
important since in many monitors for example the desktop looks best with a
certain amount of color and/or contrast and/or saturation and/or gamma
correction, but for example text windows such as for example Word
documents or web pages, which contain mainly black text on a white
background, typically need a lower brightness or contrast and/or lower
gamma value than for example images in order to avoid eye strain, and/or for
example images for example within web pages and/or in other applications
need for example higher brightness and/or contrast and/or higher gamma
value, and/or for example DOS or cmd windows look better with a different
brightness or contrast. So preferably the user can for example set a separate
brightness and/or contrast and/or saturation for example to the taskbar,
separate to the desktop, separate to Word and/or web documents, separate to
images, separate to dos or cmd windows, etc. (Preferably this is done for
example by adding such options to the display setting menu, and/or for
example by right-clicking on each such element these settings can be
changed separately for it and preferably automatically also for similar
elements). This means of course that the definition preferably goes logically
with the appropriate element, so that for example if the user increases or
reduces the size of the taskbar then preferably its color and/or brightness
and/or contrast and/or gamma and/or saturation definitions automatically
carry on to any new space it occupies. The implementation itself of such
different settings for different elements can be done for example by the
display card driver or by improved drivers of display cards which can add
such parameters separately to different parts or areas or pixels of the screen
and/or for example by passing all the display through an intermediate
underlying layer (for example in the OS or in the display card's driver) that
adds the appropriate correction for each element, for example by choosing
automatically for each pixel or each area of pixels (for example rectangles,
etc), a different color or color correction which approximates the effects of
the desired logical parameters (this can be for example the same underlying
layer that is used in vista for the vector graphics rendering of everything
and
which can be used for example also for the resolution Independent User
Interface), and/or for example by improved hardware and/or firmware in the
monitor itself which enables receiving different instructions for different
pixels or for different areas on the screen (preferably after the underlying

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 119/365
layer has translated the logical areas into actual physical areas) and/or for
example by the OS changing directly some of the relevant elements to fit the
requested parameters, such as for example the bottom task bar. Another
possible variation is that for example the browser itself preferably adds the
desired gamma correction automatically to the images that it embeds within
the displayed web page, preferably while keeping the gamma correction of
the text areas lower, however this can be easily done for example by the OS
itself since the OS can easily identify text areas separately from image areas
(since writing text is usually based on calling the relevant OS services).
This
is much better than the prior art, in which the user can change such settings
only once for everything (or for example there a separate setting available
only for Video overlay), because normally there is no single definition of
these parameters that is good for all of these categories, the shared settings
of
the prior art means necessarily that the user has to compromise on many
elements and thus views them in a sub-optimal way. In terms of productivity
this seem much more important than for example using Cleartype or a normal
font, since full strong black letters with a background that does not blind
the
user can lead to much more productivity than grey letters and a background
that is too bright and thus blinds the user. In fact, it actually helps
getting
much more out of Cleartype fonts, because being able to set the parameters
of text separately in an optimal way (for example with lower brightness and
lower gamma value) enables seeing the fonts as solid black eventhough in
reality the Cleartype uses various shades to fill the gaps in the contours of
the
fonts. For example when browsing on the Internet there is typically a mixing
of images and text on most web pages, so these different settings can enable
the user to see both the text and the images at optimal levels. Another
possible variation is that for example when there is a different setting for
video overlay, preferably at least by default until the user changes it, the
saturation and/or brightens and/or contrast and/or gamma level etc, of the
video overly controls are preferably automatically applied also for exainple
also to photographs or web images, since typically there should be no
difference if the images are stationary or moving. This can for example help
the user make the most even of old monitors in which there is less flexibility
to change such parameters when changed globally for the entire screen, and
help the user achieve even better results on better monitors, thus being able
to
reach the optimum on each category without the normal necessary trade-off.
Another possible variation is that for example the word processor and/or for
example the browser preferably allow the user to choose for example the
color of their normal white background to become for example different less
dazzling shades of white, for example from a set of pre-selected options
and/or for example by creating additional options by clicking anywhere on a
2-dimensional color map of the type used for example in various painting
programs. In the browser this means that preferably whenever the browser
displays a web page which has a white background or has a background
which was defined in a color sufficiently close to the color that the user
chose
to represent white, the white parts of the page are preferably automatically
converted to the chosen shade that the user has chosen. Another possible

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 120/365
variation is that similarly fonts that appear grey for example beyond a
certain
threshold are automatically converted to black by the browser and/or the
word processor (in this case there is no need for the user to choose the
desired shade of black since clearly the blacker the font the easier it is for
the
eyes to see). Another possible variation is that web fonts that are too thin
and
appear grayish (not all thin fonts do) are automatically converted by the
browser into larger fonts or into a more appropriate font type which thus
becomes automatically easier to read and/or automatically converted to
boldface. Another possible variation of the implementation is that for
example whenever the user opens for example a sufficiently large word
processor window or full window or for example a web page which contains
mainly text on a white background, the OS or for example the screen driver
(or for example the application itself - for example Word or the browser, or
some other application) preferably automatically lowers the brightness and/or
lowers the gamma value (and/or whenever the user is viewing a sufficiently
large image the opposite is automatically done) - even if it is done for the
entire screen (However this is preferably done, as explained above, in
combination with letting the user choose the separate parameters for each of
these modes, and/or for example choosing as default for images, at least
initially, the same parameters which the user specified for video overlay).
Preferably the change is done together with corresponding automatic
correction for example in the task bar so that it preferably remains
approximately the same (for example by automatically switching to brighter
colors to compensate for the general darkening for example when the Word
window covers most of the screen), and thus the user can have a very good
approximation of the optimal experience without having to change the
brightness manually for example when switching between work on Word to
other activities.
18. Another problem is that for example in Windows Vista the OS can
automatically decide to disable various features according to the hardware
support available, such as for example the AERO glass transparency or for
example the flip-3D or the animations of windows growing out of the taskbar
squares or shrinking back into them without giving the user an indication
about what features have been disabled or a direct choice about it, which can
be very annoying. So preferably this is improved so that the OS reports to the
user automatically what features have been limited or disabled and preferably
also allows the user, preferably form a central convenient menu (preferably in
the same window that displays the disabled features) preferably to enable
again any such features, even if it causes a cost in performance. For example,
at least the transparency and/or for example the animation of growing or
shrinking windows can be done quite efficiently even on display cards that
don't support it directly by hardware, as can be proven for example by games
like Roadrash, which show amazing fast 3d graphics even on very old
systems - for example even on a Celeron 400 MHz without any special
display card. In addition, preferably the user can define for example if the
desired features will for example work a little slower than in a fully
hardware

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 121/365
supported system or for example will be done at the same speed as in
hardware supported system, for example at the expense of slowing down
other applications for a preferably very short period during the displaying of
the animation or other special effect (preferably except for example time
critical applications if such applications are running in the user's computer)
or for example of automatically reducing the resolution of the special effect.
Another problem is the lack of consistency in these animations of growing
and/or shrinking windows, since for example in Vista build 5270 when
clicking on icons on the desktop (such as for example cmd) the windows
appear to grow out of an arbitrary point on the desktop instead of from the
position of the icon - so preferably the animation is improved so that when
activated from the icon on the desktop it starts in this case from the
position
of the icon. Another problem is that when windows for example shrink into
the taskbar the small window actually disappears when it is relatively small
but still not close enough to the relevant desktop item. So preferably this is
improved so that the smaller windows keeps showing consistently until is has
completely merged with the relevant item on the taskbar. Another problem is
that when moving in Vista (build 5270) between full-size windows to part-
size windows there is no gradual animated transfer, but an instant abrupt
jump between the 2 states, like in Windows 98 and XP, which creates a lack
of consistency with the smooth animation of growing or shrinking windows
when the window is minimized or expended from the minimized state. So
preferably this is changed, so that a preferably smooth animation is
automatically displayed also when moving from the part-size state to the full-
size window and/or vice versa, but preferably the user can also choose for
example from a menu if to enable for example this additional animation or
not and/or similarly for other animation affects and/or other special effects.
Another possible variation is that preferably the user can also for example
determine the speed and/or length of each animation (for example by
changing some general parameter or parameters that refer to all or most such
animations or for example setting this for specific types of animations, since
for example when opening the power saving window from the screen saver
window in Windows Vista the animation for opening this small window
takes too long and so can be annoying after a while, and similarly for
example the animation in which the Search window in Word 2000 appears or
disappears in Windows Vista (for example in build 5728 & 5744) is very
slow and therefore can become very annoying if the user cannot speed it up.
(The speed of this animation in office 2007 is OK). In order to change these
parameters preferably the user can for example access some control panel
that deals with the animations and/or for example the user can preferably
click with the right mouse button on the window that was animated and for
example choose from a menu an option that allows him/her to change the
speed of the animation of that window and preferably also choose for
example if the new parameters will apply only to this type of window (for
example the search dialogue box in Word 2000) or also to other similar
windows. However, preferably the OS preferably automatically adjusts the
speed preferably in all applications to the same reasonable minimum speed to

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 122/365
that preferably opening or closing a menu or window preferably never takes
more than a certain amount of time including the animation (for 2 seconds or
less or 1 second or less). Another problem is that in for example in Windows
Vista when the user activates the flip-3d all the windows become
automatically minimized and the desktop becomes darker, and also the user
can exit the flip-3d only by clicking on one of the windows in the flip-3d or
by pressing Esc, which is inconsistent with other application. So preferably
this is improved so that the desktop remains with the normal colors and
preferably if the flip-3d is activated while one or more windows are in view
preferably they are not minimized automatically (i.e. the 3d deck of windows
can appear on the background of other currently open windows and not
necessarily on the background of the desktop itself), and also preferably the
user can exit the flip-3d also for example by clicking anywhere on the
desktop and/or on the taskbar and/or by clicking on any other item on the
desktop or on the taskbar or for example by clicking on the "show desktop"
icon, and/or even for example by clicking again on the icon which activates
the flip-3d. After this has been filed in a previous version of this
application
this Microsoft indeed added to Vista build 5308 the ability to click on
anything items outside the Flip-3d in order to go out of it, but the user is
returned to the original Window in which he/she was before activating the
Flip-3d, regardless of where the user clicks now, which is very inconsistent
and confusing. In the above variation the intention was of course that
clicking
on anything else while the Flip-3d is open preferably closes the flip-3d but
indeed brings the user to where he/she clicked (for example another item
from the taskbar, an icon on the desktop, the Start button, the desktop, etc,)
and not back to the previous window the user was in. Another problem with
flip-3d is that if there are too many open windows (for example a few dozen)
then the flip 3d side shows as if there are fewer windows than the real
number (apparently it shows only 10), which can be confusing to the user,
and also they can be very dense sideways with no ability to see any details on
the side of the windows. So preferably this is improved so that the user can
preferably easily defme the sideways spread of the flip 3d (for example by
defining the minimum and/or maximum sideways shift and/or the vertical
shift between each two adjacent windows and/or by determining the total size
that the flip-3d set of windows will occupy sideways and/or for example
defining the angle or angles of the window decks, for example the 3d depth
angle, and/or for example defining the depth of the spread, which means for
example also determining how smaller each farther window will get
according to perspective), and/or preferably the correct number of windows
is shown, unless for example the size had already increased to the full width
of the screen, and/or for example if the size of the set reaches the full
width
of the screen then for example preferably only then the sideways gaps
between the windows are automatically decreased. Another possible variation
is that the user can for example determine how many windows will show at
each layer of the 3d deck, do that for example the user can preferably request
for example to see at each layer for example 2 or 3 or 4 windows which are
apparently stacked at the same 3-d layer side by side, instead of seeing only

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 123/365
one Window at each layer. Another problem with flip-3d is that for example
windows that are smaller then other windows (for example cmd windows)
appear smaller on the 3d deck of windows, which can be confusing since it
distorts the 3d perspective. So preferably this is improved so that
preferably,
at least as one of the choices, the user can choose a mode in which all the
windows in the 3d deck appears of the same original size (preferably
regardless or their size and regardless if they are full windows or partial
windows), and thus get smaller consistently only according to their depth in
the 3d deck (but preferably this is the default). Similarly, preferably the
size
of the preview windows (for example on the taskbar) is preferably equal and
not smaller if the window is smaller, since again making it smaller according
to the size of the window this is more distracting than helpful. In addition,
in
the prior art (for example Vista beta builds 5270 and 5308) this is clearly
inconsistent since for example the taskbar preview window looks taller than
full-windows, such as for example Word, eventhough the taskbar window is
never full-screen. Another possible variation is that for example a grouped
item can appear in the flip 3d as a single "card" which is preferably for
example divided internally into preview windows which can be clicked to go
to them and/or for example a separate "flip-3d" can be generated for each
group of items of the same application or type, for example if they are a
grouped item and/or for example even if they are ungrouped (for example all
the open browser windows in one flip-3d deck, all the open Word documents
in another flip-3d deck, etc.). Another problem is that in Windows Vista
(build 5270) although the user can change the color of the taskbar, not all
colors are really available, since the user for example cannot change the
taskbar to appear the same level of blue as the typical blue taskbar of
Windows XP. So this is preferably improved for example by any of the
above solutions, such as for example letting the user change independently
the color and/or brightness and/or contrast and/or saturation of any section
or
element on the screen as described above. Another problem in this Vista
version is that the user can only change together the color of the taskbar and
the color of the top head line of each window. So preferably this is changed
so that the user can change each of them (for example color, brightness
contrast and/or saturation) independently, as is implied again also by the
above solution. Another possible variation is that for example movie player
applications and/or image viewing application can for example fmd
automatically the best saturation for example by identifying elements for
which the correct saturation is known - such as for example water, the sky,
green plants and human faces, and in case of video, preferably this value is
averaged over time as the movie progresses and thus becomes more reliable
(assuming that the saturation does not change in the middle, unless for
example there is strong evidence from similar later elements where the
correct level is clear, that the saturation level has indeed changed). Another
possible variation is that for example the gamma value is automatically
corrected, for example by checking which gamma level adds most details
(preferably measured as variation) in black areas, and preferably, again, the
gamma value is calculated over time and thus is preferably calculated as an

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 124/365
average. Another possible variation is for example that the automatic gamma
correction is applied only to the black areas, thus not affecting the rest of
the
image. Another problem in this build is that when a full-size window is
opened the color of the taskbar becomes automatically again the default black
and returns to the user-chosen color only after the window is minimized or
changed to part-size. So this is preferably improved so that the taskbar color
does not change according to the size of any windows. Another problem is
that various windows are non-expandable to full-size eventhough many times
the window is not big enough to show easily the information it contains, such
as for example the window that shows the list of startup programs or for
example the window of the task manager. So preferably this is improved so
that the OS automatically enables the user for example to enlarge preferably
any window to full size even if it does not originally contain such an option,
and/or for example the OS automatically allows the user to search for any
string within such windows (including for example application windows,
messages, etc. and/or for example any area that the user marks on the screen)
or for example print its content or for example save it to a file and/or for
example use cut & paste (this is preferably done by automatically reading the
text in any desired location on the screen and/or even automatically applying
OCR for example if the text is in graphics). In addition, preferably the OS
automatically allows the user also to print and/or save the contents of any
window even if it was not designed for this. Another problem is that for
example even in normal windows, which are designed in advance to be
enlarged or reduced or converted to full size, when not in full size typically
the user can enlarge or reduce them only by dragging the bottom right corner.
So preferably this in improved so that preferably for example also the left
bottom corner and/or for example any other corner can also be used for
reducing or enlarging the window. This way, preferably for example the top
header line of the window is preferably still user for moving the window, but
dragging one of its two corners is preferably user for enlarging or reducing
the window. Another possible variation is that for example the lists of
programs and/or application that are shown in the task manager are
preferably improved to include also the full path from which they were
loaded and preferably also a link or other info which shows for example what
program or process activated each of the existing programs or processes and
preferably also when is the first time they showed up on the task manager
(for example 3 hours ago during the current Windows session, or even
beyond sessions - for example a certain process entered the task manager for
the first time 3 days ago, etc). Another possible variation is that when the
task manager displays the sorted list of processes with the percent of CPU
time taken by each of them, preferably - at least if the percent of CPU time
taken by System Idle or other global system category is beyond a certain
threshold - preferably the Task manager automatically displays more detailed
information about the relevant system process or drivers, so that for example
if a specific driver suddenly starts to take up unusual system resources the
user can know exactly which driver it is. Another possible variation is that
for example when displaying preview windows of files for example in

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 125/365
directories for example when the user works with the Windows explorer,
preferably files that are video clips or movies are preferably automatically
displayed in the preview image for example not as a still image but as a
moving image, for example by starting to run the video automatically only
within preview images which are currently in view. In this case preferably
these videos are for example automatically stopped when the preview image
grows out of view and automatically restarted when they go back into view
(for example as the user scrolls through the displayed directory contents)
and/or for example the are run in a loop for example only within the first 1-2
minutes (or any other duration), and/or for example they are reset and start
to
run from the beginning again every time the preview window was outside of
the visible user's view and then returns again into the visible user's view.
Another problem with Windows Vista (build 5270) is that the when the
mouse hovers over items on the taskbar it takes about 2 seconds till the first
preview window shows up and only then when the user moves to the next
item the next preview window shows up instantly, so preferably this is
improved so that even the first preview window (or windows, since as
explained elsewhere in this application preferably multiple preview windows
or all of them show up at the same time) shows up preferably instantly
without this delay (and/or for example the user can preferably easily set this
delay for example between 0 to a certain amount of seconds). Another
problem is that for example in Windows Vista if the user moves the mouse
too fast over taskbar items the preview window does not show at all. So
preferably this is improved so that the preview windows are preferably
prepared in advance and preferably almost no time is needed to display them,
so that preferably they can show preferably even at the highest speed which
the user can move the mouse for example over the taskbar or over the tab
handles line for example in the browser (of course this problem does not exist
if for example all the preview windows show up automatically at the same
time for example when the mouse is anywhere over the taskbar or for
example tab handles line for example in the browser). Another problem is
that for example when an application contains more than one window - for
example Winamp - the preview window shown near the taskbar item shows
only the Winamp itself even if for example it is currently playing a Video
file. So preferably this is improved so that in this case preferably the OS
for
example automatically identifies the most relevant or most informative
Window (for example based on various heuristics - for example that a
window that displays a video is more informative than a still or relatively
still
window), and/or for example a convention is defined which allows
application that have multiple windows to define the window that should be
chosen for preview, and/or for example in this case the OS can show more
than one preview window over the same taskbar item - for example one
above the other (and similar solutions can preferably be used for the Flip-3d
and/or for the alt-tab with preview windows). Another possible variation is
that for example computer games are improved so that for example the game
can automatically assess the performance of the user (for example according
to his/her scores and/or according to the time it takes him/her to reach a

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 126/365
certain goal or goals) and can then for example automatically recommend to
the user when it's time to move on to the next level. Another problem for
example in the Chess game that ships with Vista (for example in build 5728)
is that the user has first to click on a figure in order to see its possible
moves
(shown by marking the possible squares the figure can move to in blue), and
then again click on the desired destination square, which is both cumbersome
and counter-intuitive. So preferably this is improved so that preferably the
possible moves of each figure are shown based on hover, and preferably the
user can also drag the figure with the mouse to the desired destination
instead
of clicking on the destination (preferably the user can user either of these
options in order to move the figure), thus giving the user a feeling more
similar to the natural movement when playing chess in the real world.
Another possible variation is that preferably the game has not only Undo for
moves but also Redo (since sometimes the user might for example try again
to see what went wrong or for example the user might press by mistake ~Z
too many times and therefore might want to go back forward again).
19. Another preferable improvement is that when the user searches for files on
the computer preferably the "find files" window allows him/her to enter also
more than one file name at the same time (for example separated by commas
or one below the other, etc.), since if the user wants to search for more than
one file this is better than having to search consecutively and it is also
more
efficient since this way all the requested files can be searched for during
the
same disk access.
20. Another possible variation is that preferably the installation disk (for
example
CD or DVD or for example through fast network connection) of the OS (for
example in the new version of Windows) contains also one or more typical
usable disk images, so that the system can be instantly installed from the
most appropriate image, and then the system preferably automatically
determines the actual computer's configuration and simply corrects and/or
adds appropriate device drivers and/or makes other necessary adjustments, as
if the system was already installed on that computer and the hardware was
later changed. This can save a lot of time on the installation process, so
that
most of the time will be focused only on correcting the configuration.
21. Another problem is that, for example in Tablet PC's and/or similar devices
and/or other devices that accept direct input by handwriting, when the user
enters text in handwriting, it is problematic to use scrolling since the user
would have the quite unnatural feeling that for example written text to the
left
of the current position of the pen is automatically slipping away to the left
(or
to the right, if the writing is from right to left). This means that if the
user for
example enters text by handwriting in a search box (for example when
searching with the Internet browser in Google) and there is not enough room
for the full search string, then there is a problem how to accommodate the
additional text. This can be solved for example by letting the user continue
his/her writing even beyond the edge of the input box, and then preferably

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 127/365
the Operating System and/or for example the browser preferably
automatically knows from the continuity of the written text (and/or from the
continuity in time) that this is the continuation of the same text, and
therefore
interprets it correctly as if it is still in the input box even if its spills
out for
example to the right and/or to the bottom or up, and/or even the user for
example continues immediate to enter text for example on a second line
below the input box (preferably unless there is another input box there).
Another possible variation is that if the user runs out of space in the input
box, the System and/or the browser and/or other relevant application
automatically extends the box for example to the right (or other relevant
direction). This can be done for example by automatically extending the box
for example to the right in a new layer that partially covers for example
whatever is to the right of the input box so that the user has more space (for
example this layer is indicated by a shadow effect as if it is a few
millimeters
above the screen), and/or for example the extended part and/or the
handwriting on it are automatically made at least partially transparent so
that
whatever is below it can still be seen, and/or for example what is below the
extended part and/or below the handwriting is made temporarily faded (for
example gray), and/or for example whatever is to the right of the input box
(however, preferably only at the vertical position of the input box) is also
automatically shifted to the right (this means that things at the right edges
of
the screen can automatically scroll away and temporarily disappear at the
right of the screen if needed, and/or the system uses this scrolling only if
there is sufficient free room in the needed direction and uses one of the
other
options if there isn't sufficient room for this), and/or for example the area
where the user is writing can automatically be zoomed in (however this
preferably automatic zoom preferably does not effect the user's hand writing
itself, so that the handwriting preferably remains at the same size and
position). Another possible variation is that at least the part of the
handwriting that spills out of the input box is visible only when the user
hovers or positions the pen and/or cursor and/or mouse near it. Similarly, if
the user for example is entering text by handwriting in some open text
window (for example a word processor or notepad) and his/her handwriting
exceeds the edge of the window, preferably the System automatically
recognizes (for example by the continuity of the hand writing and/or of the
temporal sequence) that this belongs to the same text and thus the system
keeps the focus in the current application even if the user for example spills
some letters on another nearby window of another application. Another
possible variation that can increase the natural feeling for example when
reading large files or digital books in tablet PCs (or for example in devices
dedicate to reading digital books) is that the user can for example move the
page (for example up or down or sideways) for example by dragging his
finger or fingers on it in the desired direction (which means that preferably
the screen can identify that this is the user's fmger instead of the pen for
example by the size of contact or for example by the electronic resistance,
and can then respond accordingly), and/or the user can for example cause
pages to flip over for example by touching with his finger a corner or edge of

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 128/365
the displayed page or for example some relevant icon there. Of course
various combinations of the above and other variation can also be used.
Another preferable variation is to supply the user with an electronic pen
which can preferably write on normal paper and preferably at the same time
both writes with visible ink on the paper and transmits the writing sequence
to the computer, so that preferably the user can write normally while also
obtaining an automatic copy on the computer (which preferably immediately
becomes characters through automatic recognition). This can be done for
example by using a double tip, so that one part senses the movements and the
other actually writes on the paper, or for example use some electronic eye
which views the ink sequence as it is created on the paper and transmits that
into the computer. This is also more convenient since the user can much
more easily write this way when he/she sees nonnally the output on the paper
as if it is non nal writing. Another preferable variation for example in
tablet
PC's and/or for example in digital book readers and/or for example in
programs such as for example Winamp or other software media players
and/or for example in other gadgets for playing songs or films, preferably the
software and/or the device is able to measure automatically preferably not
only which songs or films or books (or other media) are more or less liked by
the user, but preferably also for example which parts or sections in them are
for example the best and/or which parts are less good or for example
problematic. This can be very useful for helping improve for example those
books or films or songs and/or for being able to write better ones the next
time. This can be done for example by automatically noting if there are any
sections which the user for example likes to hear or read or view again and
again and/or for example the device or software asks the users explicitly
which sections they most like and/or for example in digital books noting
automatically for example which sections the user marks and/or adds
comments to, and then preferably anonymous statistics are sent automatically
for example over the internet for example the next time that the user connects
to download for example additional songs or films or books. Another
possible variation is that for example in such devices and/or software for
playing for example songs or films preferably the player can automatically
adjust the sound level not to exceed a certain desired limit and/or not to be
too low below a certain limit. This can be done for example by automatically
adjusting the level when the limit is reached or exceeded, and/or for example
the software or gadget can preferably run ahead quickly in advance over the
song or film and determine the maximums and minimums, however that
would be much less efficient, and also the local adjustment is even better
since preferably a separate optimization is done for each section. Another
possible variation is that for example song-playing software, such as for
example Winamp, can automatically update their songs list, for example by
adding automatically all the relevant files that are found automatically
during
the updating of the local search index (for example by taking it from the
results of the Google desktop search or the Microsoft desktop search), or for
example by remembering the list of directories from which the playlist was
generated and checking automatically these specific directories (for example

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 129/365
every few minutes or any other convenient interval) and if additional relevant
files (for example of the relevant file types) have been added then the
software preferably adds them automatically to the playlist, and preferably
the playlist is for example automatically sorted with an index, for example
alphabetically, so when adding songs preferably the index is automatically
kept updated at the relevant order. However this is preferably done on a
playlist that contains one or more full directories, and the user can
preferably
also define additional partial playlists, which are not automatically expanded
like this. Another possible variation is that for example in Winamp (or in
similar programs that can work with a playlist) when the user for example
uses "J" (jump) or other convention to pick a list of songs by typing a string
of letters, preferably the user does not have to chose a single result but can
for example mark multiple results and then for example press play or Enter or
otherwise activate them, and then preferably the player marks them
automatically as a sub-list within the normal play list and preferably starts
playing the marked songs preferably one after the other (preferably jumping
each time to the next marked song) preferably until the marked sub-list is
finished (and/or for example the user can also request various combinations,
such as for example playing songs from the marks sub-list interspersed with
playing songs from the normal lists, with or without random order).
22. Another problem is that for example in Windows XP when the user opens for
example multiple browser or word processor windows, typically they
automatically become like an internal division within one window on the
taskbar, so that the browser or word processor appears in the taskbar only
once and the other open windows of that application are listed within it
(although at least alt-tab properly jumps between the windows as if they were
normally marked as multiple instances of the application on the task bar).
Since this can be inconvenient or confusing for example for users who are
used to all the windows of the same application appearing in the task bar,
preferably the OS allows the user to activate a command which can for
example automatically toggle between this mode to the mode where each
window appears separately on the task bar. Another possible variation is that
the user can also for example activate a command which can toggle between
such grouped items (and/or separate items on the task bar) to tabs
representation and/or vice versa (so that for example all the windows of the
same browser become a single united window with all their tabs together, and
preferably the user can for example activate this as a global command that
affects for example all the open applications, or for example affects only the
windows of the specific application which the user clicked upon). Another
possible variation is that the user can for example group or ungroup the
windows of a specific application for example by clicking on the grouped
icon or on one of the icons of the application on the task bar (for exalnple
if
they are not grouped) and then for example clicking the right mouse button
and for example choosing from a menu, and preferably this remains the
default for the specific application (for example the Opera browser) even
after the user closes it and reopens it, until the user changes it again (This
is

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 130/365
better than the prior art, in which the user can choose group or ungroup only
globally - i.e. either for all the applications or for none). This can be done
for
example by just simulating graphically the other representations (even though
typically tabs are actually threads and other open windows of the same
application are typically actual processes (preferably with some indication
that for example the converted new tab is not really a normal tab or a
converted separate window is actually a tab), and/or for example also in this
case for example each tab which is converted into a separate window (or item
in a group) is actually closed and a new tab automatically opened for it
instead, and/or for example when the vice versa conversion is used each such
tab is closed and an actual window is opened instead (for example of the
same file or Internet URL, etc.). Another possible variation is that if for
example a browser window becomes crowded with too many tabs the user
can for example click with the mouse on a certain point on the tabs handle
line and then for example choose as one of the menu options splitting the
browser window into two or more separate windows so that for example all
the tabs to the left of the clicked position remain in the original browser
window and all the tabs to the right of the clicked position automatically
move into the a new browser window, and/or for example the user can
activate a command which also chooses automatically the split-up position,
which can be done for example by choosing automatically the middle
position or for example choosing automatically for the new window all the
tabs that belong to the domain in the tabs most recently visited by the user
or
for example all the tabs most recently visited by the user, or other criteria.
Another possible variation is that the user can for example activate a
command which causes all the most recently visited tab handles to become
automatically larger and/or otherwise more conspicuous and/or for example
this is the default. Another possible variation is that one of the options
available to the user (for example when right-clicking on the tab handles
areas, for example in addition to "close all tabs" or "close all but active
tabs")
is for example to close for example all the less recently accessed tabs or for
example all the least accessed tabs or for example all the tabs that have
already been visited, or some other criterion or criteria which automatically
select only some of the tabs for closing. Another possible variation is that
preferably the user can for example minimize a tab for example by clicking
again on its tab handle while it is open (similarly to clicking again on an
item
on the taskbar) or for example by clicking for example on a minimize icon
(for example in the shape of a minus sign, for example below or near the X in
the tab handle or for example on the corner, for example the top right corner,
of the tab itself), thus enabling the user to jump back to the last tab
without
having to click on ctrl-tab. Another possible variation is that the user can
for
example activate a command which causes all the tabs to be ordered
automatically for example so that each time a tab is closed or minimized the
user automatically jumps to the next tab (for example to the right or to the
left) even if that is not the order of last activation. Another possible
variation
is that for opening new tabs and/or new windows the user can preferably tell
the browser for example if to start new tabs or new windows in general for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 131/365
example with the user-define default home page or for example with the
current page from which the new tab or window is being opened, and/or for
example there are at least two separate commands for opening new tabs (or
windows) wherein one type creates a copy of the current window or tab and
the other uses the user defined default start page (preferably the default is
creating a new tab with the default home page, since that is typically the
most
useful option). Another possible variation is that the user can for example
define more than one default home page and can preferably also specify if
each of them will be for example in a tab in the same window or for example
in a new window and preferably also specify for example which of them will
be the active tab (for example the user might specify that the default home
page set is for example 3 open tabs, for example one a Google web search
page, one a stock market page, and one a Google news search page, for
example, and for example specify that the Google web search page will be
the default active tab (and in the case of multiple default home pages
preferably this active tab will also be the default page which is opened when
the user opens a new tab, and/or for example the user can specify that
separately). Preferably this can be either specified for example at the
preferences menu where the user defines the home page, and/or for example
the user can open the relevant tabs in the desired order and with the desired
active tab and then for example press some control or for example click or
some icon or for example choose some menu option which sets this as the
default set of home pages. Another possible variation is that the user can for
example mark this set of tabs or for example specific individual tabs for
exaYnple from the currently set of open tabs to be always opened together
with the last automatically saved session of tabs, so that even if some of
them
were closed for example in the last session, when the browser reopens
preferably these tabs will be opened automatically in addition to the
automatic reopening of the tabs of the last session (but preferably these tabs
are not added twice, i.e., if they already exist in the last saved session).
Preferably when the user closes all the tabs in the browser these default tabs
are preferably left open, or the user is for example asked for example if
he/she wants to close all the tabs or all but the default start tabs or all
but the
active tab or all but the default tabs and the active tab, or all but the
active
tab. Another problem with browsers that can automatically save the last
session and reopen automatically with the tabs that were opened the last time
(for example Opera, and Firefox with the Save Sessions extension) is that
they behave unreliably on reopen when multiple windows are closed, so that
for example if more than a few seconds pass between the closing of the
multiple windows, on reopen only the last window will be restored. So
preferably this is increased to a considerably longer thresholds - for example
a minute or a few minutes (since if a user closed another window for example
more than a minute ago and then closes the current window that it is much
more likely that he/she intended the previous window to remain closed,
whereas a few seconds don't mean anything since for example the user might
close the current window that he/she is working on and not even notice
immediately that there are additional open windows for example of the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 132/365
browser), and preferably the user can change this time from the default.
Another possible variation is that, since indeed the user might not notice
that
there was another open window of the browser for example even after a
longer time and only then closes it too and later reopens the browser (which
prevent the automatic restore of the current window), preferably the browser
(or other application) also takes into account for example how much time the
user spent on each window and/or how many tabs were open in that window
when it was closed, and can assume for example that it is more likely that the
user will want to reopen a window that had much more tabs and/or the
window on which he/she was spending most of the time in the last session.
Anyway, this problem is reduced by the ability to undo also the closing of
windows (which is described further below this application) and/or saving
automatically also a list of previous sessions (including open tabs and/or
windows), as described further below. Preferably the browser saves
automatically also the history of each window separately, since the user
might for example want to restore windows that were open more or less at
the same time into a different state in the individual history of different
windows (this doesn't take much space since the browser can simply save for
example just the links, and if used recently the relevant pages will probably
still be in the user's local cache. If for example multiple histories are
saved
and certain links repeat themselves, for example a pointer to links that are
already in the browser history can be used for example instead of the full
link). Another problem is that for example in the Opera browser if the
browser was unable to reach a url and is closed, when reopened the tabs with
such url become blank tabs without the address. Firefox with the save
sessions extension does remember the url but only if it had sufficient time to
try reaching the page and displays an error message page. So preferably this
is improved so that the url address is automatically saved even if the browser
was closed before it displayed an error message for such urls, so that when
reopened the user can try again to reach those urls. Another problem is that
for example sometimes one (or more) tabs is causing a problem and when the
browser reopens the save-sessions automatically restores also the problematic
tab or tabs. Although for example in Firefox the save-sessions extension
offers the user in such a case to ignore the saved session, preferably this is
improved so that the save-session feature can also offer the user in such
cases
for example to automatically remove only the problematic tab or tabs so that
the browser can be reopened for example with all the other tabs intact and the
problematic tab does not show or for example its handle exists but when the
user clicks on it for example only the url is shown with a message that it has
caused the problem the last time. So preferably if the browser has crashed
and/or for example continues to crash at least 1 more time on the next re-
open, preferably the browser can automatically reopen the next time
automatically without the tab or tabs that were responsible for the crash (for
example as default and/or with request for user confirmation for disabling the
problematic tab or tabs, preferably by displaying at least the url and/or
title of
each such problematic tab), so that preferably it reopens the next time
without that tab or tabs or for example shows their url and/or title but

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 133/365
displays for example, instead of displaying their content, a message that the
tab has been disabled due to causing a crash the last time (and/or for example
this message enables the user for example to try again anyway to reload the
problematic tab, for example by pressing a link or button in the displayed
message and/or for exainple by pressing the normal reload button).
Preferably the above behavior is displayed for example both in case the user
himself/herself reopens the browser and in case the browser is configured to
reopen automatically after a crash. Preferably the browser also indicates
automatically the cause of the crash and/or estimated cause, and preferably
the browser knows which tab or tabs caused the crash for example by a fault
protection trap for example in the browser's software which is for example
activated whenever there is a problem in some thread, so that preferably the
browser can document the problem and the identity of the relevant tab before
closing, and/or for example each tab or thread preferably automatically keeps
some log, so that the crash and the casing tab or tabs can be identified
automatically when the browser examines the logs the next time. Another
possible variation is that preferably for example the above described trap can
be used for example in order to prevent the browser form crashing in all
cases or at least in some of the cases where a tab encounters a run time
error,
so that preferably the browser can automatically close or disable the
problematic tab or tabs and/or request user confirmation before trying to
reopen it, as described above, preferably without the browser itself crashing,
so that the other tabs remain open. Another possible variation is that similar
methods are preferably used to prevent cases where for example a run time
error in one of the open windows of the browser causes other open windows
of the browser to close - so that preferably in this case there is at least
one
process of the browser which catches run time errors which could cause other
open windows to crash, and/or for example when disabling tabs and/or
warning the user on reopen preferably both the relevant tab(s) and/or relevant
window(s) are indicated. Another possible variation is that automatic
"sessions" are preferably similarly automatically saved preferably all the
time
or at short intervals for example by the OS also for open windows or squares
on the taskbar (preferably by saving only the minimal required relevant
information), so that preferably after a crash or even after a normal reboot
the
windows that were open the previous time can preferably be re-opened
automatically (again, preferably without the window that caused the crash if
for exarnple a specific program caused a crash the last time, or with request
for user authorization for re-opening also the problematic problem).
Although Microsoft Vista enables such automatic reopening of windows after
a reboot when a reboot is required when installing some program or driver,
the above solution is much wider and means that this is preferably available
after any boot at least as an option so that the user is preferably asked
automatically at the end of each reboot if to reopen automatically the
windows that were open the last time. Another possible variation is that the
user can for example mark one or more squares on the taskbar (for example
by opening a menu by clicking the right mouse button over the square) so
that they become applications that are automatically opened on the taskbar

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 134/365
after each boot (such as for example a cmd window, a Word window an
Opera browser window, etc). Another problem is that if there are multiple
tabs open (for example 10 or 20 or 30 or more, and especially if there are
more) and the user closes the browser and then reopens it, it can take quite
some time till all the tabs are restored and during this time the user cannot
use these tabs or even a new tab productively since the multiple downloads of
all the tabs are slowing everything down. So preferably this is improved so
that upon reload the browser preferably gives higher priority in download
and/or in cache allocation to the tabs which the user most recently viewed
before closing the browser the last time (preferably for this the browser can
use for example the heuristics that the tabs at the right edge are typically
the
tabs most recently viewed, but more preferably the browser preferably saves
automatically for each tab for example a tag with the last time the user
viewed it or clicked on it or for example saves a value which represents the
priority level for each tab or for example saved some ordering information
between the tabs, and this is preferably saved automatically for example
every few seconds, so that it can work also after a crash), and/or for example
if the user after reopening the browser clicks on a certain tab handle (or for
example also if he/she merely hovers over it) preferably the browser
immediately gives download priority to that tab, and if for example the user
opens a new tab preferably that tabs gets the highest priory, so that
preferably
each time the tab or tabs that are at the focus of the user work preferably at
the highest possible speed and the other tabs preferably continue to download
at the background with lower priority and/or lower speed until the reload is
complete. This is preferably done with gradual change in priority after the
tab
that is in the user's immediate focus, so that for example the tab in focus
gets
preferably much higher priority than the other tabs, and for example the last
viewed 3-4 tabs preferably get medium priority and so are preferably
downloaded for example immediately after the tab in focus has been
downloaded (preferably unless for example it is delayed because of some
problem with the specific server) and the other tabs get lowest priority, so
they are preferably loaded mainly after the front tabs and the few last viewed
tabs have been loaded (preferably unless there is some specific problem that
causes delay in the higher priority tabs). Preferably similar priorities are
automatically used if the user for example presses on a key which causes
automatic reloading of all the tabs. Another possible variation is that if the
user for example presses by mistake the Reload-all control, preferably the
user can abort this preferably instantly, for example by pressing for example
Esc or some other control or clinking on some icon, and for this preferably
the browser keeps a copy of the last version of each tab and does not erase it
at least until the reload data of that page is complete, and so if the user
cancels the reload preferably the brother immediately stops the reloading and
reverts to the old version of each tab, for example even for tabs for which
the
reload has already completed, or for example only for tabs in which the
reloading has not completed yet. Another problem is that sometimes a user
clicks on a link or even a sequence of links without opening them in a new
tab and only then realizes that it would have been more convenient to open

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 135/365
them in a new tab, and then if the user wants to do this the user has to go
back till the original page and start reopening the links on which he/she
clicked into a new tab or tabs, or remain with the current tab and search
again
for the original page in a new tab. So preferably this is improved so that
when going back to a previous page preferably the user has also an option
(for example through a menu when right-clicking with the mouse on the "Go-
back" icon or for example through a separate icon) of opening the "Go-back"
in a separate tab (in which case preferably a new tab is created and the
history of the current tab is preferably automatically copied also to the new
tab and then the new tab is automatically reverted preferably one step
backwards), and/or for example the user preferably has an option of
duplicating one or more tabs (for example by right-clicking with the mouse
on the tab handle and choosing from a menu and/or for example by pressing
some control key while in the tab), in which case preferably simply a new tab
(or tabs) is created and the history of the current tab (or tabs) is
preferably
automatically copied to it, so that the user can then for example go pack to a
previous page in either the copy or the original tab. Another possible
variation is that preferably the browser also enables to open for example
preferably any button into a new tab or new window, and the user can
preferably choose this for example from a menu by right clicking on it with
the mouse, similar to normal links, and so preferably for example this can be
applied to preferably any search box with the typical "search button" by right
clicking on the search button and choosing for example to open it in a new
tab. Another possible variation is that after the user has for example gone
back one or more steps for example within the same tab, the user can also
request for example to go forward into a separate tab even when the user
previously was there in the same tab. Another possible variation is that for
example a session with the current open tabs, preferably including the history
of each of them, can be saved for example in a standard format that can allow
easy porting between different browsers, for example by using a simple html
page (or for example XML format), and if for example the browser allows
marking a set of links and opening them at once or for example clicking on
an icon or menu option that opens automatically all the links of a page
(preferably by default into multiple tabs) then the effect of reconstructing
the
session can be easily achieved. Another problem for example with Firefox is
that extensions are limited to the current version so when a new version of
the browser comes out, extensions that have not been updated for the new
version don't work. So Preferably this is improved so that for example as
long as commands have not been deleted in the new version of the browser or
its scripting language, preferably the browser can automatically update the
extension to work on it ignore the specified version. Another possible
variation is that when the browser shows the list of extensions preferably the
list indicates also near each extension the url from which it was installed.
Another possible variation is that whenever the user installs an extension
preferably a copy of it (for example the XPI file in case of Firefox
extensions) is also automatically downloaded (for example to the user's
default download directory), so that for example if there are later problems

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 136/365
the user has automatically the source of the extension available on his/her
computer even if the extension is for example later removed form the url
where he/she downloaded it, or for example the browser can automatically
export to a file the source code of any installed extension upon request for
example by extracting it from the installed extension. Another possible
variation is that the browser enables the user to easily sent the list of
extensions to someone else by email, for example by choosing a menu option
that says for example "Send extensions", for example in a way similar to
"send page" in Netscape, except that what is sent is the list of extension
(and
preferably, as explained above, each entry on the list indicates also the url
form which the extension was downloaded), and so the receiver can for
example know exactly where to get any of the extensions that he/she wants,
or for example the browser allows the receiver to automatically get any of the
extensions which he/she for example marks in the received list, preferably
from the indicated urls. (however the list of extensions is preferably sent in
a
simple html or even more preferably simple text format, in order to protect
against attempt to deceive the receiver with a phony list that actually does
something else, so preferably the user can see the list in plain text (for
example for each extension the name of the extension and the url from which
it was downloaded and preferably also a short description of what it does -
preferably generated for example automatically by the sending browser for
example by automatically extracting it from the original page at the time the
original user installs it) and preferably when the user opens such a text file
with the receiving browser preferably the receiving browser preferably
automatically generates from it a list of sent extensions in which the user
can
mark what he/she wants and send the browser to get it (In addition preferably
the browser automatically requests the user's authorization even for marked
extensions if they are not from one of the already authorized sites, such as
for
example the Mozilla site, since the user might mark extensions without
noticing the url). Another possible variation is that, like for example in the
"Noscript" extension, the user can for example define a white list of domains
or even specific urls in which to enable for example Javasrcipt and/or active-
x or other active content, but preferably in sites which the user has not
whitelisted yet preferably the user is explicitly prompted for active content,
since in the "Noscript" solution in such sites the browser simply user a small
mark at the bottom to indicate that Javascript has been blocked but the user
might not even notice it and the user simply sees an empty or improper page.
Another possible variation is that for example various extensions or plug-ins
that speed up internet surfing by pre-loading links that the user has not yet
clicked on (and/or for example the browser enforces this automatically)
automatically disable any active content on the pre-fetched links and can
enable it for example only if and when the user actually chooses to open the
link. This is very important since otherwise the user can really be exposed to
unnecessary risks since the pre-fetching of links would expose the user to
active content or possible exploits on links which the user would not
normally click on. (The risk is reduced if the pre-fetching for example only
saves a cache of links without any attempt to interpret them before the user

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 137/365
actually clicks on the link, but for safety reasons it is better even to avoid
caching the code of pages that contain exploits, so another possible variation
is that for example sections of the page that contain active content (for
example Javascript or active-x subroutines) are automatically not saved
during the re-fetch and instead the pre-fetcher preferably saves there only
for
example a special link or indication which is used for getting the actual
missing part of or parts the page only if the user decides to actually click
on
the link). Another possible variation is that preferably for example the
TCP/IP protocol (and/or other protocols that might exist or that might replace
it in the future) are preferably improved so that for example at least the
text
parts in web pages are automatically compressed by the http server (for
example by zip or other standard compression format)(this is less relevant for
images since typically their format is already compressed more or less close
to the possible optimum) preferably before sending to the browsers or other
client programs that request them (actually if this becomes the standard then
preferably the pages are saved on the server already in their compressed
format so that the server does not have to compress them again on the fly
each time they are requested, which is much more efficient, even if for
example a local cache for recently compressed requested pages is used or the
server), and preferably the browser (or other client program) automatically
uncompresses the data automatically on the fly as it is being received.
However, since browsers preferably can start displaying a page even before it
is fully received, preferably the compression format a preferably modified
format that enables decompressing parts of the compressed file as they arrive
without having to wait for the entire file for starting the decompression.
This
is preferably done for example by including for example at the beginning of
the file all the information needed to decompress what comes next, even in
independent sub-units, or even more preferably for example by using a
format which contains for example independent units of data, each with its
own decompression information (for example in a way similar to base frames
in streaming video), so that for example preferably the browser can
decompress parts even if the beginning of the file arrives later than other
packets. Preferably if for example CRC (or similar data) is used for checking
integrity of the compressed data, preferably this data is kept indcpendently
for each sub-section, so that there is no need to wait for example for the end
of the file to verify its integrity. In other words, the automatic pre-
compression of pages preferably does not reduce the flexibility or ability of
browsers to display information even before it is completely received. Since
text data can typically be compresses by even 70-90%, compressing for
example the html or xml parts of the page (preferably including of course the
control commands for example within the '<' '>' marks), can significantly
boost speed. Of course, packets can be for example instead compressed on
the packet level, but that is less efficient since it would mean compressing
also for example images or video data which cannot be efficiently further
compressed anyway, and also wasting time on compression on the fly while
it can be done more efficiently in advance based on knowledge of the text
parts which can be most efficiently compressed. However, for compatibility

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 138/365
issues for example with older browser who might not support this, preferably
the http server keeps preferably for each page for example both a normal
copy and compressed copy and preferably the new browsers that support this
preferably tell the server through an appropriate code during identification
that they support compressed text format of pages and then the server knows
it can send them automatically the pre-compressed pages instead of normal
pages. By using preferably the pre-compression of the saved files on the
server in advance (so that they do not need to be compressed again on the fly
each time they are requested), as explained above, and since usually the
decompression is considerably faster than compression, and since typically
bandwidth bottleneck problems are much more common than the user's CPU
reaching its limit, the small extra time needed for the decompression by the
user's browser and/or for example ftp client (or other client programs) can
typically be much less than the transfer time saved. In addition, preferably
the text or html editors on the server and/or similar client editors on the
user's PC can preferably support the compressed files in a transparent way,
so that for example html and/or xml files and/or other supported types are
preferably automatically compressed into the special compressed format
when saved and automatically decompressed when displayed for editing.
Another possible variation is that, since it is very rare today that users
request
browsers to ignore images or use text-based browsers without images, and
since in the normal http protocol the browser first requests the page and then
requests its images according to the image-embedding code it finds in the
page, preferably the protocol is improved so that the browser (and/or other
internet applications) can preferably also give the server for example a url
and request the server to send already in advance also all the related images
and/or for example other embedded files and not only the page itself, thus
saving on the unnecessary traffic of requesting for example each additional
image separately, and preferably all of these are sent together in a single
packet or at least combined into a small number of packets. Preferably by
using for example an additional code for this when requesting the page,
preferably backward compatibility is saved for older browsers or other
applications that don't support this and continue to request pages normally.
Another possible variation is the protocol is improved so that preferably the
server can automatically send in advance all the information about embedded
images and/or other data (preferably together with information about the size
of each) at the beginning of the communication preferably before sending the
page itself, so that the browser (and/or other application) can request them
or
decide if to request each of them or all of them in one bunch in advance even
before parsing the page itself (this is preferably done by saving this data in
advance on the server together with the page, for example in some
automatically generated tag preferably at the beginning of the page or for
example in a linked file preferably at the beginning of the page, so that the
server preferably does not have to do this on the fly each time the page is
requested. Preferably this tag is for example automatically generated
improved html editors, and/or for example automatically added to the file for
example by the http server if it is not there, for example automatically for

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 139/365
example the first time that the server accesses the file). If this variation
is
used then preferably this also is preferably done by requesting the url with a
special code, however if it is done for example by an automatically generated
tag at the beginning of the page this is not necessary since the tag can be
designed so that older applications which don't know what to do with it will
simply ignore it. In addition, preferably in the above variations the page is
preferably sent as a single large packet or at least as small a number of
packets as possible, thus even further reducing the load on the routers (for
example In Internet 2 the advantages of this will be even more automatic
since the packets there can be considerably bigger anyway, and so saving
unnecessary back and forth communication for fetching the embedded
images and/or other files and thus enabling sending the whole page together
with the embedded parts preferably in one large packet or a few large packets
will be even more natural). Of course, various combinations of the above and
other variations can also be used. Of course, like other features of this
invention, these features can be used also independently of any other features
of this invention. In addition, preferably the user can for example define or
change which controls will do various things such as for example save a
bookmark or open a new tab or open a new window, since for example in
Firefox ~D saves a bookmark and ~T opens a new tab and ~N opens a new
window, whereas for example in Opera ~T saves a bookmark and ~N opens a
new tab, so users who switch for example between brows might feel
uncomfortable or confused with a different set of such controls. So preferably
the browser allows the user to open for example a table that shows the
current control characters and what they do and the user can for example
change the controls for each action and preferably can for example define
even multiple controls that can do the same thing, such as for example both
~D and ~T for saving a bookmark. Another possible variation is that the user
can for example copy a group of or the entire set of tab handles from one
open browser windows and reopen it in a another window of the same
browser or even of a different browser (which can be done for example if the
OS and/or some other application keeps track of the open tabs or at least of
their url addresses or if this multi-tabs-copy and/or paste function is
available
in both browsers) Another possible variation is to enable for example also
tabs for example in word processing applications and/or other applications,
such as for example other Office programs (these tabs can be for example
threads of the same window or for example normal additional windows of the
same application, except that they have an interface like tabs in a browser).
Another possible variation is that for example if the tabs become too many
(and thus too small), the browser (or other application) can for example
automatically and/or by user request enlarge the line of tab handles for
example to two or more lines instead of one (for example like the taskbar can
be increased to more than one line). Another possible variation is that for
example the other windows of the same group can be shown for example in
another task bar, for example at the top of the screen (but preferably visible
only when the user is viewing at least one of the windows of the group),
and/or for example within the typically blue top of the main open window of

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 140/365
the group and/or for example at least the user can toggle into this mode.
Another possible variation is for example to improve the AERO interface for
example in Windows Vista, so that for example when the user clicks on the
icon of the group for example in the lower taskbar (for example Word or an
Internet browser), preferably instead of a list of names in lines below each
other, the group can for example automatically expand for example to
preferably small images of the relevant Windows, and preferably the size of
the images is preferably automatically determined by the number of
windows, so that if for example there are 4 windows then each preferably
occupies more or less a quarter of the screen or for example a little less,
and
preferably for example by clicking on any of these preview images the user
preferably immediately jumps into it. AERO apparently only shows a small
image of each icon on the bottom task bar when the mouse is over it, and I
am not aware of treating grouped windows in the way described above. In
addition, according to the EARO demo video available from Microsoft at
http://channel9.msdn.com/Shownost.aspx?postid=114694
(new kam vedbrat _aero 2005.wmv), published Sep. 13, 2005, apparently
when the mouse is on top of an icon in the bottom task bar the image shown
has the same width as the icon. So this could be of course a problem if the
icon is smaller due to having too many icons on the task bar. So preferably
this is improved so that, at least if the icon is below a certain minimal
width,
preferably the image is automatically made wider than the icon - preferably
with a minimal size which is preferably defined by default by the system, and
preferably this definition can also be changed by the user. Another possible
variation is that if the user automatically changes the desired size of these
preview windows - for example by resizing such a window, preferably the
other preview windows will also become automatically of the new size
defined by the user, for example until he/she resizes it again, and/or at
least
as long as it is above some minimum size defined by the system. For
example, the user might even enlarge the preview window for example to the
size of a full screen or almost full screen (of course preferably without
covering the other items in the task bar - like normal windows that are at
full
size), and/or the system might even for example choose this as default, which
means that preferably by simply moving the mouse button over an item (for
example an item on the taskbar or a tab handle in the browser) the item (i.e.
the relevant tab or window) preferably instantly springs into view, which
enables seeing much more easily than for example a small window of a few
centimeters, and then when the mouse moves over the next item, the next
item for example springs into full view instead. Another possible variation is
that the user can achieve the same effect for example by hovering with the
mouse over the task bar or for example over the area of the tab handles in the
browser and rolling the mouse wheel, and, preferably this works in a circular
way, so that after reaching the most extreme tab at the right the next tab
becomes the most extreme left tab, and vice versa when reaching the extreme
tab at the left in when going in the other direction. This is still much
faster
than the prior art, where the user would have to click on each item to view
its
contents. Another possible variation is that for example as the user moves the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 141/365
mouse vertically up or down over the list of names in grouped items (wherein
this list appears for example only after clicking on the group item, as is
done
in current XP, and/or for example even after merely putting the mouse over
the group icon), preferably a preview image of the window which the mouse
is currently over its name preferably appears for example sideways near the
item and/or near the list. Another possible variation is that for example when
the user moves the mouse over the items for example in the taskbar (or items
in grouped windows, or tabs) preferably the preview image springs into view
for more than one of them (for example also for the previous and the next
item or for example for even more items, for example automatically
according to the current size of the preview window, so that preferably the
images fill the space for example sideways for example for at least one such
line of images), or for all the items. Preferably the user can choose the
number of preview windows that will be displayed at the same time and/or
how many rows of preview windows will be displayed and/or for example if
he/she wishes that the preview windows of all the tabs (or windows, etc.) will
all show up at the same time for example when the mouse is over the bottom
task bar or for example over the browsers top tab handles bar, etc. Preferably
if a tab contains for example streaming video, the streaming video continues
also in the relevant preview window of the tab. Another possible variation is
that for example when the user moves the mouse over these items they
increase in size gradually around the current item, for example like the
virtual
magnifying glass features in maps, so that for example the squares on the
taskbar or the squares representing the tabs (tab handles) become preferably
gradually larger with more details (thus preferably containing more text in
order to help the user to quickly identify it), so that the current item (the
tab
handle or the square in the taskbar over which the mouse is directly) is the
largest, and/or the preview images similarly grow in size accordingly
(preferably the change in size as the mouse moves is also gradual in order to
keep the smoothness, or for example the change is in discrete jumps), or for
example only one tab handle or square on the taskbar becomes bigger,
preferably instantly when the mouse hovers over it. The increase in size can
be for example vertical or horizontal or both, thus for example compressing
automatically other tabs squares or taskbar items on the side for example or
for example partially covering some of them or for example the expanded tab
handle or handles or taskbar item become semi-transparent so that the tab
handles or taskbar items behind it are still visible at least partially, or
for
example the extended tab handle or handles or taskbar items show for
example in a second raw, preferably with some visual line connecting them
to the original item or tab handle (and are preferably of course clickable
also
by themselves) or for example only a bubble or other structure with
preferably only the text appears near the tab or taskbar item, but preferably
instantly, and this bubble for example appears only for the current tab or
taskbar item or for example also for one or more items on each side of it. If
more than one preview window or bubble show up at the same time then
preferably there is for example an automatic line or other visual connection
which connects between the preview window or bubble to the item and/or

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 142/365
preferably the user can also click directly on the bubble in order to enter
the
item, similarly to the ability to click on the preview window. Another
possible variation is that for example the preview windows are for example a
few centimeters in size, but for example if the user puts the mouse over the
preview window itself (for example immediately or after a short time which
the user can preferably change) it grows into a larger size even if the user
does not click on it (again, similar to the virtual magnifying glass) and/or
for
example if the user leaves the mouse for more than a small time (for example
1 or 2 second or more) over a certain section of the preview window and/or
moves the mouse slowly over a certain section in the preview window for
example as if trying to read it, the system can for example automatically
show that section in enlarged form (for example like in a magnifying glass
area or for example by opening an enlarged version of that section in a larger
additional preview window which is focused on that section or for example
the entire preview window is further increased automatically with that
section preferably remaining at the same current position of the mouse) (This
automatic enlarging of the preview windows and/or of parts of them is
preferably done for example by the system saving in advance each preview
window in more than one size or for example saving a larger size and
reducing it on a need basis or even for example using some feature in the
graphic display card which can for example do the reduction or enlarging
automatically, and this automatic enlarging can preferably be applied for
example to any type of preview window for example in the various described
variations where preview windows are used). Another possible variation is
that if for example the user clicks on the preview window for example after
having kept or slowly moved the mouse over a certain section of it (for
example text or image), the actual page is opened with that section of text or
image at the center of the screen or more preferably for example at the
current mouse position, so that the mouse is preferably still found pointing
at
the same section when the user jumps to the actual page, and/or for example
the mouse is automatically moved to the position of that section when the
user jumps to actual page (however, that is less preferable since making the
mouse position suddenly jump without the user actually moving the mouse
can be confusing and/or annoying). Another possible variation is that the user
can also for example move the preview window or windows into a certain
position, so that for example the preview window or windows will show in
the specific user-selected area. Another possible variation is that preferably
the scroll wheel that exists in many mice between the two buttons preferably
can also be tilted at least slightly to the right or to the left, which can
preferably be used for scrolling sideways (for example in too wide web pages
or for example spreadsheets where a horizontal scroll bar needs to be used).
This is preferably accompanied by some additional freedom for this sideways
movement, for example by making the wheel a little thinner than in normal
mice and/or the gap around it a little wider, so that for example it can be
tilted 1-3 mm to each side. The tilting itself can preferably be sensed for
example by a potentiometer which is changed when wheel is tilted or for
example mechanical sensors or optical sensors or induction sensors or

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 143/365
electromagnetic sensors. However, it turns out that Microsoft already tried
out mice which enabled similar titling of the wheel, but users found it
inconvenient to use apparently because a large force was needed to tilt the
wheel and because such a small movement of the wheel means a very low
resolution of movement compared to the rotation of the mouse wheel for up-
down movement. Therefore, a better variation is that preferably the mouse
wheel enables a higher resolution also for sideways movement, preferably
similar to the resolution of the up-own movement. This can be done for
example by using a mouse wheel which is preferably sensitive to a caressing
sideways movement of the finger, so that preferably the wheel itself does not
tilt sideways, but preferably a caressing movement of the finger to the right
or to the left of on wheel can preferably be sensed for example by galvanic
resistance sensors or by any other electronic means known in the art. And
since the mouse wheel typically contains sideways grooves and protmsions,
when the user moves the fmger over the sideways protrusions it can feel
similar to as if there were many tiny sideway rings around the external ring
of the mouse wheel, which are rotated sideways when the user moves the
fmger right or left on the mouse wheel @@. Another possible variation is to
add for sideways movement an additional mouse wheel for example on the
left edge of the mouse where the thumb typically is, so that preferably the
second wheel rotates horizontally around a vertical hinge (compared to the
vertical rotation of the normal mouse wheel around a horizontal hinge).
Another possible variation is to add for this purpose for example such a
horizontally rotating wheel for example at the front edge at the bottom of the
keyboard preferably near the left edge (or for example a vertically rotating
wheel which rotates to the right and to the left for example near the left Alt
key), where typically the thumb of the left hand is, so that the user can use
the left thumb for sideways scrolling. Another possible variation is to use
various software solutions for the sideways scrolling which can work also
with normal mice, so that for example when a page in too wide and a
horizontal scroll bar is automatically created, preferably the user does not
have to go down with the mouse to drag the horizontal scroll bar but for
example preferably clicking in any position on the page for example with the
mouse preferably enables the dragging right or left. However, since for
example clicking with the left mouse button might also be used for example
for marking text, preferably this works automatically in an intelligent
fashion, so that for example if the user wants to mark text he/she has to
click
near the text and preferably clicking in an open area and then dragging is
preferably automatically interpreted for example by the browser as an
intention to scroll sideways, or for example in order to scroll sideways the
user clicks on some keyboard key and preferably keeps it pressed while
dragging with the mouse right or left. Another possible variation is that for
example the title and/or url and/or for example file name is also displayed
for
example automatically, for example above the top edge of the preview
window, preferably in normal text size that can be easily read, and/or even
without the preview window and/or for example the user can toggle between
various types of display (for example only text, only preview windows, or

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 144/365
both) (Although in current XP and Windows 98 for example the url or file
name is displayed in a small elongated square after some time if the mouse
button is kept for some time over the item in the task bar, this is very
different since it is so slow that it is quicker to simply click on the item
in
order to see what it is, so preferably this switched very fast for example as
soon as the mouse is on the item - preferably at the same speed the preview
images appear for example in the AERO interface). Although for example in
Vista beta build 5270 there are titles which appear above the preview
windows of the taskbar items, the title appears only after the user hovers
with
the mouse over the preview window for about 2 seconds, which is much less
efficient than the above solution, in which both the preview window and the
title or additional textual description preferably both appear
instantaneously.
Another possible variation is that for example when the user puts the mouse
over an icon on the desktop or on the list of quick launch icons the system
(preferably immediately, without the 1-2 second delay) displays additional
info about it (preferably for example the file name and path) and/or the user
can for example preferably easily control the length of this time threshold.
Another possible variation is that when the user hovers with the mouse over
an icon on the typically bottom task bar preferably the information that is
preferably instantly displayed (without the 1-2 second delay), with or without
preview windows and/or example at the top of the preview windows,
preferably includes also the path and file name. Another possible variation is
that for example whenever a message window is displayed on the screen the
user can see for example the path and file name of the program or process
that generated the message, for example by hovering with the mouse for
example over the header of the message window or for example by right
clicking on it and getting a menu, and/or for example the user can choose an
options that for example makes the OS (or for example the security system or
some other application) display this information automatically for example
somewhere on the message window. Another possible variation is that
preferably this information and/or for example preview windows are also
displayed automatically for example for items that show up in the list of
active programs and/or task manager that shows for example when the user
presses Control-Alt-Delete. Another possible variation is that for example if
the preview window is too small (for example only a few centimeters) and/or
contains for example only or mainly text without images, the system can for
example automatically decide to display for example only the title and/or
first
few lines and/or first few images in the windows, since otherwise, for
example if these windows or tabs are for example Word documents or for
example a list of Google search results, the user might not be able to
distinguish between them if he/she is.shown only a small preview window
which only shows small text (in other words, preferably the system
automatically analyses each window or tab, preferably already before the
mouse is over it, and decides what type of preview would be most
informative - for example a small image of the entire window if it is
sufficiently graphic and/or if it is sufficiently different in general
visually
from the other or neighboring windows or tabs, and for example a few lines

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 145/365
of text, preferably of the current position on the text, if it is for example
a
Word document with little or no graphics at the current page and/or for
example the list of search keywords if it is a Google results page (preferably
the browser uses various heuristics for finding that this is a search results
page and for finding the search keywords, for example by fmding that it is a
search page for example according the url (for example Google, etc.) and
according the typical regular repeating structure in which search results are
typically displayed and/or finding the search words for example as
parameters in the url and/or in the search box)(this text of the for example
relevant Word lines or for example Google search keywords can be displayed
for example in the preview window itself or for example above it, for
example between the file name and the preview window)), and/or for
example the user can define some preferences about what part or parts of the
window to show in the preview. Another possible variation is that if for
example there are multiple open word-processor windows and/or tabs of
documents with similar names, preferably the system automatically
highlights the sections that are different when displaying the file names, for
example by giving these sections automatically a different color and/or
showing the file names so that these different sections appear at the center.
Another possible variation is that for example if some of the tabs are for
example Google search results (or are for example related to the same site
and/or have for example clearly something else in common - for example are
Word documents or pdf files or were for example opened from each other, so
that the sequence of opened tabs becomes one group, and this way for
example if the user stars 3 different searches for example from 3 Google tabs,
the other tabs automatically belong to the search subject from which they
were opened), then for example when putting the mouse over one of these
tabs (which means that the user is probably trying to find for example one of
those Google search results tabs or for example Word documents or for
example pdf files), preferably the system for example automatically displays
for example only the preview windows of for example Google search results
tabs (or windows) or for example Word tabs (or windows) or for example pdf
tabs (or windows), for example next to each other in a line below the line of
tab handles and/or for example automatically increases the size of the tab
handles of these related tabs (for example on the same line of tabs, for
example by making them simply longer and/or for example by making them
protrude onwards and/or downwards for example like a 3d expanding ray of
light, for example together with some shadow and/or color effects and/or
animations, and/or for example in a new line of tabs below the current line).
If these are for example Google search results tabs and also if for example
within each such preview window what is most clearly visible is the search
words as in the above variation (or for example the search words appear as
text for example near the preview window, for example above it, for example
between the title to the preview window), then the user can find the desired
window or tab almost instantly, and then can for example preferably click on
the desired preview window or on the tab handle (or taskbar square) in order
to jump instantly into it (of course in any of the variations where preview

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 146/365
windows are shown preferably clicking on the window instantly jumps into it
and preferably before that preferably just hovering over it preferably further
increases its size automatically, and preferably for example clicking
anywhere on the active tab or window, for example between the preview
windows, removes them and jumps back to the active tab or window).
Another possible variation is that the user can for example manually drag or
mark one or more tabs for example into a certain group, thus creating
manually the groups, and/or for example even in this case preferably new
tabs are by default added automatically to group of tabs from which they
were opened. Another possible variation is that the user can for example type
a string of letters or keywords and search automatically for example within
all the open tabs of the browser (or for example in all the open windows for
example of the browser and/or of another application or for example of all
the open windows and the desktop) and so preferably for example all the tabs
(or windows) where the searched text (and/or for example closely similar
text) is found are preferably marked or and/or for example preview windows
spring up for these tabs (and/or windows), for example as normal reduced
size preview windows and/or preferably with the view of the area of the
desired text, and then the user can preferably click on the desired preview
window and preferably jump instantly into the relevant tab or window (the
user can for example identify Google tabs or for example Words file tabs or
for example pdf file tabs according to the first letter or symbol which is for
example a typical shaped G in case of Google, which is usually visible even
if the tab handles become very small). Another possible variation is that the
user can for example search for text in the url (and/or in the contents of the
tabs or windows), so that for example typing "Goog" or "google" will for
example preferably instantly show all the preview windows of tabs (and/or
windows) from Google, or for example typing microsoft will show all the
tabs and/or preview windows from Microsoft, and/or if the user types for
example "checkout" or "shopping cart" the preview windows of tabs or
windows that currently show a shopping cart will be shown. The relevant
tabs can be shown for example in an additional line of tabs below the
original, and/or for example a pull-down list of only the relevant tabs is
preferably instantly opened for example below the tab over which the mouse
is hovering, which means that for example if there are for example 5 such
tabs, the user can either click directly on one of them to jump directly into
that specific tab, or (for example if they are already too small to see
details
and the user does not remember which of them is which) can hover with the
mouse over any one of them and then immediately see a pull down list which
shows for example at least one line for each of the relevant tabs of that
category, and then by clicking on the line the user preferably jumps directly
into the desired tab, and preferably each such line contains at the side, for
example the right end, for example an X for closing that tab if the user
wished to close it, and preferably the user can also for example mark with the
mouse a group of tabs and then close them together at once, and/or for
example the relevant tab handles on the normal tab handles line become for
example preferably instantly wider and all the other (non-selected) tab

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 147/365
handles become for example preferably thinner, so that the user can instantly
pick only the relevant ones. This last option can be most relevant for example
if the user searches for example in multiple goggle searches for example for
various Altec Lansing speaker models and then for example decides that the
most interesting results are about model ATP3 and then wants for example to
go back and look only at the tabs that deal with this model. Another possible
variation is that the user can also for example automatically close all the
unselected tabs or for example automatically move them temporarily into
some hidden buffer or line of tab handles which can later be retuned to (for
example by going there directly or by returning to the original tab handles
line or by selecting a new search within the open tabs) which don't currently
clog the tab handles line, or for example this is what happens by default..
Another possible variation is that for example the browser window can
automatically become split for example into two windows, so that for
example the current window has all the relevant tabs and all the other tabs
are
preferably automatically moved to the other window. Another possible
variation is that the system or browser takes into account also the
differentiating value of the word or words that the user typed, so that for
example if the word google or microsoft appears for example in 20 out of 50
tabs but for example only in 8 of the tabs this word appears in the url or in
the title of the page then preferably only the 8 most relevant tabs are shown
(or for example all the 30 are shown but those in which the word is in the url
or title are preferably shown for example in a more emphasized section at the
top), but if for example the words "shopping cart" appear only in 3 tabs
within the page itself these are shown even though it is not in the title or
url.
Another possible variation is that if for example there are too menu preview
windows to fit on one screen, instead of adding a side bar for scrolling up or
down, the browser (or other application) can for example automatically
cascade the preview windows or cut each preview window so that for
example only the top half or top third of the preview window is seen, and/or
for example the user can for example choose the desired vertical cutting point
of the preview windows (for example show the whole window, only the top
half, only the top third, etc.) and/ore for example apply this even when there
is sufficient room, since for example viewing only the top half of the window
can actually save time since it can be less distracting and the browser
preferably shows anyway the title and/or url on the top of the preview
window. Another possible variation is that the user can for example mark one
or more of the tabs to become more conspicuous so that he/she can instantly
identify them even when there are many other tabs, so that for example
clicking with the right mouse key on the tab handle enables this as one of the
options, and then the marked tab handle becomes for example larger or
higher or with some frame around it, or other visual mark. Another possible
variation is that if for example the browser is allowed to wrap the tab
handles
line into more than one line if it becomes too dense, preferably the user can
define for example the maximum number of tabs allowed per line or for
example the minimum width of a tab handle. Another problem is that many
sites don't have a predefined icon, which makes it more difficult to

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 148/365
distinguish between them and other tabs when the tab handles become too
small, so preferably in the tabs from such domains the browser preferably
automatically generates an icon for the domain to put at the left end of the
tab
handle. This can be done for example by using automatically the first image
that appears for example on the beginning of the page if it appears in all or
most of the pages from that domain (and then use it preferably for all the
tabs
from that domain, or for example finding the first image that does seem to
repeat in most them) and for example automatically reducing that image to
the appropriate size and using it as the icon at the beginning of the tab
handle, or for example taking the first letter of the domain name and adding
to it automatically a certain color and/or style which is preferably made
different for example for each domain or category of tabs (if the domain
name for example starts with "the", the word "the" can for example be
ignored, especially for example if at least one other tabs is from a domain
that also starts with "the", or for example the "T" is used). Although there
is
for example an extension for Firefox called HashColouredTabs which helps
when the domain does not have a predefined icon, it only adds a colored
square, which is much less differentiating than the above variation. Another
possible variation is to use a similar mechanism also for example for items on
the bottom task bar, so that for example the open windows of the same
application are not grouped, but when they become too small to see details
for example (for example all the windows of Word or all the windows of
Firefox or all the windows of MSIE) the user can simply hover with the
mouse over any one of the relevant icons on the taskbar and then see the pull
up list of textual choices and/or preview windows of the relevant group and
then click on the desired line or preview window). Another possible variation
is that similarly for the grouped items preferably each line contains also for
example an X which the user can click on to close that window (and
preferably the user can for example mark with the mouse a group of the
windows and then close them together at once), and preferably closing a
window does not make the menu of windows disappear (which is much more
convenient than the prior art in which for example in Windows XP the user
has to click on the right mouse button and then chose close form a menu that
opens, and in addition to that the pull-up menu disappears after each such
action and the user has to click again on the group icon, which is very
tedious, unless of course the user wants to close the entire group at once).
Another possible variation is that for example each square on the task bar
contains for example an X (or some other mark or icon), for example on the
right or on the left side of it, for quick closing for the window, instead of
having to right-click with the mouse, wait for the menu to appear and then
choose the 'close' option (however, for compatibility reasons preferably this
menu also continues to be supported so that the user can user either of these
methods to close the window). Another problem for example in tabs is that
for example in the Opera browser when the tab handles become smaller (for
example already when there are around 13 tabs in the same browser window)
the X at the right of the tab handles for closing the tab disappears and shows
again only after the user clicks on the tab handle, which is inefficient since

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 149/365
now the user has to click twice for closing a tab instead of only once, and
also there is a problem that when the tab handles become even smaller (when
there are around 30 tabs in the windows), when the X shows it fills up almost
all of the space of the tab handle. (In the Firefox browser for example when
the Firefox is used with the "Tab X" extension, when the tab handles become
too small the X becomes partially hidden until it almost disappears
altogether). So preferably this is improved so that the "X" (or other letter
or
icon for closing) shows always, without having to click once before seeing it,
and preferably the X (or other letter or icon for closing) becomes
automatically smaller when the tab handles becomes smaller (however it
preferably becomes only thinner and not smaller in height since reducing the
height will not gain anything), preferably without parts of it becoming
hidden, so that preferably it is still not more than a certain percent of the
tab
handle's space (and/or at least until the X reaches a certain minimal size),
which is no problem since users can be quite exact with the mouse
movements. Preferably a similar solution is used if for example such an "X"
(or other letter or mark or icon for closing) is added for example to the
squares (or similar shapes) which represent items on the taskbar (However,
since the user might click on the X by mistake, preferably this is combined
with the variation in which the user can for example press ~z or some other
key in order to reopen any window if it was for example closed by mistake,
as explained elsewhere is this application). Another possible variation is
that
for example if the user is clicking consecutively (for example at or beyond
some minimum threshold speed) on the "X" for closing tabs even when not
closing each time the most extreme tab on the right, preferably the browser
automatically makes the X of the next tab handle jump into the same position
(for example by dealing differently with the width of the tab handles to the
right and to the left of the position where the user is clicking on the X
and/or
by changing the position of the X within the tab handle that is currently at
the
clicking area), so that preferably the X remains at the same position after
each deletion, and then preferably for example after a second or more after
the user stops closing tabs preferably the tabs handles regain the correct
width. Another possible variation is that as the tab handles (or for example
the squares on the taskbar) become smaller preferably the text of the tab
handles (or squares on the taskbar) becomes automatically thinner (preferably
without reducing the height), thus enabling the user to still see more
information, however this automatic thinning is preferably limited till a
certain threshold (for example text gets thinner until it becomes 70% of the
original width or some other reasonable threshold, preferably changeable by
the user), since becoming too thin might make it too much effort to read
conveniently. Another possible variation is that similarly the original icon
of
the site (or the icon automatically generating by the browser, as explained
elsewhere in this invention), which is typically shown at the left of the tab
handle (or the icon of the application on the taskbar, at the left of the
square)
also become similarly automatically thinner as the tab handles (or squares of
the taskbar) become smaller. Another possible variation is that preferably as
more tab handles (and/or for example boxes on the task bar) are added and

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 150/365
become more crowded preferably the borders between the tabs handles
(and/or for example boxes on the task bar) preferably become automatically
thinner relative to the size of the tab handles themselves and/or for example
the wasted spaces on the right and on the left of the icon/text of the tab
handle (or box on the task bar) preferably become automatically smaller
relative to the space occupied by the icon and/or text - so as to maximize the
available space for displayi ng the actual informative part. This means that
for example when there are for example a few dozen tabs or more preferably
almost all the area of the tab handle is used for displaying the icon and
preferably the X for closing it is made very small for example occupying
merely 10-20% or less of the tab handle space, so as not to occupy space that
can be used for information, since the user can easily click also for example
on an area of for example 2x2 mm, as explained also elsewhere in this
application (This better use of the space by reducing the borders between the
tab handles and/or using the maximum possible space within the tab handle is
preferably done even when there are less tabs, but preferably the effects is
brought to the maximum when there are more tabs, or for example it is
brought to the maximum with any number of tabs, i.e. even when the tab
handles are much bigger, for example when there are 20 tabs or less). In
addition, preferably the X at least in this case does not occupy a space in a
square of its own but preferably becomes for example two thin crossing lines
which can preferably for example at least partially cover for example part of
the right edge of the icon without hiding the area of the icon that is in the
background. This is very different from the prior art, since for example in
MSIE, Firefox and Opera when there. are a few dozen tabs handles on the
same tab handles line it becomes virtually impossible to see any information
in the tab handle unless the tab lines become split into more than one line
(in
firefox after a certain amount of tabs an additional tabs line is
automatically
created and in MSIE additional tabs become available only through a pull-
down menu, which is less efficient and requires extra clicking to reach the
additional tabs). However, since when there are so many tab handles each
handle can become much thinner that its height, this means that the icons in
the tab handles are preferably also automatically made thinner instead of
being truncated when the tab handle becomes thinner - in order to still
display as much information as possible. Another possible variation is that if
for example the width of each tab handle becomes for example less than half
of its height (or some other breakpoint rules) preferably the tab handles line
is automatically split into two lines - preferably for example without
occupying substantially more height than the original tab line or for example
occupying a line and a half or less or at least less then two lines, since if
the
tab handle becomes so thin the icon can be displayed also for example in just
half of its height, which means that two icons can use the same space, and the
tabs handles are preferably automatically distributed evenly between the
available tab handle lines. Another possible variation is that if for example
two or 3 tab handle lines are used instead of 1 then preferably the top menus
of the browser (above and/or below the tab handles lines) are preferably
automatically reduced in height (preferably in a smart way that reduces

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 151/365
mainly unnecessary spaces and/or reduces in height for example some icons,
for example like the preferable ability to reduce the ribbon for example in
word 2007, as described elsewhere in this application), so that preferably the
available space for displaying the web pages preferably remains more or less
the same. In addition, preferably in any case when a new tab handles line is
opened then preferably the tab handles are preferably automatically
distributed preferably more or less evenly between the available lines, unlike
for example prior art Firefox, where the previous line is still compressed and
the new lines is only partially utilized. Of course, various combinations of
the
above and other variations can also be used. Another possible variation is
that
for example if more than one version of the same application is open at the
same time (for example Word 2003 together with Word 2007), preferably the
OS for example automatically adds differentiating information to their icon at
the left of their square on the taskbar (and/or for example when showing
them when pressing Alt-tab), for example by adding automatically the words
2003 and 2007 respectively for example at the bottom of the icon). Another
possible variation is that preferably the user can automatically convert for
example any proportional fonts into fixed space fonts and/or vice versa, thus
creating preferably a new additional font which preferably has the same name
as the original font, preferably plus preferably an extension which preferably
says if its proportional or fixed and/or if it is original or automatically
converted font. This conversion is preferably done for example by
automatically thinning or widening characters as needed and/or for adding or
removing empty pixel columns on their sides. These additional new fonts can
then preferably be used for example in the word processor and/or in other
applications or for example as various OS related fonts. Another possible
variation is that for example the user can request the OS to create this
conversion for example automatically to all the installed fonts. Another
possible variation in that the user can for example perfoim the conversion for
example on the current fonts for example in a specific document and/or for
example if the converted fonts already exist, for example instantly replace
each font with the equivalent fixed font or with the equivalent proportional
spacing font, and preferably this is also is one of the changes which can be
previewed for example in Office 2007 before clicking and actually making
the change, Another possible variation is that the "X" (or other icon) for
closing windows is also added for example to the decks of Windows that
show in the flip 3d and/or to the icons and/or preview windows that show
when the user clicks Alt-Tab or for example to the items in the pull-down
menu that can preferably show all the tabs in the browser (preferably in
addition to the normal tab handles). Another possible variation is that
preferably the user can define for example the smallest size that a tab handle
or a square (or other shape) on the taskbar can become and/or the maximum
number of squares or tab handles per line, because for example in the prior
art Windows XP the OS automatically decides when to start using and
additional line or lines with a scroll bar without asking the user, eventhough
the user might prefer for example more smaller tabs without resorting to the
scrolling between additional lines, at least until there are more tabs on the

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 152/365
normal line (or lines) without scrolling. Another possible variation is that
the
user can for example use the mouse to reduce the size of the section devoted
to the Start button, so that for example the Start button can become as small
or as thin as the user wants, thus gaining more space for the squares on the
taskbar. Another possible variation is that for example after a certain amount
of squares is reached on the taskbar and/or the squares become smaller than a
certain threshold, for example one or more additional lines of squares can be
automatically added for example by making the square lines (for example
automatically and/or as a default which the user can enable or disable)
shorter in height. This is no problem since in the normal taskbar for example
in Windows XP there is clearly a wasted area at the top and bottom margins
of each square. In this case preferably the icons that typically show at the
left
of squares in the taskbar preferably become automatically shorter in height
and/or for example the top and bottom margins become closer to them. (A
similar variation can also be used for example with tab handle lines for
example if more than one tab-handles line is needed, for example in the web
browser. Another possible variation is that for example if additional taskbar
lines have to be added they are for example added automatically on a need
basis without resorting to scrolling between taskbar lines so that one or more
lines can become invisible (and preferably the user can define the maximum
number of lines that can thus be added automatically and/or if scrolling
should be disabled or enabled). If for example more taskbar lines are added
(or the user for example manually raises the top of the task bar) and for
example the taskbar begins to cover some icons at the bottom part of the
desktop then for example these icons are preferably automatically moved up
if there is room or for example the entire desktop above the taskbar (for
example in Windows Vista) can for example automatically become slightly
compressed in height to fit the new reduced height of the desktop, preferably
while keeping everything in proportions or for example just the vertical
spaces between icons are automatically reduced while the icons remain at the
same size, and when the taskbar becomes again shorter in height (for
example because of closing open windows) then preferably this is also
automatically returned to the way it was before (unless for example the user
indicates that he/she wants to keep the desktop view this way even after the
taskbar becomes smaller again (for example by entering some menu for this
or clicking on something). Another possible variation is that for example the
' " arrow at the right of the quick launch area can be on top of the dividing
border that separates between this section and the central section of the
taskbar, and/or similarly for example the area that enables enlarging or
reducing the size of the system tray, thus increasing fixrther the free space
left
for normal squares (or other shapes) on the taskbar. Another possible
variation is that the user can for example define various general mles or
conditions for displaying or hiding items in the system tray, for example
according to certain events. Similarly, there is a problem that if the user
for
example installs the Microsoft desktop search on Windows XP, it installs a
search window which occupies a whole section in the taskbar and does not
allow the user to reduce that section to less than about 5.5 centimeters, So

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 153/365
preferably this is improved so that the user can reduce it to any size he/she
wants, which is no problem since anyway automatic horizontal scrolling is
used if the text is longer than the size of the search windows. (Of course,
like
in other places, various combinations of the above variations can also be
used). Another possible variation is that preferably the square on the taskbar
that represents an open DOS or cmd window preferably shows also the drive
letter and the path of the open window, instead of showing for example
always the letter and path "c:\" as is done for example in Windows XP
(and/or preferably the path is also displayed for example on the top line of
the open window). Similarly, preferably the path (including drive letter) is
also displayed for example in the relevant square in the taskbar for example
for open word processor documents and/or other applications and/or for
example on the top line of the open window which shows the file name, since
in the prior art if the user for example opens for example in Word two similar
or identical file names in two different directories, it is very difficult to
know
which is which. Another possible variation is that preferably the DOS or cmd
window keeps more consistency with nonnal windows, so that for example
the user can click or double click on a file name in order to run it and/or
for
example click on a directory name in order to go into that directory, and/or
preferably the mark and/or copy and/or paste work also the same way they
work in normal windows (for example by dragging the mouse with the left
mouse button clicked and pressing ~C or ~V), without having to right-click
with the mouse on the cmd window and choosing mark or paste from a menu,
and similarly preferably the user can for example right click with the mouse
on a file name in the CMD window also for example for deleting it or
renaming it (preferably by choosing such an option in the menu that appears.
(Through out the application, whenever the CMD or DOS windows are
referred to, similar features can be made available also to other command-
line modes, such as for example the command line shell in Linux or the new
Windows Power Shell). Another possible variation is that preferably the user
can also use for example marking and directly copy and paste for example
also for example from the title line of web pages (which typically appears for
example in Windows XP in the blue header line at the top of the tab or
window). Another problem is that for example in Windows Vista if the user
tries to copy files for example to a root of a drive or to delete files or
various
other activities within a CMD window, the OS simply refuses and says
"access denied" without any further explanation. So preferably this is
improved so that the UAC prompt is used in CMD windows just like other
normal windows when needed, instead of just refusing. Another possible
variation is that (since, as explained elsewhere in this application,
preferably
any or various menu options can be dragged also as an icon to the desktop),
preferably the user can for example use the right-mouse menu on a cmd icon
to drag the option of "Run-as Administrator" to the desktop, thus creating
preferably a separate CMD icon which preferably when clicked enters the
user automatically into the CMD in Administrator mode (and preferably the
text of this submenu option is automatically included in the text that appears
below that icon), and/or similar icons can preferably also be created for
other

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 154/365
windows or applications, so that when the user clicks on them they are
automatically activated in administrator mode, thus saving the user time.
Another problem is that for example in Windows XP pasting into a CMD
window works much slower than for example normal paste in Windows or
for example pasting into a DOS windows in Windows 98. This slowness
might be useful for example in some applications which might expect the
input to be slower, but this is very rare so normally this is just annoying
and
inefficient. So preferably this is improved so that pasting into a CMD
windows is preferably done at the normal fast speed and for example if there
is a specific problem with some application then preferably the user can use
for example a separate command (for example other than AV or the nonnal
paste command) which works in the lower paste speed (and/or preferably the
user can for example set the speed itself on the low-speed command so as to
be able to optimize it to the maximum that can still work OK). Another
possible variation in that preferably this is accompanied for example with a
sufficiently large input buffer of for example at least a few Megabytes or
more so that for example the buffer can keep the patched data for
applications that are slower but are able to signal when they are unable to
read the input fast enough. Another possible variation is that for example
when deleting a file from a DOS or CMD window it is also added
automatically to the recycle bin, like when deleting a file for example
through the Windows explorer, and can then preferably be undeleted for
example by dragging it back from the recycle bin (for example through the
Windows explorer) or for example by copying it back from there for example
within the DOS or CMD window. Another problem for example in Windows
XP is that for example Hebrew fonts in file names that can be seen in Hebrew
for example in the Save or Open dialogue box may be displayed for example
as questions marks in a cmd window. So this is preferably improved so that
the fonts in the cmd windows are displayed the same way and in the explore
or dialogue box. Another possible variation is that for example if the OS does
not know how display some fonts it will always use at least some meaningful
character set and preferably allow the user to easily change the set, but will
preferably never display just question marks. Similarly, for example in
Windows Vista preferably the OS enables the user also to run programs from
a cmd window in elevated mode, for example by adding this as one of the
options in the menu for example when right-clicking on the item with the
mouse, and/or for example when double clicking or single-clinking on an
item (for example with the left or the right mouse button or either of them)
(for example both in cmd windows and in normal windows or on the
desktop) preferably a menu appears which lets the user choose between Run
normal and Run elevated. Another possible variation is that for example the
user can activate programs on the desktop by clicking only once on the icon
for example with the left mouse button (as is done for example with quick-
launch items on the taskbar) instead of having to click twice. (In Windows
Vista this is preferably combined with the above options of Run elevated, so
that for example after clicking once on a desktop icon the menu which allows
choosing Run normal or Run elevated shows up (preferably with normal run

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 155/365
pre-selected, and then for example if the user clicks again on run normal or
even just clicks again on the icon then preferably normal run is activated and
only if the user explicitly clicks on the option of run elevated then that
option
is activated). Another possible variation is that for example hovering with
the
mouse on any item in the tab handles line opens for example a pull down list
of all the open tabs (preferably for example together with the symbol or icon
of the site or domain for example to the left of the text in each line), or
for
example the list shows all the tabs but those from the relevant category (for
example from Google if the user hovers over a tab of a page from Google)
show up in a top section of the list and/or more emphasized), and/or for
example all the preview windows of the tabs are shown but those from the
relevant category appear on the top and/or emphasized. Of course, like in the
other places, various combinations of these variations can also be used.
Another possible variation is that for example when the user clicks on the
group icon for example with the right mouse button, one of the options (in
addition to "close group") is for example "minimize group, which minimizes
all the windows of the group without minimizing other windows (which
would happen if the user for example pressed the "show desktop" icon). Like
with the preview windows, preferably the number of open tabs in each
window is preferably indicated also in each line of the pull-up menu and/or
for example in the relevant square on the task bar, for example if it is not a
grouped window. Another possible variation is that for example the desktop
search is modified to preferably automatically search also for example the
currently open browser tabs and/or windows (currently Google desktop
search and the Microsoft desktop search don't do this). In this case
preferably
results from open windows and/or tabs (and/or other currently open files) are
preferably displayed in a separate category (since they are by defmition the
most recent) - for example on top of the list of results and/or for example on
a separate category, and preferably these results and/or other types of
results
are shown together with a preview window for example next to them. The
desktop search can access the browser's open tabs for example by monitoring
which urls are being opened (for example though the firewall) and/or for
example by becoming defined also as a browser helper or plug-in (and/or
installing for example also a related browser helper or plug-in, which can for
example show as a search box for example at the bottom of the browser
window) and/or for example by searching the most recent cached uris in the
browser's area of temporary files, and/or for example by other preferably
standard communication with the browser. If the user wants to search for
example only for text in the currently open tabs then this can be entered for
example by typing the search string or keywords while the mouse is for
example anywhere in one of the open web pages (but not in a form field), in
which case preferably the browser or for example desktop search application
preferably automatically identifies it as searching for text in open tabs
(and/for example also other windows for example of the browser), or for
example the user can type it only when the mouse hovers over or near the tab
handles line or for example above it, or the user can for example type it in
the
special search box for example at the bottom or top of the browser window,

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 156/365
or for example typing it anywhere on the page as explained above also
automatically causes the text to jump into the relevant bottom search box (or
for example if a voice recognition application is installed and running
together with a microphone, the user can preferably also for example say the
words, for example "google" or "shopping cart", for example while the
mouse is for example anywhere on the web page preferably outside of form
fields, and then preferably the search in the open tabs is performed as
explained above). If the search in the open tabs or windows is done for
example as part of the desktop search and is for example displayed as a
special category, preferably at the top of the search results, as explained
above, then the user can for example type it in the normal search box of the
desktop search. Another possible variation is that when installing the desktop
search preferably it automatically indexes first the most recent files and/or
directories, since most likely the user will search for more recent things,
and
thus the desktop search can become useful even after it has only indexed a
small part of the files. Another possible variation is that for example the
desktop search line contains by default the last search word or words or
string
which the user searched for and preferably if the user wants to change it
he/she can for example move over it for example with the arrows or mouse
and change or add characters and preferably if he/she starts typing something
new from the start then preferably the previous search string automatically
disappears. Another possible variation is that when displaying search results
for example from multiple open tabs and/or windows the cursor and/or
display jumps into the relevant text and then jumps again when the users
jumps to the next found occurrence of the text, and when the last occurrence
is found in the current tab or window then the next jump is automatically to
the occurrence of the text in the next tab or window where it occurs, etc.
Another possible variation is that the user can for example define the level
of
priority for various criteria for example for displaying the desktop search
results, such as for example define how much weight to give to recency
versus relevance. Another possible variation is that when the user is shown
the desktop search results (for example from the Google desktop search)
preferably for example he/she can drag a result to the desktop to create an
icon for it. Preferably the results from the indexing of the open tabs or
windows are also kept for example in the desktop database even after the tabs
are closed so that if for example the user later searches for these keywords
preferably the results can include also for example bookmarks or histories
which contain links to the pages where these words appeared (this is better
than searching for example over bookmarks to find some site which the user
wants to return to, since sometimes the words that the user remembers appear
not in the title or url but somewhere within the page at the URL). Another
possible variation is that the user can for example tell the desktop search to
index for example also the existing bookmarks and/or history lists that were
already existing for example at the time the desktop search was installed, in
which case preferably the desktop search can for example open all the
relevant URLs (for example through the browser and/or preferably while
taking advantage of the local cache of at least recently visited web pages)
and

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 157/365
index them automatically in the background. Another possible variation (for
example if the user uses for example the Google desktop search) is that
preferably the search application for example just sends for example to one
or more of the Google databases the list of relevant urls and gets the
relevant
indexing preferably instantly for example from the Google databases (since
these web pages are constantly indexed anyway on the web), and/or for
example when the user searches for something locally or on the web the
Google search application can for example search automatically also in the
list of bookmarks or historically saved urls (automatic history list) if the
desired keywords appear in them and then for example can display them for
example in a special results category (and/or for example the desktop search
and/or the browser can for example check for each search result if it already
exists for example in the bookmarks and/or in the history list or lists and/or
for example display those results for example with a special mark that
indicates that the user already visited them). Another possible variation is
that for example when the user is browsing the net and suddenly for example
one or more of the tabs or windows begins for example to play a sound or
video file, preferably the relevant tab and/or window is automatically marked
for example with an appropriate icon or other preferably visually
conspicuous mark, for example above it (and/or for example the relevant
preview window is specially marked), so that the user can immediately
identify the relevant tab or tabs or window or windows and for exainple
directly jump into the relevant tab or window or for example close it if the
sound is annoying (in other words the mark is preferably on or near the
square of the relevant application on the taskbar and/or on or near the tab
handle of the relevant tab). This is very important since otherwise it can be
for example very annoying if the user has for example 20 or more open tabs
for example in the browser and suddenly for example one of or more of them
begin to play a sound file and the user has to start searching for it one by
one.
Another possible variation is that if a video or sound is already playing in
one
tab or window preferably the browser asks the user for permission when the
new tab wants to start playing a sound or a video, and preferably allows the
user for example in the same menu to either choose pausing the already
playing sound or video or to pause the new one or for example pause both of
them or for example allow both of them to play at the same time. Another
possible variation is that for example the browser can automatically group
together tabs that are related to the same url (for example all Google search
results pages) for example by placing them near each other or for example by
creating a group icon for the related tabs, for example in a way similar to
grouped windows on the desktop task bar. All of these solutions can be
applied also for example for tabs for example in the browser or for grouped
windows (the use of this with tabs in a browser can be one of the most
important uses since typically there can be much more open tabs within a
browser than open windows on the desktop). Another possible variation is
that for example when putting the mouse over the bottom taskbar or over the
tab handles line on the browser, for example the mouse's scroll wheel (alone
or for example in combination with some other key) can cause the tab

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 158/365
handles (or squares if it's the desktop bottom taskbar) and/or the preview
windows to automatically grow or shrink in size, preferably for example by
automatically reducing or increasing the number of lines used for the tab
handles or squares or and/or for the multiple preview windows. Another
possible variation is that if there are for example more lines of squares on
the
task bar than there is room so that a vertical scroll bar is created,
preferably
for example by hovering with the mouse at the area of the taskbar the user
can preferably use for example the mouse's scroll wheel for scrolling the
lines of squares instead of having to drag the scroll bar with the mouse. This
is much more efficient than having to drag the scroll, bar since it enables
much faster control of the scrolling of the lines of squares. Another possible
variation is that the user has to click for example somewhere on the taskbar
instead of merely hovering over it in order to enable this scrolling by using
the mouse's scroll wheel, but that is less efficient and therefore less
preferable. Another possible variation is that the for example the bottom task
bar and/or or for example the browser's line of tab handles is for example
one or 2 lines but when the user puts the mouse over it, it automatically
expands to more lines (this way multiple lines can be used when the user
intends to click on something there but they don't interfere with reading web
pages when the user is not dealing with the tab handles line), however that
can be problematic because it can be confusing if the user intends to click
for
example on a certain tab but then the automatic expansion moves the desired
tab to a different position, so preferably, if such automatic expansion is
used,
preferably the automatic expansion is done in a smart way so that the current
tab (or for exatnple the current box on the bottom task bar) over which the
mouse is held (or for example also the other nearest tabs) preferably is
automatically kept at the same place even after the expansion. Another
possible variation is that for example when the user puts the mouse on the tab
handles line preferably the tab line automatically expands for example into a
tree structure (for example instead of the original tab line or for example
the
original tab line remains as it is and the tree expands below it) and/or for
example the preview windows are shown in a tree structure. This tree
structure can be for example constructed automatically according to the order
in which the user reached these tabs, so that for example the roots are tabs
which started at the user's default home page and/or for example Google
search pages and the branches continue according to the order of clicking on
links that opened the following tabs, or for example the trees are constructed
automatically for example according to domain and for example the path
length in each domains, but that is less preferable since that would be less
relevant to the user. Another possible variation is the user can for example
choose or toggle between various options, such as for example showing the
tree structures (and according to which rules) or for example showing only
the preview windows of the relevant category, such as for example the
preview windows of Google search results pages for example when the
mouse stands on one of the Google tabs, as explained above, and/or using for
example automatically grouped tabs on the tabs handles line. Another
possible variation is that for example when the user searches for some web

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 159/365
page for example in the bookmarks or history, preferably preview windows
are also shown there (for example to the side of the url preferably in the
visible section of the list of bookmarks). This can be done for example by the
browser automatically bringing the relevant pages and reducing them to
preview images for example directly from the web when the links are
displayed, and/or for example from the local cache on the user's computer if
available, and/or for example the preview windows are saved in advance
automatically somewhere on the user's computer for example at least for the
most recently visited pages, or for example for every bookmark (but that is
less preferable since it is much more wasteful). Another possible variation is
that the web servers are improved to automatically create in advance preview
images of pages (for example each time after they are created or changed)(for
example the size of 1:10 of the normal first screen of the page) and
preferably
submit them directly as preview images upon request (for example by adding
a specific convention to the http protocol for requesting them) so that for
example the preview image can be requested even without the page (for
example by requesting any url with an addition of a code that indicates that
only the preview image is requested, and so preferably the browser can for
example request the small preview images instantly for example when saving
bookmarks or when displaying them, or for example request them from an
online database such as for example Alexa, which supplies on-demand pre-
prepared thumbnails of a huge number of web pages), or for example the web
server adds it automatically as an added data for the page. Another possible
variation is that for example the tabs can automatically become grouped, so
that for example all the Google search results become automatically
represented for exatnple by one Google tab and when the user puts the mouse
over it and/or when he/she clicks on it, it expands for example into multiple
tabs (for example on a second tab handles lines) and/or the relevant preview
windows, and/or for example the grouped tabs are generated according to the
above described tree roots or for example like in any of the other variations
described above. Another possible variation is that the user can for example
push for example with the mouse for example some of the tabs (or for
example squares in the bottom task bar) sideways, so that for example the tab
handles (or for example squares on the taskbar) from the mouse position up
to the left end become smaller and more compressed and so the tab handles
(or for example squares on the taskbar) to the right of it become bigger and
more clearly visible, or vice versa. (Since dragging a tab handle with the
mouse for example in Opera moves only the attached tab, thus changing the
order between tab handles, preferably for compressing a group tabs there are
for example vertical thin rods that go up between tab handles, so that for
example the user can drag with the mouse the appropriate rod to the right or
to the left, or similar arrangements). Another possible variation is that
preferably the user can also mark for example one or more tabs (for example
by choosing from a menu when right-clicking with the mouse) so that they
become more conspicuous, so that the user an later return to them more
immediately. Another possible variation is that the user can for example use a
control or menu choice which closes for example all the tabs for example to

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 160/365
the left of the current tab (or for example to the right, but to the left is
much
more useful since it normally means closing all the previous tabs). Another
problem is how to display for example preview windows of windows that
themselves contain multiple tabs, for example on the bottom task bar, such as
for example the preview window of the browser itself, or for example a
preview window of a grouped icon. So preferably the preview window of for
example a browser window with multiple open tabs can be for example the
preview window of the currently active tab, and preferably next to it (for
example above it, for example between the title and the preview windows),
for example an indication is given of how many tabs are open in that
window, and/or for example the preview window in this can be for example
some symbolic preview window for example with a number of small squares
that represent the number of open tabs, or for example with automatically
generated squares that represent the tabs themselves (for example extra small
preview windows of the tabs within the preview window of the browser
window, which at least give the feel of the general color of the tabs, or for
example a copy of the actual tab handles or whatever part can be made
available within the space of the preview window). Similarly, for example if
textual choice lines (for example the typical pull up list) are used when
clicking on a grouped icon and for example some of the individual windows
contain tabs, preferably the number of tabs is indicated near each of them.
For example the preview window of a grouped icon can be for example a
preview window of the menu of choices that will spring up when the user
clicks on it (for example in reduced size on in the normal size, and if the
user
clicks on one of the options there preferably he/she can enter the desired
choice even without having clicked on the grouped icon). Another problem
with grouped icons (for example of browser windows or for example word
processor windows), is that whenever the user moves for example from the
browser window to some other application and then clicks on the grouped
icon to go back to the browser, the system automatically displays the choice
menu of the grouped icon even though the user would most likely want to
return to the same browser window that he/she was previously in, in which
case the user has to search again in the list of choices to find this last
window, which is unnecessary and inefficient and can be very annoying. So
preferably this is improved so the user does not have to search again if
he/she
wants to return to the last used window of the group and/or preferably also
does not have to click more than once for this. So when returning to the
grouped icon the system preferably for example moves the user back to the
last window of that grouped icon that was in the forefront (for example the
last browser windows which the user was looking at before jumping to the
other application or applications), and for example only then if the user
clicks
again on the grouped icon then preferably the choice menu is displayed.
Another possible variation is that when the user clicks on the grouped icon
the system preferably moves the user preferably instantly back to the last
open window of the group in which he/she was, as above, but preferably the
choice menu (for example textual, for example line below line as usual,
and/or for example by preview windows, and preferably the preview

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 161/365
windows also contain for example at their top the title and/or url or other
textual information) is also shown for example for a certain short time period
(for example a few seconds and/or until the user clicks for example on the
window or for example on another window, however preferably the choice
menu and/or preview windows don't go away if the mouse remains over any
of them), and so if the user intended to go to another of the windows of the
group he/she can simply click on the desired choice, otherwise he/she can
continue immediately working in the last window. Another possible variation
is that for example when the user puts the mouse over the grouped icon the
choice menu (textual and/or for example preview windows) appears
(preferably instantly - without any delay) without the user having to click on
the icon, and then if the user clicks on the grouped icon preferably he/she is
moved preferably instantly into the last window, and if he/she wants to go
into another window he/she can click on the desired choice (for example the
relevant preview window and/or relevant text choice option), and thus the
user still gets to the desired window with one click and does not have to
search again if he/she just meant to get back to the last window. Another
possible variation is that when the user licks on the grouped icon the choice
menu (textual and/or preview windows) appears and preferably the last
windows in which the user was in is already marked and/or pre-selected in
the textual choice menu and/or preview windows so that the user does not
have to search for it again and preferably just clicking again on the mouse
button will bring the user to the last window (so in other words, quickly
clicking twice on the grouped icons can bring the user back to the last
window, or for example the user has to move the mouse in order to click on
the marked and/or pre-selected choice if he/she wants to enter the last
window, which is even less preferable, since it involves additional movement
with the mouse), however this is less preferable since the user has to click
twice in this variation instead of only once in the other variations. Another
possible variation is that for example when the user clicks on the grouped
item, the last window of the grouped item in which the user was in preferably
appears automatically as the lowest option (and preferably appears pre-
selected as and marked as pre-selected as described above), which means that
the user has the least distance to move if he/she wants to click on that
option.
Another possible variation is that this pre-selected option actually appears
on
top of the square of the grouped item, for example by partially or fully
covering it and/or it appears for example at least partially transparent so
that
the taskbar and the square of the grouped item still shows below it, which
means that if the user clicks quickly twice on the grouped item he/she will
again automatically return to the last item in which he/she was in that group.
Another possible variation is that the user can for example enlarge sideways
the lengths of the lines which show in the grouped item menu so that more
information can be visible in them (so that preferably this becomes the new
default until the user changes it again) and/or for example the OS can enlarge
it automatically as needed (for example according to the longest title and/or
according to the average length of the titles, etc.). Of course various
combinations of the above variations can also be used. Another possible

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 162/365
variation is that if for example the user is interacting with one application
and
then for example clicks directly inside an open window of another
application (for example Word or a browser or other application), preferably
the first click is not removed from the buffer of clicks, so that for example
the user can preferably for example mark directly an area in the other
application without having to click again. (In the prior art Window the user
would have to click again since after transferring focus to the 2 a
application
the first click that was used for the transfer becomes lost). Another possible
variation is that for example even if the user chooses not to group multiple
windows of the same application into a single grouped icon on the task bar,
preferably when closing one of the windows for example from its icon on the
taskbar preferably one of the options displayed in the pull-down or pull-up
menu is for example "close all open windows of this application" (which is
preferably all the windows that would have been automatically grouped
together if the automatic grouping was On). Similarly preferably one of the
options in the browser is for example to request to automatically close all
tabs of the same category (for example from the same domain), for example
by clicking with the right mouse button on one of the tabs of that category
and choosing from a menu, instead of the normal clicking for example on an
X at the side of the tab handle to close just that tab (or for example to
close
the grouped tab if it is a handle of a group of tabs). Another possible
variation is that for example in the Google News (or similar sites) preferably
news items are accompanied by a preview window of the item for example in
addition to the pictures that accompany some of them or for example for each
item that is not accompanied by a picture, the preview window is
automatically added instead. Another possible variation is that the screen
resolution is preferably automatically raised preferably for example to the
maximum available at the areas of the preview windows. This can be done
for example by improving the hardware and/or firmware of the monitors (at
least for example in LCD and/or SED and/or Plasma monitors), preferably by
enabling individual areas of the screen to behave differently in a dynamic
way, and/or the hardware and/or firmware of the display adapters and/or their
drivers in order to enable setting different resolutions at different areas of
the
screen, and/or for example the OS preferably automatically chooses or
enables the user to choose for example the highest available resolution (for
example 1600x1200 or for example 1900x1400), and then the OS emulates
the lower resolution which the user normally uses (for example 1024x768)
preferably by software and/or for example through the driver, and/or for
example the hardware and/or firmware of the display card does it, and so the
real resolution is for example the highest but the user sees it for example
only
in the preview windows and/or for exarnple when playing DVD movies
and/or in other specific activities, etc. However, if the system for example
enables anyway changing the resolution in a truly independent way that can
leave the fonts and/or icons and/or every thing else that is relevant (for
example menus, the taskbar and/or anything else in the user interface)
unchanged (and alternatively allows changing them, if so desired,
independently of the resolution), as described elsewhere in this application,

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 163/365
then the user can for example work all the time with the highest resolution
for everything (as long as for example the refresh rate and/or performance for
example is still high enough) without having to suffer too small fonts or
icons
because of that). If for example there is a performance or refresh rate issue
when working all the time in the highest resolution, another possible
variation is that for example the entire resolution of the screen can change
preferably instantly to a higher resolution for the time period that the
preview
windows are shown and then instantly change back to lower resolution,
preferably without any noticeable jump or delay that the user can perceive,
except for example the lower refresh rate for a brief period. Another possible
variation is that preferably the user can activate a command which
automatically jumps each time to the next window (for example in the
normal task bar on in the internal group of open windows that belong to the
same application or for example between open tabs in the same application -
for example in the Internet browser), so that preferably each time the user
moves to the next window systematically. This is much more convenient than
the prior art, where the user has to press alt-tab or control-tab but each
time
just moves manually to a specific window instead or has to use the mouse
manually each time to get to the desired window, instead of being able to
systematically traverse the relevant open windows one after the other.
Another possible variation is that for example when the user presses alt-tab
to
move between windows (and/or for example when he/she presses control-tab
to move between tabs)(or other similar keys for jumping between open
windows or applications or tabs) preferably items in the group of items
shown (which can be for example icons and/or preview windows - in other
words the preview windows are preferably displayed together next to each
other (for example in a few lines and columns) at the same time instead of or
in addition to the normal icons, so that for example if icons are also used
then
for example each preview windows has also the relevant icon, for example
above it, preferably together with the title, so that the preview window
(and/or icon) and the title preferably show up together as one unit, so that
the
user does not have to look at two separate places) can also be accessed for
example by clicking with the mouse on any of them, instead of the prior art
in which only the tab button can move between them and only serially. In
addition, if the user for example uses both the arrows and the mouse to move
between these icons or preview windows (or for example text lines, as for
example when using Ctrl-Tab to move between tabs in the Opera browser),
as long as the user is still in the Alt-Tab or Ctrl-tab menu, preferably the
arrows pick up from the last position moved to with the mouse and preferably
the mouse picks up from the last position moved to with the arrows. In
addition, if there are too many icons or preview windows that show in the alt-
tab to fit in one screen, preferably a bar handle is added for scrolling the
group of shown items up or down. Another possible variation is that this
shown group can for example be made to remain visible (and preferably also
selectable from) also after the user releases for example the shift or control
key (for example by clicking for a longer time, or for example by using a
separate key other than control or tab or in addition to it, but more
preferably

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 164/365
for example if the user moves the mouse into the area of the shown items
and/or for example uses the arrows and/or some other key after they are
shown, preferably they remain shown for example until he/she clicks on one
of them or for example clicks with the mouse outside the area of the shown
group, or for example uses some other key to close the shown group).
Another possible variation is that at least there is a command which for
example allows moving only between the windows of the same group, unlike
for example alt-tab, which moves also between the other open windows, and
for example control-tab which moves only between tabs of the same window.
On the other hand, for example when opening additional pages in the browser
as additional tabs within the same window (for example in Netscape or in
Opera) there is a problem that for example closing a page with Alt-F4 closes
the entire browser window with all the open pages (tabs) instead of just the
current page, and for example the nonnal Alt-Tab does not switch between
the tabs. Although typically CTRL-F4 and CTRL-Tab work on the tabs
instead, this is less convenient since many users might prefer the same
standard controls, so that tabs don't get a different status from normal open
windows, and so that the user does not have to remember for each open page
that he/she is viewing if it is for example an internal tab or a normal
browser
window, and if he/she makes a mistake he/she might close all the open pages
that he/she is working with. In addition, in the prior art, if the user has
some
pages open as tabs and some as another browser windows, this means that
switching between the pages requires using both Alt-Tab and CTRL-Tab,
which can be very confusing and inconvenient. So preferably this is
improved, preferably in the browser itself and/or by the OS, so that
preferably for example Alt-F4 (or any other similar accepted convention)
closes only the current page (tab) and preferably for example Alt-Tab
switches also between the tabs (On the other hand, since some users have
gotten used to the CTRL variation, preferably both the Alt and the CTRL
variations work the same for the tabs, and/or for example the user can choose
what effect the CTRL and the Alt variation will have, and/or at least for
example when closing a tab page by Alt-F4 the browser or the OS preferably
warns the user or asks if he/she wants to close just that page or the entire
browser window with all the open tabs). Another possible variation is that the
OS itself automatically enables this, which can be easily done for example if
the command of opening internal tabs within a window becomes an
automatic service offered by the OS, so that application programmers simply
call this service when allowing the creation of tabs within the application
Window. Another possible variation is that if the user for example closes a
browser window or tab or for example a word processing file window or for
example other applications (for example with Alt-F4) he/she can still press
some undo button or menu option or key which automatically reopens the
last closed window or tab or file. For example, the user might close by
mistake a window or tab of an important web page before he/she added a
bookmark to it, and might want to instantly restore it as soon as he/she
realizes the mistake. This is preferably done by the relevant applications
and/or the OS creating automatically a temporary backup of the open window

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 165/365
or file for example when the user closes it and/or for example when it is
first
opened, and/or for example automatically at certain intervals and/or in other
events (preferably for example the links (urls) and/or the actual data is
saved), and/or for example the OS preferably keeps the information about the
application and window in the swap file for at least a few seconds or at least
a few minutes (or another reasonable time or until there is no longer room to
keep it there) so that for example if the user realizes after a few seconds
that
he/she closed a window by mistake, preferably the restoration form the swap
file is as fast as if the window had never been closed. Another possible
variation is that preferably the user can request to automatically reopen the
entire set of windows and/or tabs that was opened last time when reopening
the browser after previously closing it, even when it is closed normally by
the
user. This is better than the prior art since for example the browser Opera
allows the user to return to the previous set of open tabs only if the browser
was not normally closed previously. Another possible variation is that even
after the user for example tells the browser (and/or for example other
internet
application where this feature is used) to start from the beginning or for
example closes the various windows or tabs, preferably the user can for
example enter some history list which preferably the browser keeps
automatically, which preferably saves the previous states of multiple browser
windows and/or tabs (preferably by saving only the links in this case), and
thus the user can for example preferably scroll back to any desired set of
tabs
and/or windows that were previously open together and can preferably for
example with a click of the mouse go back to that same state of multiple open
windows and/or tabs (preferably the entries in this list are kept least for a
certain time and/or at least until the list reaches for example some maximum
size, and then the oldest entries can preferably be deleted automatically if
the
space is needed, however if only the links are kept then the list can be kept
even without any automatic deletion, unless for example the user requests
this explicitly, since very little space is needed for this). Another possible
variation is that for example the browser or OS or other application
preferably allows the user for example to reopen closed tabs and/or undo
other changes in the tabs even after for example the browser itself is closed
and reopened, preferably by saving automatically also the history of changes
in the tabs for Undo, so that for example using for example ~z (or other
convenient command) will undo closing of tabs, moving of tabs, etc., even if
the whole browser window has been closed and then reopened with these
tabs, and preferably redo also works here, preferably including multiple
branches in the redo when needed. (Although the Opera Browser for example
allows the user to press AZ to reopen closed tabs, this does not work for
reopening closed windows or for reopening closed tabs if the browser is
closed while these tabs are closed and is then reopened. In addition, in Opera
if the user is in an email-message-composing tab, the ~z works on undoing
typing or deletion within that tab instead of restoring other tabs, so this is
preferably improved so that undoing the typing in the composition tab uses a
different control, or for example the user has to hover with the mouse outside
the typing area in the composing tab on order for the ~z to restore closed
tabs

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 166/365
instead of undoing typing in the composition window). Another possible
variation is that the last search string or history of recent search strings
(and/or multiple search strings if separate search strings can exist for
example
in separate tabs at the same time) is preferably also saved automatically
preferably together with the tabs, so that when the window is reopened after
being closed preferably the search string or strings are also preferably
automatically available from at least the previous session. Another possible
variation is that for example fields in which the user entered data, such as
for
example in forms or for example data that the user enters when composing an
email message, are also automatically saved (for example every few seconds
and/or after an amount of small change, for example after every N characters
or words, and/or upon closing) and are preferably automatically available
again when the user reopens the browser. Another possible variation is that
the user can for example mark for example with the mouse multiple tabs (for
example by marking their top handles, for example by pressing shift and
clicking on the start and end tab of the desired group) and then can for
example close the entire marked group for example with a single click or
key. Another possible variation is that the user can for example use a
command such as "refresh-all" or "reload-all" (preferably for example by
clicking on such an icon or menu item), which causes refresh for all the
currently open tabs. Another possible variation is that preferably when the
user saves a file under a different name, for example in the word processor,
preferably the user has also an option to request to automatically keep open
also another window with the original file. This can be very useful for
example in case the user wants to work for example on one copy with
marked changes and a second copy where the changes have been accepted.
Of course the user can do this manually by first saving the file under a
different name and then reopening the original file name in another window,
but it is more efficient to add such an automatic option to the application so
that the application can do this automatically for the user. Another problem
is
that for example when trying to delete a directory through a command
prompt window in windows XP the OS only asks "are you sure" without
even letting the user know that this is a directory. This is very dangerous
since the user might this way inadvertently remove even a huge directory
tree. So preferably this is improved so that instead the OS tells the user
that it
is a directory and preferably tells him/her also the number of subdirectories
and/or the total number of files in that directory tree and/or the total size.
Preferably the OS also lets the user choose as one of the options a controlled
deletion so that for example the user will be automatically asked to make the
same choice for each sub-directory of the chosen directory and/or for
example asked to verify the deletion of each file. In addition, preferably
especially when deleting directories, preferably the system automatically
keeps a backup of the directory structure and/or a rollback log, so that if
the
user made a mistake the directory tree can preferably be instantly restored.
This is very important since eventhough there are for example various
programs that enable searching for deleted files and restoring them, restoring
a full directory tree without automatically saving first a copy can be much

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 167/365
more complicated and less reliable. Another possible variation in that the
user can preferably request to copy with automatic individual file
conformation for example 1 or more directories (for example from a DOS or
CMD windows or for example from an explorer window), which means that
preferably the user is asked to confirm if he/she wants to actually copy each
file one by one (regardless of whether the file already exists in the target
destination or not), and/or for example request to copy only files which were
created for example be and/or after certain dates. Of course, various
combinations of the above and other variations can also be used. Of course,
like other features of this invention, these features can be used also
independently of any other features.
23. Another problem for example with SED monitors is that they have a
brightness of only half or less of a comparable CRT monitor, probably
because in the way that they are normally built increasing the voltage further
could cause an uncontrolled discharge for example sideways. Therefore this
is preferably solved for example by adding borders between adjacent pixels,
preferably for example by surrounding each pixel by preferably thin walls
that preferably go at least part of the way or even almost all the way till
the
front glass (and the walls can preferably for example also contain some
preferably thin internal metal coating), which can be a small added cost since
such monitors are typically manufactured by printing in a way similar to an
inkjet. Such walls thus preferably serve as wave guides for the electron
beams and, apart from preferably enabling using higher voltage and
increasing the brightness, they can have the additional advantage of
increasing the precision of the direction (and thus the exact position) in
which the electrons hit the phosphor, and thus reduce even further the need
for using a shadow mask, so that preferably only a very thin mask is used or
even no mask at all, or for example elongated slots like in Trinitron monitors
are used but in a way that the borders between the slots are even thinner than
in a Trinitron monitor. This can thus further improve the brightness and/or
the color rendering so that the SED can preferably give better brightness
and/or better color rendering than even Trinitron monitors. Another possible
variation is that for example every once in a while (for example every few
centimeters, for example some of the walls or for example small spikes at the
ends of some of them can preferably reach all the way to the front glass, thus
increasing the stability of supporting the flat front glass eventhough there
is
typically a vacuum between the back part and the front glass. Another
possible variation is that the are for example small holes at the back of the
cells that generate the electrons in the SED monitor or at least in some of
said
cells, so that for example the vacuum can be created by sucking the air out of
a layer at the back of the cells. Another possible variation is that
preferably
the monitor's control can be done for example with a preferably single
moving element, for example similar to the rotate-able button on the front of
Mag monitors, except that preferably instead of a rotating button there is
preferably an element that can be moved freely for example in all directions
with a certain frame of possible movements, thus giving the user an ability to

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 168/365
choose anything on the screen or on a certain area of it without being limited
to a circular menu like in Mag monitors. This moving element can be for
example a moveable piece of plastic attached for example at the end of a
needle which for example goes into the depth of the bottom front panel of the
screen, which can be moved in any direction for example within a square
frame border, so that for example its position can be sensed by the angle of
the needle. Another possible variation is to add for example in portable
computers preferably (instead of the square which is typically used as a
mouse substitute) for example a small ball or other small handle which the
user moves on an area for example with the same size of the typical square or
even bigger. This is important because many users feel uncomfortable with
having to drag their finger on the square. This ball or handle can be
connected for example in a way similar to the above described moving
Monitor control button - for example by attaching it to the end of a needle,
or for example it is connected magnetically to a magnetic plate and
preferably moves a parallel magnetic element on the inside which is sensed,
or for example the movements of the external element are sensed directly for
example electromagnetically or for example through induction. Another
problem with Mag monitors is that in order to switch from the normal
monitor's menu to the hidden menu which has more options and can change
factory settings (This menu is hidden because users who are not technicians
might easily screw up these settings) the user must keep the round navigation
button pressed while turning the monitor off and on again, and then again
turning it off in order to return to the normal menu, which is very unhealthy
for the monitor. So preferably this is improved so that for example for
switching to the factory settings menu preferably the user has to keep the
navigation button pressed for example for 10 seconds or more (or other
reasonable time limit), preferably while it is pointing for example to a
specific menu option (preferably any normal option which is used normally
for something else) or to one of a few specific menu options (so that it does
not happen by accident), and for returning to the normal menu preferably the
hidden menu has for example a normal exit option which the user can simply
choose through the navigation button. Another possible variation is adding
for example a hidden small switch for example on the bottom side, for
example somewhere below the round navigation button, but this is less
preferable because is means adding additional electronics, while the above
solution is much cheaper and more efficient. Another possible variation is
that preferably these OSD (On-Screen Display) Menus are transparent or can
be made more or less transparent for example by an additional option within
them, so that the user can more easily see what is on the actual computer
display even while the OSD menu is on. Another possible variation is that
preferably the various menu items in the monitor have an undo function so
that preferably the user can click on an option that resets them for example
individually or as a group to the previous value before the last change.
24.Another improvement in Windows Vista is that the OS automatically
identifies the applications which the user most typically uses and loads part

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 169/365
of them automatically in advance during the boot. However, this can still be
inefficient since it can slow down the boot process itself. So this is
preferably
improved for example by combination with saving the image of a correctly
booted system and using it for the next instant boot or reset. So preferably
the
OS adds to this image also these most commonly used applications, so that
they can be loaded instantly together with the image of the OS and other
start-up programs. However, since the user might not really want to activate
these programs each time, preferably they are loaded into memory with a flag
that causes them to be actually inactive, so that preferably they become
active
only after the user actually tries to open them.
25. Another improvement in Windows Vista is that the user can view virtual
folders, which unite together for example "all pictures and videos" etc.
However, since these are only logical and not actual folders the user for
example cannot copy additional files directly into such folders, which creates
a consistency problem compared to normal folders and can therefore be
annoying or confusing or inconvenient. So in order to improve this preferably
the system allows the user also to copy files (and/or other directories) also
into such virtual folders. Preferably this is done for example by intelligent
decisions which real folder to use in association with this. For example the
OS can decide that the new files will be copied to the largest relevant real
folder (for example the folder which currently contains the largest number of
files of the relevant type, for example photos or video or music files, etc.)
(which can be easily determined for example from the local desktop search
database) and/or for example when the user copies files to the virtual
directory the system for example automatically show the user a selection of
actual directories that are recommended and the user can for example click
on the desired one and then the copy will actually proceed into there. Another
possible variation is that for example for each such virtual folder an actual
folder is also created automatically (for example with the same name) so that
preferably any subsequent files copied to the virtual folder will be simply
copied to the physical folder that is associated with the virtual folder of
that
name, and for example when viewing the virtual folder, both the virtual
contents and the actual contents of it are shown together or for example in
separate categories. Another possible variation is that for example the system
can preferably display, preferably instantly upon request, (for example with
the help of the indexed desktop search), for example a descending list of the
largest files and/or directories and/or subdirectories and/or for example mark
especially those files that also have not been used for a long time and/or are
rarely used, so that the user can for example most efficiently get rid of
unnecessary junk on the hard disk or disks. This can preferably be done also
across partitions and/or across physical disks, if there is more than one disk
(although there is a program called TreeSize which does something similar,
that program works only within each partition, and also Treesize only
displays the sorted order of directories and subdirectories but des not sort
by
size the files in the directory itself). Another problem in Windows Vista is
that the security feature that requests user confirmation too often causes

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 170/365
people to start ignoring it after a while and click on "Allow" almost
automatically. So preferably this is improved so that the system takes into
account if the user or an application initiated the action (as explained for
example in other applications which deal with computer security by the
present inventor), and this is preferably applied at least to OS functions, so
that if for example the user himself/herself for example clicks on a menu item
which activates some system function, preferably the OS does not ask the
user for confirmation (but more preferably this is not limited to OS
functions,
as explained in the above mentioned applications). Another problem is that in
the new Vista Beta 5365 of April 22, 2006 when the OS requests this
permission the entire screen becomes dark except the authorization dialogue
box - in order to freeze other applications until the user answers so that
they
cannot interfere with this. Again, a much better solution is described in the
above security applications by the present inventor - so that preferably other
processes don't have to be frozen until the user replies but the OS and/or
Security system prevent other applications or drivers etc. from interfering in
the dialogue so that they cannot for exaYnple change the message or falsify
the user responses, and preferably similarly for example the OS and/or the
security system (or for example other application or service which is in
charge of this) preferably prevents other applications or drivers for example
from displaying a misleading message for example on top of the message
displayed by the OS or by the security system (thus for example changing the
question or the positions of the Yes and No, etc.).
26. Another problem is that for example various programs or drivers refuse to
install on various betas of Windows Vista because they don't recognize the
OS version. So in order to solve this preferably the OS enables the user to
specify for example what name or and/or other codes the SO will identify
itself by to various applications, so that for example the user can preferably
tell for example Windows Vista to identify itself (for example in general
and/or for example to a specific list of applications for example as Windows
XP). Another problem is that for example in windows XP the cmd window
does not show anymore also the short 8-letter names of files with names
longer than 8 characters, unlike Windows 98. But this is problematic if the
user wants for example to open such a file for example with a DOS
application that sees only 8 letters because then the user does not know the
correct DOS name that the DOS application will see (typically a few letters
and then a'-' and then 1 or 2 letters). So preferably the user has for example
a choice if to let the cmd window display also the short DOS names for file
names, and/or for example if the user activates the DOS program with the
long file name then preferably the system automatically converts the file
name parameter to the correct short name before transferring it to the DOS
program (in the prior art in such a case only the first 8 letters are
transferred
and then the DOS program cannot open the correct file if the name is longer
than 8 characters because it does not get the correct name with the '-').
Another possible variation is that preferably for example when DOS or CMD
windows are opened, preferably the OS for example remembers

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 171/365
automatically not only the size of the window but also its position on the
screen, so that preferably at least when there are no other already open CMD
or DOS windows preferably it is opened at the same position on the screen as
the last such window which was last closed, and if additional CMD or DOS
windows are opened then preferably they are automatically opened at certain
shift from the original position. This can be very convenient since normally a
user would prefer such a window to be on a usual position convenient to
him/her, but in the prior art Windows the first CMD or DOS window is
always opened at the same place, while the user might always prefer to put it
for example at another position, so he/she always has to drag it manually
after opening it. Similar rules can be applied of course also to other part-
size
windows which the user might open frequently. Another possible variation is
that preferably the user can enlarge CMD windows to any size desirable and
preferably at least at the CMD shell (i.e. when the user interacts with the
CMD window itself, as compared for example with interacting with an editor
that runs in the CMD window) the line wrapping can preferably be
automatically adjusted to the new width. This is better than the prior art, in
which the CMD window cannot be made wider then the default and for
example making it thinner creates automatically a horizontal scroll bar.
Another possible variation is that preferably@@.
27. Preferably file sharing programs which download files from multiple other
users are preferably improved so that when the same file is available from
multiple sources, they preferably download from each available source
sections in preferably random order (so that for example from one source the
end parts are downloaded, from another source middle parts, from another
source parts at the beginning, etc.). This can prevent the phenomenon that,
since certain files become no longer available during the process, typically
the downloading becomes progressively slower near the end of the file.
Another possible variation is that preferably for example such programs
and/or torrent sharing programs preferably download first the parts which
lowest availability among the currently sharing users (in order to leave for
last the parts which more users have) and/or for example preferably
downloads that are about to finish and need a specific part get higher
priority
than downloads which just started and so can get any part. Another possible
variation is that for example preferably any searchable files in the shared
directory or directories are automatically converted into torrents, so that
the
file sharing program automatically ensures that for each specific file
downloaded the downloading user will also upload it. Of course various
combinations of the above and other various can also be used. Another
possible variation is that for example when downloading a video torrent file
the user can for example request to first get for example the first 5 minutes
(or for example other the reasonable time frame and/or for example a slice
not at the beginning, and then preferably the torrent downloading program
preferably automatically downloads also the relevant info for the file which
is
needed for playing this slice properly (such as for example the resolution,
bit
rate, etc., which can for example at the beginning and/or end of the file), so
that preferably the user can almost instantly watch the sample in order to see

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 172/365
if indeed that is the correct file that he/she expects. Another problem is
that
for example if the user made a mistake in entering the desired local file name
when downloading a file for example in the browser or changed his/her mind,
then the file can only be renamed after the transfer is finished, or the user
has
to stop the transfer in the middle and delete the file and start again the
download. So preferably this is improved so that the user can also change the
file name while it is being downloaded without disturbing the download
process. Preferably this can be done for example by the browser immediately
displaying the new name but actually renaming the file automatically only
when finishing the download, or, more preferably, the browser for example
automatically pauses the download for a split second, renames the file, and
then automatically reopens it with the new name and resumes the download
(the entire switch preferably takes much less then a second), and/or for
example the OS's file system is improved so that a file can be renamed even
while open, without having to close and reopen it (there really should be no
problem in doing this because there is no reason why the name of a file in a
directory entry cannot be changed even while there are open handles that
point to the file. Another possible variation is that preferably the user can
also for example change in the middle of the download for example the target
directory, and in order to enable this preferably the browser for example
automatically copies the already downloaded part to the new directory in the
background, preferably while continuing to download (for example to the end
of the original file or to some temporary buffer), then preferably appends to
the new copy any additional data that was downloaded while the file was
being copied, and then deletes the original file and, if used, also the
temporary file. However, if the other directory is in the same partition,
preferably the browser uses "Move" instead of copy, and in this case
preferably it works like in the rename, without copying to a new file. These
methods can preferably be used also for example when downloading files for
example through torrent downloading applications.
28. Another preferably improvement is that when more than one OS is installed
on the same computer the user can preferably easily switch the default OS to
whichever option he/she wants and/or for example change the order of the
options (where typically the first option becomes the default). This can be
done for example by letting the user drag an option line with the mouse to a
different position in the screen that asks which system to boot or for example
press some key or key combination. This is very important, since in the prior
art if the user for example installs Windows XP over a system of Windows
98 (so XP automatically becomes the default) and then prefers to use for
example Windows 98, it can be very frustrating to have to change the choice
each time when booting, and this is also important especially for example if
there is a power failure and the computer reboots automatically. Although XP
for example allows changing this by performing a few steps after the XP has
fmished booting, which most users don't even know how to do, it would be
much more intuitive to let the user for example move the option lines with
the mouse in the screen that asks which system to boot, as explained above.

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 173/365
This means that preferably basic or standard mouse support is preferably
activated at least partially already at this stage eventhough no particular
system has been activated yet. Another possible variation is that the system
automatically remembers the boot option that was last chosen and makes it
automatically the default for the next boot until the user changes it.
(Another
possible variation is that this option also automatically becomes the first
choice on the boot menu on the next boot, but that is less preferable since it
might confuse the user if he/she is used to a certain order of the boot
options
and did not choose explicitly to change it). Another possible variation is
that
if the user for example chooses some option in the boot menu and then
regrets it and the system for example has already started to boot according to
the chosen option, (for example choosing Windows 98 in a boot menu that
has both Windows XP and Windows 98) preferably the user can for example
press some button which can preferably return the user preferably instantly or
almost instantly to the boot menu preferably without having to reboot the
computer. This can be done for example by saving automatically an image of
the state of the computer when the boot menu is reached, so that preferably
this state can be preferably instantly loaded again from that image for
example when a return to the boot menu is requested. Another possible
variation is that if there is for example more than one bootable hard disk (or
for example other forms of non-volatile memory which function as hard disk
replacements) (which can be reached for example by pressing F8) and this
disk is not covered by the normal OS-generated boot selector, preferably the
BIOS can sense this automatically and can create automatically - and/or for
example the user can choose this from a menu in the BIOS - an additional
pre-boot selector, which preferably shows up automatically when booting
without having to press F8 and lets the user choose between the two or more
bootable hard disks (or other non-volatile memory options), and preferably in
this boot selector also the user can preferably for example move one or more
of the options to be before the others and/or for example the BIOS
remembers automatically the last choice and uses it as the defaults the next
times until the user chooses again differently, and preferably after for
example 5-30 seconds (which preferably the user can change through the
BIOS) the last default options is automatically chosen. Another possible
variation is that the user can for example through the BIOS or through the
OS, preferably without needing any additional installations, for example
preferably easily add this additional boot option or options to the normal
boot
selector that was generated by the OS, if such a boot selector already exists
(for example by simply adding one or more lines to the Menu during the
Boot or in the Bios or from the OS and adding the drive letter of the
additional option and some name or description of the additional boot option
or options), and thus preferably there is only one united boot selector
instead
of having to wait twice or choose twice. Another possible variation is that
preferably the BIOS enables 32 bit transfer by default, preferably for each
hard disk that is detected and/or is capable of supporting it. Another
possible
variation is that preferably when installing a new OS preferably the OS
automatically adds at least the relevant drive letter to the name of each
option

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 174/365
in the boot selector according to the drive letter on which the relevant OS is
installed (and/or this is done later, for example by one of the installed
OSs),
and preferably at least if for example more than one OS exists on the same
drive letter then preferably the path is also added automatically. In addition
preferably the exact version of the OS is also added automatically, so that if
for example the user installs a few betas of Vista on different partitions
then
preferably the build number of each OS is preferably also automatically
added to each option in the boot selector. This is very important since for
example when installing additional betas of Vista it very difficult to get rid
of
previous installations without refonnation the relevant partition (and also
the
user might for example want to keep also at least some older versions to
make comparisons), so if the user installs each beta in a different partition,
it
is much more convenient to see also the build number of each OS in the boot
selector. Similar information (such as for example type of OS and/or drive
letter and/or path and/or version number) is also added preferably for
example to options in live OS selectors which enable switching between OSs
for example in systems that support two or more OSs running
simultaneously. Another possible variation is that preferably the last OS in
which the user was before the boot preferably becomes automatically the
default choice in the boot selector, at least for example if the boot is done
within a certain time of being active in the last session - for example within
N
minutes of the last shut-down, or for example without time limit. For this
preferably the boot selector keeps preferably in a file the last choice, and
if
there is also a time limit then preferably there is at least one process of
the
boot selector which keeps running even after the boot and preferably keeps
updating at short intervals some variable which indicates the time of the last
access to the current OS (This can be done even more easily for example in
systems that run multiple OS's by adding this function to the hypervisor), or
for example upon the next boot the boot selector preferably automatically
checks for example the date and time of the swap file (or some other
constantly updated file) in each of the OSs and thus can know how long ago
the OS was last active. Of course in systems that run multiple OS's the
definition of which OS was running is different, so preferably is this case
the
boot selector preferably remembers as default for example at least which OS
was the first booted OS in the last time the system was booted, and preferably
the other OSs are activated automatically or by the user after the first OS
finishes booting. Another possible variation is that for example the
hypervisor or the boot selector can remember also which OSs were active in
the last session and can preferably automatically reopen them after reboot,
except for example if there was a problem in one of them, in which case
preferably the hypervisor for example preferably asks the user if to allow
also
the problematic OS to run. Another possible variation is that upon reboot,
after the hypervisor finishes booting preferably multiple OSs can boot at the
same time, without having to wait for one of the OSs to complete booting
before the others. Another possible variation is that for example when
choosing Restart from the start menu, preferably the user can also choose for
example to restart into another OS, so that the user does not have to sit near

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 175/365
the computer while it restarts and wait for the boot selector to choose the
other OS. In order to enable this preferably the OS automatically copies the
same options that are available in the boot selector and preferably displays
them for example as a sub-menu of the Restart menu, and when the user
makes his choice this is preferably saved into some file which the boot
selector checks or for example the default boot choice is temporarily
changed. Another problem is that for example even when starting the
installation of a new OS from an existing OS - for example when starting the
installation of Vista in a new partition from Windows XP, the new OS only
remembers the drive letters of the partitions on the hard disk or hard disks,
but does not remembers the drive letters that were used for other storage
devices, such as for example CD or DVD readers or burners or Zip drives. So
preferably this is improved so that during the installation preferably the
installing OS remembers also the drive letters of these devices and/or
additional parameters (preferably by saving them in a file which is then read
also after the subsequent boots). Another possible variation is that when
installing a new OS in another partition and then installing applications in
it,
preferably the user can request the OS or for example a specific application
to automatically import from a previous OS installation for example the
relevant parameters from the user settings of the other OS, so that preferably
the user simply has to give the OS or the application the drive letter of the
other partition and then preferably the OS or the application automatically
searches the relevant directories there (which will typically be the standard
documents and settings directories) and preferably copies automatically
preferably all the relevant parameters from there, and/or preferably the user
can tell the application to share the same settings with those of another OS
installation, so that preferably changes to the settings from either OS are
automatically visible also to the other OS (This can preferably be done for
example in a normal system where the user passes between OSs by rebooting
or for example in systems in which more than one OS run concurrently).
29. Another problem is that for example in wireless networks (for example in
homes or offices) the only method of protection against stealing data and/or
illegal tapping into communications is encryption, which has already proved
not reliable enough. Therefore another possible variation is that in order to
improve the security of wireless networks preferably the network computers
use also for example automatic triangulation of the source of transmissions
(preferably by using for example all or some of the known devices in the
network to compare the strength of the signal that they receive), so that for
example the coordinates of the allowed space are entered into the system
and/or for example only specific locations of known devices are white-listed,
and so for example any intruder from an outside position cannot pretend to be
an authorized user even if he succeeds in finding a vulnerability in the
encryption. (Although this still does not prevent passively listening-in,
preventing any other form of interaction can be very effective, since for,
exploiting various vulnerabilities typically at least some interaction as
needed, so this together with encryption can be very effective).

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 176/365
30.Another problem is that for example Microsoft is now trying to market in
low-income countries such as for example China and India a considerably
cheaper version of Windows XP, however this version has some serious
limitations that make it much less attractive to users, and one of the most
severe limitations is that for example only a very small number of programs
can be run at the same time. This can make the OS much less useful, so very
few people will be willing to use it, even at a half price or less, and thus
the
main purpose (reducing piracy in those countries) can be completely
defeated. Therefore, a much better solution is to let users buy the OS at such
countries at such a low price preferably with few limitations or no
limitations
or at least no limitations that result in reduced functionality to the user,
and
preferably prevent loss of profit in other countries where the OS can be sold
in normal prices - by limiting the use of the discounted version in the other
countries. This can be done for example by at least one of the following
means:
a. Limiting these cheap versions so that at least part of the interface
and/or some important applications work only in languages that are
not useful to most people outside the cheap countries (for example
only Indian languages or Chinese languages).
b. Displaying a warning for example whenever the OS is started that it is
illegal to use this version of the OS in any either countries than the list
of qualifying countries, unless for example the user has a citizenship
of one of these countries and/or is resident there, etc.
c. The OS can Check for example automatically when the user connects
to the internet if his/her IP address is in one of the qualified countries
and, if not, require for example some certification to be filed (if it
hasn't been filed yet) which proves that the user is entitled to use that
version of the OS outside of those countries. Preferably in these cases
the OS can automatically stop working or start working with only
limited functionality after a certain time period (for example one
month) if said certification has not been filed.

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 177/365
31. Another problem is that for example in Windows XP if the system is unable
to read a CD then the entire system can get stuck without any explanation to
the user, since the OS apparently tries again and again incessantly to read
the
CD. Preferably this is solved by automatically aborting any attempts to read a
problematic CD preferably after a short time and preferably indicating to the
user the nature of the problem and letting him/her decide what to do, and/or
for example allowing the user to press some key or otherwise request
immediate aborting of the attempts to read the CD (this is preferably done for
example by some element below the OS which does not get stuck even if the
OS gets stuck, and/or for example the OS automatically interrupt the attempts
to read the device at short intervals (for example at least once a second or
more) and then checks for example if any commands have been entered by
the user.
32. Another possible variation is that preferably the user can tell the OS for
example not to enter sleep mode until a specific application has finished
running, for example by clicking on the application's window or for example
on the square that represents it in the task bar and marking the relevant
option
in a menu (preferably this can be done for example for a specific currently
running Window of the application or defined in general for that application,
so that for example every time automatically the OS will not enter sleep
mode if that application is iumiing. and has not finished yet). Another
possible variation is that the user can for example tell programs that play
media, such as for example songs, for example Winamp, to stop working
automatically after a certain preset time period (for example 30 minutes or
any other convenient time period) or for exainple after a certain number of
repetitions of the current playlist (for example there are 5 songs in the
playlist
and the user marks that the program should go for example though 3 cycles
of playing the songs before stopping automatically) or for example after a
certain number of songs, which can be very useful for example if the user
wants to fall asleep with music in the background but without the music
continuing all night (This is preferably done by the application itself, but
preferably it can also be done for example by the OS). Similarly preferably
the user can tell for example programs that are downloading files or other
programs for example to stop automatically after a certain time period if the
user is away, or for example tell the OS or the firewall to automatically
disconnect the computer from the Internet if the user is away for more than a
certain time limit (for example after 1 hour or more) and/or for example to
stop automatically if one or more conditions occur. Another possible
variation is that for example the user can simply indicate or mark to the OS a
set or range of hours in which the computer will automatically go into sleep
mode (hibernate) at a certain set of hours, for example during night hours
(preferably unless of course someone is working on it). Another possible
variation is that for example all-in one printer-faxes, such as for example by
HP, which once in a few hours automatically calibrate themselves, thus
making noises, are preferably automatically configured to avoid doing that, at
least for example during night hours, since it can be quite annoying if

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 178/365
someone is woken up by these noises (This can be done for example by using
a light sensor and/or according to the local time settings, and/or preferably
the user can of course define the desired quiet hours). Another possible
variation is that for example, when needed, the calibration is done for
example only after the user clicks on the keyboard and/or for example moves
the mouse (this gives it sufficient time to do the calibration before the
actual
printing, so that the user does not have to wait when printing, but ensures
that
the calibration will not occur for example when the user is asleep). Another
possible variation is that preferably the calibration is done automatically
immediately after printing if needed, however this could still create a
problem if for example a fax is received at night. Another possible variation
is that for example during night hours (as determined for example by light
sensor or sensors and/or by the local time setting), preferably faxes are
automatically only stored in memory (for example unless the memory
becomes full) and are automatically printed for example only after a certain
time in the morning and/or a time which the user can set as default.
Preferably the system allows the user example to enable or disable the feature
of quiet operation during night time and/or define the relevant time limits.
Similarly, another problem is that for example typical firewalls (such as for
example Zone Alarm) are programmed to close the connection to the web
automatically for example when the screen saver activates, which is usually
quite useful, however sometimes the user for example might want the
firewall to keep the connection open for example until one or more download
operations are completed. For this preferably the user can also similarly
preferably indicate for example that the firewall should not close the web
and/or for example the screen saver should not be activated until the
application has finished performing some operation. Another possible
variation is that for example whenever the user updates the fireweall (for
example zonealarm), which typically requires shutting down the current
working version of the firewall during the installation, preferably the
firewall
and/or the system automatically closes any internet connections and/or for
example activates some other process which temporarily for example makes
sure that all Internet activities are frozen, until after the new firewall is
installed and starts to work, otherwise the computer can be dangerously
exposed during the installation. Another possible variation is that for
example
the modem can receive a command for example from the firewall or from the
OS to shut itself down (which can preferably be done automatically for
example when the firewall is updated or when the OS goes to standby or
reboots), however if this is enabled then preferably the modem can then be
automatically powered on again only if it has not been powered off manually
by the user (otherwise this would create a security risk of being able to
power
on the modem even after the user physically powered it off). Another
possible variation is that for example any installation of a new program
and/or any uninstallation automatically triggers creating of at least one
restore point by the system (but preferably two - one before and one after the
action) and preferably the System and/or the security system (or for example
another application which takes care of it) preferably automatically adds to

CA 02568975 2006-11-21
23/10/06 Yaron Mayer 179/365
each such automatic restore point also a description of the situation when it
was done, such as for example "before uninstalling zonealarm 6.0" after
uninstalling zonealarm 6.0 or "before installing opera 9" and "after
installing
opera 9", or for example automatically any time the registry is about to be
changed (for example by detecting automatically that the install shield has
been activated or for example by hooking or monitoring the relevant system
functions). Another possible variation is that the screen saver menu available
for example at the windows desktop preferably enables the user also an
option of for example displaying a simply preferably fully black screen (or
almost fully black, with an additional preferably small preferably dim
preferably slowly moving indication that the screen is still turned on) after
a
certain time instead of or in addition to the option of turning off the
monitor
(which means instant return from a seemingly turned off monitor), so that for
example the user can choose for example activating the normal or first screen
saver after for example 15 minutes (or any other convenient time) of no user
activity and activating the fully black or almost fully black screen (and/or
for
example any other screen saver chosen as 2d step screen saver) for example
after 25 minutes (or any other convenient time) and turning off the screen for
example never or after some other period). Another possible variation is that
for example for every given screen saver (or at least for example some of
them) the user can preferably easily change the color of the foreground
and/or background and/or for example move some bar or other control or
command which changes the brightness level of the screen saver for example
from fully lit to very dim, which is preferably taken care of by the OS or by
some other application. In addition, since sometimes the screen saver can
become turned off for example by mistake or by video playing applications
which temporarily deactivate it but sometimes fail to restore it, preferably
in
such cases the system can warn the user about it (at least for example if the
screen is a CRT or SED or Plasma or other screen which can suffer from
burnout), for example by indicating to the user the next time that he/she
comes back after a certain period of inactivity that the screen has been fully
active add/or stationary without any need for example for the last N hours
and recommending the activation of one of the screen savers, and/or for
example with such screens the system does not allow the user to define no
screen saver and in such a case of deactivation or for example if the time the
user chooses for activation is too long (for example activate only after 1
hour
or more of inactivity) the system for example automatically enforces at least
some minimal screen saver rules (this means that preferably the auto-
detection of monitor brand and model preferably includes also an indication
of the monitor type) and thus preferably automatically restores the screen
saver. Another possible variation is that preferably when desired the user can
for example click on an icon or button (preferably on the taskbar - for
example near the start button) or press some control key (or for example
chose such a menu option preferably in one click after opening a menu with
the right mouse button) - which preferably activates the screen server
instantly at that point as if the normal time for activating it has come.
Similarly preferably when activating the screen saver preview from the more-

DEMANDES OU BREVETS VOLUMINEUX
LA PRESENTE PARTIE DE CETTE DEMANDE OU CE BREVETS
COMPREND PLUS D'UN TOME.
CECI EST LE TOME 1 DE 2
NOTE: Pour les tomes additionels, veillez contacter le Bureau Canadien des
Brevets.
JUMBO APPLICATIONS / PATENTS
THIS SECTION OF THE APPLICATION / PATENT CONTAINS MORE
THAN ONE VOLUME.
THIS IS VOLUME 1 OF 2
NOTE: For additional volumes please contact the Canadian Patent Office.

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

2024-08-01:As part of the Next Generation Patents (NGP) transition, the Canadian Patents Database (CPD) now contains a more detailed Event History, which replicates the Event Log of our new back-office solution.

Please note that "Inactive:" events refers to events no longer in use in our new back-office solution.

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Event History , Maintenance Fee  and Payment History  should be consulted.

Event History

Description Date
Inactive: IPC expired 2018-01-01
Inactive: IPC expired 2018-01-01
Inactive: IPC assigned 2013-01-14
Inactive: IPC expired 2013-01-01
Inactive: IPC removed 2012-12-31
Time Limit for Reversal Expired 2010-11-22
Application Not Reinstated by Deadline 2010-11-22
Inactive: Adhoc Request Documented 2010-08-25
Deemed Abandoned - Failure to Respond to Maintenance Fee Notice 2009-11-23
Small Entity Declaration Determined Compliant 2008-11-10
Small Entity Declaration Request Received 2008-11-10
Application Published (Open to Public Inspection) 2007-05-21
Inactive: Cover page published 2007-05-20
Inactive: First IPC assigned 2007-01-19
Inactive: IPC assigned 2007-01-19
Inactive: IPC assigned 2007-01-19
Inactive: IPC assigned 2007-01-19
Inactive: IPC assigned 2007-01-19
Inactive: IPC assigned 2007-01-19
Inactive: IPC assigned 2007-01-19
Inactive: IPC assigned 2007-01-19
Inactive: Filing certificate - No RFE (English) 2007-01-03
Inactive: Office letter 2007-01-03
Application Received - Regular National 2007-01-03

Abandonment History

Abandonment Date Reason Reinstatement Date
2009-11-23

Maintenance Fee

The last payment was received on 2008-11-10

Note : If the full payment has not been received on or before the date indicated, a further fee may be required which may be one of the following

  • the reinstatement fee;
  • the late payment fee; or
  • additional fee to reverse deemed expiry.

Patent fees are adjusted on the 1st of January every year. The amounts above are the current amounts if received by December 31 of the current year.
Please refer to the CIPO Patent Fees web page to see all current fee amounts.

Fee History

Fee Type Anniversary Year Due Date Paid Date
Application fee - small 2006-11-21
MF (application, 2nd anniv.) - small 02 2008-11-21 2008-11-10
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
YARON MAYER
Past Owners on Record
None
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Claims 2006-11-20 70 4,043
Abstract 2006-11-20 1 46
Description 2006-11-20 112 9,460
Description 2006-11-20 180 14,390
Representative drawing 2007-04-29 1 13
Drawings 2006-11-20 6 343
Filing Certificate (English) 2007-01-02 1 167
Notice: Maintenance Fee Reminder 2008-08-24 1 121
Notice: Maintenance Fee Reminder 2009-08-23 1 128
Courtesy - Abandonment Letter (Maintenance Fee) 2010-01-17 1 174
Second Notice: Maintenance Fee Reminder 2010-05-24 1 131
Notice: Maintenance Fee Reminder 2010-08-23 1 124
Correspondence 2007-01-02 1 71
Correspondence 2007-01-02 1 26
Correspondence 2008-08-24 1 54
Correspondence 2008-11-09 2 52
Fees 2008-11-09 2 51
Correspondence 2009-08-23 1 53
Correspondence 2010-01-17 1 88
Correspondence 2010-05-24 1 41
Correspondence 2010-08-23 1 54