Analysis
(Give as much as possible of the needed information for designing and implementing the task in the following sections.)
Overview
The purpose of this task is to give the user possibility to add frames with embedded browser content, that gives the opportunity to embed certain website in frame of the book.
Task requirements
- The browser content must appear inside the created frame.
- Most of the frames are going to be smaller than the browser content, so a scrollbars must appear when this is necessary.
- All the common halos for frames should be available.
- A content halo for inserting the link should be available too. This is a content halo that should open a HUD where the user types in a desired address.
- The HUD for writing an address should have a field for writing the address and a bound control activated in 500 miliseconds before applying the changes. This interval should be reset each time a key is pressed on the keyboard.
- Resizing the frame should resize all its browser content and take care of the scrollbars.
- (optional) Occurrence of status and address bar.
- (optional) A possibility to turn on/off the status and address bars is a good idea.
- When the browser frame is active it must behave just like a browser:
- Left mouse button should be recognizable and used like in a browser.
- The scroll of the mouse should be recognizable, and result in navigation through the browser content.
- Assume that all the links in the browser frame should be inactive in edit mode, but they should be active in preview mode and in the reader.
- (optional) On right click same options as on the system browser must be provided (e.g. refresh, encoding, print, etc.).
- (optional) Keyboard should be usable like in a browser.
Task result
The result of this task is a source code.
Implementation idea
After inserting a browser frame its content should be blank and after selecting the frame a content halo for writing a desired address should appear (the common halos for frames should also be available now).
The content halo should open a HUD which have a field for writing the address and a bound control for direct manipulation. Bound control should always have ok status like in a real browser. If the link doesn't exist after the timeout passed, a warning message for unfounded server like in a browser should appear in the browser frame.
This is a sample picture of how should browser frame look like after a link is included and the timeout passed:
Use Qt implementation of WebKit to create a browser and C++ and Java wrappers for communication.
Related
How to demo
- Create a browser frame and navigate through it.
- Check if all the halos work properly.
Design
(Describe your design here.)
Implementation
(Describe and link the implementation results here (from the wiki or the repository).)
Testing
(Place the testing results here.)
Comments
(Write comments for this or later revisions here.)
Attachments
- content1.png (18.0 KB) - added by milen 16 years ago.
- browser1.jpg (42.3 KB) - added by milen 16 years ago.