Commit Graph

1345 Commits

Author SHA1 Message Date
Vadim Zeitlin
4c09d12a91 Don't crash in wxDisplay::GetCurrentMode() if there is no support
Display sample crashed on startup if XFree86-VidModeExtension extension was
not available.

Add missing error checking to avoid this.
2016-05-19 23:52:27 +02:00
Jouk
7255a8fb7f Updated compile support for OpenVMS 2016-04-07 10:44:48 +02:00
Sebastian Dröge
6ea8ba1e9c Add GstPlayer 1.7.2.1+ based GStreamer backend
Use new simpler API available in the latest GStreamer if available.

Closes #226.
2016-03-05 02:52:59 +01:00
Tobias Taschner
3bdb4c4b21 Add micro version to wxCheckOsVersion(). 2016-02-29 10:05:51 +01:00
Dimitri Schoolwerth
427750e744 Detect micro version for Unix-like systems in wxGetOsVersion
Check the result of running uname -r for a micro version and use it if
available, otherwise return a micro version of 0.
2016-02-29 09:58:15 +01:00
Dimitri Schoolwerth
b1a9c6e79e Add a micro version parameter to wxGetOsVersion
In addition to getting a major and minor OS version allow a micro
version to be retrieved. In case of running on e.g. OS X 10.10.3 this
allows the "3" to be retrieved again.
2016-02-29 09:58:15 +01:00
Maarten Bent
e2fb055329 Fix crash in OpenGL pyramid example if context creation fails
Initialize context pointers to null so that we don't delete uninitialized junk
later.

See #16910.

Closes https://github.com/wxWidgets/wxWidgets/pull/233
2016-02-26 13:00:51 +01:00
Vadim Zeitlin
1c9a4694ff Merge OpenGL API changes and better modern OpenGL support
Closes https://github.com/wxWidgets/wxWidgets/pull/227
2016-02-24 20:15:35 +01:00
Manuel Martin
bdc95f5766 Improve wxGLCanvas to be more type safe and better support modern OpenGL
Add wxGLAttribsBase, wxGLAttributes and wxGLContextAttrs replacing the old
untyped "int attributes[]".

Don't use global object for creating OpenGL > 3.0 contexts.

Closes #16909.
2016-02-23 00:32:54 +01:00
Sebastian Dröge
aa2cd42206 Report video size changes to the media backend 2016-02-22 00:57:41 +02:00
Sebastian Dröge
d0ef5d7daa Add support for GStreamer 1.x while keeping 0.10 support
Based on a patch by crisb

http://trac.wxwidgets.org/ticket/14976
2016-02-22 00:22:33 +02:00
Catalin
33ad41a745 Removed obsolete symbols from comments. 2016-02-21 20:12:18 +02:00
Vadim Zeitlin
704055f200 Don't lose data when converting wxExecute() arguments under Unix
Use wxConvWhateverWorks when converting the command line given as a string to
individual arguments: we already used wxSafeConvertWX2MB() when converting the
arguments specified as an array, but not here.

Closes #16206.
2016-02-19 03:10:47 +01:00
Paul Cornett
75de19b21f avoid unused variable warning 2016-02-14 13:41:20 -08:00
Vadim Zeitlin
026659297b Fix path/URL confusion in wxLaunchDefaultBrowser()
Add a helper wxLaunchBrowserParams struct with clearly distinct "url" and
"path" fields and GetPathOrURL() accessor which returns whichever is
appropriate.

This makes the code more clear and ensures that we never pass URLs (but only
file paths) to xdg-open under Unix as it doesn't handle them.

See #17227.
2016-02-07 19:32:18 +01:00
Vadim Zeitlin
948126a375 Merge branch 'drop-gstreamer-0.8' of https://github.com/plaes/wxWidgets
Drop support for ancient gstreamer 0.8.
2016-02-06 00:16:28 +01:00
Vadim Zeitlin
4484e1282e Check for just GTK+ 2.0 before including gtk2-compat.h
This doesn't really change anything but makes the intention of the code more
clear: this check is needed not because things don't work with GTK+ < 2.14 but
because gtk2-compat.h is for GTK+ 2 only, while this source file is also used
for GTK+1.
2016-02-05 16:48:03 +01:00
Jouk
6fae9911d8 Do not include wx/gtk/private/gtk2-compat.h when compiling against a very old GTK 2016-02-03 12:01:25 +01:00
Vadim Zeitlin
d1944ad801 Fix compilation with GTK+ 2.22 due to gdk_window_get_screen()
Include the compatibility header defining this function.
2016-02-02 16:09:23 +01:00
Priit Laes
a797d19bb3 Get rid of wxGst_element_query_position 2016-01-30 10:00:10 +02:00
Priit Laes
57049329f3 Replace obsolete wxGst_element_query_duration 2016-01-30 10:00:10 +02:00
Priit Laes
30c443970a Use gconf{audio,video}sink properly 2016-01-30 10:00:10 +02:00
Priit Laes
e733fdb14f Replace deprecated GST_STATE_* defines
Use proper gstreamer-0.10 names instead of mapping 0.8 defines to 0.10
ones:

 * GST_STATE_FAILURE -> GST_STATE_CHANGE_FAILURE
 * GST_STATE_SUCCESS -> GST_STATE_CHANGE_SUCCESS
 * GstElementState -> GstState
2016-01-30 10:00:10 +02:00
Priit Laes
4b70102503 Drop gstreamer-0.8 and gstreamer-0.9 ifdef branches in code 2016-01-30 10:00:10 +02:00
Tobias Taschner
a0fb808087 Add wxStandardPaths::GetUserDir() to get Desktop, Download etc
All major supported platforms have well defined per-user directories to store
Downloads, Music, Pictures, Videos and the Desktop files. The new method
wxStandardPaths::GetUserDir() allows for a unified way to access these on MSW,
OS X and Unix (if XDG user dirs specification is implemented for the latter).

See https://github.com/wxWidgets/wxWidgets/pull/89
2015-10-04 01:05:23 +02:00
Paul Cornett
27a8d28029 more use of wxOVERRIDE 2015-09-06 17:20:42 -07:00
Paul Cornett
22eec38806 use gtk_show_uri() in wxLaunchDefaultBrowser() implementation for GTK+ 2015-08-18 22:29:12 -07:00
Tobias Taschner
3250bae3a2 Implement wxCheckOsVersion() with NSProccessInfo on OS X.
Since OS X 10.10 NSProcessInfo has a method isOperatingSystemAtLeastVersion: which should be used compare the OS version if necessary.
2015-08-07 15:49:52 +02:00
Tobias Taschner
2b3633b3c0 Add wxCheckOsVersion() to implement platform based OS version checks.
Windows implements VerifyVersionInfo api since Win2k. Starting with Windows 8.1 GetVersionEx is deprecated and may not return the expected version number if the application does not contain the correct compatibility information in its manifest. VerifyVersionInfo works independent of manifest in the executable (and is the recommend way to check).

Existing code may already use wxPlatformInfo::CheckOSVersion() so the method forwards the call to wxCheckOsVersion if initialized for the current system.
2015-08-06 11:32:38 +02:00
Vadim Zeitlin
e18c8fd29a Never use events for blocking sockets under Unix.
Events are not needed for this kind of sockets, using wxSOCKET_BLOCK is
supposed to ensure that calling socket IO operations blocks until the bytes
are read/written without dispatching any events.

See #17031.
2015-07-05 16:45:07 +02:00
Vadim Zeitlin
c4df7fcf91 Remove accidentally checked in debugging code in Unix wxDir.
Undo the accidental change in c6c19dc580.

Closes #17052.
2015-07-04 19:45:38 +02:00
Vadim Zeitlin
c6c19dc580 Remove extraneous semicolons after wxDECL_FOR_STRICT_MINGW32().
This macro shouldn't be followed by a semicolon because it can be empty, so
remove the extra semicolons to avoid -Wpedantic g++ warnings about it.
2015-07-01 00:39:05 +02:00
Roberto Perpuly
aa5dbad410 Use FSEvents in wxFileSystemWatcher on OS X
The FSEvents API allows for creating watches in entire trees of
directories in an efficient manner.

Closes #16969.
2015-06-06 02:37:35 +04:00
Dimitri Schoolwerth
31145b8e3a Fix some typos, no code changes (besides strings) 2015-06-05 02:54:46 +04:00
Vadim Zeitlin
7e215ee069 Ensure that Unix wxJoystick closes the associated device.
Close the device file descriptor in the dtor instead of doing it in the thread
used to poll it, this is more straightforward and ensures that it happens even
if the thread failed to run for whatever reason.
2015-05-24 02:55:16 +02:00
Kevin B. McCarty
1298f5970b Fix race condition in Unix wxExecute() if child exited too quickly.
Check if the child has already finished before starting waiting for it.

Closes #16661.
2015-05-09 19:28:04 +02:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Vadim Zeitlin
a74d2faf3a Avoid warnings about not checking read() result in wxJoystick code.
Explicitly ignore errors if we can't read from the associated FD.

This is mostly done to avoid -Wunused-result warning about not checking read()
return value under Ubuntu.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-02-12 21:56:36 +00:00
Vadim Zeitlin
8f4961c59c Don't check if an unsigned variable is less than 0.
This doesn't risk ever being true.

Closes #16831.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-02-04 13:18:59 +00:00
Vadim Zeitlin
2c5175e004 De-TAB wxX11 code.
Remove hard TABs.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-02-04 13:18:55 +00:00
Vadim Zeitlin
2d3ef92acc Prefer file types with a defined open command in Unix wxMimeTypesManager.
It can happen that more than one file type maps to the given extension, in
this case prefer the one which has an open command defined for it as it is
typically more useful.

See #16703.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-12-05 22:18:48 +00:00
Vadim Zeitlin
13cae6fbb2 Load *.desktop files recursively in wxMimeTypesManager under Unix.
Not all .desktop files are directly under /usr/share/applications, some or, in
some cases, most of them, may be under its subdirectories, so look for them
there as well.

See #16703.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78240 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-12-05 22:18:43 +00:00
Vadim Zeitlin
7e96398e63 Restore code for closing inherited file descriptors under non-OS X.
The code for doing this was accidentally disabled in r74957, which intended to
disable it for Darwin, but ended up disabling it for everything but Darwin.

Reenable it for all platforms now, clearly it didn't hurt to have it enabled
under Darwin, and we do need to do it, e.g. see #12636.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78086 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-11-01 14:00:04 +00:00
Vadim Zeitlin
e212ac8591 Don't export private wxDisplayImplX11 class.
This class is only used internally and doesn't need to be exported. In
addition to being unnecessary, this also resulted in ABI compatibility check
errors after changes to this class in 3.0 branch, so avoid such problems in
the future.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-02 23:49:20 +00:00
Vadim Zeitlin
ad84d9f97d make wxKeyEvent could get unicode key under x11, add a x11 keysym--unicode char map tab
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:43:37 +00:00
Vadim Zeitlin
6283e4e6f1 Get rid of unnecessary wxUsecClockAsString() helper function.
We always build with wxUSE_LONGLONG now, so just use wxLongLong::ToString()
directly.

This avois a warning about unused local function in wxDEBUG_LEVEL==0 builds.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 15:32:19 +00:00
Vadim Zeitlin
a4606fbb44 Refactor Unix OpenGL code to avoid using static attributes array.
Put the context attributes in wxGLCanvasX11 itself instead.

See #16402.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-15 12:14:11 +00:00
Vadim Zeitlin
3c7ba39135 Allow requesting core OpenGL profile and explicit OpenGL version.
Add WX_GL_CORE_PROFILE and WX_GL_{MAJOR,MINOR}_VERSION attributes which can be
used to use modern OpenGL with wxGLCanvas.

Closes #16402.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-06 23:31:41 +00:00
Stefan Csomor
bf0a634c09 removing wxMacLaunch dependancy for ios
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-06 14:59:25 +00:00
Vadim Zeitlin
fb99672f62 Hopefully finish removing the old wxCocoa port.
Get rid of the rest of __WXCOCOA__ tests in the sources.

Drop configure option for using it.

Also remove the documentation for this port.

This should have also been part of r76735.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-03 22:03:21 +00:00