Commit Graph

53429 Commits

Author SHA1 Message Date
Steve Lamerton
36b52591b5 Fix recursion problems when loading pages from a virtual file system using the WebKitGTK+ backend. Navigating through pages in an archive now works correctly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-04 08:30:37 +00:00
Steve Lamerton
00b89a1d1d Rename wxWebFileHandler name from test to file.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-03 18:51:53 +00:00
Steve Lamerton
b7d3a622aa Rework IE virtual file system support to use new syntax. Remove now unused code for resolving links ourselves, we can let the backend resolves them itself.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-03 18:31:48 +00:00
Steve Lamerton
f2049b6837 Initial work on virtual file system support for the WebKitGTK+ backend. It now supports loading single pages from the VFS system.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-03 09:29:30 +00:00
Julian Smart
0aeb2e3f9b Added semicolon needed by MSVC++ 6
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-02 14:43:15 +00:00
Steve Lamerton
7bd30a12ad Implement HasSelection for the OSX WebKit backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-02 09:44:07 +00:00
Steve Lamerton
8ba4faba4d Add EnableHistory support to the OSX WebKit backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-02 09:21:47 +00:00
Steve Lamerton
e28cc3ca0a Fix warnings for the OSX WebKit backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 17:57:48 +00:00
Steve Lamerton
fdc255cfe0 Fix compilation for OSX backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 17:41:14 +00:00
Steve Lamerton
cddf4541fa Add missing wxRTTI macros and fix incorrect ones.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68483 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 15:49:05 +00:00
Steve Lamerton
75b0b0bcae Hide the infobar in the sample if we start navigating to another page.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 14:05:32 +00:00
Steve Lamerton
b7d74e9ca3 Fix remaining warnings in ie backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 13:20:46 +00:00
Steve Lamerton
8bccab8f06 Fix all the unused variable warnings in the sample.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68480 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 13:09:10 +00:00
Steve Lamerton
888b6835d8 Make web sample XPMs const to fix compiler warnings on gcc.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 12:54:09 +00:00
Steve Lamerton
bd6f9534d6 Fix a couple of warning that crept back into the GTK backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 12:35:52 +00:00
Steve Lamerton
bd7901aaec Add missing lines to setup.h.in. This properly fixes compilation under configure based environments. Also update the include guards for the wxWebHistoryItem files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 10:10:20 +00:00
Steve Lamerton
263e3a8327 Rework the GTK WebKit backend history to remove the need for the map between wxWebHistoryItems and WebKitWebHistoryItems.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-31 15:37:55 +00:00
Steve Lamerton
eafdb19c44 Split wxWebHistoryItem headers out into separate files for each backend. This will allow us to dramatically reduce the amount of code in the GTK history implementation and implement it and OSX history support more cleanly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-31 14:06:33 +00:00
Steve Lamerton
9b4670e5bc Simplify the wxWebFileHandler code by using a map to store the query string and manipulate it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-31 10:50:46 +00:00
Steve Lamerton
9e3d4a3210 Overhaul wxWebHandler naming to try and make it consistent with the rest of wxWidgets. Split wxWebFileHandler into its own file.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 14:22:15 +00:00
Steve Lamerton
153530afb5 Add new wxEVT_COMMAND_WEB_VIEW_TITLE_CHANGED event. Implement for all backends, extend the sample to demonstrate it and document. Also update some copyright notices.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 11:26:55 +00:00
Steve Lamerton
e1efca6528 Add CombineURIs implementation for wxWebFileProtocolHandler. Update the IE backend to use it. Using the IE backend navigating through zip archives is now functional, including loading resources and links.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-29 10:33:54 +00:00
Steve Lamerton
47943187c1 Tidy up the include guards for the various wxWebView header files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68447 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-28 16:58:18 +00:00
Steve Lamerton
eff8f7952e Move the wxWebFileProtocolHandler from the IE backend to the common source, add the RegisterProtocol method to all classes (as a stub in GTK and OSX). Register the file protocol handler in the sample for testing purposes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-28 16:49:48 +00:00
Steve Lamerton
293656292f Initial implementation of wxWebProtocolHandler and wxWebFileProtocolHandler for the IE backend. This allows browsing of local files and files in zip archives when using a query string which specifies the protocol and path.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-28 16:08:59 +00:00
Steve Lamerton
666f73c4d6 Very basic implementation of IInternetProtocolInfo, this will allow us to correctly parse links in virtual file systems.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-26 16:11:38 +00:00
Steve Lamerton
61d3188b01 Add a couple of missing forward declarations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-26 13:45:24 +00:00
Steve Lamerton
75b3bb6163 We always let the user handle new window events so set the policy appropriately in the WebViewGTK+ backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-26 13:14:00 +00:00
Steve Lamerton
b132a83bff Fix compilation errors under OSX.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-26 11:44:03 +00:00
Steve Lamerton
906c935a80 Merge in from trunk r67662 to r64801
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 16:54:53 +00:00
Steve Lamerton
0995b9dc18 Fix warnings in the MSW IE backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68401 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 15:43:18 +00:00
Steve Lamerton
d37e7d35ad We no longer need to veto the new window event in the sample as the behaviour has been unified across the ports.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 15:19:26 +00:00
Steve Lamerton
aa35b9ca82 Link to urlmon from wxWeb to fix the compilation errors as we use CoInternetGetSession.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 15:10:33 +00:00
Steve Lamerton
e40741b95c Rename GetHref to GetURL in wxWebNavigationEvent, this brings it into line with the other functions in wxWebView.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 14:30:07 +00:00
Steve Lamerton
b236f090ed Add support for EVT_WEB_VIEW_NEWWINDOW to the OSX WebKit backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 13:55:54 +00:00
Steve Lamerton
45aa63c288 Clarify what GetTarget actually returns in wxWebNavigationEvent.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68396 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 13:37:29 +00:00
Steve Lamerton
d676fb218d Update handling and documentation for new window events. Clarify that you must handle the event if you require an action, the default is for nothing to happen.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 13:23:05 +00:00
Steve Lamerton
205defae89 Remove some now unused history variables.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 10:46:46 +00:00
Vadim Zeitlin
f0e5d5d22c No changes, just remove unnecessary wxPickerBase::OnSize().
This method did the same thing as the base wxWindow class event handler.

Also remove wxPickerBase event table which became empty after removing this
method.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68368 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 22:19:41 +00:00
Vadim Zeitlin
a3edb930b9 Exclude windows not accepting keyboard focus from GTK focus chain.
For some reason the test for AcceptsFocusFromKeyboard() wasn't done in the
correct place when constructing the GTK focus chain and even windows returning
false from it were still added to it.

Do not do this any more, this prevents the windows which are really not meant
to be focusable from keyboard (such as the pseudo-buttons in the generic
implementation of wxSearchCtrl) from gaining focus unexpectedly.

See #12808.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68367 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 22:19:37 +00:00
Vadim Zeitlin
9023040798 Replace wxControlContainer-related macros with wxNavigationEnabled<>.
Simply inherit classes which need to provide TAB navigation among their
children from wxNavigationEnabled<> and remove the now unnecessary
WX_DECLARE_CONTROL_CONTAINER() macros.

Also remove WX_INIT_CONTROL_CONTAINER(), WX_DELEGATE_TO_CONTROL_CONTAINER()
and WX_EVENT_TABLE_CONTROL_CONTAINER() which are not needed neither any more.

And remove the event tables which became empty after removing the last macro.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 22:19:33 +00:00
Vadim Zeitlin
7e0a200b08 Don't give focus to wxSearchButton when using keyboard navigation.
The search control buttons don't show that they have focus and are not meant
to have it anyhow as they are more control decorations than real buttons and
their functionality can be activated by pressing "Enter" or "Escape" already
from the keyboard. But giving it to them made TAB behave unexpectedly and
wrongly when wxSearchCtrl had focus.

Override AcceptsFocusFromKeyboard() to return false to correct this.

See #12808.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 22:19:27 +00:00
Vadim Zeitlin
e7c9d913c0 Use wxNavigationEnabled<> for keyboard navigation in generic wxSearchCtrl.
Derive generic wxSearchCtrl implementation from wxNavigationEnabled<> to
ensure that TAB navigation works correctly in it. While it did work before for
search controls without wxTE_PROCESS_ENTER style (because this wasn't handled
by this control itself at all in fact), it stopped working as soon as this
style was used in wxMSW because then the navigation was implemented by
manually calling wxWindow::Navigate() and this requires wxControlContainer
support.

Use wxNavigationEnabled<> to easily add it to wxSearchCtrl.

See #12808.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 22:19:23 +00:00
Vadim Zeitlin
4d98817cfa Add wxNavigationEnabled<> helper for implementing TAB navigation.
Provide a clean, public and documented way to implement proper TAB navigation
for subwindows of a composite control: instead of using various ugly and never
documented WX_XXX_CONTROL_CONTAINER macros it is now enough to simply inherit
from wxNavigationEnabled<BaseClass> to do it.

No real changes in the code as the new class is not used anywhere yet.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 22:19:20 +00:00
Vadim Zeitlin
d19d14c550 Ignore WM_CLOSE generated by wxMSW edit control when Escape is pressed.
Multiline edit control posts WM_CLOSE to its parent window when Escape key is
pressed inside it for some reason. This is unwanted as it totally bypasses our
logic for only closing the dialog when Escape is pressed if there is a
Cancel-like button in it, so suppress this behaviour by not letting the edit
control to get Escape at all.

Closes #12501.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 10:50:51 +00:00
Vadim Zeitlin
1dfe47d022 Mention that pages can't be added to wxBookCtrl more than once.
Apparently some people expect this to work although it's really not meant to.

See #13209.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-23 19:36:47 +00:00
Vadim Zeitlin
401889f079 Don't try to pop from an empty stack in wxGDIPlusContext::PopState().
Using PopState() without a previous PushState() is an error but it shouldn't
result in a crash, so add an assert guarding against it.

Closes #13197.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-23 19:36:43 +00:00
Vadim Zeitlin
5d4a050443 Remove mentions of wxCommandEvent from wxThreadEvent documentation.
wxThreadEvent doesn't derive from wxCommandEvent any more so don't say that it
does.

Also fix some grammar/wording.

Closes #13359.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-23 12:01:26 +00:00
Vadim Zeitlin
04a00346c6 Don't create an unnecessary extra button in wxMSW wxProgressDialog.
MSWCommonTaskDialogInit() now (probably since r67620) always creates a
IDCANCEL button so don't create another one in wxProgressDialog code, just
ensure that the one created by that function has the correct label (either
"Cancel" or "Close").

Closes #13358.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68338 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-23 11:59:43 +00:00
Vadim Zeitlin
4877e9bf90 Set wxDidCreatePaintDC to true even if we reused a cached wxPaintDC.
Reusing a cached wxPaintDC should count as painting the window, otherwise we
could call DefWindowProc(WM_PAINT) if WM_PAINT was generated from inside
EVT_PAINT handler (e.g. by calling wxWindow::Update()) and this validated the
entire window and no painting was really done.

In particular this fixes redrawing of wxStyledTextCtrl which does call
Update() (completely unnecessarily AFAICS) from its EVT_PAINT handler when it
wants to fully refresh itself.

Closes #13345.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-22 16:53:56 +00:00