History log of /haiku/src/apps/webpositive/BrowserWindow.cpp
Revision Date Author Comments
# f3626282 11-Dec-2023 Humdinger <humdinger@mailbox.org>

Web+: Fix bookmark bar for localized systems

The folder name "Bookmark bar" should never be translated.
If it is, the folder won't be found, the bookmark bar never shown and
the menu item "Show bookmark bar" always disabled.

Change-Id: I0fb5bc6d4027c7fa957205c1da72c2fabd9e122e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7204
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 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>


# b4a9a0c9 28-Sep-2022 Augustin Cavalier <waddlesplash@gmail.com>

WebPositive: Actually load "zoom text only" setting and default it to false.

All other browsers have it default-off (if there is even a way to
enable it.) This makes it much easier to use Web+ on HiDPI, though
ideally it would automatically set a zoom factor on startup
correspondent to the system font size.


# 4f0d375c 27-Aug-2022 Javier Steinaker <jsteinaker@gmail.com>

WebPositive: added shortcut to cycle through tabs like in every other browser

Change-Id: I3cb543948929c20e64c1c8c245a568fb81637a3d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5574
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
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?


# 3604e6c3 17-Dec-2021 Pascal Abresch <nep@packageloss.eu>

WebPositive: fix loading bar height

Change-Id: Ic1e9c1c64b8bd00efadd6e2ea9f0c686e8b1141c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4823
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Reviewed-by: Kacper Kasper <kacperkasper@gmail.com>


# 04d50e75 11-Jul-2021 Coldfirex <sakison@gmail.com>

WebPositive: More comment cleanup, no functional change

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


# 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>


# eac3b2e0 05-Sep-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

WebPositive: build fix.


# ae81427b 05-Sep-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

WebPositive: fix two characters of the search string being eaten.


# 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>


# 15ba64aa 13-Jul-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Unify Settings menu shortcut

Use , as the shortcut key for settings in all built-in apps. Some used
S, but that's already the shortcut for saving. , is the recommended
shortcut in the HIG already, but built-in apps were not updated to
match.

Fixes #11733.


# f74f8600 16-Jun-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

BitmapButton: move from WebPositive to libshared

Remove a currently unused copy of it from HaikuDepot.

Change-Id: Idb97fae8e7190da6bc1049b3c1f1df929ea91bab
Reviewed-on: https://review.haiku-os.org/c/1506
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 43d60df2 15-Aug-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

Web+: avoid empty tab title

Use file name, if no title is provided by the page

Fixes #13663


# af500192 17-Jun-2017 Victor <vikkindhart@gmail.com>

Fixed (again) the way URL locking works.

URL input is considered locked when it is focused and original text was
changed. Pressing ESC will now change URL input's text to the current URL.

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


# 846ac853 11-Jun-2017 Wiktor <vikkindhart@gmail.com>

Changed URL input locking to use BMessageRunner.

In the current state, opening a link in a new tab will cause URL input to
become empty. This fixes the issue by changing the way locking works and
implementing a lock timeout. The text passed to SetText() will be instead
stored as previous text, so if the user presses ESC after editing the URL,
URL input will update to the latest sent text (i. e. current URL). Also
fixed two lines the style checker was complaining about.

Fixes #13548.

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


# bdd02e0d 12-Jan-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

BString: rename SetCharAt to SetByteAt

Makes it clear that it operates on bytes, not unicode codepoints.
Thanks to mmlr for remembering me of this subtlety.


# 3eac8208 09-Jan-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

Remove BStringRef and users.

As discussed in 2008
(http://www.freelists.org/post/haiku-development/BString-on-GCC4,1),
this class was not efficient because of lack of inlining. Implement the
suggested solution of a SetCharAt method instead. Also add a CompareAt
which covers a specific use case in KeyboardLayout.cpp.

Adjust all places which were using this feature to safer APIs.

Also fixes a copypaste error in FormattingConventions.cpp.


# 02d8a059 06-Nov-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

style fix.


# 5bc7366f 06-Nov-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

Web+: missing NULL check in bookmark bar show/hide management.


# a02a1bb4 06-Nov-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

Some improbements to the bookmark bar

- Resolve symlinks to bookmarks so we display the icons for those
- Adjust the minimal height of the bar to make space for icons (if you
use a tiny font size)
- Do not allow the bookmark bar to show when it is empty


# fe8f306c 03-Nov-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

WebPositive: fix search with URL-encoded pattern.

The search URL for goodsearch is:
http://www.goodsearch.com/search-web?utf8=%E2%9C%93&button=&keywords=%s

It contains % characters (not too unusual for URLs with url-encoding).
We can't give it to SetToFormat safely. Use ReplaceAll instead, so that
only the %s is replaced.


# b0a7a75a 11-Jul-2016 John Scipione <jscipione@gmail.com>

Webpositive: 80-char limit style fix


# b0016556 17-Mar-2016 John Scipione <jscipione@gmail.com>

BWindow & WebPostive: Move TextView detection code

... from WebPositive to BWindow. This way every window will detect
Command+Arrows and send them to BTextView if a BTextView has focus
instead of just WebPositive.

https://www.freelists.org/post/haiku-development/Wordwise-jumping-with-CTRL-in-BTextView

This trick doesn't work in Vision though...

Fixes #9913


# 3c1bde87 17-Mar-2016 John Scipione <jscipione@gmail.com>

WebPostive: Tiny style fix

new lines between case statements that don't fall-through

I'm sorry for the noise. I just wanted to get rid of these very old commits.


# 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.


# 4e957597 31-Oct-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

HaikuWebkit 1.4.13 package.

* There is a small API change, and only the x86_gcc2 package was
updated. This means the x86 and x86_64 builds are broken until someone
updates the packages.
* Fix several small bugs, the most important one being that cookies are
written to disk again.


# ef34aca4 28-Jul-2015 Augustin Cavalier <waddlesplash@gmail.com>

WebPositive: Fix "new tab opens search page".

Fixes #12251.


# e366f3c1 28-Jan-2015 Puck Meerburg <puck@puckipedia.nl>

WebPositive: Fix incorrectly sized array


# 03b57bdc 28-Jan-2015 Axel Dörfler <axeld@pinc-software.de>

Removed BRoster::Launch() const args kludges.

* They are no longer needed, as Launch() no longer takes a
const-less char array.


# 6e35da83 14-Jan-2015 Adrien Destugues <pulkomandy@gmail.com>

WebPositive: parse "host:port" as a valid URL

* Web+ would not understand this and do a search engine query instead.
* Fixes #11726
* Also add some comments to _SmartURLHandler to make it clearer how it
handles URLs.


# 804876f6 16-Sep-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Style fixes.


# 2c8da965 16-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

WebPositive: improve "show bookmark bar" menu item

* Disable the menu item when the folder doesn't exist, as the bar won't
show in that case.
* Use a mark on the item to tell wether the bar is visible, rather than
changing its label
* Simplify the logic for hiding and showing the bar. It is safe to call
_ShowBookmarkBar even if the bar doesn't exist, so no need to check for
it everywhere.

Fixes #11199.


# f59dadc4 04-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

Web+: Update URL on LoadFinished and LoadCommitted

* LoadFinished is called after redirects have taken place, so we can
show the final URL. It's also called for navigation inside a document
(jumping to anchors), whereas LoadCommitted is not.
* LoadCommitted is called earlier so we also want to set the URL there.


# 47f04acb 05-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Hide the bookmark bar when there is no matching folder.

* Defaulting to the complete bookmark list doesn't make much sense
* Don't crash when not showing the bar
* Some style fixes.


# fedec7b3 04-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Bookmark bar uses "Bookmark bar" subfolder

* Allows having a lot of bookmarks in the menu, and only the most often
used ones in the bar.
* If the "Bookmark bar" folder doesn't exist, the old behavior (using
the main Bookmarks folder for the bar as well as the menu) is used.
* If none of these exists, the bookmark bar will not be available (just
like the bookmark menu)

Fixes #11092.

We may want to update the default set of bookmark to include some links
in the bar.


# dc8665f7 28-Jul-2014 François Revol <revol@free.fr>

webpositive: Officially handle gopher: URI scheme now

Avoids it asking Google what to do with the URL.


# 158ae743 25-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Escape reserved characters when converting paths to urls

* Introduce and use BUrl::BUrl(const BPath&)
* The path is url-encoded, and the protocol is set to "file"

Fixes #10964.


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

Try opening URLs with the preferred app

We already did this when the URL was entered in the address bar, now
also do it when it comes from a link in a webpage.

Makes mailto links work and fixes #6236.


# 2860fecc 16-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Truncate absurdly long bookmark names.

Fixes #9593.

The complete name could be stored inside the file or as an additional
attribute, but do we really need it? The bookmark menu will truncate it
even further, anyway.


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

Add space between string and ellipsis.

C++11 safe and reads better.


# 1ff6e7a8 15-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

More correct label for the save page menu item

Use "Save page as…" since the item will open a save panel.


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

Add menu entry to save pages as MHTML.

Fixes #9570.


# 6f79af3c 23-May-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Web+: move BookmarbKar to own file.

It's a bit long for an inline class, and I'm going to add more stuff to
it.


# 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.)


# c161ea9a 24-Apr-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

WebPositive: add a bookmark bar.

* This is a BMenuBar with IconMenuItems.
* Uses node monitoring to live-update the bar as bookmarks are modified.
* Bookmark folders are BNavMenus and can be browsed.
* This needs some improvements, for example handling more bookmarks than
the window width allows us to show (with an extra menu like for tabs?)

Fixes #10232.


# 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>


# b9f48ef8 07-Mar-2014 John Scipione <jscipione@gmail.com>

WebPositive: style fixes related to scrolling

rename dy to deltaY


# 2580b20e 05-Mar-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

WebPositive: fix cmd+esc handling

* Don't show the menu in MenusBeginning, this is invoked for all
shortcuts, so cmd+C and others would show the menu. Fixes #9186.
* Instead, show the interface specifically for the CMD+ESC case. Also,
send that key event to the default window handler so the menu opens.
Before, this was mistakenly sent to the "stop" button. Fixes #10523.


# ceafe5b4 14-Feb-2014 John Scipione <jscipione@gmail.com>

Fix 2 shortcut bugs, one in Web+, one in S&T

It's really 2 instances of the same bug, we only want to consider a
fixed set of modifier keys ignoring the lock keys and left/right keys.


# c21873f0 11-Jan-2014 John Scipione <jscipione@gmail.com>

WebPositive: BTextView shortcuts work in URL bar

Pass Cmd+Left/Right to the BTextView base class if the URL bar is focused.
This allows us to make use of the navigation shortcuts in BTextView when we
are focused on the URL bar, and activates back and forward navigation
otherwise.

Unfortunately this doesn't also work for text fields inside webpages.

Also make modifierKeys signed.


# 741987be 11-Jan-2014 John Scipione <jscipione@gmail.com>

WebPositive: Style fixes, 80 char limit and ws


# a1fc792e 20-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Web+: handle about: URLs internally

Trying to open those using the MIME repo would lead to opening
AboutSystem, probably not what you expected.

Note that WebKit currently redirects all those URLs to about:blank. We
could implement some of them, if really wanted.

Fixes #9611.


# a61211c6 17-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Remove FIND_NEXT message for find text control

BTextControl calls Invoke() when it loses the focus and the text has
changed. We don't want this to trigger a search, and instead rely on the
user pressing enter to run the search.

Fixes the search happening again when closing the search bar (escape key
or otherwise), or clicking on the page after searching. Fixes #10168.


# dd71f181 14-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Open bookmarks in the current window

* Instead of looking for the first window in the workspace, add the
current one to the message.
* Fixes #6623.


# d21e9097 16-Aug-2013 Kevin Harris <kevin@studiotectorum.com>

Use configured search string for searching

- The search query position is signified by %s in the search string,
- Automatically migrate the old default search string to the new one.

Patch from #9926 with some rework from me.


# 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


# 5750cec7 22-Aug-2013 Murai Takashi <tmurai01@gmail.com>

Fix memory leak for threeDaysAgoMenu

Fixes #9938.

Signed-off-by: Matt Madia <mattmadia@gmail.com>


# bd336e3a 19-Oct-2013 John Scipione <jscipione@gmail.com>

Update semantic shortcuts

Update BKeymap::GetModifiedCharacters() to translate a given character
and set of modifiers filling out a list of all characters that match for another
set of modifiers.

This allows us to, for example, get all characters in the normal map that
have the '+' character in the corresponding shift map.

It is fully generic allowing one to get a list of characters in any map given
a character and modifiers of another map.

Also I converted from using a BList to using a BObjectList.

With this, along with BWindow::HasShortcut(), the semantic shortcuts now
work not only with Command+'=', but any key in the normal map that has
'+' in it's shift map as long as it isn't already taken by another shortcut.


# 959a0ca1 18-Oct-2013 John Scipione <jscipione@gmail.com>

WebPositive: Add semantic zoom in shortcut.

Fixes #7428

iif '+' is localed in shift + '=' in your keymap, add a shortcut for
Command + '=' to zoom in.


# 4b7e2196 03-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove /boot/common for good

* Remove support for the "common" installation location from packagefs,
package kit, package daemon, package managers.
* Rename the B_COMMON_*_DIRECTORY constants referring to writable
directories to B_SYSTEM_*_DIRECTORY.
* Remove/adjust the use of various B_COMMON_*_DIRECTORY constants.
I'm sure some occurrence still remain. They can be adjusted when the
remaining B_COMMON_*_DIRECTORY constants are removed.


# 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.


# e3323371 21-Apr-2013 Rene Gollent <anevilyak@gmail.com>

Fix Web+ debug build.


# fff103f5 20-Feb-2013 John Scipione <jscipione@gmail.com>

WebPositive close x fixes.

* Remove the Close tab and Close find bar tooltips.
* Offset the x again.
* Add some comments.


# 789e7d85 18-Feb-2013 John Scipione <jscipione@gmail.com>

Tweak close x so it doesn't look disabled


# 819c63ad 17-Feb-2013 John Scipione <jscipione@gmail.com>

Set tooltip in instance of close button, not class.

Also set a similar tooltip for the previous and next buttons and
comments for translators.


# 6f53c50c 17-Feb-2013 John Scipione <jscipione@gmail.com>

Need to call baseclass AttachedToWindow()


# cdb4abbd 17-Feb-2013 John Scipione <jscipione@gmail.com>

Add tooltips for close tab and close find bar


# 8848aa10 17-Feb-2013 John Scipione <jscipione@gmail.com>

Update close find bar button to appear similar to close tab button.


# eaa6b633 10-Feb-2013 John Scipione <jscipione@gmail.com>

Use default spacing for find bar controls


# 2d278e9c 10-Feb-2013 John Scipione <jscipione@gmail.com>

Update Web+ find bar close button.

* Put the button on the left and label it with × to indicate close.
* Make the button just wide enough to fit the label. Tested with
font sizes 8pt to 18pt.


# 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")


# aed35104 05-Aug-2012 Humdinger <humdingerb@gmail.com>

Close alerts with ESCAPE key.

Added SetFlags(B_CLOSE_ON_ESCAPE) or SetShortcut(index, B_ESCAPE) to BAlerts
depending if the result gets used later in the code, or if it's a one-button
BAlert.


# 16e4281d 02-Aug-2012 Ryan Leavengood <leavengood@gmail.com>

Remove the no longer needed hack from WebPositive.


# 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.


# 200dec06 29-Jul-2012 Humdinger <humdingerb@gmail.com>

Adjust strings to the Haiku style.


# 2218c029 11-Jul-2012 Alexandre Deckner <alexandre.deckner@uzzl.com>

Add localization support to WebPositive, patch by Humdinger

* Includes style fixes
* Functional fixes by myself, patch wouldn't build


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

Remove unneeded includes


# ae5b937a 01-Jun-2011 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Make the check for URLs more generic before doing a search.
Thanks for the suggestion mmlr.

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


# c1792266 01-Jun-2011 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Don't do the "smart URL handling" (also known as dumb URL handling) for file:// URLs.

Fixes #7596.

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


# 1ef6069f 02-Mar-2011 phoudoin <phoudoin@94f232f2-1747-11df-bad5-a5bfde151594>

Fix why escape wasn't closing the find panel as expected (#75).
Fix fullscreen icon layout spacing issue (#76).

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


# 1220bcc0 29-Dec-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Add a setting to show or hide the Home button. I find it pretty useless myself.

While I was able to add this fairly easily by cutting and pasting, it was still
quite a bit of work. Seems like there should be a less-verbose way of doing
this. But it did work the first time I tested, so I can't complain too much.

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


# a6549080 29-Dec-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Mostly revert r563 and fix it properly. The ESC key should be dispatched to the
text view from the filter as well as from the browser window.

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


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

Implement http://webpositive.haiku-os.org/ticket/61 so that holding the command
key and using the scroll wheel will zoom in and out. Also made it so that the
scroll wheel only works when the mouse is over the view.

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


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

Use the more conventional Google search URL, not the "Instant" one.

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


# 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


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

Set the tab label to the URL if no title is provided in the HTML.

Fixes #6330.

And so I'm back on Web+ development. Yay.

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


# 26bc1632 09-Dec-2010 anevilyak <anevilyak@94f232f2-1747-11df-bad5-a5bfde151594>

Layout fixes that hadn't yet been committed.

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


# 0e126349 18-Aug-2010 anevilyak <anevilyak@94f232f2-1747-11df-bad5-a5bfde151594>

Fix BrowserWindow to work with new layout changes.

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


# a071b4d0 18-Aug-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Adapt to recent layout API changes. (Untested)

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


# a4841f3a 31-Jul-2010 anevilyak <anevilyak@94f232f2-1747-11df-bad5-a5bfde151594>

Apply patch by Matt Madia: Add the escape key as a shortcut to stop page loads. Closes ticket #6409.

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


# fdd4f3bb 15-Jun-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Add the static items at Bookmark menu construction, so the shortcuts work even
when the menu has never been opened yet.

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


# 054e7e43 14-Jun-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Make sure the interface is showing when the menus are used (i.e. by invoking
Cmd-Esc shortcut).

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


# d848a893 14-Jun-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Changed download short cut from J to D, as all the rest of the shortcuts make
more sense and don't necessarily follow Firefox conventions.

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


# ed0c70c1 14-Jun-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Small cleanups.
* Make sure that the BWebView for which a notification is received still exists.
This affected only the title changed notification, for which this was already
checked, and the icon received notification, which could actually lead to
a crash if the tab was closed before receiving the notification.

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


# 591220f9 30-May-2010 anevilyak <anevilyak@94f232f2-1747-11df-bad5-a5bfde151594>

When disabling auto-hide, if the interface was currently still hidden, it wouldn't be restored, Closes ticket #6098.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@521 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


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

Revert the default of the Auto-hide mouse pointer setting, by popular request.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@515 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


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

F11 -> Toggle fullscreen
F5 -> Reload page. (Ticket #56)

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


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

"Manage Bookmarks" shortcut is now Cmd-M. Closed ticket #38.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@508 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


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

Fix empty URL input bar when switching to a tab after it loaded in the
background.

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


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

Tweaked the delays for the auto-hiding of the mouse pointer and the interface
in full-screen mode.

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


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

Revert r250, since CMD-0 for changing to the tenth tab conflicts with the
shortcut for resetting the page zoom, but that is also an established shortcut
from Firefox.

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


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

Remember the current URL input contents and selection when switching away from
a tab, and restore them when switching back.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@498 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


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

Reset the page icon in the URL input for new tabs.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@487 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


# 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


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

The favicon is now also displayed in the URL input view. Mostly because one is
used to it, but also when only one page is open and tabs are not displayed as
per the user settings, the favicon would then not be visible.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@465 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


# 969b9a96 26-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Give focus back to the web view when hiding the Find controls.

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


# 54cc5470 25-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Make sure a filename derived from a bookmark title does not contain invalid
characters for a filename.

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


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

Never apply the new page policy if we already have the BWebView. If we already
have it, it was created by the ChromeClient and navigation is soon going to
happen with it.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@460 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


# 88b25a7d 22-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Add a small hack to fix the invalidation glitches in the menu bar when resizing
the window.

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


# fa485bda 22-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

When removing the currently selected tab, temporarily unset the current BWebView,
since we did not delete the BWebView directly, but in the application thread,
this was a race condition that would only crash sometimes (in _TabChanged(),
when we tried to attach user data to the current tab before switching it). This
should fix the last known (to me) crash.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@452 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


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

Handling shortcut is wrappedd inside MenusBeginning() and MenusEnded(), so we
need to always enable the standard shortcut items in MenusBeginning(), if we
would otherwise enable them only asynchronously. Fixes Cut/Copy/Paste via
shortcuts.

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


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

Return early in BrowserWindow::DispatchMessage(), if the message was already
handled. This would also fix return keys ending up in the URLTextView.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@441 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


# 8421f16e 15-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Fix the build.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@418 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


# 0ef19ef7 12-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Fix the cmd-arrow left/right for go back/forward actions. Truncate the modifiers
to just the part that describes the modifier keys in general. What's left should
be exactly B_COMMAND_KEY. This fixes the workspace switching short-cut to trigger
page history navigation WebPositive.

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


# 3aa3e034 09-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Adopt the URL also when requesting the URL, before it is commited.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@404 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


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

Selecting the tab for which authentication was requested didn't work anymore.

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


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

Maybe CurrentWebView() is NULL too...

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


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

Simplify the code.

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


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

In BrowserWindow::_TabChanged(), the BWebView could be NULL. Also check if there
is a focused view set at all.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@398 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


# 0145cf43 05-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Remember the currently focused view within a tab in the user data that can be
associated with a BWebView and restore the focus when the tab changes. This fixes
a number of annoying issues.

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


# 65e61cdc 05-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Make use of the new svn revision jam magic to embed the current svn version
into the about window.
* Give access to the about window from the browser windows.
* Renamed the "Show *" entries in the Window menu to just "*".

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@387 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


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

Replace the previous resize request implementation by a more advanced one:
* Ignore resize requests when the window has more than one tab at all.
* Make sure the new size is not larger than the screen and shift the window so
everything is visible.

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


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

white space cleanup.

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


# e91fdd92 20-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Converted BrowsingHistory.h/cpp to Haiku coding style.
* Probably fixed a race condition on program launch. If you started typing
into the URL field really fast, the static instance in
BrowsingHistory::DefaultInstance() could be created by two threads, which
may be responsible for the "recursive init" exception that GCC throws in
this situation. It's not easy to trigger, maybe this was it.

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


# cb8b9e4f 19-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Some notifications are now channeled through BWebPage, the loading progress and
status. This allows the browser to set those properties to the current page
when switching pages.

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


# 0fc94bdc 19-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

At the common submenu at the location where the item was removed.

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


# f1dcf19d 19-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Sort items in the Go menu into submenus per base URL. This further reduces the
clutter there. I'm quite happy now, but one issue could be that the Go menu is
not stable: Any URL will always appear only once, somewhere in the hierarchy,
depending on when you last visited it. The BrowsingHistory could be changed,
though, feedback welcome.

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


# e405ff6a 17-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Improved the Go menu by sorting items into sub-menus for each day, five days
into the past, and the rest of them into "Earlier".
* Moved the "Clear history" item to the top.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@324 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


# 7239ea75 09-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Added a class CookieJarClient to WebCore's CookieJar.h which provides the
same functionality as the global methods for managing cookies. This is only
enabled for the Haiku platform. Since the global cookie methods get a Document
pointer, I envision, the CookieJarClient could eventually be a member of
Document instances. It would then be passed upon WebCore::Page creation.
Still waiting on feedback from other WebKit developers on this one. This change
is more elegant than what the Qt port does, which is to use WebKit classes in
WebCore (layering violation). Right now, a single global instance of a
CookieJarClient can be assigned.
* Implemented CookieJarClientHaiku which uses a BNetworkCookieJar to forward
the requests. Eventually, the behaviour could be browser specific.
* Added all the necessary wiring to BrowserApplication to make the cookie jar
persistent.
* TODO: Actually parse cookies and handle at least the expiration date, but
other stuff like matching the domain of the cookie and the URL and "HTTP-only"
cookies seems important as well.

Even though I have confirmed that cookies are stored and restored correctly,
and also retrieved via the global cookie methods, I can see no change in browser
behaviour. For example enabling "Stay signed in" on googlemail.com does not work
in WebPositive, although BeZillaBrowser automatically logs in in a new session
when surfing to googlemail.com. No idea if this is even implemented with
cookies, although it seems like it should be.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@303 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


# 0fe64862 04-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Changed how auto-completion fills the choices. It doesn't remove choices with the
same base URL anymore, but simply uses a lower priority for every less recent
choice with the same base URL, and then sorts the result list after fetching.
Previously, you would only get one choice for a given base URL, and that one was
more likely a longer URL, since it was visited more recently than the start page
of the respective site.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@286 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


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

PatternSelector has a default implementation...

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


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

Ok, the most simplistic way to avoid having too many similars in the autocompletion
choices is to find the "base url" (I am taking the string between :// and the
next /) and avoid adding any more urls with the same base URL. Seems to work
reasonably well. If anyone has any smarter ideas, please speak up! :-)

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@269 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


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

Added shortcuts Cmd-Left/Right for going back/forward.

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


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

Finished all the wiring necessary for favicon support. Send the
NAVIGATION_REQUESTED notification again from the FrameLoaderClient, this way
we can try to fetch the icon even earlier.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@259 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


# 08d60e58 28-Feb-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Shortcut Alt-0 selects the 10th tab (index 9.)

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


# e64e6d93 28-Feb-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Add shortcuts for using Alt-[1-9] to select that tab.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@249 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.


# ef34aca426e42302d299294a5a569a66ff476028 28-Jul-2015 Augustin Cavalier <waddlesplash@gmail.com>

WebPositive: Fix "new tab opens search page".

Fixes #12251.


# e366f3c164ab8d4b1d90df4997023bd6cf6b101c 28-Jan-2015 Puck Meerburg <puck@puckipedia.nl>

WebPositive: Fix incorrectly sized array


# 03b57bdc55017f3855cc405e82f1654529f64b10 28-Jan-2015 Axel Dörfler <axeld@pinc-software.de>

Removed BRoster::Launch() const args kludges.

* They are no longer needed, as Launch() no longer takes a
const-less char array.


# 6e35da8308de928fde24b883082cc9bdcdcf295d 14-Jan-2015 Adrien Destugues <pulkomandy@gmail.com>

WebPositive: parse "host:port" as a valid URL

* Web+ would not understand this and do a search engine query instead.
* Fixes #11726
* Also add some comments to _SmartURLHandler to make it clearer how it
handles URLs.


# 804876f698c36adc020ed5ad1117ae0bb6f95a65 16-Sep-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Style fixes.


# 2c8da965461005ce6d4c8ba1660c9ea0f3032a39 16-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

WebPositive: improve "show bookmark bar" menu item

* Disable the menu item when the folder doesn't exist, as the bar won't
show in that case.
* Use a mark on the item to tell wether the bar is visible, rather than
changing its label
* Simplify the logic for hiding and showing the bar. It is safe to call
_ShowBookmarkBar even if the bar doesn't exist, so no need to check for
it everywhere.

Fixes #11199.


# f59dadc4d4a8528e26da48de52fa1e0f481da5ed 04-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

Web+: Update URL on LoadFinished and LoadCommitted

* LoadFinished is called after redirects have taken place, so we can
show the final URL. It's also called for navigation inside a document
(jumping to anchors), whereas LoadCommitted is not.
* LoadCommitted is called earlier so we also want to set the URL there.


# 47f04acb7446978cc89d074cf94534b73d6a4077 05-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Hide the bookmark bar when there is no matching folder.

* Defaulting to the complete bookmark list doesn't make much sense
* Don't crash when not showing the bar
* Some style fixes.


# fedec7b31f35176eea75a996c7d33dda2efc3b81 04-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Bookmark bar uses "Bookmark bar" subfolder

* Allows having a lot of bookmarks in the menu, and only the most often
used ones in the bar.
* If the "Bookmark bar" folder doesn't exist, the old behavior (using
the main Bookmarks folder for the bar as well as the menu) is used.
* If none of these exists, the bookmark bar will not be available (just
like the bookmark menu)

Fixes #11092.

We may want to update the default set of bookmark to include some links
in the bar.


# dc8665f7457238d301d20e49da1b8b20a72c2a6d 28-Jul-2014 François Revol <revol@free.fr>

webpositive: Officially handle gopher: URI scheme now

Avoids it asking Google what to do with the URL.


# 158ae743734bb0a3900702317943df71586fbce4 25-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Escape reserved characters when converting paths to urls

* Introduce and use BUrl::BUrl(const BPath&)
* The path is url-encoded, and the protocol is set to "file"

Fixes #10964.


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

Try opening URLs with the preferred app

We already did this when the URL was entered in the address bar, now
also do it when it comes from a link in a webpage.

Makes mailto links work and fixes #6236.


# 2860fecc80acb8852d2ecc23f718ae5014986386 16-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Truncate absurdly long bookmark names.

Fixes #9593.

The complete name could be stored inside the file or as an additional
attribute, but do we really need it? The bookmark menu will truncate it
even further, anyway.


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

Add space between string and ellipsis.

C++11 safe and reads better.


# 1ff6e7a80ff211ca53e6bf7f8fdd5e2fed193022 15-Jun-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

More correct label for the save page menu item

Use "Save page as…" since the item will open a save panel.


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

Add menu entry to save pages as MHTML.

Fixes #9570.


# 6f79af3c556146444b5c759f9483220db1223393 23-May-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Web+: move BookmarbKar to own file.

It's a bit long for an inline class, and I'm going to add more stuff to
it.


# 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.)


# c161ea9ac29499057df524e0a438ea92426ff76f 24-Apr-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

WebPositive: add a bookmark bar.

* This is a BMenuBar with IconMenuItems.
* Uses node monitoring to live-update the bar as bookmarks are modified.
* Bookmark folders are BNavMenus and can be browsed.
* This needs some improvements, for example handling more bookmarks than
the window width allows us to show (with an extra menu like for tabs?)

Fixes #10232.


# 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>


# b9f48ef8f600d03c1bb08fbb936791b0d37b47e8 07-Mar-2014 John Scipione <jscipione@gmail.com>

WebPositive: style fixes related to scrolling

rename dy to deltaY


# 2580b20edda3555d7daa0c99999ced147ff2b81b 05-Mar-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

WebPositive: fix cmd+esc handling

* Don't show the menu in MenusBeginning, this is invoked for all
shortcuts, so cmd+C and others would show the menu. Fixes #9186.
* Instead, show the interface specifically for the CMD+ESC case. Also,
send that key event to the default window handler so the menu opens.
Before, this was mistakenly sent to the "stop" button. Fixes #10523.


# ceafe5b48a249b02738ad4ad22d95e74f94c9c8f 14-Feb-2014 John Scipione <jscipione@gmail.com>

Fix 2 shortcut bugs, one in Web+, one in S&T

It's really 2 instances of the same bug, we only want to consider a
fixed set of modifier keys ignoring the lock keys and left/right keys.


# c21873f063c9ded00e04b06423e9fbfa64545f0d 11-Jan-2014 John Scipione <jscipione@gmail.com>

WebPositive: BTextView shortcuts work in URL bar

Pass Cmd+Left/Right to the BTextView base class if the URL bar is focused.
This allows us to make use of the navigation shortcuts in BTextView when we
are focused on the URL bar, and activates back and forward navigation
otherwise.

Unfortunately this doesn't also work for text fields inside webpages.

Also make modifierKeys signed.


# 741987bed79145ab383bf46e7b6547f09d4af3e1 11-Jan-2014 John Scipione <jscipione@gmail.com>

WebPositive: Style fixes, 80 char limit and ws


# a1fc792e37a20f58e94c1ddd3cb1a51b633f2f6a 20-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Web+: handle about: URLs internally

Trying to open those using the MIME repo would lead to opening
AboutSystem, probably not what you expected.

Note that WebKit currently redirects all those URLs to about:blank. We
could implement some of them, if really wanted.

Fixes #9611.


# a61211c6988a1a819ec53ad87fd27fab34609ea2 17-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Remove FIND_NEXT message for find text control

BTextControl calls Invoke() when it loses the focus and the text has
changed. We don't want this to trigger a search, and instead rely on the
user pressing enter to run the search.

Fixes the search happening again when closing the search bar (escape key
or otherwise), or clicking on the page after searching. Fixes #10168.


# dd71f181755e323ef18a99b664d116d1d91e1891 14-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Open bookmarks in the current window

* Instead of looking for the first window in the workspace, add the
current one to the message.
* Fixes #6623.


# d21e9097b6c992cb761b337b38486627226dee24 16-Aug-2013 Kevin Harris <kevin@studiotectorum.com>

Use configured search string for searching

- The search query position is signified by %s in the search string,
- Automatically migrate the old default search string to the new one.

Patch from #9926 with some rework from me.


# 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


# 5750cec7473cc2c6cc61d3ea2247c116bc90fabe 22-Aug-2013 Murai Takashi <tmurai01@gmail.com>

Fix memory leak for threeDaysAgoMenu

Fixes #9938.

Signed-off-by: Matt Madia <mattmadia@gmail.com>


# bd336e3abc7e939d2db16cff48d4cb9a2fe0dc60 19-Oct-2013 John Scipione <jscipione@gmail.com>

Update semantic shortcuts

Update BKeymap::GetModifiedCharacters() to translate a given character
and set of modifiers filling out a list of all characters that match for another
set of modifiers.

This allows us to, for example, get all characters in the normal map that
have the '+' character in the corresponding shift map.

It is fully generic allowing one to get a list of characters in any map given
a character and modifiers of another map.

Also I converted from using a BList to using a BObjectList.

With this, along with BWindow::HasShortcut(), the semantic shortcuts now
work not only with Command+'=', but any key in the normal map that has
'+' in it's shift map as long as it isn't already taken by another shortcut.


# 959a0ca10dd06b205f13b51040f03da3ae4c5e75 18-Oct-2013 John Scipione <jscipione@gmail.com>

WebPositive: Add semantic zoom in shortcut.

Fixes #7428

iif '+' is localed in shift + '=' in your keymap, add a shortcut for
Command + '=' to zoom in.


# 4b7e219688450694efc9d1890f83f816758c16d3 03-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove /boot/common for good

* Remove support for the "common" installation location from packagefs,
package kit, package daemon, package managers.
* Rename the B_COMMON_*_DIRECTORY constants referring to writable
directories to B_SYSTEM_*_DIRECTORY.
* Remove/adjust the use of various B_COMMON_*_DIRECTORY constants.
I'm sure some occurrence still remain. They can be adjusted when the
remaining B_COMMON_*_DIRECTORY constants are removed.


# 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.


# e33233713a601400418a779c930e3478c247ef4e 21-Apr-2013 Rene Gollent <anevilyak@gmail.com>

Fix Web+ debug build.


# fff103f567777567fafabf5b7c3f6c252642f80d 20-Feb-2013 John Scipione <jscipione@gmail.com>

WebPositive close x fixes.

* Remove the Close tab and Close find bar tooltips.
* Offset the x again.
* Add some comments.


# 789e7d856e1e59af76566b9f806c2087258be0d7 18-Feb-2013 John Scipione <jscipione@gmail.com>

Tweak close x so it doesn't look disabled


# 819c63ad65e53c432099eeed2e5a1d00f8f0b79e 17-Feb-2013 John Scipione <jscipione@gmail.com>

Set tooltip in instance of close button, not class.

Also set a similar tooltip for the previous and next buttons and
comments for translators.


# 6f53c50c36b205941ee339236ce26f02f87cb136 17-Feb-2013 John Scipione <jscipione@gmail.com>

Need to call baseclass AttachedToWindow()


# cdb4abbd185bf5a02ef0d7bbcba449bf60fc17b2 17-Feb-2013 John Scipione <jscipione@gmail.com>

Add tooltips for close tab and close find bar


# 8848aa106ac425294093855870f3de8ac14cd18d 17-Feb-2013 John Scipione <jscipione@gmail.com>

Update close find bar button to appear similar to close tab button.


# eaa6b633db54e30ddda3c460ffc9cb5d7fa4fc90 10-Feb-2013 John Scipione <jscipione@gmail.com>

Use default spacing for find bar controls


# 2d278e9c842c26c974e7fd0784081aefc21b8676 10-Feb-2013 John Scipione <jscipione@gmail.com>

Update Web+ find bar close button.

* Put the button on the left and label it with × to indicate close.
* Make the button just wide enough to fit the label. Tested with
font sizes 8pt to 18pt.


# 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")


# aed35104852941f0f6f3d1dcc5338b5f337d0a3c 05-Aug-2012 Humdinger <humdingerb@gmail.com>

Close alerts with ESCAPE key.

Added SetFlags(B_CLOSE_ON_ESCAPE) or SetShortcut(index, B_ESCAPE) to BAlerts
depending if the result gets used later in the code, or if it's a one-button
BAlert.


# 16e4281d0abef84a1f0fb2964900a75f2619c46b 02-Aug-2012 Ryan Leavengood <leavengood@gmail.com>

Remove the no longer needed hack from WebPositive.


# 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.


# 200dec066fdd9d18e8e93232a6e55e9f5ba3df30 29-Jul-2012 Humdinger <humdingerb@gmail.com>

Adjust strings to the Haiku style.


# 2218c029a5ab7260d03036b43c68475e0b35b449 11-Jul-2012 Alexandre Deckner <alexandre.deckner@uzzl.com>

Add localization support to WebPositive, patch by Humdinger

* Includes style fixes
* Functional fixes by myself, patch wouldn't build


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

Remove unneeded includes


# ae5b937ac2472a0d84c63a4ed5173cc2fae7ca13 01-Jun-2011 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Make the check for URLs more generic before doing a search.
Thanks for the suggestion mmlr.

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


# c17922668baabee266ee2df0c10ecb2297355d6f 01-Jun-2011 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Don't do the "smart URL handling" (also known as dumb URL handling) for file:// URLs.

Fixes #7596.

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


# 1ef6069fe4a9b07fd312bda1b70b796b09b4f762 02-Mar-2011 phoudoin <phoudoin@94f232f2-1747-11df-bad5-a5bfde151594>

Fix why escape wasn't closing the find panel as expected (#75).
Fix fullscreen icon layout spacing issue (#76).

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


# 1220bcc0af8ede85c24be8c80157861313fb0f6e 29-Dec-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Add a setting to show or hide the Home button. I find it pretty useless myself.

While I was able to add this fairly easily by cutting and pasting, it was still
quite a bit of work. Seems like there should be a less-verbose way of doing
this. But it did work the first time I tested, so I can't complain too much.

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


# a65490807d3c889418680b9c51d419ba78199736 29-Dec-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Mostly revert r563 and fix it properly. The ESC key should be dispatched to the
text view from the filter as well as from the browser window.

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


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

Implement http://webpositive.haiku-os.org/ticket/61 so that holding the command
key and using the scroll wheel will zoom in and out. Also made it so that the
scroll wheel only works when the mouse is over the view.

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


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

Use the more conventional Google search URL, not the "Instant" one.

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


# 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


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

Set the tab label to the URL if no title is provided in the HTML.

Fixes #6330.

And so I'm back on Web+ development. Yay.

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


# 26bc1632000d90f95e6aaef5f468c735c5370ed6 09-Dec-2010 anevilyak <anevilyak@94f232f2-1747-11df-bad5-a5bfde151594>

Layout fixes that hadn't yet been committed.

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


# 0e126349915b259d217eacfd502c66061058f400 18-Aug-2010 anevilyak <anevilyak@94f232f2-1747-11df-bad5-a5bfde151594>

Fix BrowserWindow to work with new layout changes.

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


# a071b4d0417fbb6971696d8bd5c54b1c5738c9ab 18-Aug-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Adapt to recent layout API changes. (Untested)

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


# a4841f3a5de8c50f348a3a9212d3c152c8d8994b 31-Jul-2010 anevilyak <anevilyak@94f232f2-1747-11df-bad5-a5bfde151594>

Apply patch by Matt Madia: Add the escape key as a shortcut to stop page loads. Closes ticket #6409.

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


# fdd4f3bbb8025e3ace4756b836969a516267515e 15-Jun-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Add the static items at Bookmark menu construction, so the shortcuts work even
when the menu has never been opened yet.

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


# 054e7e4344d6f6c5fb5bde6052a420ad5c1c4ae2 14-Jun-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Make sure the interface is showing when the menus are used (i.e. by invoking
Cmd-Esc shortcut).

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


# d848a89394e95064164c94f55582b1179a8bf664 14-Jun-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Changed download short cut from J to D, as all the rest of the shortcuts make
more sense and don't necessarily follow Firefox conventions.

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


# ed0c70c14d54d2e70168fbdfda1168c25411214a 14-Jun-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Small cleanups.
* Make sure that the BWebView for which a notification is received still exists.
This affected only the title changed notification, for which this was already
checked, and the icon received notification, which could actually lead to
a crash if the tab was closed before receiving the notification.

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


# 591220f9b2c37416d9ec9ce244128967fa28296b 30-May-2010 anevilyak <anevilyak@94f232f2-1747-11df-bad5-a5bfde151594>

When disabling auto-hide, if the interface was currently still hidden, it wouldn't be restored, Closes ticket #6098.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@521 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


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

Revert the default of the Auto-hide mouse pointer setting, by popular request.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@515 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


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

F11 -> Toggle fullscreen
F5 -> Reload page. (Ticket #56)

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


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

"Manage Bookmarks" shortcut is now Cmd-M. Closed ticket #38.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@508 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


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

Fix empty URL input bar when switching to a tab after it loaded in the
background.

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


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

Tweaked the delays for the auto-hiding of the mouse pointer and the interface
in full-screen mode.

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


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

Revert r250, since CMD-0 for changing to the tenth tab conflicts with the
shortcut for resetting the page zoom, but that is also an established shortcut
from Firefox.

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


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

Remember the current URL input contents and selection when switching away from
a tab, and restore them when switching back.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@498 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


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

Reset the page icon in the URL input for new tabs.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@487 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


# 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


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

The favicon is now also displayed in the URL input view. Mostly because one is
used to it, but also when only one page is open and tabs are not displayed as
per the user settings, the favicon would then not be visible.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@465 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


# 969b9a9669b105cb809c1d2315800160204519bb 26-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Give focus back to the web view when hiding the Find controls.

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


# 54cc547050faded7e2b9918cf0c8839360add704 25-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Make sure a filename derived from a bookmark title does not contain invalid
characters for a filename.

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


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

Never apply the new page policy if we already have the BWebView. If we already
have it, it was created by the ChromeClient and navigation is soon going to
happen with it.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@460 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


# 88b25a7da970e034e24ec8f7fb7ad232344f7872 22-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Add a small hack to fix the invalidation glitches in the menu bar when resizing
the window.

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


# fa485bda233dbf3fc885816b6b0f4e95fe034ab7 22-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

When removing the currently selected tab, temporarily unset the current BWebView,
since we did not delete the BWebView directly, but in the application thread,
this was a race condition that would only crash sometimes (in _TabChanged(),
when we tried to attach user data to the current tab before switching it). This
should fix the last known (to me) crash.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@452 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


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

Handling shortcut is wrappedd inside MenusBeginning() and MenusEnded(), so we
need to always enable the standard shortcut items in MenusBeginning(), if we
would otherwise enable them only asynchronously. Fixes Cut/Copy/Paste via
shortcuts.

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


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

Return early in BrowserWindow::DispatchMessage(), if the message was already
handled. This would also fix return keys ending up in the URLTextView.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@441 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


# 8421f16ef1d8c3d1c46ea9f185625aed11cca711 15-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Fix the build.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@418 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


# 0ef19ef7e12beb734510ed8bfd00a688300bdc9d 12-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Fix the cmd-arrow left/right for go back/forward actions. Truncate the modifiers
to just the part that describes the modifier keys in general. What's left should
be exactly B_COMMAND_KEY. This fixes the workspace switching short-cut to trigger
page history navigation WebPositive.

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


# 3aa3e03460eba4d65982ec900b065e69deacd643 09-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Adopt the URL also when requesting the URL, before it is commited.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@404 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


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

Selecting the tab for which authentication was requested didn't work anymore.

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


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

Maybe CurrentWebView() is NULL too...

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


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

Simplify the code.

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


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

In BrowserWindow::_TabChanged(), the BWebView could be NULL. Also check if there
is a focused view set at all.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@398 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


# 0145cf4349fcd01b8daa93c46703d7a03c4c0a47 05-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Remember the currently focused view within a tab in the user data that can be
associated with a BWebView and restore the focus when the tab changes. This fixes
a number of annoying issues.

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


# 65e61cdca4cce6bcc491608fb4971cb55ea37aa8 05-Apr-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Make use of the new svn revision jam magic to embed the current svn version
into the about window.
* Give access to the about window from the browser windows.
* Renamed the "Show *" entries in the Window menu to just "*".

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@387 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


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

Replace the previous resize request implementation by a more advanced one:
* Ignore resize requests when the window has more than one tab at all.
* Make sure the new size is not larger than the screen and shift the window so
everything is visible.

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


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

white space cleanup.

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


# e91fdd924a9e7b92f9254ec3082d2f6e5485875e 20-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Converted BrowsingHistory.h/cpp to Haiku coding style.
* Probably fixed a race condition on program launch. If you started typing
into the URL field really fast, the static instance in
BrowsingHistory::DefaultInstance() could be created by two threads, which
may be responsible for the "recursive init" exception that GCC throws in
this situation. It's not easy to trigger, maybe this was it.

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


# cb8b9e4ffd504ced209fb21ee0c4c577f3ae3554 19-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Some notifications are now channeled through BWebPage, the loading progress and
status. This allows the browser to set those properties to the current page
when switching pages.

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


# 0fc94bdcbc50b4122603ac653a61f8349bb5e0d3 19-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

At the common submenu at the location where the item was removed.

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


# f1dcf19d1d35e7e8695ca9beaa52e2dcc9fcb510 19-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Sort items in the Go menu into submenus per base URL. This further reduces the
clutter there. I'm quite happy now, but one issue could be that the Go menu is
not stable: Any URL will always appear only once, somewhere in the hierarchy,
depending on when you last visited it. The BrowsingHistory could be changed,
though, feedback welcome.

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


# e405ff6af725ad922878842ea679edbabaa42bd7 17-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Improved the Go menu by sorting items into sub-menus for each day, five days
into the past, and the rest of them into "Earlier".
* Moved the "Clear history" item to the top.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@324 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


# 7239ea752d0486bed93d1c3e97c26a8556822362 09-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

* Added a class CookieJarClient to WebCore's CookieJar.h which provides the
same functionality as the global methods for managing cookies. This is only
enabled for the Haiku platform. Since the global cookie methods get a Document
pointer, I envision, the CookieJarClient could eventually be a member of
Document instances. It would then be passed upon WebCore::Page creation.
Still waiting on feedback from other WebKit developers on this one. This change
is more elegant than what the Qt port does, which is to use WebKit classes in
WebCore (layering violation). Right now, a single global instance of a
CookieJarClient can be assigned.
* Implemented CookieJarClientHaiku which uses a BNetworkCookieJar to forward
the requests. Eventually, the behaviour could be browser specific.
* Added all the necessary wiring to BrowserApplication to make the cookie jar
persistent.
* TODO: Actually parse cookies and handle at least the expiration date, but
other stuff like matching the domain of the cookie and the URL and "HTTP-only"
cookies seems important as well.

Even though I have confirmed that cookies are stored and restored correctly,
and also retrieved via the global cookie methods, I can see no change in browser
behaviour. For example enabling "Stay signed in" on googlemail.com does not work
in WebPositive, although BeZillaBrowser automatically logs in in a new session
when surfing to googlemail.com. No idea if this is even implemented with
cookies, although it seems like it should be.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@303 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


# 0fe64862b7c900e74058496e7fe439ded4a18f3d 04-Mar-2010 stippi <stippi@94f232f2-1747-11df-bad5-a5bfde151594>

Changed how auto-completion fills the choices. It doesn't remove choices with the
same base URL anymore, but simply uses a lower priority for every less recent
choice with the same base URL, and then sorts the result list after fetching.
Previously, you would only get one choice for a given base URL, and that one was
more likely a longer URL, since it was visited more recently than the start page
of the respective site.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@286 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


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

PatternSelector has a default implementation...

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


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

Ok, the most simplistic way to avoid having too many similars in the autocompletion
choices is to find the "base url" (I am taking the string between :// and the
next /) and avoid adding any more urls with the same base URL. Seems to work
reasonably well. If anyone has any smarter ideas, please speak up! :-)

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@269 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


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

Added shortcuts Cmd-Left/Right for going back/forward.

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


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

Finished all the wiring necessary for favicon support. Send the
NAVIGATION_REQUESTED notification again from the FrameLoaderClient, this way
we can try to fetch the icon even earlier.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@259 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


# 08d60e5886af0eddc762bababa1489d82c0bbe8a 28-Feb-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Shortcut Alt-0 selects the 10th tab (index 9.)

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


# e64e6d933a418060ceedf20dad4f19d4901dd5be 28-Feb-2010 leavengood <leavengood@94f232f2-1747-11df-bad5-a5bfde151594>

Add shortcuts for using Alt-[1-9] to select that tab.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@249 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.