Apple today filed a lawsuit against HTC for infringing on 20 Apple patents related to the iPhone’s user interface, underlying architecture and hardware. The lawsuit was filed concurrently with the U.S. International Trade Commission (ITC) and in U.S. District Court in Delaware.
“We can sit by and watch competitors steal our patented inventions, or we can do something about it. We’ve decided to do something about it,” said Steve Jobs, Apple’s CEO, in the press release. “We think competition is healthy, but competitors should create their own original technology, not steal ours.”
HTC responded to the suit telling The New York Times that, “HTC values patent rights and their enforcement but is also committed to defending its own technology innovations.’ The company also said, ‘HTC only learned of Apple’s actions this morning via media reports, and therefore we have not yet had the opportunity to investigate the filings. Until we have had this opportunity, we are unable to comment on the validity of the claims being made against HTC.”
Apple seeks immediate investigations into each of the patent infringement claims listed below, a hearing or hearings into said unlawful acts, the permanent barring of importation, marketing, advertising, demonstrating, warehousing inventory for distribution, distributing, offering for sale, selling, licensing, using, or transferring outside the United States for sale in the United States of the infringing products including, but not limited to, those listed below, along with permanent cease and desist orders per individual patent infringement(s) and “other and further relief” as deemed just and proper by the ruling bodies.
The products that Apple says violate its patents include, but are not limited to, the following:
• HTC Nexus One, a/k/a Google Nexus One
• HTC Touch Pro
• HTC Touch Diamond
• HTC Touch Pro2
• HTC Tilt II
• HTC Pure
• HTC Imagio
• HTC Dream, a/k/a T-Mobile G1
• HTC myTouch
• HTC Hero
• HTC HD2
• HTC Droid Eris
Apple seeks remedies for HTC’s infringement of the following U.S. patents assigned to Apple:
• 7,362,331: Time-Based, Non-Constant Translation Of User Interface Objects Between States: The present invention relates to a method for moving objects within the graphical user interface (GUI) of an operating system in a manner that provides a transitional effect between window states, which is pleasing to the user. This transitional effect includes changing the shape of a window while scaling and moving the window between two different sizes and positions. In one embodiment of the present invention, the transitional effect may be employed as a window is minimized into an icon, or restored from an icon. In another embodiment of the present invention, the transitional effect is employed as a window is minimized within its title bar, or restored therefrom. The rate of movement of objects is controlled in a non-linear manner, to further enhance the pleasing effect.
• 7,479,949: Touch Screen Device, Method, And Graphical User Interface For Determining Commands By Applying Heuristics: A computer-implemented method for use in conjunction with a computing device with a touch screen display comprises: detecting one or more finger contacts with the touch screen display, applying one or more heuristics to the one or more finger contacts to determine a command for the device, and processing the command. The one or more heuristics comprise: a heuristic for determining that the one or more finger contacts correspond to a one-dimensional vertical screen scrolling command, a heuristic for determining that the one or more finger contacts correspond to a two-dimensional screen translation command, and a heuristic for determining that the one or more finger contacts correspond to a command to transition from displaying a respective item in a set of items to displaying a next item in the set of items.
• 7,657,849: Unlocking A Device By Performing Gestures On An Unlock Image: A device with a touch-sensitive display may be unlocked via gestures performed on the touch-sensitive display. The device is unlocked if contact with the display corresponds to a predefined gesture for unlocking the device. The device displays one or more unlock images with respect to which the predefined gesture is to be performed in order to unlock the device. The performance of the predefined gesture with respect to the unlock image may include moving the unlock image to a predefined location and/or moving the unlock image along a predefined path. The device may also display visual cues of the predefined gesture on the touch screen to remind a user of the gesture.
• 7,469,381: List Scrolling And Document Translation, Scaling, And Rotation On A Touch-Screen Display: In accordance with some embodiments, a computer-implemented method for use in conjunction with a device with a touch screen display is disclosed. In the method, a movement of an object on or near the touch screen display is detected. In response to detecting the movement, an electronic document displayed on the touch screen display is translated in a first direction. If an edge of the electronic document is reached while translating the electronic document in the first direction while the object is still detected on or near the touch screen display, an area beyond the edge of the document is displayed. After the object is no longer detected on or near the touch screen display, the document is translated in a second direction until the area beyond the edge of the document is no longer displayed.
• 5,920,726: System And Method For Managing Power Conditions Within A Digital Camera Device: A system and method for recovering from a power failure in a digital camera comprises a power manager for detecting and handling power failures, an interrupt handler for responsively incrementing a counter device, service routines which register to receive notification of the power failure, and a processor for evaluating the counter and providing notification of the power failure to the service routines which may then assist the digital camera to recover from the power failure.
• 7,633,076: Automated Response To And Sensing Of User Activity In Portable Devices: The various methods and devices described herein relate to devices which, in at least certain embodiments, may include one or more sensors for providing data relating to user activity and at least one processor for causing the device to respond based on the user activity which was determined, at least in part, through the sensors. The response by the device may include a change of state of the device, and the response may be automatically performed after the user activity is determined.
• 5,848,105: GMSK Signal Processors For Improved Communications Capacity And Quality: A method and apparatus for separating and removing distortion from interfering co-channel signals and suppressing adjacent-channel interfering signals of the Gaussian Minimum-Shift Keyed (GMSK) or other MSK type with filtering structures that exploit the cyclostationarity of the received GMSK or other MSK signals in order to accommodate a greater number (or the same number, but with greater quality) of transmitted signals received by one or more antennas than can be accommodated by existing filters. The parameters in these filtering structures are adapted by either of two adaptation apparatus that exploit both the known training sequence that is transmitted in most wireless communications systems, and the constant modulus property exhibited by each of the transmitted GMSK or other MSK signals.
• 7,383,453: Conserving Power By Reducing Voltage Supplied To An Instruction-Processing Portion Of A Processor: One embodiment of the present invention provides a system that facilitates reducing static power consumption of a processor. During operation, the system receives a signal indicating that instruction execution within the processor is to be temporarily halted. In response to this signal, the system halts an instruction-processing portion of the processor, and reduces the voltage supplied to the instruction-processing portion of the processor. Full voltage is maintained to a remaining portion of the processor, so that the remaining portion of the processor can continue to operate while the instruction-processing portion of the processor is in reduced power mode.
• 5,455,599: Object-Oriented Graphics System: An object-oriented graphic system is disclosed including a processor with an attached display, storage and object-oriented operating system. The graphic system builds a component object in the storage of the processor for managing graphic processing. The processor includes an object for connecting one or more graphic devices to various objects responsible for tasks such as graphic accelerators, frame buffers, page description languages and vector engines. The system is fully extensible and includes polymorphic processing built into each of the support objects.
• 6,424,354: Object-Oriented Event Notification System With Listener Registration Of Both Interests And Methods: An event notification system for propagating object-change information. The notification system supports change notification without queues in an object-based application or operating system and can be scaled to propagate large numbers of events among a large plurality of objects. The event notification system interconnects a plurality of event source and event receiver objects. Any object, such as a command object, may operate as either an event receiver object, an event source object or both. A notification object is created by a source object to transport, from a source to a receiver, descriptive information about a change, which includes a particular receiver object method and a pointer to the source object that sent the notification. A receiver object must register with a connection object its “interest” in receiving notification of changes; specifying both the event type and the particular source object of interest. After establishing such connections, the receiver object receives only the events of the specified type for the source objects “of interest” and no others. This delegation of event selection avoids central event queuing altogether and so limits receiver object event processing that the invention can be scaled to large systems operating large numbers of objects.
• 5,481,721: Method For Providing Automatic And Dynamic Translation Of Object Oriented Programming Language-Based Message Passing Into Operating System Message Passing Using Proxy Objects: The present invention provides a method and apparatus for the distribution of objects and the sending of messages between objects that are located in different processes. Initially, a “proxy” object is created in the same process as a sender object. This proxy acts as a local receiver for all objects in the local program. When the proxy receives a message, the message is encoded and transmitted between programs as a stream of bytes. In the remote process, the message is decoded and executed as if the sender was remote. The result follows the same path, encoded, transmitted, and then decoded back in the local process. The result is then provided to the sending object.
• 5,519,867: Object-Oriented Multitasking System: An apparatus for enabling an object-oriented application to access in an object-oriented manner a procedural operating system having a native procedural interface is disclosed. The apparatus includes a computer and a memory component in the computer. A code library is stored in the memory component. The code library includes computer program logic implementing an object-oriented class library. The object-oriented class library comprises related object-oriented classes for enabling the application to access in an object-oriented manner services provided by the operating system. The object-oriented classes include methods for accessing the operating system services using procedural function calls compatible with the native procedural interface of the operating system. The computer processes object-oriented statements contained in the application and defined by the class library by executing methods from the class library corresponding to the object-oriented statements. The object-oriented application includes support for multi-tasking.
• 5,566,337: Method And Apparatus For Distrubuting Evenets In An Operating System: In a computer including an operating system, an event producer for generating an event and detecting that an event has occurred in the computer and an event consumer which need to be informed when events occur in the computer, a system for distributing events including a store for storing a specific set of events of which the at least one event consumer is to be informed, an event manager control unit for receiving the event from the event producer, comparing the received event to the stored set of events, and distributing an appropriate event to an appropriate event consumer, and a distributor for receiving the event from the control unit and directing the control unit to distribute an appropriate event to an appropriate event consumer.
• 5,929,852: Encapsulated Network Entity Reference Of A Network Component System: A network-oriented component system efficiently accesses information from a network resource located on a computer network by creating an encapsulated network entity that contains a reference to that resource. The encapsulated entity is preferably implemented as a network component stored on a computer remotely displaced from the referenced resource. In addition, the encapsulated entity may be manifested as a visual object on a graphical user interface of a computer screen. Such visual manifestation allows a user to easily manipulate the entity in order to display the contents of the resource on the screen or to electronically forward the entity over the network.
• 5,946,647: System And Method For Performing An Action On A Structure In Computer-Generated Data: A system and method causes a computer to detect and perform actions on structures identified in computer data. The system provides an analyzer server, an application program interface, a user interface and an action processor. The analyzer server receives from an application running concurrently data having recognizable structures, uses a pattern analysis unit, such as a parser or fast string search function, to detect structures in the data, and links relevant actions to the detected structures. The application program interface communicates with the application running concurrently, and transmits relevant information to the user interface. Thus, the user interface can present and enable selection of the detected structures, and upon selection of a detected structure, present the linked candidate actions. Upon selection of an action, the action processor performs the action on the detected structure.
• 5,969,705: Message Protocol For Controlling A User Interface From An Inactive Application Program: Method and apparatus for a first process operative in a computer system controlling a user interface on a computer system display under control of a second process operative in the computer system. An event handler is installed for the second process, the event handler servicing events generated for controlling the user interface display under control of the second process. The first process may then perform a first set of functions in the computer system. The first process generates events for controlling the user interface display, the events related to the functions performed by the first process. The event handler receives the events generated by the first process and updates the user interface on the computer system display according to the events generated by the first process and received by the event handler.
• 6,275,983: Object-Oriented Operating System: An apparatus for enabling an object-oriented application to access in an object-oriented manner a procedural operating system having a native procedural interface is disclosed. The apparatus includes a computer and a memory component in the computer. A code library is stored in the memory component. The code library includes computer program logic implementing an object-oriented class library. The object-oriented class library comprises related object-oriented classes for enabling the application to access in an object-oriented manner services provided by the operating system. The object-oriented classes include methods for accessing the operating system services using procedural function calls compatible with the native procedural interface of the operating system. The computer processes object-oriented statements contained in the application and defined by the class library by executing methods from the class library corresponding to the object-oriented statements.
• 6,343,263: Real-Time Signal Processing System For Serially Transmitted Data: A data transmission system having a real-time data engine for processing isochronous streams of data includes an interface device that provides a physical and logical connection of a computer to any one or more of a variety of different types of data networks. Data received at this device is presented to a serial driver, which disassembles different streams of data for presentation to appropriate data managers. A device handler associated with the interface device sets up data flow paths, and also presents data and commands from the data managers to a real-time data processing engine. Flexibility to handle any type of data, such as voice, facsimile, video and the like, that is transmitted over any type of communication network with any type of real-time engine is made possible by abstracting the functions of each of the elements of the system from one another. This abstraction is provided through suitable interfaces that isolate the transmission medium, the data manager and the real-time engine from one another.
• 5,915,131: Method And Apparatus For Handling I/O Requests Utilizing Separate Programming Interfaces To Access Separate I/O Service: A computer system handling multiple applications wherein groups of I/O services are accessible through separate application programming interfaces. Each application has multiple application programming interfaces by which to access different families of I/O services, such as I/O devices.
• RE39,486: Extensible, Replaceable Network Component System: An extensible and replaceable network-oriented component system provides a platform for developing networking navigation components that operate on a variety of hardware and software computer systems. These navigation components include key integrating components along with components configured to deliver conventional services directed to computer networks, such as Gopher-specific and Web-specific components. Communication among these components is achieved through novel application programming interfaces (APIs) to facilitate integration with an underlying software component architecture. Such a high-modular cooperating layered-arrangement between the network component system and the component architecture allows any existing component to be replaced, and allows new components to be added, without affecting operation of the network component system.
Read the full court documents via AllThingsD here.
@TT
that is a patented lie!
So what is better, companies suing each other after the fact, or to clear the products before sales begin?
The patent office, or some new entity, could certify new devices and clear them before sales begin.
The FDA grants protected drug patents, and allows other companies to apply for generic equivalents. You just can’t issue what you want, there is a barrier for companies to copy the original approach, but then competition is open after approval.
Companies would no longer sue each other, they would have to sue the government agency. But the original company would have years until the reversed engineered versions were approved.
G4Dualie
That’s right! Better not catch you using it!!!
“There is no way one could make a phone that doesn’t “infringe” upon one of these patents.”
Kinda like the guy who patented the hula-hoop. It would be rather difficult to make a competing product without walking all over the original patent. All I’m saying is that if someone gets a patent on something that you or I think is intuitively obvious, the patent would still stand if they were first to show the idea and no one else had demonstrated it before that.
@onlooker
in this case “Automated Response To And Sensing Of User Activity In Portable Devices” would most likely refer to the ability of the iPhone to sense that it’s next to some ones head and shut off the display.
Apple did invent that. No one had anything like that before they did.
I remember watching when the iPhone was first announced. That senseing feature was one of the ones Jobs demoed right before saying how they had patented the hell out of the thing.
Interesting that HTC didn’t issue the standard “this lawsuit is wholly without merit” response. I mean, that’s the response to nearly every lawsuit ever filed. Instead HTC says “well… let us check things over”. Hmm…
——RM
Patent Law is complex….
Patent Lawyers are paid a lot of money to get “broad” patents, but “claims” with real teeth in them.
We have to wait and see what happens, but the immediate effect should be to put a bunch of copy cats back on their heels.
There are, of course, always those who think like the Chinese, that inventions are not something that should be owned because they are just ideas. You may note that it wasn’t until the Chinese started copying Western inventions with their dirt cheep labor that their economy bloomed.
There are copiers, China and MS, and then there are Innovators, Apple and some very special few people….
My head hurts.
Meanwhile, good job MDN. I caught the news first thing morning on your site before most others. There were only about 6 of them reporting it at the time.
But more importantly, your attempt to relay this whole mess of lingo of the ambulance chasers to the colloquial is highly appreciated.
Those who may not realise, IMHO,
1. Apple and any other patent holders are required to pro-actively defend their patents or lose rights over them, from what I gather.
2. It’s about timing. I think Apple has spent sweet time setting up a formidable legal unit before taking this on.
3. It’s only the beginning.
It makes you wonder what interface patents Apple will have on the iPad?
One more point: I’m not sure Apple “waited” to file this lawsuit. It takes time for patent lawyers to do the research to determine whether or not you have a case. Given the complexity of some of these patents, and the number of them listed in the lawsuit, I think this suit came pretty quickly.
——RM
Apple waited until HTC has a vested interest in defending their products, this way HTC will retain some heavyweight lawyers and if (hopefully when) Apple wins, they will have successfully defended these patents and will have even more clout when it comes time to deal with other companies.
Bravo, MDN, for the best, most comprehensive report regarding Apple vs. HTC that I can find anywhere!
Agreed, MDN nailed this story.
groklaw.com is always a good read from a layman’s point of view. However, this lawsuit is not there yet.
If Amazon can patent one-click, Apple can patent this crap too.
Whether or not the patents being infringed that Apple is suing for is stupid or not doesn’t matter. The main fact to keep in mind is that Apple was awarded, rightly or wrongly, the Patent. It is now for the courts to determine which patent grants are legitimately Apple’s and deserves compensation and/or injunction and those patents that were awarded but shouldn’t because they are too liberal in their definition and application. And no I’m not a patent lawyer. I’ll leave that to the patent lawyers and the next MDN post regarding the continuing saga of this story…
Well Well Well!…
History is being repeated.
just my two cents!
The interesting thing here is that Android itself does not break the patents – but HTC in applying Android to its devices has infringed on the patents.
None of this has to do with the OS/GUI level interface on its own… for example the swipe to unlock deals with hardware and software states.
The multi-touch potential in Android does not infringe – it is when coupled up with the hardware that it infringes.
I expected this the moment they upgraded the nexus one to multi-touch.
Finally. I’m sick of these knock offs from these companies. About time Apple started to defend their work from these copycats.
Everyone seems to think that MS stole the GUI from Apple, but that’s not the case. Sculley actually traded the rights away to MS in exchange for being able to continue using MS Basic in the Apple ][ line. Apple could have found other ways around it, and really only needed Basic for a few more years. Sculley gave away the keys to the kingdom, essentially in exchange for a few years’ lease of MS’ property.
I agree many of these claims are frivolous. But at least Apple can litigate AND innovate!
Some of you need to understand that the scope of the patent is defined by its claims and not the title of the patent. Also, claims are written in a very specific way whose meanings go beyond the typical layman’s understanding of what a word may mean and it’s not always obvious.
Don’t claim to agree with what Apple’s doing, but attempt to answer some questions w/o hyperbole here:
http://bit.ly/c3vXy3
Apple didn’t award themselves the patents, the US Patent Office awarded Apple those patents. Apple should defend their Intellectual Property with as much gusto as they should any of their other property.
Shame on HTC / Google for not doing a proper Patent search of their own to make sure they were not infringing on anyone else’s patents!
Even if it is determined that HTC / Google infringed on Apple’s Patents, they probably will not be barred from selling those handsets. They may be ordered to pay Apple a fixed amount for every handset they sell and have already sold, plus a penalty, but I seriously doubt they’ll be told to take the handsets off of the market.
Endgadget is doing an interesting job sorting through these,
http://www.engadget.com/2010/03/02/apple-vs-htc-a-patent-breakdown/