OWB 1.9 - MorphOS
*********************************************************************************
* *
* IMPORTANT: if you're really impatient, look at the "Usage/First Run" section. *
* *
* IMPORTANT BIS: read "Youtube/Media" section, if you plan to visit Youtube *
* *
*********************************************************************************
What is OWB?
------------
OWB is a web browser designed for CE devices such as mobile phones, portable
media players, Set Top Boxes and TV decoders, and any other consumer electronic
product (GPS, home-gateways, Web-radios, PVR, DVD recorders, wireless devices etc.)
Galeking release is the new mixture of WebKit with Sand-Labs flavour. It is
based on a day-to-day merging capability with WebKit while it still provides
the easy to use, easy to implement and easy to test OWBAL abstraction layer.
More information at: http://www.sand-labs.org/owb
License
-------
Copyright (C) 2009-2010 Pleyo. All rights reserved.
Copyright (C) 2009-2010 Fabien Coeurjoly
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of Pleyo nor the names of
its contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY PLEYO AND ITS CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL PLEYO OR ITS CONTRIBUTORS BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
MorphOS Port
------------
Here are the key features:
- Based on r63894 WebKit (July 2010)
- Based on r1468 OWB (June 2010)
- Javascript, CSS, DOM, SVG, Unicode, SSL, ...
- HTML5 Video/Audio support (Ogg/Theora and MPEG4/H264)
- Antialiased fonts and kerning, font families and support for international
charsets
- MUI Interface
- Cairo technology !!1
- Multiple tabs and windows
- Download manager with resume support
- Password manager
- Cookie manager
- Messages console
- Network connections manager
- Session support
- Bookmarks
- Fastlinks
- Configurable MIME types
- History
- Content blocking
- URL Completion
- Favicon support
- Configurable contextual menus
- Contextual cursors
- Copy/Cut/Paste
- OpenURL/Rexx support
- PDF export
- Plugin support
- WebInspector (FireBug-like)
- User scripting (GreaseMonkey-like)
- No PayPal donation needed
...
Requirements
------------
MorphOS 2.x is strongly advised, but it can still work on a 1.4.x setup with a
recent enough MUI snapshot (2007).
Full version requires at least 45MB of free memory and potentially much more depending on visited
sites.
Note: if you want to reduce the binary size, you can use lzmaloader from Harry "Piru" Sintonen.
It's available at: http://www.sintonen.fi/lzmaloader/ .
NoSVG version
-------------
The NoSVG version doesn't support SVG format, hence the name. The reason for this special version
is that SVG makes the binary about 10MB bigger.
Usage
-----
- First run (IMPORTANT! READ!)
At *first* run, OWB will index your truetype fonts directory (MOSSYS:fonts/_ttf by default).
This operation can take a long time (expect a few minutes on efika). Once it's done,
a conf/font/fonts-.cache file is created for each configured font directory.
If you wish to use another truetype font directory, please edit conf/font/fonts.conf
and change the attribute. By default, it's:
...
SYS:fonts/_ttfMOSSYS:fonts/_ttf
...
You can add additional directories by adding a .. line.
I strongly advise to use Microsoft fonts instead of default MOSSYS:fonts/_ttf that aren't
really suited for web use. If you installed sputnik previously, you should already have them.
Otherwise, just run the "Download Fonts" script supplied with OWB. Once it's done, I also advise
removing "MOSSYS:fonts/_ttf" from fonts.conf files to reduce substitution times.
To use japanese fonts or anything else, just add relevant fonts in the configured
font directory. Please note that japanese fonts can slow down rendering quite a lot.
- Settings
+ General
Homepage, startpage and shell output window (useful for external actions).
+ Interface
Toolbar, autocompletion modes, favicons, quicklink layout, ...
+ Contextual Menus
Custom actions can be configured for link, page and image menus. For instance, you can link
a video/audio player to a link, or getvideo to play youtube content.
+ Mimetypes
Each mimetype can be configured to trigger a specific action: view with browser, download or
display with an external viewer. That's the place to configure if you have some issues with
downloading direct links, for instance.
+ Content
Cache model, content blocking, animation/picture/javascript activation, ...
+ Fonts
Size and font families can be configured. For much finer configuration, see conf/font/fonts.conf.
+ Network
User agent, number of simultaneous connections, network thread, cookie system...
+ Download
Download directory and download manager behaviour.
+ Privacy
Settings for session/history/cookies/form credentials saving.
+ Security
SSL settings
+ Media
Settings for H264 filter mode, fast seeking and VP8 codec.
- Some exotic additional settings are only available through env vars at the
moment (they will end in regular settings later, if they still make sense):
HTTP_PROXY [proxy address string] - specifies the proxy address to use
OWB_USER_AGENT [user agent string] - overrides the user agent configured in settings
OWB_POLLTIME [value in milliseconds (default is 10ms)] - can help increasing network speed (the lower, the faster).
OWB_BENCHMARK prints timing information in debuglog about rendering process
OWB_NO_STATIC_BACKGROUND ignores background "fixed" CSS attribute (interesting on slower machines)
OWB_CURL_DEBUG prints CURL debug (HTTP requests, answers and connection management)
OWB_CURL_FORBID_REUSE prevents CURL from keeping request connections alive and re-using them (slower but more bullet-proof)
- Bookmarks
OWB can import IBrowse bookmarks. Just copy it to OWB directory as bookmarks.html.
If you wish to make an entry appear in fastlinks or pulldown menu, just check
the relevant option in bookmark editor. Also note you can drag'n'drop links
between many different elements of the GUI.
- REXX port
OPEN NAME/K,NEWPAGE/S,BACKGROUND/S,SOURCE/S
RELOAD
BACK
FORWARD
SAVEURL URL/A,AS/K
ADDBOOKMARK TITLE/A,URL/A,ALIAS/K,MENU/S,QUICKLINK/S
GETURL
- OpenURL configuration
Rexx Port: OWB
Show:SHOW
Screen To Front: SCREENTOFRONT
Open: OPEN NAME="%u"
Open in new window: OPEN NAME="%u" NEWPAGE
With MorphOS 2.3 or later, you can also just use the OWB preset available in OpenURL preferences.
Youtube special notes
---------------------
There are a few things to know about Youtube, since it tends to change
(or rather break) quite often.
Youtube introduced a new way to play media without using Flash: HTML5 video.
This service isn't enabled by default nor autodetected, so it has to be
enabled by going to http://www.youtube.com/html5 and clicking the subscription
link (no account needed, only a cookie will be set).
There are a few more important elements to consider:
- Youtube recently added a silly user-agent check, which means the HTML5 player
will only be enabled if the user-agent matches. So, for OWB, the solution is to
spoof as "Safari" in OWB preferences -> Network.
- Youtube broke the fullscreen mode that worked just nicely before, so a script is needed
to workaround this. This is done by going to Windows->Scripts and adding the "Scripts/youtube_fullcreen_fix.js" userscript.
This fullscreen mode is particularly important, since OWB uses overlay output in this mode,
which makes it about 3 times faster, synchronized on VBL, and smoother as well, compared to windowed mode.
- Not all Youtube links are available as HTML5 yet. Fortunately, there's a way to "convert" the remaining Flash-only
links to HTML5 by adding the "Script/Youtube.js" script in Windows->Scripts.
When this script is enabled, the Flash element on Youtube is removed, the video direct URLs are retrieved, and a HTML5 tag
is added, playing the video file, without Flash. Direct links to the video are also displayed below the video.
Please note that if the Flash plugin is not installed, a "Get Flash" message will be shown over the video, and will also prevent the video
from being started automatically, which means one of the links below the video will have to be clicked to play the video.
Also note that format "18" (mp4) is the most efficient one, since FLV ones can have some speed and synchronisation issue when seeking.
Preempted rants
---------------
- It takes ages to start!
-> It only happens at first start or when you update your fonts.
Current OWB version uses FontConfig, which is quite slow at indexing.
After that, it should start in a second or so.
- It's slow!
-> OWB is based on WebKit and this version uses Cairo to render. Modern
browsers tend to be a bit heavier than our good old browsers. :)
That said, there's still room for optimization, especially regarding
cairo rendering speed.
- It's too memory-hungry!
-> See above. Also note that WebKit will often crash *voluntarily* when
running out of memory, instead of taking alternative measures. I could
avoid some of these crashes (like too large document/image allocations),
but it's quite impossible to fix WebKit everywhere.
- Some SSL websites show a certificate error requester!
-> Maybe they're not certified. You can either update "curl-ca-bundle.crt" file,
or ignore SSL errors by enabling "Ignore SSL errors" in Settings/Security.
- It crashes!
-> OWB is fairly stable (as long as you have enough memory, like most posix
application nowadays unfortunately...). If you get a reproducible crash
(unrelated to memory usage), send me a debug log.
- OWB hits/crashes when opening more than n tabs.
-> known bug in MUI, which was fixed in MorphOS 2.3. For previous versions,
it can be avoided by just unchecking system prefs->Debug->MUI->Error
checkmark (the error was caused by MUI debug routine).
- Google Mail doesn't work correctly!
-> Make sure to enable Settings->Network->experimental cookies (which aren't
really experimental anymore). If you still experience some issues, delete
PROGDIR:conf/cookiedatabase.db (or flush related cookies from Windows->cookies).
- I get no sound in HTML5 playback!
-> Audio output uses AHI music unit at the moment, which is unfortunately exclusive.
It's still possible to play several sounds at once with device.audio, by setting
AHI music unit to: "Unit 0: " in system preferences.
What's missing and might be supported in next versions
------------------------------------------------------
- History with nicer sorting options
- Generic Form autofill
- Certificate (SSL) manager
... and probably more...
History
-------
- 08.08.2010: OWB 1.9
- Updated to OWB r1468. To be noted OWB doesn't seem to be actively developped
since May, so I'll merge directly against WebKit, from now on.
- Updated to WebKit r63894 (July 2010).
- Updated to CURL 7.21.0
- Interrupt a pending DNS thread immediately when a connection handle is being disposed.
- Reduced the amount of Exec signals allocated for DNS resolution threads
(one for all threads, instead of one per thread).
- Added OWB_CURL_FORBID_REUSE ENV var to disable CURL connection re-use feature
(this feature sometimes causes stalled connections, for a yet unknown reason).
- MediaPlayer:
- Changed native controls skin and behaviour to look like Chrome's mediaplayer.
- Added optional support for VP8/WEBM codec (Settings->Media section).
- Added optional support for fast seeking (consists in creating a new connection
instead of downloading everything before the target position). It can be disabled
in Settings->Media section.
- Made the H264 loopfilter mode configurable in Settings->Media section
- Enabled altivec in ffmpeg (except for Theora, since it's currently broken).
- Disabled ffmpeg FAST flag for decoding, since it could give ugly results
on some files.
- Added play/pause/mute/unmute/download media/copy media URL contextmenu
entries for HTML Media elements.
- Defer audio hardware allocation until play event, and release it at the
end of stream instead of waiting until media player destruction, to help
a bit with people not using device.audio AHI mode. WebKit can indeed cache
mediaplayer instances until tab destruction, so there are situations where audio
wouldn't be available anymore.
- Fixed a strange cookie path restriction in OWB cookie handling, which makes
wordpress.com login work.
- Fixed youtube.js to work with Youtube latest changes, and made MPEG4 the
default format (fmt=18), instead of FLV, since it's faster and better supported.
- Added per-tab options in settings menu for plugins, images, javascript and user-agent.
- Reworked the refresh method to use several rectangles, when it's more efficient to do so.
- Modified the scrolling implementation to behave correctly with the WebKit recent
optimizations regarding fixed elements. It also fixes some occasional glitch in custom
scrollers rendering.
- Disabled WebKit box-shadow effect rendering, since it was extremely slow with cairo.
This "cures" abnormal slowness on sites like apple.com/html5 or ign.com.
- Added a "remaining time" column in download manager.
- Added Amiga + z and Amiga + shift + z qualifier for undo/redo.
- Added Shift + Space shortcut as "page up" function.
- Added a search string in bookmark and cookies window.
- "Add bookmark" button now adds bookmarks below the currently selected node, or at
the end of the current group list, if a group node is selected.
If no entry is selected, the new link is still added to the end, like before.
- Allow to scroll in bookmark tree when dragging an entry over upper or lower areas
of the listtree object.
- Added a persistant "show in menu" option in the bookmark title selection window
(this window appears when dropping a link on quicklinks group or "add bookmark" button).
- Added a special favicon for bookmarks/quicklinks with "javascript:" scheme.
- Added a contextmenu to copy an entry URL in password manager.
- Character '&' wasn't processed properly in search engine string.
- Truncate history/bookmark to 64 characters in pulldown menu.
- Moved WebInspector ENV var option to a regular setting in Prefs->Content section.
- Added an option to enable/disable plugins globally in Prefs->Content section.
- Create a new tab/window when selecting an entry in "recently closed views" menu.
- Added user-agents for Chrome, Iphone and Ipad (spoofing as IPad can help showing
some sites with HTML5 Video/Audio instead of Flash).
- Added OWB_NO_STATIC_BACKGROUND ENV variable to ignore background "fixed" CSS
attribute, which improves scrolling performance.
- Added notes about Youtube and the specific settings to make it work
in HTML5 or at least without Flash using the builtin player. So *please*
read the Youtube section of this document if you have trouble playing
Youtube videos.
- 04.06.2010: OWB 1.8
- Updated to OWB SVN r1458.
- Updated to CURL 7.20.1 and implemented a threaded DNS resolver,
which prevents OWB network task from being blocked until a DNS resolution is finished.
- Updated to PixMan 0.18.0.
- Implemented fullscreen mode for HTML5 video, using overlay. In this
mode, the CPU usage is reduced drastically (about 300% speedup for youtube 360p content).
- Added a "switch to fullscreen" context menu entry for plain HTML5 video elements.
- Fixed some possible audio glitches due to an error in buffer management.
- Fixed some minor issues in MediaPlayer timeline handling.
- Implemented an userscript manager (GreaseMonkey-like). In practice, it means
a webpage can be modified on-the-fly with a JavaScript script.
In Scripts/ directory, two examples can be found:
- hello.js: a simple example to illustrate the script functionality.
- youtube.js: when applied to a youtube link (in Flash mode), this script
adds direct links to the video, and replaces the Flash element
by a HTML5 Video element. I suggest adding &fmt=18 to the youtube
link to play the 360p mp4 version by default.
To be noted scripts are only injected to tabs/windows created after their addition in
the script manager.
- Use MorphOS 2.x charsets.library for UTF8->local conversions (if available).
- Added icons for "add bookmark" and "bookmarks" buttons.
- Added ctrl+pgup/pgdown shortcut to cycle between tabs.
- Added a search string for bookmarks and history panels.
- Added a "copy to clipboard" contextmenu entry for network activity window.
- Tabs can be now be dragged too (MorphOS 2.5 required).
- When dropping a tab to bookmarks or quicklinks, use the site title instead of "no title".
- Disable gzip on-the-fly decompression when downloading gzip files.
- Copying UTF8 strings to system clipboard from contextmenu could result in truncated strings.
- Adjusted timer to postpone short requests when they are too frequent, since
they could cause high CPU usage in some cases.
- Fixed a bug in download manager when a download connection fails before even asking for destination.
- Fixed some NULL pointer read access in OWB fontcache, when no fonts are found.
- Fixed some more minor memory leaks in OWB API usage.
Notes about YouTube and HTML5:
- You can enable HTML5 in YouTube by going to http://www.youtube.com/html5
and follow instructions (no account needed).
- Youtube broke the "fullscreen" mode just before this release. I supplied an userscript
in Scripts/ to fix it: go to windows->scripts and add Scripts/Youtube_Fullscreen_Fix.js.
Once it's effective, fullscreen mode will use overlay (i.e much faster).
- Don't forget to read notes about sound in "Preempted rants" section. :)
- 04.03.2010: OWB 1.7
- Updated to OWB SVN r1369.
- Updated to Curl 7.20.
- Implemented HTML5 Media backend ( and ) through FFMpeg:
- Support for most common codecs: Ogg/Theora/Vorbis, MPEG4, H264, AAC, MP3, Wav, ...
- Builtin controls support.
- Sites like dailymotion/openvideo, youtube/html5 and vimeo work. Here are a few random links:
- http://openvideo.dailymotion.com/video/xbzemj_le-clan-suricate_animals
- http://vimeo.com/8504375 (select "switch to html5" at bottom right)
- http://camendesign.com/code/video_for_everybody/test.html
- http://diveintohtml5.org/video.html (bottom)
- http://people.opera.com/howcome/2007/video/controls.html
- http://www.scottandrew.com/pub/html5audioplayer/
- For youtube, subscribe to beta html5 program by going to http://www.youtube.com/html5
- Known issues/limitations:
- Audio output uses AHI music unit at the moment, which is unfortunately exclusive. It's still possible
to play several sounds at once with this mode, by setting AHI music unit to: "Unit 0: ".
- Each media instance requires one exec signal in OWB main task, which means there can
be 5 concurrent media players at most (depending on other OWB options that can also eat signals).
- Fullscreen mode isn't implemented yet.
- The whole media is stored in memory (sorry for this one, it will be handled in a more elegant way later).
- Added search engine configuration window.
- Implemented JavaScript window modes for popups (no toolbar, no status, window size, ...).
- Improved keyboard support, more texteditor shortcuts work now: ctrl+a (select all), ctrl+[shift]+z (undo/redo), ctrl+b/u/i (bold,underline,italic), ...
It also makes http://www.konamicodesites.com work properly. :)
- Added ctrl+wheel combination to zoom in/out.
- Added an option to make navigation toolbar frameless.
- Reworked navigation buttons: buttons now have hover and selection effects (note that brushes are not in .mim format anymore).
- Added dynamic frame for quicklinks in borderless mode.
- Added optional horizontal separators between navigation, quicklinks and address groups.
- Added status images for local/internet/secure/insecure areas.
- Added optional validation buttons for URL and search strings.
- Added balance between URL and search groups (balance appears on mouse hover).
- Reworked history popup in completion mode, so that the typed text is shown (as bold/underline)
in the matching entries in the list.
- Added "Open all bookmarks" entry for quicklinks folder items.
- Added SOURCE/S argument to OPEN REXX command to open current browser source view.
- Added %p placeholder for contextmenu and mimetype actions, referring to OWB REXX port name.
- In download manager, hilight tab title instead of switching page, when a new event occurs.
- Allow to restart a finished download too.
- Changed options regarding session restoration at startup (always/ask/never).
- Slight adjustments in cookie parsing (fixes MobileMe).
- Don't show authorization window with uncomplete 401 responses.
- Added more checks to know if a file can actually be resumed.
- The form credentials saving system now allows to ignore some sites, by pressing "never" button,
when asked if credentials should be saved.
- Hid the password column in passwords window (it can be shown with contextmenu over list header).
- Selecting an entry in the contextmenu of back/forward buttons no longer modifies the back/forward list.
- Don't focus to URL string anymore if a window was not manually opened.
- Don't render cairo surfaces for active browser when the program is iconified.
- Disable gzip on-the-fly decompression when downloading, since it seems to create some confusion.
- Favicon database was active even if favicons were disabled.
- Minor fixes in bookmark/quicklink handling.
- Fixed an encoding issue with the site titles in history database.
- Fixed an issue with middlebutton handling when sidepanels are enabled.
- Fixed a possible race in private static objects instanciation in WebKit (actually it's a gcc "bug").
- Removed the lame googlemap bug workaround and integrated the proper fix from WebKit.
- Changed some options defaults: history popup, network thread, experimental cookies and favicons are now enabled by default.
IMPORTANT: if you're using experimental cookies (which I strongly suggest), make sure to delete previous conf/cookieDatabase.db,
since some OWB generic fixes affected it, else you might encounter non-functional logins or similar bogus behaviour.
- 16.12.2009: OWB 1.6 hotfix
- Enabled WebInspector (Firebug-like). WebInspector allows browsing resources/scripts, profiling, debugging...
It can be enabled with: "setenv OWB_ENABLE_INSPECTOR 1". When enabled, a new "inspect element" entry is
added to webview contextmenus. Here's what it looks like: http://fabportnawak.free.fr/inspector.png
- Avoid conflicts between regular context menus and javascript contextmenus.
- Updated russian, swedish and czech locales.
- Added a lame workaround in javascript interpreter that caused regressions in google maps.
- Fixed a possible crash with priority popups in MLdonkey HTML interface.
- 11.12.2009: OWB 1.6
- Updated to OWB SVN r1158.
- Added a GUI for content blocking (windows->content blocking). Regular expressions are accepted,
and entries can either be white or blacklisted.
- Added "Block images from " context menu item for pictures.
- Save and restore the list of downloaded/finished/failed files (optional).
- Sessions now also restore scroll offset in pages.
- Added support for external transfer animations:
+ PROGDIR:resource/transferanim.png and PROGDIR:resource/transferanim_tab.png will be used if they exist.
+ The expect format is a 32bits PNG with square frames (horizontal layout). The rate is set to 30ms per frame.
- Enabled user stylesheet. PROGDIR:resource/userStyleSheet.css will be used if it exists. This user stylesheet
allows changing default form controls look, for instance (amongst many other things).
- Reworked history popup list to show favicons (optionally), title and url on 2 lines.
- Reworked network activity window to show a more precise state (connecting/waiting/current progress).
- Network activity leds now show different colours depending on connection state.
- Added favicons settings to configure the categories favicons should be displayed in (tabs/history/bookmarks/...).
- Added a few more tweaks in mimetype system to fallback to download action if no proper mimetype is sent (or configured).
- Added BACK and FORWARD REXX commands.
- Added GETURL to retrieve active browser URL (stored in RESULT).
- Added AS/K option to SAVEURL REXX command, to choose the target file path.
- Added more up-to-date user agents in spoof settings.
- Don't change active tab after closing an inactive tab.
- Bookmark groups can now also be added to quicklinks. In that case, a popup menu will display group entries.
- Allowed editing builtin mimetypes attributes, such as text/html and co (but think twice when modifying them, of course).
- Middle clicking an entry in history or bookmark now opens the link in a new tab.
- "Copy Image" context menu item now copies the actual image content to clipboard, instead of its URL.
- Many fixes in the new cookie system (thanks sszymczy).
- Fixed some left mouse button event issue that could cause trouble on googledocs or fckeditor toolbars (thx sszymczy).
- Fixed a focus issue with frames.
- Fixed a potential race in WebKit with plugins and stream disposal.
- Fixed ftp:// listings so that they are browsable.
- Fixed the "rewind" error message that could occur during file upload in some cases.
- Fixed Acid3 test 97.
- Fixed "Paste" to work in rich text editors (such as googledocs).
- Fixed a bug with "Cut" function.
Translators: please update your translations, i'll supply the locale archive separately.
There's a known regression since r1106 (or so): maps.google.* is kinda broken (some options/buttons don't have any effect).
It's a generic issue in WebKit when JIT is disabled, and it was reported to their bugtracker. I'll update a fixed version when it's fixed.
- 17.10.2009: OWB 1.5
- Updated to OWB SVN r1092.
- Updated to Curl 7.19.6.
- Added Locale support: get to work, translators. :)
- Made webview links, quicklinks and bookmark entries draggable.
- Made webview, tabs, "new tab" button, "add to bookmark" button, quicklink group,
URL string and bookmark window droppable.
- Implemented (optional) Favicon support. They are displayed in tabs, history panel, bookmark,
bookmark panel and quicklinks.
- Added save/restore session menu entries in project menu.
- Made restore session requester at startup optional.
- Added password manager for auth and forms (for forms, enable "save form credentials" in options).
- Moved the experimental cookie system ENV var option to "settings/network" settings.
- Added cookie manager (designed to work with experimental cookie system).
- Added common user agents in "settings/network" (OWB_USER_AGENT env var still overrides if you set it).
- Added "Ignore SSL Errors" and certificate path to "settings/security".
- Added application/force-download and application/octet-stream to the default mimetype list.
- Allows file download in "READWRITE" mode (which allows previewing during download).
- Added history sidepanel.
- Made bookmark sidepanel update faster.
- Added "History" pulldown menu with recently visited entries and recently closed tabs submenu.
- Added REXX command: "ADDBOOKMARK TITLE/A,URL/A,ALIAS/K,MENU/S,QUICKLINK/S".
- Focus to progress/done/error tab in download window when related events occur.
- Setting file comment doesn't fail anymore if the URL length is > 79 characters.
- Download window wouldn't autoclose anymore if a download requester had been previously cancelled.
- Fixed "417" HTTP code response. Should fix mail sending with imp.free.fr, for instance.
- Fixed a memory leak with history handling.
- Fixed date handling.
- Take argument URL into account when restoring session at startup.
- Fixed an illegal access issue and other bugs with the new OWB cookie system.
- Added some memory checks in strategic places in WebKit to avoid crashing if there's not
enough memory (but don't expect it to be bullet-proof anyway. WebKit is just not designed
to handle properly low-memory cases).
- Show a nice requester when Webkit decides to crash because it can't deal
with failed memory allocations. Also free the whole heap memory in that case.
- 16.08.2009: OWB 1.4 - MorphOS 2.4 Release (NoSVG build)
- Updated to OWB SVN r1015.
- Implemented NPAPI plugin system. Plugins are implemented as shared libraries.
They are loaded from PROGDIR:plugins/ directory.
- New OWB cookie system is now available (it helps with gmail or hotmail, for instance).
However, it's only available with "setenv OWB_EXPERIMENTAL_COOKIES 1" for now,
since it's still considered as WIP in OWB main branch.
- Mimetype system now also searches for defined filename extensions if an URL doesn't advertise
any registered mimetype. ftp:// URL also automatically makes use of these extensions bindings,
since that's the only way to make a decision for this scheme.
- Mimetype list (preferences) is now sorted.
- Added backspace and alt+cursor navigation/scrolling keys.
- Fixed http://login:pass@host authentication method which was broken in 1.3.
- Escape filename in the mimetype "ask action" requester.
- Fixed an excessive VMEM consumption introduced in 1.3.
- Updated libxslt, which fixes a deadly crash in some XML/XPATH pages (for instance OpenGL SDK).
- A requester asking for HTTP: volume would sometimes appear at download completion. Fixed.
- 07.06.2009: OWB 1.3
- Updated to OWB SVN r994.
- Network can now optionally run in a dedicated thread.
Just for information, CURL network backend has always been asynchronous,
but some specific parts can unfortunately block depending on the network
link (e.g dns resolution), hence the need for a dedicated thread.
- Improved CURL buffer management to cope more easily with higher
download speeds.
- Added resume support to download manager.
- Display more information in download overwrite/resume requester
(local/remote file dates and sizes).
- Added failure reason column in download manager 'Failed' tab.
- Added URL column in download manager.
- Added a gauge for each entry in download manager.
- Added a retry button for failed downloads.
- Download speed is now measured as an "instant" value (before, it was computed
as an average since the download start).
- Added a confirmation requester if POST data is about to be resent
(should avoid duplicated messages on fora, for instance).
- Added content blocking based on 'adblockplus' (optional). See conf/blocked.prefs
(it will be made configurable from settings/contextmenu later).
- Bookmark tree can now be shown as a side panel.
- Reworked refresh method (behaves better and faster with 2dlayers when moving
windows over browser area).
- Added mimetype configuration: for each mimetype, "view", "download",
"external command" and "ask" actions are available.
- Added configurable contextual menus for link, page and image objects,
which can now be extended with user actions.
- Added session saving/restoration (optional). F9 and F10 keys also respectively allow to manually
select a session file to restore from/save to.
- Added "Load in New Background Tab" contextmenu item (which was already available
before by pressing MMB).
- Added HTML (embedded) error reporting mode. Requester and HTML modes can be
selected from settings.
- Quit requester is now optional.
- Added "Paste to URL" menu entry.
- More work on PDF export (saves the whole site into a page-based
document, with or without backgrounds depending on settings).
- Added drag'n'drop support to browser window (each dropped file creates a new tab).
- Added mailto: support (through OpenURL).
- Added javascript: scheme support from URL string.
- Space key now also scrolls page down.
- New bookmark entries are also added to pulldown menu by default.
- asyncio.library is now used for file input/output.
- Added BACKGROUND switch to "Open" ARexx command (only relevant when used with NEWPAGE).
- Fixed SAVEURL ARexx command 'quiet' mode.
- Removed a 256 characters limit with bookmark entries.
- Changed widgets default colours to give more contrast.
- Added htm/php extensions for local browsing.
- Fixed an issue with duplicated entries in network window when using several windows.
- Fixed an issue with file upload (full path could be sent instead of just the file name).
- Moved history.db and cookieCollection.txt to conf/ directory (move your old
ones there, sorry for that :)).
- 12.04.2009: OWB 1.2
- Updated to OWB SVN r884 (08.03.2009).
- Updated to Curl 7.19.3.
- Substancially increased scrolling speed in some cases.
- Reduced a lot CPU usage in some cases (i.e MorphZone forum when replying).
- Added authentication window (not all protocols are handled yet).
- Added history loading/saving with max age/max entries settings.
- Added support for visited links marking.
- Added URL completion: string and/or popup completion modes are available (and optional).
- Added console window (displaying JavaScript error messages amongst others).
- Added "Save as HTML" menu entry.
- Added cache model and page cache settings.
- Added "New Tab" button.
- Added context menu actions to tab titles.
- Added context menu in downloaded entries list to open file/directory with Ambient.
- Added loading transfer anim in tabs (optional).
- Added "SAVEURL URL/A" rexx command (downloads passed URL to download directory).
- Allow Euro symbol input in forms.
- Send "Accept-Language" http header set with system preferred languages.
- Implemented JavaScript prompt request.
- Enabled "Resizable TextArea" webkit option.
- Made tab-cycling work properly for the whole browser window (it was only working inside
the page content before).
- Remember last opened file path during session.
- Began implementing plugin interface (nothing to see yet, except plugin placeholder).
- Unescape downloaded file names.
- Protected tab and status labels against MUI escape-sequences abuses.
- URL filecomment wasn't written correctly when downloading to a SFS partition.
- Bookmarks menuitems are now updated in realtime too.
- QuickLink group reworked and (hopefully) fixed for pre-2.x MUI versions. It
also offers more layout options.
- Don't move downloaded entry to finished tab in case current size is greater
than advertised file size (which can happen with on-the-fly gzip unpacking).
- Fixed some issues with window/tab titles sometimes showing wrong label.
- Cosmetics here and there in the GUI.
- Use shared jpeg and png libraries.
- 21.02.2009: OWB 1.1
- Updated to 12.02.2009 SVN (GaleKing). It at least fixes gifanims,
amongst many other things.
- Updated to Cairo 1.8.6 and pixman 0.14.0 (altivec enabled for MorphOS 2.x).
- Updated to Curl 7.19.2: it *seems* to be more robust and slightly faster.
- Added libICU support (which makes codepage actually work).
- Convert UTF8 to local charset in tab/window/status labels (MorphOS 2.x).
- Added persistant cookies saving.
- Added confirmation request when quitting.
- Navigation buttons can be displayed as text/text&image/image.
- Added history feature in back and forward buttons contextmenus.
- Reworked quicklink edition in bookmark window. Their look and layout is now
configurable and their edition is done in realtime (thanks Poly :)).
- Cosmetics in bookmark window.
- Added download speed in download window.
- Cosmetics in download window.
- Fixed a refresh issue in tabs.
- Middlebutton doubleclick now creates a new tab in background.
- Contextual cursors support (MorphOS 2.x only).
- Display filename in upload file forms.
- Added support for Javascript confirm alert and Javascript window.close().
- Added network activity leds.
- Added network connection manager window.
- Added a feedback requester for connection failures (connection refused, unknown hostname, ...)
- Added more settings (fonts families, interface settings, maximum active connections, javascript, ...)
- Added PDF export option (just an unfinished experiment for now, only first page will be saved correctly).
- Added a splash window during fontconfig cache generation.
- Fixed deadkeys input (i.e for typing ö, ü,... characters with some keymaps).
- Fixed a crash when directly closing a tab that hadn't been shown yet.
- Fixed a bug in fontconfig. Only first font directory would be scanned
(it also means font cache will be regenerated with this version).
- 01.02.2009: OWB 1.0
First public release.
Contact
-------
If you have any suggestion or bug to report, please contact me at: fabien.coeurjoly@wanadoo.fr
But please, don't flood me. I'm quite aware of what's missing already. :)