History log of /haiku/src/apps/webpositive/BrowserWindow.h
Revision Date Author Comments
# 52141067 18-Jan-2023 Jim906 <jim_l@fastmail.com>

WebPositive: draggable page icon

* Enable user to drag the WebPositive web page icon to the bookmark
bar to create a bookmark there, or drag it to a Tracker window to
create a bookmark in the displayed directory.
* Send a message to the drag target that can be handled by Tracker's
generic drop routine.
* Overload _CreateBookmark with a more flexible version and a
_CreateBookmark(BMessage*) that handles both the icon being dropped
on the bookmark bar, and the message that Tracker sends if the icon
is dropped on Tracker.
* Account for the fact that, when _CreateBookmark(BMessage*) is called,
Tracker may or may not have already determined the file name to use and
created the file, depending on whether the icon was dragged to
Tracker or not.
* Use page-specific small and large icons for the bookmark file, if
they are available (currently Haiku WebKit doesn't seem to provide
them though).
* Follows CharacterMap as a model for dragging an icon and ShowImage
for dragging to Tracker.
* Fixes #10795.

Change-Id: I7f32013cc1372dab1894b5d92335d3a4cbfb671f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6007
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# 08fdc76a 23-Jul-2022 Augustin Cavalier <waddlesplash@gmail.com>

WebPositive: Fix INTEGRATE_MENU_INTO_TAB_BAR.

It seems to have been broken for some time. Maybe some users
want this and we should expose it in settings instead of hiding it
behind #ifs?


# f28e05bc 19-Jul-2022 Fredrik Holmqvist <fredrik.holmqvist@gmail.com>

Web+: Use reference for urlcontext in app and window

It needs to be deleted after everything is done.
This seems to fix the crashes I could reproduce on exit in my VM.
So might fix #17583.
(WebView also has fContext, but I assume they are part of a window)

Change-Id: I0125f76b0b2331ac3b6a81d6c20087ebdedbf2f2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5486
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# 2b1972cf 05-Jul-2021 Adrien Destugues <pulkomandy@gmail.com>

webpositive: Fix for HaikuWebKit 1.8.1

Change-Id: I00b2b01bf84e0d22ec759511b2f9435403207c95
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4150
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>


# aa013a51 29-Nov-2020 jpdw <jpdw@cock.li>

WebPositive: Dropdown menu for choosing search engine

- Move the list of search engines used for search shortcuts to
SettingsKeys.cpp/h and remove need for dynamic allocation.
- Use it in the settings window to help filling the default search
engine field.

Fixes #15218.

Change-Id: I3783f6a346ad0fef2cff97eb930cb98cee39f660
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3439
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 4c1d001d 08-Apr-2019 syedsouban <syedsouban890@gmail.com>

WebPositive: add search engine shortcuts

Currently supports:

- Google (g)
- Bing (b)
- Wikipedia (w)
- DuckDuckGo (d)
- Baidu (a)
- Yandex (y)
- Ecosia (e)
- Qwant (q)

Change-Id: Iec51c776c598672bd6df3be7b8dbd21062b85968
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1359
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 41ddfe2a 12-Feb-2019 Rob Gill <rrobgill@protonmail.com>

WebPositive Add option to start new session on startup

* Add settings file entry "start up policy", with two options:
resume prior session, and start new session

* Add dropdown to settings window to select option (defaulting
to "resume prior session", which is the behaviour prior to
this patch)

* Add code to check setting on launch and open a new session,
or reload the prior session as specified.

* The "Start new session" option behaves in the same manner as
opening a new window, following the user's already specified
new window option

* Related comment 2 of bug #14890

Change-Id: I46c33977bf3e9b943841f70050f890f51ac73bff
Reviewed-on: https://review.haiku-os.org/c/1035
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>


# f86df64b 13-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

Web+: implement a simple session management system.

When quitting the app or closing the last window, all windows and tabs
are stored in a "Session" file. This is reloaded when the browser
starts, allowing to restore all windows and tabs.

Limitations: the page content and navigation history are not saved. The
file is written only at exit so this can't be used for crash recovery
(but you can make a backup of your default session).

Fixes #6680.


# 5b7cdbbb 12-Nov-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

WebPositive: add a cookie manager.

* Allows you to view and delete cookies.
* The list of domains is hierarchized and collapsed to minimize the
number of empty entries
* All cookie parameters are shown for each domain: name, path, value,
expiration date, and known flags.


# 6563b112 16-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Add menu entry to save pages as MHTML.

Fixes #9570.


# c620610b 24-Apr-2014 John Scipione <jscipione@gmail.com>

WebPositive: Add support to show/hide bookmark bar

Default is shown, a menu option in the View menu allows you to show
or hide the bar.

Also move the bookmark bar below the tab frame, it looks better
here I think and matches other browsers (e.g. Firefox.)


# 3eff0639 14-Apr-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

WebPositive: let escape close the menu.

* Intercept the escape key to mean "stop loading" only when menus are
closed.


# 8512f7b0 16-Mar-2014 Zhuowei Zhang <zhuoweizhang@yahoo.com>

Added a simple window to display console messages (fixes #10410)

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# cb7df3b1 15-Nov-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Update webkit and cmake packages

* Some changes required in WebPositive to store the cookies on disk


# 2fd5f173 16-Jun-2013 Stephan Aßmus <superstippi@gmx.de>

WebPositive: Now that it lives in the tree, get rid of the copied shared code.


# 69eca701 14-Dec-2012 Tri-Edge AI <triedgeai@gmail.com>

WebPositive: Search engine string now gets encoded.


# bafbb929 13-Dec-2012 Tri-Edge AI <triedgeai@gmail.com>

WebPositive: Smart URL handling improvements (GCI task)

- Fixed: WebPositive now successfuly detects foreign protocols and
launches their respective applications.
- Improved: The decision whether to use a search engine or a DNS lookup
for the text entered in the address bar, including for internationalized
names (IDN) (though we do not handle them correctly later on yet).
- TODO: escape the query string before passing it to webkit
(for example for: "3+4")


# f893514b 29-Jul-2012 Ryan Leavengood <leavengood@gmail.com>

Remove custom Zoom method from Web+ which goes fullscreen.

This leaves the default BWindow behavior of a maximized window.

Alt-Enter and F11 still will go fullscreen.

Fixes #7966.


# 1526be73 27-Dec-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Add a stupidly simple "search Google from the URL bar" feature, a la Chrome.
It still needs a lot but this doesn't seem to break anything and it already is
making my browsing more productive. The hard-coding of Google will be fixed
when some proper search engine provider handling is added.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@557 94f232f2-1747-11df-bad5-a5bfde151594


# 8ee88f9b 12-Dec-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Show the status bar and therefore the progress bar even in fullscreen mode when
a page is loading.

Fixes #6086.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@551 94f232f2-1747-11df-bad5-a5bfde151594


# 82117cd7 22-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added "View->Page source" feature. For local files, it will open the file in the
preferred app for text/x-source-code. For remote pages, it will save a temporary
file and open the editor with that.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@517 94f232f2-1747-11df-bad5-a5bfde151594


# 8a48f074 21-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Handle B_RETURN and B_ESCAPE when the Find text control has focus. Refactored
the code to visibly invoke a BButton and use it to show the respective buttons
go down in the Find group.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@513 94f232f2-1747-11df-bad5-a5bfde151594


# 02a2ef19 20-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Small refactoring for retrieving the URL for a new tab.
* Load new files into the current tab, if the URL of that tab is either empty
or the URL for new tabs, instead of always opening a new tab.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@511 94f232f2-1747-11df-bad5-a5bfde151594


# 11365e77 20-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added Home button... by popular request. Will perhaps make it a setting.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@510 94f232f2-1747-11df-bad5-a5bfde151594


# e979801b 19-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Introduced --fullscreen and -f command line options.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@506 94f232f2-1747-11df-bad5-a5bfde151594


# f94d5e28 19-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Don't store the last window frame with the full-screen window size...

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@505 94f232f2-1747-11df-bad5-a5bfde151594


# 208ecbca 16-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Moved auto-hiding the mouse pointer into BWebView::Pulse().
* Unhide the interface when the user invokes CMD-L (Open location).
* Make sure the progress bar is really hidden, sometimes it would be
visible again after unhiding the rest of the interface.
* Added a setting for the auto-hiding the mouse pointer feature. It defaults
to true, since I think it's useful for an app where the pointer would
usually be in the way.
* Hide the mouse pointer in any case as soon as the user begins typing, also
hide potentially showing tool tips in that case.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@496 94f232f2-1747-11df-bad5-a5bfde151594


# e07fc6b7 05-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Changed the implementation of context menus in DownloadProgressViews. The views
were intercepting mouse messages even if the window was not showing. Now
secondary clicks are intercepted in DownloadWindow and the target view is found,
which makes this much cheaper.
* Offset context menus by 2 pixels, so the mouse does not start directly over
an item.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@488 94f232f2-1747-11df-bad5-a5bfde151594


# ea40bbf2 04-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Moved "Auto-hide" menu item into Settings window, as a check box along the
"show tabs if single page only" option.
* Fixed problems with showing tabs when opening new tabs while the interface
was hidden. Introduced a new flag which tracks the hidden state to make
this easier.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@486 94f232f2-1747-11df-bad5-a5bfde151594


# c2227feb 04-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Implemented an "auto-hide the interface" feature for the full-screen mode. The
mouse cursor will automatically hide if you don't move it, unless it's over the
interface. The interface will disappear after three seconds if the cursor is
not above it. It will re-appear when you touch the top of the screen with the
mouse. I find this the best solution, since the mouse is also used for
navigation in the page, and showing the interface based on some virtual area
of the interface would just get in the way.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@485 94f232f2-1747-11df-bad5-a5bfde151594


# c0f79c03 04-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added button besides main menu bar which is only visible in fullscreen mode and
allows to go back to window'ed mode. The icon is the window icon which Deskbar
uses also.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@484 94f232f2-1747-11df-bad5-a5bfde151594


# f157030d 03-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Implemented most basic fullscreen feature.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@482 94f232f2-1747-11df-bad5-a5bfde151594


# 9a630705 03-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Moved handling/display of "main site error" alert into client.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@481 94f232f2-1747-11df-bad5-a5bfde151594


# 9adbaa43 04-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Removed unneeded headers.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@480 94f232f2-1747-11df-bad5-a5bfde151594


# 9f30678a 03-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Implemented a CredentialsStorage class with optional persistency. Two global
objects are used for session and persistent storage of credentials with the
appropriate locking. Passwords are stored on disk insecurely. If the user
uses the checkmark in the authentication window to remember the credentials,
the persistent storage will be used, otherwise the session storage. In another
words, even if not asked to remember the credentials, the same user/pass never
needs to be entered more than once per session, unlike before. WebCore already
contains a CredentialStorage class, but we don't use it. It could be used via
the CURL networking backend implementation, only the CF backend uses it at all.
Since we don't have a "keyring" OS level service, this solution was more
convenient for the time being.

Note all this has nothing to do with storage of form data entered by the user.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@478 94f232f2-1747-11df-bad5-a5bfde151594


# 1a2246cc 03-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Avoid loading the start page before loading the requested URL in new windows
by passing the url to the constructor already.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@476 94f232f2-1747-11df-bad5-a5bfde151594


# a4c1f678 30-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* After a recent commit, _TabChanged() was accessing "webView" when it really
meant CurrentWebView(). This also fixed the focus restoration, since it
remembered the current focus for the wrong web view when the user data was
already stored.
* Refactored _TabChanged() so that this code is now executed in the now
virtual SetCurrentWebView(), which makes the features also work for new tabs.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@466 94f232f2-1747-11df-bad5-a5bfde151594


# 50c66f38 30-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Store the favicon in the PageUserData of any BWebView instance.
* Refactored setting the page icon so it always goes through the new
BrowserWindow::_SetPageIcon().
* Don't replace the PageUserData in _TabChanged() if it already exists
(which would forget the favicon).
* Write the favicon to the Bookmark file. At the moment, it writes the
32x32 icon as upscaled version of the 16x16 icon. Color reduction makes
the icons look not so nice, since Haiku does not yet support PNG icons...

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@464 94f232f2-1747-11df-bad5-a5bfde151594


# 1547f92b 23-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Improved the layout of the Settings window general page.
* Allow specifying a start and a search page in the Settings window.
* Separated the "New page" policy into "New window" and "New tab" policies.
For a new window, the user can chose to "Open start page", "Open search page"
and "Open blank page". The default changed to "Open start page" and the
default start page points to the "Welcome" readme. For new tabs, there is
an additional choice "Clone current page". The default stayed with opening
a blank page.
* Implemented the new page policies in BrowserWindow.
* Listen for changes of the new settings in BrowserWindow.
* Added the new settings keys and default values to SettingsKeys.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@456 94f232f2-1747-11df-bad5-a5bfde151594


# c53bbc32 20-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Implementing MenusEnded() is not needed anymore, since we enable Cut/Copy/Paste
by default now.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@444 94f232f2-1747-11df-bad5-a5bfde151594


# 9b70fc27 19-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Implemented a mechanism to ask the BWebPage about it's editing capabilities.
This needs to be asynchronous, as always. BrowserWindow asks when menus are
opened, but the result arrives so fast, that the user never sees invalid
items. The Cut/Copy/Paste items are now always enabled according to what's
currently really possible.
* Enable and disable the Back/Forward History menu items along with the buttons.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@436 94f232f2-1747-11df-bad5-a5bfde151594


# 62c69730 20-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Separated Text menu into Edit and View menus.
* Added Cut/Copy/Paste items. Enabled status is updated when a text view has
focus, but not yet with the selection of the BWebView, when that has focus.
* Dispatch B_CUT/COPY/PASTE either to a focused BTextView or to the BWebView.
* Enable the Find next/previous items according to contents of the Find text
input.
* Refactored MenusBeginning() hook.
* Renamed Go menu to History.
* Added Back/Forward menu items to History menu, now the shortcuts are visible.
(Command key plus cursor left/right)
* Added Reload item to View menu, now that shortcut is visible too.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@435 94f232f2-1747-11df-bad5-a5bfde151594


# 6d938744 13-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Add a flag "activate" to WindowFeatures and set it to true by default. It's
supposed to allow specifying whether the new window/page shall be activated
or not.
* In ContextMenuController, when creating a new page from a link, specify that
it shall not be activated.
* Handle the new flag in the WebKit layer.

-> "Open link in tab" from the context menu no longer selects the new tab, but
opens it "in the background".

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@414 94f232f2-1747-11df-bad5-a5bfde151594


# ad7c99c0 08-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Integrated the Go button into the URL text field.
* Added a context menu to the URL input for integration with the system
clipboard when you want to use the mouse only.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@403 94f232f2-1747-11df-bad5-a5bfde151594


# 312655fb 07-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Renamed TextControlCompleter to TextViewCompleter, since it actually only
works with the BTextView.
* Factored out the URL text handling into a new class URLInputGroup, which is
used instead of a plain BTextControl, but currently works much the same way.
It's a BGroupView though and allows easy addition of other controls and items
into the URL text field.
* Moved baseURL() method into it's own file, since it's used from multiple
places now.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@402 94f232f2-1747-11df-bad5-a5bfde151594


# d5f0e82b 06-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Moved some settings keys into new files SettingsKeys.h/cpp to make it less
likely to introduce erros with spelling settings keys wrong somewhere.
* Introduced new setting for the behavior if tabs should show at all if only
one page is showing in a window. Defaults to on, i.e. the previous behavior.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@393 94f232f2-1747-11df-bad5-a5bfde151594


# 92e8b344 03-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added option and infrastructure to zoom the whole page instead of the text only.
(Currently not remembered, but the default (off) is often better than zooming
images.)

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@381 94f232f2-1747-11df-bad5-a5bfde151594


# 062b2372 03-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Added optional BWebView parameter passed to BrowserWindow constructor, which
will be passed to CreateNewTab(), so that BrowserWindows can be created to
embed a view which already exists.
* Extended NewPageCreated() hook with the additional information that
BWebPage::createPage() already provides. It can be used to decide if new
windows shall be created instead of creating another tab for the new page.
* Reworked BrowserWindow constructor with regards to the "DoNotHaveToolbar"
policy. All views are always created, BLayoutItems are remembered for the
various groups and are being turned invisible depending on policy. This way
each BrowserWindow is fully valid and can be reconfigured easily during
runtime. (Settings could be exposed as well now.)
* Changed ChromeClientHaiku::createWindow() implementation to not disregard
the "window features" properties if only some of them are not set.

All this combined makes the Haiku User Guide translation page open a separate
window for editing the translations just like BeZillaBrowser. What does not
work (but apparently also not in BeZillaBrowser) is clicking another block and
having the editing window update to show that block instead. Don't know if this
is actually supposed to work that way, it just seems like it should.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@380 94f232f2-1747-11df-bad5-a5bfde151594


# ea8b6f3f 02-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Reworked closing a page programatically. BWebPage no longer sends a plain
B_QUIT_REQUESTED, instead BWebWindow has a new hook and derived classes can
implement it.
* Some refactoring in BrowserWindow to move code from MessageReceived into
separate methods for easier debugging and cleaner code.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@378 94f232f2-1747-11df-bad5-a5bfde151594


# c1f8fe4d 16-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Improvements in bookmark handling:
* Search for existing bookmarks recursively.
* Open all bookmarks at once, when the user clicks a bookmark folder in
the menu (thanks Axel). But do ask for confirmation if there are more
than ten bookmarks.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@318 94f232f2-1747-11df-bad5-a5bfde151594


# 3760e5d8 16-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Added Tracker Kit NavMenu.h and SlowMenu.h which ought to be removed when
WebPositive is moved into the Haiku repo.
* Convert the Bookmarks menu into a BNavMenu, make sure it updates to the
current folder contens each time it opens.
* Wire everything to complete the bookmark support. Managing bookmarks is
fairly nice by re-using Tracker. One can even put anything into the book
mark folder and WebPositive will launch the respective app if it doesn't
have a META:url attribute. The most immediate benefit is that clicking
sub-folders in the Bookmarks folder will also open that folder in Tracker.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@315 94f232f2-1747-11df-bad5-a5bfde151594


# e509fd60 16-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added code for bookmarking the current page and opening the Bookmarks folder
in Tracker (or the preferred file manager). Populating the Bookmarks menu is
still missing.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@314 94f232f2-1747-11df-bad5-a5bfde151594


# 88e37302 14-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Made BWebPage download related methods and listener member static.
* Introduced BWebPage::RequestDownload() public API (expected to run
synchronous).
* Added necessary wiring for "Download this link" in context menus.
* Restarting downloads works in principle, although with some quirks.
(Sometimes it appears the "Desktop" is being downloaded...)

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@310 94f232f2-1747-11df-bad5-a5bfde151594


# c108caf8 05-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Use a different deletion strategy for the BWebView. Since the BWebPage will
delete itself in the application thread, we cannot delete the BWebView before
this happens in the window thread. Now BWebPage is repsonsible for deleting
the view.
* Also make sure that there are not still loaders running on the frame. Since
the timer messages arrive in a different handler than the BWebPage handler,
the timer functions being called could operate on stale pointers. I am not
sure why WebCore doesn't make sure of this itself. Perhaps we are not supposed
to delete something directly, but via reference counting. Though I am not sure
what it would be, since WebCore::Page is not reference countable. Maybe the
frame... need to investigate. After all, there could be other timers in the
queue besides loading related ones.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@295 94f232f2-1747-11df-bad5-a5bfde151594


# d0417c56 03-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Implemented basic settings window skeleton.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@277 94f232f2-1747-11df-bad5-a5bfde151594


# 1a52acbc 02-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Wired everything and improved the TextControlCompleter behavior a bit with
regards to eating the B_RETURN key before we can dispatch in BrowserWindow. So
autocompletion for URLs basically works. What's missing is:

* Much better grouping of matches.
* Fix the delay when the BrowsingHistory is first accessed (lazy loads itself
from disk just then, ought to do it in the application thread after startup,
which probably makes it unnoticable before the user starts typing a URL).

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@268 94f232f2-1747-11df-bad5-a5bfde151594


# 10d5754b 01-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added BWebSettings and BPrivate::WebSettingsPrivate. Added all the wiring
necessary. The only usable effect as of yet is that favicons arrive at the
BrowserWindow. Favicons are stored in a database and are not fetched when they
alreary exist. The application is expected to try and fetch an icon for a given
url. This is currently done in BWebWindow when the URL for loading has been
initiated. Otherwise it fetches the URL upon the new ICON_RECEIVED notification
from the FrameLoaderClientHaiku. In any case it ends up at BWebWindow::IconReceived(),
so derived classes don't have to worry about the difference. In any case, via
BWebSettings, icons can also be fetched manually, like for the forthcomming
autocompletion text control.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@257 94f232f2-1747-11df-bad5-a5bfde151594


# ddb431ba 01-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Made the integrated menu bar a build time configuration feature. I don't like
it so much, since it somehow looks alien for no /really/ good reason. Maybe
I'll integrate this option into the settings, when I get to those.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@253 94f232f2-1747-11df-bad5-a5bfde151594


# e6809b32 28-Feb-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Experimental integration of the main menu into the tab bar. Please tell me what
you think, I am not 100% it's nicer than before. Can be easily reverted in any
case.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@248 94f232f2-1747-11df-bad5-a5bfde151594


# a3b3ded5 03-Jul-2012 Alexandre Deckner <alexandre.deckner@uzzl.com>

Manually update to the r238 state, so that we can rebase next commits on top of it

Original commit message of r238:

Split up WebPositive from HaikuLauncher. HaikuLauncher is back to it's simple
self. WebPositive uses a new WebPositive folder in config/settings. Otherwise,
everything should be as before. LauncherWindow and LauncherApp have been renamed
and cleaned up for the Haiku coding style.


# 0b355b4e 03-Jul-2012 Alexandre Deckner <alexandre.deckner@uzzl.com>

Rename LauncherXXX files to their new WebPositive names

Edit history with this rename commit to preserve history as we will git-filter --subdirectory-filter the WebPositive directory. The HaikuLauncher directory was renamed to WebPositive trough the past history with git-filter.


# 6563b112643871b3a1d35cdf5127f7766b46be8a 16-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Add menu entry to save pages as MHTML.

Fixes #9570.


# c620610b98ac26afed638fbccabee14d85dea41d 24-Apr-2014 John Scipione <jscipione@gmail.com>

WebPositive: Add support to show/hide bookmark bar

Default is shown, a menu option in the View menu allows you to show
or hide the bar.

Also move the bookmark bar below the tab frame, it looks better
here I think and matches other browsers (e.g. Firefox.)


# 3eff0639587e0d76467a900872bc7f4897d49120 14-Apr-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

WebPositive: let escape close the menu.

* Intercept the escape key to mean "stop loading" only when menus are
closed.


# 8512f7b05659884cb4f2e5ddf68afe17ae133c53 16-Mar-2014 Zhuowei Zhang <zhuoweizhang@yahoo.com>

Added a simple window to display console messages (fixes #10410)

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# cb7df3b1da881c3fadef628b0a0d5a122f131bd0 15-Nov-2013 Adrien Destugues <pulkomandy@pulkomandy.tk>

Update webkit and cmake packages

* Some changes required in WebPositive to store the cookies on disk


# 2fd5f1736a6dfe230cae0c0f784fcad4b5f74473 16-Jun-2013 Stephan Aßmus <superstippi@gmx.de>

WebPositive: Now that it lives in the tree, get rid of the copied shared code.


# 69eca701553dee17683df2e8a0440d61da4d0fc4 14-Dec-2012 Tri-Edge AI <triedgeai@gmail.com>

WebPositive: Search engine string now gets encoded.


# bafbb929015db8c950ae898e990d840c8236995f 13-Dec-2012 Tri-Edge AI <triedgeai@gmail.com>

WebPositive: Smart URL handling improvements (GCI task)

- Fixed: WebPositive now successfuly detects foreign protocols and
launches their respective applications.
- Improved: The decision whether to use a search engine or a DNS lookup
for the text entered in the address bar, including for internationalized
names (IDN) (though we do not handle them correctly later on yet).
- TODO: escape the query string before passing it to webkit
(for example for: "3+4")


# f893514b87e2e9758529b835641cbf71107e468e 29-Jul-2012 Ryan Leavengood <leavengood@gmail.com>

Remove custom Zoom method from Web+ which goes fullscreen.

This leaves the default BWindow behavior of a maximized window.

Alt-Enter and F11 still will go fullscreen.

Fixes #7966.


# 1526be737a797d99f96f8f85500deca19950047b 27-Dec-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Add a stupidly simple "search Google from the URL bar" feature, a la Chrome.
It still needs a lot but this doesn't seem to break anything and it already is
making my browsing more productive. The hard-coding of Google will be fixed
when some proper search engine provider handling is added.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@557 94f232f2-1747-11df-bad5-a5bfde151594


# 8ee88f9b6d32b6e6d03ac76feefda8d7f7bd8809 12-Dec-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Show the status bar and therefore the progress bar even in fullscreen mode when
a page is loading.

Fixes #6086.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@551 94f232f2-1747-11df-bad5-a5bfde151594


# 82117cd7eb59625d0dfb0524dec5b00f618a81c0 22-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added "View->Page source" feature. For local files, it will open the file in the
preferred app for text/x-source-code. For remote pages, it will save a temporary
file and open the editor with that.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@517 94f232f2-1747-11df-bad5-a5bfde151594


# 8a48f074d8c7c3c3b2b5b51e23e4d85132dec77b 21-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Handle B_RETURN and B_ESCAPE when the Find text control has focus. Refactored
the code to visibly invoke a BButton and use it to show the respective buttons
go down in the Find group.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@513 94f232f2-1747-11df-bad5-a5bfde151594


# 02a2ef19691fcce4fd29226eba6f315dc06296ba 20-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Small refactoring for retrieving the URL for a new tab.
* Load new files into the current tab, if the URL of that tab is either empty
or the URL for new tabs, instead of always opening a new tab.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@511 94f232f2-1747-11df-bad5-a5bfde151594


# 11365e77e8ba872f6f81353697d2101801d2cc76 20-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added Home button... by popular request. Will perhaps make it a setting.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@510 94f232f2-1747-11df-bad5-a5bfde151594


# e979801bf732ee2bab87b51fcce9a861a0d43043 19-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Introduced --fullscreen and -f command line options.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@506 94f232f2-1747-11df-bad5-a5bfde151594


# f94d5e280024f8c54675efb36373b9357156eb41 19-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Don't store the last window frame with the full-screen window size...

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@505 94f232f2-1747-11df-bad5-a5bfde151594


# 208ecbcad581862d4fa35d792180cad8cc46195e 16-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Moved auto-hiding the mouse pointer into BWebView::Pulse().
* Unhide the interface when the user invokes CMD-L (Open location).
* Make sure the progress bar is really hidden, sometimes it would be
visible again after unhiding the rest of the interface.
* Added a setting for the auto-hiding the mouse pointer feature. It defaults
to true, since I think it's useful for an app where the pointer would
usually be in the way.
* Hide the mouse pointer in any case as soon as the user begins typing, also
hide potentially showing tool tips in that case.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@496 94f232f2-1747-11df-bad5-a5bfde151594


# e07fc6b71df68266b262583b4d9ca43138ea6c9f 05-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Changed the implementation of context menus in DownloadProgressViews. The views
were intercepting mouse messages even if the window was not showing. Now
secondary clicks are intercepted in DownloadWindow and the target view is found,
which makes this much cheaper.
* Offset context menus by 2 pixels, so the mouse does not start directly over
an item.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@488 94f232f2-1747-11df-bad5-a5bfde151594


# ea40bbf2d1618534fa28d8a977a21a60cb073ca0 04-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Moved "Auto-hide" menu item into Settings window, as a check box along the
"show tabs if single page only" option.
* Fixed problems with showing tabs when opening new tabs while the interface
was hidden. Introduced a new flag which tracks the hidden state to make
this easier.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@486 94f232f2-1747-11df-bad5-a5bfde151594


# c2227feb1e1b34c9d9a7025e16fb8ac30302fde6 04-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Implemented an "auto-hide the interface" feature for the full-screen mode. The
mouse cursor will automatically hide if you don't move it, unless it's over the
interface. The interface will disappear after three seconds if the cursor is
not above it. It will re-appear when you touch the top of the screen with the
mouse. I find this the best solution, since the mouse is also used for
navigation in the page, and showing the interface based on some virtual area
of the interface would just get in the way.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@485 94f232f2-1747-11df-bad5-a5bfde151594


# c0f79c032172efa3649b0902d1ffbf2411f1e467 04-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added button besides main menu bar which is only visible in fullscreen mode and
allows to go back to window'ed mode. The icon is the window icon which Deskbar
uses also.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@484 94f232f2-1747-11df-bad5-a5bfde151594


# f157030d2e6f467b0ce61cfca868051fb3868078 03-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Implemented most basic fullscreen feature.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@482 94f232f2-1747-11df-bad5-a5bfde151594


# 9a6307059ae614b24fb17805b0ed916aa09d6a9f 03-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Moved handling/display of "main site error" alert into client.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@481 94f232f2-1747-11df-bad5-a5bfde151594


# 9adbaa437850184544cd54aaf5c45e91b573a02f 04-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Removed unneeded headers.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@480 94f232f2-1747-11df-bad5-a5bfde151594


# 9f30678a6772a544fc0c1d7c14bd329ba5c040cd 03-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Implemented a CredentialsStorage class with optional persistency. Two global
objects are used for session and persistent storage of credentials with the
appropriate locking. Passwords are stored on disk insecurely. If the user
uses the checkmark in the authentication window to remember the credentials,
the persistent storage will be used, otherwise the session storage. In another
words, even if not asked to remember the credentials, the same user/pass never
needs to be entered more than once per session, unlike before. WebCore already
contains a CredentialStorage class, but we don't use it. It could be used via
the CURL networking backend implementation, only the CF backend uses it at all.
Since we don't have a "keyring" OS level service, this solution was more
convenient for the time being.

Note all this has nothing to do with storage of form data entered by the user.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@478 94f232f2-1747-11df-bad5-a5bfde151594


# 1a2246ccf975d3f45c6ee4e9606ca80b843be60d 03-May-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Avoid loading the start page before loading the requested URL in new windows
by passing the url to the constructor already.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@476 94f232f2-1747-11df-bad5-a5bfde151594


# a4c1f6783dbe0ebd25a5699c648a26794574c9e0 30-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* After a recent commit, _TabChanged() was accessing "webView" when it really
meant CurrentWebView(). This also fixed the focus restoration, since it
remembered the current focus for the wrong web view when the user data was
already stored.
* Refactored _TabChanged() so that this code is now executed in the now
virtual SetCurrentWebView(), which makes the features also work for new tabs.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@466 94f232f2-1747-11df-bad5-a5bfde151594


# 50c66f38576be9af6e806361871107f51405de1a 30-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Store the favicon in the PageUserData of any BWebView instance.
* Refactored setting the page icon so it always goes through the new
BrowserWindow::_SetPageIcon().
* Don't replace the PageUserData in _TabChanged() if it already exists
(which would forget the favicon).
* Write the favicon to the Bookmark file. At the moment, it writes the
32x32 icon as upscaled version of the 16x16 icon. Color reduction makes
the icons look not so nice, since Haiku does not yet support PNG icons...

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@464 94f232f2-1747-11df-bad5-a5bfde151594


# 1547f92b8ea875c3a0c15f4c78fd473720ec95d0 23-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Improved the layout of the Settings window general page.
* Allow specifying a start and a search page in the Settings window.
* Separated the "New page" policy into "New window" and "New tab" policies.
For a new window, the user can chose to "Open start page", "Open search page"
and "Open blank page". The default changed to "Open start page" and the
default start page points to the "Welcome" readme. For new tabs, there is
an additional choice "Clone current page". The default stayed with opening
a blank page.
* Implemented the new page policies in BrowserWindow.
* Listen for changes of the new settings in BrowserWindow.
* Added the new settings keys and default values to SettingsKeys.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@456 94f232f2-1747-11df-bad5-a5bfde151594


# c53bbc329d7e8a58eba8ec3edaf017c54334332e 20-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Implementing MenusEnded() is not needed anymore, since we enable Cut/Copy/Paste
by default now.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@444 94f232f2-1747-11df-bad5-a5bfde151594


# 9b70fc27d27e13120c2d8566a020e8b124fd111e 19-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Implemented a mechanism to ask the BWebPage about it's editing capabilities.
This needs to be asynchronous, as always. BrowserWindow asks when menus are
opened, but the result arrives so fast, that the user never sees invalid
items. The Cut/Copy/Paste items are now always enabled according to what's
currently really possible.
* Enable and disable the Back/Forward History menu items along with the buttons.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@436 94f232f2-1747-11df-bad5-a5bfde151594


# 62c697303a515d2efdd95845291c52ab96cc9bb5 20-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Separated Text menu into Edit and View menus.
* Added Cut/Copy/Paste items. Enabled status is updated when a text view has
focus, but not yet with the selection of the BWebView, when that has focus.
* Dispatch B_CUT/COPY/PASTE either to a focused BTextView or to the BWebView.
* Enable the Find next/previous items according to contents of the Find text
input.
* Refactored MenusBeginning() hook.
* Renamed Go menu to History.
* Added Back/Forward menu items to History menu, now the shortcuts are visible.
(Command key plus cursor left/right)
* Added Reload item to View menu, now that shortcut is visible too.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@435 94f232f2-1747-11df-bad5-a5bfde151594


# 6d9387446962660835431fdf3b94d04884c49700 13-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Add a flag "activate" to WindowFeatures and set it to true by default. It's
supposed to allow specifying whether the new window/page shall be activated
or not.
* In ContextMenuController, when creating a new page from a link, specify that
it shall not be activated.
* Handle the new flag in the WebKit layer.

-> "Open link in tab" from the context menu no longer selects the new tab, but
opens it "in the background".

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@414 94f232f2-1747-11df-bad5-a5bfde151594


# ad7c99c0ca4493fe060f90ec7ee8aae72913e640 08-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Integrated the Go button into the URL text field.
* Added a context menu to the URL input for integration with the system
clipboard when you want to use the mouse only.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@403 94f232f2-1747-11df-bad5-a5bfde151594


# 312655fb6f521a6a769e3d7dd4cb908708848f29 07-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Renamed TextControlCompleter to TextViewCompleter, since it actually only
works with the BTextView.
* Factored out the URL text handling into a new class URLInputGroup, which is
used instead of a plain BTextControl, but currently works much the same way.
It's a BGroupView though and allows easy addition of other controls and items
into the URL text field.
* Moved baseURL() method into it's own file, since it's used from multiple
places now.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@402 94f232f2-1747-11df-bad5-a5bfde151594


# d5f0e82b842da208d3c297fa2c5eb22ad75539cf 06-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Moved some settings keys into new files SettingsKeys.h/cpp to make it less
likely to introduce erros with spelling settings keys wrong somewhere.
* Introduced new setting for the behavior if tabs should show at all if only
one page is showing in a window. Defaults to on, i.e. the previous behavior.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@393 94f232f2-1747-11df-bad5-a5bfde151594


# 92e8b344ace812f44309a3d8afd5e8572cc2a147 03-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added option and infrastructure to zoom the whole page instead of the text only.
(Currently not remembered, but the default (off) is often better than zooming
images.)

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@381 94f232f2-1747-11df-bad5-a5bfde151594


# 062b23723784dd9e91828e8a7bcf59b7518f81cb 03-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Added optional BWebView parameter passed to BrowserWindow constructor, which
will be passed to CreateNewTab(), so that BrowserWindows can be created to
embed a view which already exists.
* Extended NewPageCreated() hook with the additional information that
BWebPage::createPage() already provides. It can be used to decide if new
windows shall be created instead of creating another tab for the new page.
* Reworked BrowserWindow constructor with regards to the "DoNotHaveToolbar"
policy. All views are always created, BLayoutItems are remembered for the
various groups and are being turned invisible depending on policy. This way
each BrowserWindow is fully valid and can be reconfigured easily during
runtime. (Settings could be exposed as well now.)
* Changed ChromeClientHaiku::createWindow() implementation to not disregard
the "window features" properties if only some of them are not set.

All this combined makes the Haiku User Guide translation page open a separate
window for editing the translations just like BeZillaBrowser. What does not
work (but apparently also not in BeZillaBrowser) is clicking another block and
having the editing window update to show that block instead. Don't know if this
is actually supposed to work that way, it just seems like it should.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@380 94f232f2-1747-11df-bad5-a5bfde151594


# ea8b6f3fd1eb3234a2c8b862276ee6104671fbd9 02-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Reworked closing a page programatically. BWebPage no longer sends a plain
B_QUIT_REQUESTED, instead BWebWindow has a new hook and derived classes can
implement it.
* Some refactoring in BrowserWindow to move code from MessageReceived into
separate methods for easier debugging and cleaner code.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@378 94f232f2-1747-11df-bad5-a5bfde151594


# c1f8fe4de1aeebf5829a597bed88f3f2ca4900cd 16-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Improvements in bookmark handling:
* Search for existing bookmarks recursively.
* Open all bookmarks at once, when the user clicks a bookmark folder in
the menu (thanks Axel). But do ask for confirmation if there are more
than ten bookmarks.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@318 94f232f2-1747-11df-bad5-a5bfde151594


# 3760e5d86812dedd42fc9bcb0b2abfad9f65255c 16-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Added Tracker Kit NavMenu.h and SlowMenu.h which ought to be removed when
WebPositive is moved into the Haiku repo.
* Convert the Bookmarks menu into a BNavMenu, make sure it updates to the
current folder contens each time it opens.
* Wire everything to complete the bookmark support. Managing bookmarks is
fairly nice by re-using Tracker. One can even put anything into the book
mark folder and WebPositive will launch the respective app if it doesn't
have a META:url attribute. The most immediate benefit is that clicking
sub-folders in the Bookmarks folder will also open that folder in Tracker.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@315 94f232f2-1747-11df-bad5-a5bfde151594


# e509fd60c14849be0d9bc390f0761149fab42985 16-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added code for bookmarking the current page and opening the Bookmarks folder
in Tracker (or the preferred file manager). Populating the Bookmarks menu is
still missing.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@314 94f232f2-1747-11df-bad5-a5bfde151594


# 88e373028cbb4d49b0098b89e1c26e1a92966e9b 14-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Made BWebPage download related methods and listener member static.
* Introduced BWebPage::RequestDownload() public API (expected to run
synchronous).
* Added necessary wiring for "Download this link" in context menus.
* Restarting downloads works in principle, although with some quirks.
(Sometimes it appears the "Desktop" is being downloaded...)

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@310 94f232f2-1747-11df-bad5-a5bfde151594


# c108caf8653bd06bbf2dc98b22807178f0c3b652 05-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Use a different deletion strategy for the BWebView. Since the BWebPage will
delete itself in the application thread, we cannot delete the BWebView before
this happens in the window thread. Now BWebPage is repsonsible for deleting
the view.
* Also make sure that there are not still loaders running on the frame. Since
the timer messages arrive in a different handler than the BWebPage handler,
the timer functions being called could operate on stale pointers. I am not
sure why WebCore doesn't make sure of this itself. Perhaps we are not supposed
to delete something directly, but via reference counting. Though I am not sure
what it would be, since WebCore::Page is not reference countable. Maybe the
frame... need to investigate. After all, there could be other timers in the
queue besides loading related ones.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@295 94f232f2-1747-11df-bad5-a5bfde151594


# d0417c565a1a418ece0406d288dcd2e971b5d447 03-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Implemented basic settings window skeleton.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@277 94f232f2-1747-11df-bad5-a5bfde151594


# 1a52acbc07a9c1b1024d76af44b5b8119fe98c39 02-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Wired everything and improved the TextControlCompleter behavior a bit with
regards to eating the B_RETURN key before we can dispatch in BrowserWindow. So
autocompletion for URLs basically works. What's missing is:

* Much better grouping of matches.
* Fix the delay when the BrowsingHistory is first accessed (lazy loads itself
from disk just then, ought to do it in the application thread after startup,
which probably makes it unnoticable before the user starts typing a URL).

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@268 94f232f2-1747-11df-bad5-a5bfde151594


# 10d5754b9273aa826a36beb7c614d0fe0ac0b1d6 01-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Added BWebSettings and BPrivate::WebSettingsPrivate. Added all the wiring
necessary. The only usable effect as of yet is that favicons arrive at the
BrowserWindow. Favicons are stored in a database and are not fetched when they
alreary exist. The application is expected to try and fetch an icon for a given
url. This is currently done in BWebWindow when the URL for loading has been
initiated. Otherwise it fetches the URL upon the new ICON_RECEIVED notification
from the FrameLoaderClientHaiku. In any case it ends up at BWebWindow::IconReceived(),
so derived classes don't have to worry about the difference. In any case, via
BWebSettings, icons can also be fetched manually, like for the forthcomming
autocompletion text control.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@257 94f232f2-1747-11df-bad5-a5bfde151594


# ddb431ba2136284cd2362719858fb51345d25f03 01-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Made the integrated menu bar a build time configuration feature. I don't like
it so much, since it somehow looks alien for no /really/ good reason. Maybe
I'll integrate this option into the settings, when I get to those.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@253 94f232f2-1747-11df-bad5-a5bfde151594


# e6809b325a8abd0f8a2b83e366b5483358fc15b6 28-Feb-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Experimental integration of the main menu into the tab bar. Please tell me what
you think, I am not 100% it's nicer than before. Can be easily reverted in any
case.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@248 94f232f2-1747-11df-bad5-a5bfde151594


# a3b3ded520bdf755cef087bfdb2323c0a832627d 03-Jul-2012 Alexandre Deckner <alexandre.deckner@uzzl.com>

Manually update to the r238 state, so that we can rebase next commits on top of it

Original commit message of r238:

Split up WebPositive from HaikuLauncher. HaikuLauncher is back to it's simple
self. WebPositive uses a new WebPositive folder in config/settings. Otherwise,
everything should be as before. LauncherWindow and LauncherApp have been renamed
and cleaned up for the Haiku coding style.


# 0b355b4e977e1c28512c3c60b9fb143e7a574ea1 03-Jul-2012 Alexandre Deckner <alexandre.deckner@uzzl.com>

Rename LauncherXXX files to their new WebPositive names

Edit history with this rename commit to preserve history as we will git-filter --subdirectory-filter the WebPositive directory. The HaikuLauncher directory was renamed to WebPositive trough the past history with git-filter.