Commit Graph

53538 Commits

Author SHA1 Message Date
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
Václav Slavík
1969499c6f Silence Clang warning about numeric_limits<> specialization.
libstdc++ (which is used by Clang) defines numeric_limits<> as a struct
and Clang issues a warning about our specialization that uses 'class'.
As libstdc++ developers have no intention of fixing this, silence the
Clang warning by using 'struct' for it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-31 13:25:33 +00:00
Václav Slavík
7198c33680 Disable symbols visibility support for the Clang compiler.
Even Clang++ shipped with Xcode 4.1 still can't handle visibility
of non-inline methods in exported template classes if the default
visibility is 'hidden'.

Disable visibility support for Clang for now, we'll revisit it in the future.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-31 13:25:30 +00:00
Vadim Zeitlin
bd5754f253 Correct typo in wxArray::insert() fix of r68468.
A wrong variable was mistakenly used.

Closes #13371.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-31 12:19:51 +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
Vadim Zeitlin
9c5c5c9cfd Fix crash in wxArray::insert() overload taking iterator range.
The iterator passed as argument could be invalidated by the function itself,
update it before using it.

Closes #13371.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 23:38:43 +00:00
Vadim Zeitlin
e999b903ca Generate events with WXK_NONE Unicode keys for non-characters in wxOSX.
The keyboard keys not corresponding to real characters, such as cursor arrows
or function keys, must generate wxKeyEvents with WXK_NONE as Unicode key code
to make it possible to distinguish them from the printable characters but
wxOSX generated events with valid Unicode key codes for them instead.

Avoid this by excluding Unicode key codes corresponding to code points in the
Unicode private use area: while this doesn't seem to be documented anywhere,
all non-printable characters seem to have their Unicode representation inside
it.

This change brings wxOSX keyboard event generation in line with the other
ports and, as a side effect, also closes #12423.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 21:54:21 +00:00
Vadim Zeitlin
66fc8b0e64 Avoid bogus focus loss event when wxTextCtrl is modified in wxOSX.
A wxEVT_KILL_FOCUS event was generated when wxTextCtrl::WriteText() was called
in wxOSX, even though the control didn't lose focus at all in this case. This
was completely unexpected and thoroughly confused wxGrid code which closed the
in place editor immediately after showing it because of this (this was perhaps
only the case since r68319 but the changes there were correct so they only
masked the real bug).

Avoid this bogus event by remembering the NSView currently being
programmatically modified and not doing anything in textDidEndEditing
notification if it is generated for this view.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 21:54:18 +00:00
Vadim Zeitlin
567e5e47ee Improve wxTextCtrl::GetNumberOfLines() unit test and documentation.
First, enable execution of the Lines() wxTextCtrl unit test case under wxOSX
as it passes since the fix in the previous commit.

Do add a test for GetNumberOfLines() that currently doesn't work in the same
way under all platforms -- but with this test we at least can be sure how does
it work exactly where.

Also mention the current discrepancy in this function behaviour in the
documentation.

See #12366.

Fix Lines() wxTextCtrl unit test to pass under wxGTK too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 21:54:15 +00:00
Vadim Zeitlin
2d5c15163a Fix off by one error in wxTextCtrl::GetLineLength() in wxOSX.
The trailing new line shouldn't be counted in the line length.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 21:54:08 +00:00
Vadim Zeitlin
d641b2d2a0 Fix stock accelerators handling in wxOSX.
No modifiers were used for stock accelerators, i.e. Append(wxID_NEW) resulted
in an item with the label "New" and plain "N" as accelerator in wxOSX. This
was due to wxACCEL_CMD not being handled in wxAcceleratorEntry::ToString() so
map it to the same prefix as wxACCEL_CTRL there, this is enough to make the
accelerators work even though it's not clear whether this is really the best
thing to do or if we should use a separate "Cmd+" prefix for it (and recognize
it in Parse() too then) as otherwise it's unclear why do we have wxACCEL_CMD
at all, it just seems to be treated identically to wxACCEL_CTRL everywhere.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 21:54:05 +00:00
Vadim Zeitlin
75618d57e4 Emphasize that wxStandardPaths must not be created directly.
wxStandardPaths::Get() must be used instead as the correct object to use might
have a different type.

See #11239.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 17:40:00 +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
Vadim Zeitlin
bf8f10225c Get rid of ugly wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST macro.
Replace it with wxWindowWithItems<> template class which takes care of
disambiguating between the two inherited Get/SetClientXXX() versions and use
it as a base class in all clases that previously used the macro.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 11:30:08 +00:00
Vadim Zeitlin
c29c95fe24 Resolve ambiguity between GetClientXXX() methods in wxOSX wxComboBox.
Use wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST for wxOSX/Cocoa too, not
only for wxOSX/Carbon. This macro adds methods to explicitly disambiguate
between the two inherited versions of each GetClientXXX() method, the one from
wxItemContainer and the other one from wxEvtHandler.

Closes #11637.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 11:30:03 +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
Vadim Zeitlin
6ce832135e Add wxTextCtrl::PositionToCoords() functions for wxMSW and wxGTK.
The new method allows to find the coordinates in pixels of the given character
in a text control.

Closes #13221.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-29 15:11:54 +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
Vadim Zeitlin
d298f18ffb Mention wxGTK wxAnimation implementation limitations in the docs.
The native GTK implementation doesn't provide information about the frames
count nor access to individual frames.

See #13365.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-26 21:37:20 +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
Vadim Zeitlin
9f1bf94013 Compilation fix: include wx/event.h from wx/containr.h.
We now need wxEVT_XXX constants declarations in this file (at least when not
wxHAS_NATIVE_TAB_TRAVERSAL) so include wx/event.h to fix PCH-less build of
wxOSX.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-26 11:31:21 +00:00
Dimitri Schoolwerth
bc91da9610 Fixed wxOSX-Cocoa compilation.
OS X' wxComboBox::Init does not exist anymore since r68366 but an implementation still was present in combobox_osx.cpp which is used in Cocoa compilation. Removed the function.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 23:31:01 +00:00
Dimitri Schoolwerth
1f6831ea9b Fixed containr.h compilation with gcc.
At least apple-gcc 4.0 and 4.2 gave a compilation error on the three Connect calls in containr.h, insisting (unless using -fpermissive) on a declaration of Connect because there are no arguments to it that depend on a template parameter. Fixed by prepending BaseWindowClass to the Connect calls. Regression since r68363.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 22:31:17 +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