Commit Graph

96 Commits

Author SHA1 Message Date
stippi
e7bd43d9ca Place the thread priority tweak somewhere where it actually works. This makes
HaikuLauncher totally usable under heavy system load.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@174 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-22 13:36:46 +00:00
stippi
0bcb05f98d Forgot to commit this. Polishes no-border BTabView look.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@173 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-22 13:30:54 +00:00
stippi
7a9d9c2cf8 Set the "no border" look to avoid the double frame around the WebView.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@169 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-22 13:23:55 +00:00
anevilyak
d05b8e1a31 Change window/tab management shortcuts:
- cmd+w now closes the active tab. If the tab is the only one remaining, the window is closed.
- cmd+shift+w closes the window, regardless of tab count.

Whitespace cleanups.



git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@167 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-21 16:16:46 +00:00
stippi
b6ffb2048f Removed stray debug output.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@166 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-21 15:31:11 +00:00
stippi
df621688c5 Fix closing tabs.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@165 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-21 15:30:49 +00:00
stippi
d3d066c322 BTabView doesn't properly trigger a relayout when adding a new tab.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@164 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-21 13:48:07 +00:00
stippi
714edff6e1 Select the new tab when creating it via the menu.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@163 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-21 13:43:27 +00:00
stippi
fafcdf7cd1 Introduced BWebPage::ResendNotifications(). This is a simple way for the
window to update itself to the properties of a page when switching pages.
Resolves deadlock problem with BWebPage::CanGoInDirection(), which I've removed.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@162 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-21 13:34:54 +00:00
stippi
63d76ab872 Middle clicking links will open new tabs, but will not select them. Matches
Firefox behavior.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@161 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-21 13:20:57 +00:00
stippi
56bdbcc74e Fixed deadlocks when adding a new tab. The WebView needs to be created int the
app thread indeed, but the app thread may already be blocking on the window lock,
we we cannot wait for a synchronous reply from the app in the window thread.
Refactored the tab creation and reused it in the LauncherWindow constructor.
Added the ability to load a URL in the new tab right away.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@160 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-21 13:13:03 +00:00
stippi
14c76a6546 Use arrow icons for th enavigation buttons. The IconButton class is a slightly
extended version of the LaunchBox version (added TrimIcon() method). Will go
away when/if the browser is moved into the Haiku source tree.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@159 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-21 12:49:11 +00:00
stippi
5478dd2992 * Asthetical improvements with the new tab view.
* Actually set the target on the tab view, so that we change urls when switching
  tabs.
* Move all New/Close items to the top-level, since I find it slightly too
  awkward to reach them otherwise.
* Misc coding style fixes.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@157 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-20 20:03:11 +00:00
anevilyak
14ad7bdb25 Focus address bar when creating a new tab.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@156 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-20 19:59:29 +00:00
anevilyak
75845de732 Add mechanism for asking LauncherApp to create a web view to ensure new view creation always happens in the main thread. Fixes assert failure when creating a new tab with debug builds.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@155 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-20 19:52:10 +00:00
anevilyak
d311e279f5 Clean up tabs properly on quit.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@154 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-20 18:59:51 +00:00
anevilyak
5eba20dc10 Add close tab support via cmd+shift+w.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@153 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-20 18:46:53 +00:00
anevilyak
95b246f2a7 Add basic tabbed browsing support. Does not yet properly handle maintaining/switching the current URL or status bar text per-tab.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@152 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-20 16:22:31 +00:00
anevilyak
c14fa62638 Typo/spelling corrections.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@151 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-20 15:28:30 +00:00
stippi
82912660d5 * Began renaming some public API with the B* prefix and using the Haiku coding
style. (WebPage -> BWebPage). Documented what needs to go where in WebPage.h.
* Moved misplaced functionality from WebFrame to BWebPage (navigation).
* EditorClientHaiku takes a BWebPage pointer now, which brings a slight cleanup.
* Exposed WebFrame::isEditable() to EditorClientHaiku, so isEditable() can be
  implemented.
* Added some asserts in FrameLoaderClientHaiku according to the Gtk port and
  placed some debug output.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@150 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-20 11:13:44 +00:00
stippi
c9219daa51 Fixed left-over bug from refactoring.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@148 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-19 18:29:13 +00:00
stippi
a89e2a4b6c Refactoring to support multiple WebViews per WebViewWindow. There is now the
notion of a current WebView. In the notification messages, carry the information
which WebView it is for.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@147 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-19 17:23:45 +00:00
stippi
a62545c155 Renamed WebProcess to WebPage.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@146 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-19 15:47:21 +00:00
mmlr
defb5e01c4 Fix uninitialized m_windowCount which could cause the app to close on any window
close randomly (or always with libroot_debug).


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@139 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-19 02:48:44 +00:00
stippi
2bff1b8203 Wired and debugged everything to give us a basic "Go" menu, a.k.a browsing
history... :-)


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@98 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 18:17:17 +00:00
stippi
ce277486d7 Implemented BrowsingHistoryItem class, which uses BDateTime to track when it
was invoked.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@95 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 16:24:24 +00:00
stippi
d4f4c7f808 Added my copyright, since I've redesigned here quite a bit.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@94 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 16:23:31 +00:00
stippi
dad9d4a5a4 Added BDateTime stuff from Haiku, and addd archiving features to these classes.
Needs to be put back into Haiku and made public API eventually.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@93 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 16:22:13 +00:00
stippi
4e703b4b2f Patch by Rene Gollent, which fixes some typos. Thanks!
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@92 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 15:58:35 +00:00
stippi
77d2abe296 First structure of BrowsingHistory. Does nothing, but can in theory save settings.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@91 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 14:06:28 +00:00
stippi
b2b53e7c19 AuthenticationPanel:
* Improved wording for persistency checkbox.
* Added BTextView for displaying the info text.
* Focus password input on second runs with bad password.
* Enabled drawing updates for blocking windows.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@90 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 12:25:08 +00:00
stippi
56fc5b5b33 Fix regression about opening URLs from command line args.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@89 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 12:23:47 +00:00
stippi
932b58673a Removed shortcut for testing AuthenticationPanel.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@88 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 12:23:17 +00:00
stippi
04730674fd Support dropping files on LauncherWindows to load them.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@85 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 10:39:24 +00:00
stippi
b067486b74 Fix loading links from command line args.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@83 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 10:24:49 +00:00
mmlr
a30b7161b8 * Handle authentication challenges by sending them off to the WebViewWindow
which then invokes the authenticationChallenge() hook.
* Implemented that hook in LauncherWindow by means of the AuthenticationPanel.
* Removed realm and method arguments to AuthenticationPanel::getAuthentication()
  and replaced them by a simple "text" that is constructed in the
  FrameLoaderClient based on the challenge details. It is not yet shown though.
* Made a tab -> spaces replace and added myself to the copyrights in some files.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@74 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-15 00:30:11 +00:00
stippi
5eb61e4856 Added AuthenticationPanel implementation.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@70 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-14 20:31:05 +00:00
stippi
aab72d7ea6 * Use hiding instead of minimizing for the Download window.
* Auto-show and auto-move-to-current-workspace when a download starts.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@61 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-13 13:42:52 +00:00
stippi
8260b39fbc * Now stores the URL of downloads in the DownloadProgressView and in the settings,
so that we can eventually restart downloads.
* Checks if a downloaded file already has a previous download and replaces it.
  (Actually, this should take the path into account, not only URL.)
* Stores the URL as "META:url" attribute, as the good old NetPositive did.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@60 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-13 13:17:45 +00:00
stippi
a8d8342dfa * DownloadWindow is now very usable.
* Fixed the scroll view look and behavior.
* Downloads are persistent.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@59 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-13 12:51:58 +00:00
stippi
dd275f312a More work on the download window GUI. The scroll view is broken, downloads are
not persistent.
Resolved TODO in WebProcess about race condition when dispatching download
notifications. Just block until there is a reply. WebDownload pointers are
just used for extracting information at init time, and then later only as
cookie to match view and download. Although as soon as we want to cancel downloads,
refcounting may become necessary again.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@57 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-13 01:31:54 +00:00
stippi
7a40c9757e Make the Download Window accessible from every window. Bring it to the workspace
that the window is on that send the request to show it. Remember the size and
if it was showing across sessions.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@56 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-13 00:29:06 +00:00
stippi
4b059d47cd First basic GUI download progress display...
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@54 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-12 21:16:25 +00:00
stippi
c08684de2a Removed no longer needed and supposedly non working LeakTracker. On top of this,
WebCore already has it's own LeakTracker enabled in debug builds.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@52 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-12 17:43:55 +00:00
stippi
d04f705dfc Introduced API for setting the caching policy in WebProcess, and used it
LauncherApp. The values/code come straight from the GTK port.


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@47 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-12 12:29:04 +00:00
stippi
75ffc858fc Future public API for interfacing with WebKit on Haiku. (What will eventually
become BWebView.) Compared to the original port, the threading has been
completely redesigned such that all interaction with WebKit happens in the
application thread, as required by the PThread threading backend. This is
counteracted by using an offscreen BBitmap/view as the top-level GraphicsContext
for each Page, such that drawing is performed in various app_server threads
asynchronously. WebViewWindow provides as a target for messages from within
WebKit (mostly FrameLoaderClientHaiku events), which are forwarded via virtual
hook methods (implemented in LauncherWindow.cpp of the HaikuLauncher).


git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@6 94f232f2-1747-11df-bad5-a5bfde151594
2010-02-11 21:57:24 +00:00