vlc.git
3 years agocrystalhd: use WCHAR were TEXT() was used to set the variable
Steve Lhomme [Wed, 3 Apr 2019 06:51:06 +0000 (08:51 +0200)]
crystalhd: use WCHAR were TEXT() was used to set the variable

_T() is for TCHAR, TEXT() is for WCHAR

3 years agommdevice: inline the only call to var_InheritWide()
Steve Lhomme [Wed, 3 Apr 2019 06:49:19 +0000 (08:49 +0200)]
mmdevice: inline the only call to var_InheritWide()

And calling SetDisplayName on NULL returns an error so avoid doing it.

3 years agowinvlc: use WCHAR instead of TCHAR
Steve Lhomme [Wed, 3 Apr 2019 06:44:31 +0000 (08:44 +0200)]
winvlc: use WCHAR instead of TCHAR

We were already using FromWide on this variable. It cannot work if TCHAR is
not wide.

3 years agovout:win32: the parent vout_window_t cannot be NULL
Steve Lhomme [Fri, 29 Mar 2019 14:00:09 +0000 (15:00 +0100)]
vout:win32: the parent vout_window_t cannot be NULL

It may be a dummy with no HWND though.

3 years agovout:win32: the main HWND is never decorated
Steve Lhomme [Tue, 2 Apr 2019 14:00:29 +0000 (16:00 +0200)]
vout:win32: the main HWND is never decorated

Only the standalone Win32 vout_window_t is decorated. We don't take care of it
in the display module anymore.

3 years agovout:win32: don't access the events code directly from display modules
Steve Lhomme [Wed, 27 Mar 2019 10:12:41 +0000 (11:12 +0100)]
vout:win32: don't access the events code directly from display modules

3 years agovout:win32: remove the code related to wallpaper mode in each display module
Steve Lhomme [Tue, 2 Apr 2019 12:56:53 +0000 (14:56 +0200)]
vout:win32: remove the code related to wallpaper mode in each display module

Remove all the functions and related variables not used anymore.

The last deprecated use of VOUT_DISPLAY_CHANGE_FULLSCREEN is gone on Windows.

We do not need the hfswnd HWND anymore.

3 years agovout:win32: add support for wallpaper mode to the Win32 vout_window_t
Steve Lhomme [Fri, 29 Mar 2019 09:24:08 +0000 (10:24 +0100)]
vout:win32: add support for wallpaper mode to the Win32 vout_window_t

This is used when setting the wallpaper mode on startup (not when toggling it
from the GUI).

3 years agovout:win32: handle the video-x/y position in the vout_window_t
Steve Lhomme [Fri, 29 Mar 2019 08:37:27 +0000 (09:37 +0100)]
vout:win32: handle the video-x/y position in the vout_window_t

The value could also be used to position the video in the wallpaper (until it
may also use a proper vout_window_t).

3 years agovout:win32: report the mouse movements event if the video has no size
Steve Lhomme [Wed, 27 Mar 2019 13:45:42 +0000 (14:45 +0100)]
vout:win32: report the mouse movements event if the video has no size

The mouse position won't be shifted, it's fine.

3 years agovout:win32: set the standalone window title using vout_window_SetTitle()
Steve Lhomme [Wed, 27 Mar 2019 09:18:20 +0000 (10:18 +0100)]
vout:win32: set the standalone window title using vout_window_SetTitle()

3 years agovout:win32: handle the set_title callback in the external window
Steve Lhomme [Tue, 2 Apr 2019 11:54:12 +0000 (13:54 +0200)]
vout:win32: handle the set_title callback in the external window

3 years agowindow: add an API to set the window title
Steve Lhomme [Wed, 27 Mar 2019 09:13:42 +0000 (10:13 +0100)]
window: add an API to set the window title

This has no effect on embedded windows.

3 years agovout:win32: remove elements specific to the standalone window
Steve Lhomme [Thu, 28 Mar 2019 13:37:01 +0000 (14:37 +0100)]
vout:win32: remove elements specific to the standalone window

This is not handled here anymore.

3 years agomodules:vout: add a specific vout window module for Windows
Steve Lhomme [Tue, 26 Mar 2019 10:17:45 +0000 (11:17 +0100)]
modules:vout: add a specific vout window module for Windows

The video-wallpaper/desktop mode is not supported yet.

3 years agovout:win32: use an atomic bool to check if the HWND Thread is done
Steve Lhomme [Thu, 28 Mar 2019 07:05:32 +0000 (08:05 +0100)]
vout:win32: use an atomic bool to check if the HWND Thread is done

3 years agovout:win32: don't change the Z-order of the main window on resize
Steve Lhomme [Fri, 29 Mar 2019 13:47:34 +0000 (14:47 +0100)]
vout:win32: don't change the Z-order of the main window on resize

3 years agodirect3d9: use WCHAR instead of TCHAR
Steve Lhomme [Tue, 2 Apr 2019 11:07:42 +0000 (13:07 +0200)]
direct3d9: use WCHAR instead of TCHAR

Using TEXT() already meant it could only work with WCHAR and we always define
UNICODE anyway.

3 years agovout:win32: use WCHAR instead of TCHAR
Steve Lhomme [Tue, 2 Apr 2019 11:04:47 +0000 (13:04 +0200)]
vout:win32: use WCHAR instead of TCHAR

We always for UNICODE for Windows builds so we always use the wide char APIs.

GetModuleFileName needed an extra char in Windows XP but we don't support it
anymore.

3 years agovout:win32: enable projection gestures per module
Steve Lhomme [Tue, 26 Mar 2019 11:03:24 +0000 (12:03 +0100)]
vout:win32: enable projection gestures per module

Only the ones that can handle 360 projection should enable it.

We don't need to pass the vout_display_t anymore.

3 years agovout:win32: don't place the video before the first UpdateRects is called
Steve Lhomme [Tue, 26 Mar 2019 12:14:04 +0000 (13:14 +0100)]
vout:win32: don't place the video before the first UpdateRects is called

The mouse events can't be interpreted correctly until the actual video is
placed and ready to be displayed.

3 years agovout:win32: don't pretend we handle WM_PAINT/WM_NCPAINT/WM_ERASEBKGND in main HWND
Steve Lhomme [Thu, 28 Mar 2019 09:18:07 +0000 (10:18 +0100)]
vout:win32: don't pretend we handle WM_PAINT/WM_NCPAINT/WM_ERASEBKGND in main HWND

We'll end up calling DefWindowProc() anyway.

3 years agovout:win32: handle WM_CAPTURECHANGED like any other message
Steve Lhomme [Thu, 28 Mar 2019 09:15:02 +0000 (10:15 +0100)]
vout:win32: handle WM_CAPTURECHANGED like any other message

3 years agovout:win32: destroy the hvideownd in all cases
Steve Lhomme [Thu, 28 Mar 2019 06:14:47 +0000 (07:14 +0100)]
vout:win32: destroy the hvideownd in all cases

3 years agovout:win32: separate the creation of the video HWND
Steve Lhomme [Tue, 2 Apr 2019 08:31:42 +0000 (10:31 +0200)]
vout:win32: separate the creation of the video HWND

Using its own/simpler WNDPROC

3 years agovout:win32: don't use the window if we can't store the opaque struct in it
Steve Lhomme [Thu, 28 Mar 2019 09:13:33 +0000 (10:13 +0100)]
vout:win32: don't use the window if we can't store the opaque struct in it

Some messages still come before WM_CREATE so we need to call DefWindowProc for
them.

3 years agovout:win32: separate the bare object use from direct vout_display_t use
Steve Lhomme [Tue, 26 Mar 2019 12:15:06 +0000 (13:15 +0100)]
vout:win32: separate the bare object use from direct vout_display_t use

3 years agovout:win32: do not use vout_display_SendWindowState anymore on Windows
Steve Lhomme [Tue, 26 Mar 2019 15:36:55 +0000 (16:36 +0100)]
vout:win32: do not use vout_display_SendWindowState anymore on Windows

nor VOUT_DISPLAY_CHANGE_WINDOW_STATE which are both deprecated.

We either use the above/normal mode in the GUI or it's handled by the
non-embedded window internally.

3 years agovout:win32: handle the Always On Top of the non-parented window internally
Steve Lhomme [Tue, 26 Mar 2019 15:32:50 +0000 (16:32 +0100)]
vout:win32: handle the Always On Top of the non-parented window internally

When we receive our IDM_TOGGLE_ON_TOP we post WM_VLC_SET_TOP_STATE to our window.
No need to go through the vout_display_SendWindowState().

This is only used for the external window. In GUI/embedded mode the above/normal
state is handled by the GUI and we don't have to change menus in the chromeless
window.

3 years agovout:win32: set the gesture/projected mode early
Steve Lhomme [Tue, 26 Mar 2019 14:55:55 +0000 (15:55 +0100)]
vout:win32: set the gesture/projected mode early

3 years agovout:win32: init the hvideownd with the placement dimensions
Steve Lhomme [Tue, 26 Mar 2019 13:31:09 +0000 (14:31 +0100)]
vout:win32: init the hvideownd with the placement dimensions

This is how the dimensions are set whenever the placement changes.

3 years agovout:win32: only notify the size change if we have no parent
Steve Lhomme [Tue, 26 Mar 2019 14:26:34 +0000 (15:26 +0100)]
vout:win32: only notify the size change if we have no parent

Otherwise it's the job of the parent_window to report size changes.

We only have no hparent when the vout_window_t is a dummy window with no HWND.

3 years agovout:win32: handle right/middle mouse button double click
Steve Lhomme [Tue, 2 Apr 2019 09:55:05 +0000 (11:55 +0200)]
vout:win32: handle right/middle mouse button double click

3 years agovout:win32: call vout_window_ReportMouseXXX directly
Steve Lhomme [Tue, 26 Mar 2019 12:22:02 +0000 (13:22 +0100)]
vout:win32: call vout_window_ReportMouseXXX directly

Instead of vout_display_SendMouseXXX().

We already know the window in use (or in wallpaper there's no such window but
neither do we get these events).

3 years agovout:win32: init the event_thread video placement outside of EventThreadCreate
Steve Lhomme [Tue, 26 Mar 2019 11:46:52 +0000 (12:46 +0100)]
vout:win32: init the event_thread video placement outside of EventThreadCreate

3 years agovout:win32: don't create any HWND if we have no vout_window_t
Steve Lhomme [Tue, 2 Apr 2019 09:49:28 +0000 (11:49 +0200)]
vout:win32: don't create any HWND if we have no vout_window_t

If we don't even have a dummy parent there's something very wrong.

3 years agovout:win32: pass the vout_window_t to EventThreadCreate
Steve Lhomme [Tue, 26 Mar 2019 11:42:46 +0000 (12:42 +0100)]
vout:win32: pass the vout_window_t to EventThreadCreate

3 years agovout:win32: always pass the vout_display_sys_win32_t in common API
Steve Lhomme [Tue, 2 Apr 2019 06:49:42 +0000 (08:49 +0200)]
vout:win32: always pass the vout_display_sys_win32_t in common API

The existence of the event tells if it's in windowless mode or not.

3 years agovout:win32: remove write-only rect_parent
Steve Lhomme [Tue, 2 Apr 2019 06:57:13 +0000 (08:57 +0200)]
vout:win32: remove write-only rect_parent

Following code removal of 5323c4c6850f5e9e9c7cc46148e9f455e9d4f2bd

3 years agovout: fix uninitialized pointer dereference
Thomas Guillem [Tue, 2 Apr 2019 13:52:09 +0000 (15:52 +0200)]
vout: fix uninitialized pointer dereference

A failing vout_Request() on a re-used vout caused to save an invalid vout
pointer.

This also fixes the following warning: ‘vout’ may be used uninitialized in this
function [-Wmaybe-uninitialized] input_resource_PutVout(p_resource, vout);

Regression from 4586ffaf28c0756e48d0fa607083417dda630a2d

3 years agovout: fix leak if vlc_clone fails
Thomas Guillem [Tue, 2 Apr 2019 13:48:18 +0000 (15:48 +0200)]
vout: fix leak if vlc_clone fails

3 years agovout: use intermediate sys variable
Thomas Guillem [Tue, 2 Apr 2019 13:34:39 +0000 (15:34 +0200)]
vout: use intermediate sys variable

3 years agoqt: remove dead code
Thomas Guillem [Tue, 2 Apr 2019 09:27:41 +0000 (11:27 +0200)]
qt: remove dead code

Note: playlist import is implicitly done when opening a playlist file.

3 years agowall: remove aspect ratio parameter
Rémi Denis-Courmont [Mon, 1 Apr 2019 17:40:49 +0000 (20:40 +0300)]
wall: remove aspect ratio parameter

The aspect ratio of window is fully determined by the aspect ratio of
the source video and the quotient of colums by rows. Adding an extra
parameter makes no sense, and does not work properly.

This fixes #17433, #213.

To select a custom ratio, the source video must be filtered with
cropadd. (In the future, we could also support crop in the splitter
display plugin.)

3 years agosplitter: remove write-only window position
Rémi Denis-Courmont [Mon, 1 Apr 2019 17:25:09 +0000 (20:25 +0300)]
splitter: remove write-only window position

3 years agosplitter: remove write-only window alignment
Rémi Denis-Courmont [Mon, 1 Apr 2019 17:21:52 +0000 (20:21 +0300)]
splitter: remove write-only window alignment

3 years agoopengl: ignore resize control failure
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:54:11 +0000 (19:54 +0300)]
opengl: ignore resize control failure

Resetting pictures would crash. If setting the current GL context fails,
we are pretty screwed as far as rendering is concerned, but that's not a
reason to crash the process.

3 years agoflashen: ignore unsupported/unapplicable resize controls
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:53:46 +0000 (19:53 +0300)]
flashen: ignore unsupported/unapplicable resize controls

3 years agoyuv: provide dummy display control callback
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:52:31 +0000 (19:52 +0300)]
yuv: provide dummy display control callback

3 years agovmem: provide dummy display control callback
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:52:31 +0000 (19:52 +0300)]
vmem: provide dummy display control callback

3 years agovdummy: provide dummy display control callback
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:52:31 +0000 (19:52 +0300)]
vdummy: provide dummy display control callback

3 years agosplitter: provide dummy display control callback
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:52:31 +0000 (19:52 +0300)]
splitter: provide dummy display control callback

3 years agokms: provide dummy display control callback
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:52:31 +0000 (19:52 +0300)]
kms: provide dummy display control callback

3 years agofb: provide dummy display control callback
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:52:31 +0000 (19:52 +0300)]
fb: provide dummy display control callback

3 years agodecklink: provide dummy display control callback
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:52:31 +0000 (19:52 +0300)]
decklink: provide dummy display control callback

3 years agocaca: ignore unsupported resize controls
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:52:15 +0000 (19:52 +0300)]
caca: ignore unsupported resize controls

3 years agoandroid: ignore unsupported zoom/fill change
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:51:45 +0000 (19:51 +0300)]
android: ignore unsupported zoom/fill change

We don't want to reset the picture pool here.

3 years agommal: don't fail resize controls
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:37:33 +0000 (19:37 +0300)]
mmal: don't fail resize controls

Failing would mean that the picture pool must be reset, which this
plugin does not need/allow. The requests must be ignored instead.

3 years agovout: add an assertion
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:25:14 +0000 (19:25 +0300)]
vout: add an assertion

The video output thread can only be flushed if it is active.

3 years agoinput: only flush/stop vout if actually started
Rémi Denis-Courmont [Mon, 1 Apr 2019 16:23:56 +0000 (19:23 +0300)]
input: only flush/stop vout if actually started

This moves the flushing and stopping of the vout thread out of
input_resource_PutVout() and to its original call site in decoder.c.

In the new call site within resource.c, the vout thread is not actually
started and cannot be flushed and stopped.

3 years agoxspf: do not inherit options
Rémi Denis-Courmont [Sun, 31 Mar 2019 08:09:01 +0000 (11:09 +0300)]
xspf: do not inherit options

3 years agoasx: do not inherit options
Rémi Denis-Courmont [Sun, 31 Mar 2019 08:09:01 +0000 (11:09 +0300)]
asx: do not inherit options

3 years agomp4: do not inherit options
Rémi Denis-Courmont [Sun, 31 Mar 2019 08:08:51 +0000 (11:08 +0300)]
mp4: do not inherit options

3 years agoplaylist: remove no longer used variables
Rémi Denis-Courmont [Sun, 31 Mar 2019 08:05:14 +0000 (11:05 +0300)]
playlist: remove no longer used variables

3 years agoRevert "Input options inheritance for playlists"
Rémi Denis-Courmont [Sun, 31 Mar 2019 07:42:18 +0000 (10:42 +0300)]
Revert "Input options inheritance for playlists"

Blindly inheriting options from a playlist to the playlist items leads
to several variants of the same vulnerability, whereby an option
intended solely for the playlist is wrongly given to the items:

1) Unsafe options.
2) Options conveying private data such as credentials.

As an example, consider the case of a playlist served over HTTP and
protected by username/password. The HTTP credentials must not be passed
to playlist items, which may well be in a different HTTP domain.
(Instead, the VLC key store should be used and do the right thing.)

This reverts commit 4db1802cf69e67756798b50c54b4030d11de11ee.

3 years agovout:win32: reindent
Steve Lhomme [Mon, 25 Mar 2019 15:10:28 +0000 (16:10 +0100)]
vout:win32: reindent

3 years agovout:win32: use a NULL vout_display_sys_win32_t in windowless mode
Steve Lhomme [Mon, 25 Mar 2019 14:00:03 +0000 (15:00 +0100)]
vout:win32: use a NULL vout_display_sys_win32_t in windowless mode

That allows us cleaning the code and avoid calls that don't mean anything.

3 years agovout:win32: separate the display area structure from the display_sys
Steve Lhomme [Mon, 25 Mar 2019 10:13:23 +0000 (11:13 +0100)]
vout:win32: separate the display area structure from the display_sys

3 years agovout:win32: initialize the display_win32_area_t separately
Steve Lhomme [Fri, 22 Mar 2019 12:12:19 +0000 (13:12 +0100)]
vout:win32: initialize the display_win32_area_t separately

3 years agovout:win32: isolate the window placement fields in a structure
Steve Lhomme [Thu, 21 Mar 2019 15:21:27 +0000 (16:21 +0100)]
vout:win32: isolate the window placement fields in a structure

These fields are needed even when there's no window to handle. For example if
the display dimensions/position are used for external rendering.

3 years agovout:win32: no need to position the main HWND when the parent changes
Steve Lhomme [Mon, 1 Apr 2019 12:33:11 +0000 (14:33 +0200)]
vout:win32: no need to position the main HWND when the parent changes

We already handle VOUT_DISPLAY_CHANGE_DISPLAY_SIZE for that or get a WM_SIZE.

3 years agodirect3d11: replace the CommonManage call for Winstore builds
Steve Lhomme [Mon, 1 Apr 2019 12:40:42 +0000 (14:40 +0200)]
direct3d11: replace the CommonManage call for Winstore builds

It just does an UpdateRects() all the time.

3 years agovout:win32: always check if the video placement has changed
Steve Lhomme [Mon, 25 Mar 2019 15:46:44 +0000 (16:46 +0100)]
vout:win32: always check if the video placement has changed

it's not CPU intensive and we are sure we don't miss anything.

3 years agovout:win32: no need to handle the position in CommonManage
Steve Lhomme [Mon, 25 Mar 2019 15:28:40 +0000 (16:28 +0100)]
vout:win32: no need to handle the position in CommonManage

We don't care about the child position compared to its parent so we don't need
it to check if the size have changed or not.

3 years agovout:win32: handle VOUT_DISPLAY_CHANGE_DISPLAY_SIZE on Winstore builds
Steve Lhomme [Mon, 25 Mar 2019 15:04:29 +0000 (16:04 +0100)]
vout:win32: handle VOUT_DISPLAY_CHANGE_DISPLAY_SIZE on Winstore builds

We need to place the video if the display size changed.

3 years agovout:win32: only update the window positions if the placement changed
Steve Lhomme [Mon, 25 Mar 2019 14:50:23 +0000 (15:50 +0100)]
vout:win32: only update the window positions if the placement changed

3 years agovout:win32: only handle the WM_SIZE event
Steve Lhomme [Mon, 1 Apr 2019 12:07:34 +0000 (14:07 +0200)]
vout:win32: only handle the WM_SIZE event

We don't care if the window has moved.

3 years agodirect3d11: VOUT_DISPLAY_RESET_PICTURES is not supported even on winstore
Steve Lhomme [Mon, 25 Mar 2019 14:16:50 +0000 (15:16 +0100)]
direct3d11: VOUT_DISPLAY_RESET_PICTURES is not supported even on winstore

3 years agovout:win32: no need to force a place update if only the position has changed
Steve Lhomme [Mon, 25 Mar 2019 13:24:38 +0000 (14:24 +0100)]
vout:win32: no need to force a place update if only the position has changed

The window may have moved but if the values of the place have not changed
there's no need to update the display. All the win32 modules do not depend on
the window position anymore.

3 years agoglwin32: inline the Manage call
Steve Lhomme [Mon, 25 Mar 2019 13:12:44 +0000 (14:12 +0100)]
glwin32: inline the Manage call

3 years agodirect3d9: inline the Manage call
Steve Lhomme [Mon, 25 Mar 2019 13:07:19 +0000 (14:07 +0100)]
direct3d9: inline the Manage call

3 years agovout:win32: remove write-only event->source
Steve Lhomme [Mon, 25 Mar 2019 12:25:36 +0000 (13:25 +0100)]
vout:win32: remove write-only event->source

The vd->source is used to create the window and never after.

3 years agovout:win32: don't handle the ThumbnailClip when rendering without a HWND
Steve Lhomme [Mon, 25 Mar 2019 12:08:40 +0000 (13:08 +0100)]
vout:win32: don't handle the ThumbnailClip when rendering without a HWND

3 years agovout:win32: use the vout_display_place_t instead of RECT rect_dest
Steve Lhomme [Mon, 25 Mar 2019 12:06:55 +0000 (13:06 +0100)]
vout:win32: use the vout_display_place_t instead of RECT rect_dest

This way we know we deal with the result of PlacePicture().

We don't need macros anymore to hide the field.

Only log when the placement actually changed.

3 years agovout_display: add a helper function to compare vout_display_place_t
Steve Lhomme [Mon, 25 Mar 2019 11:56:59 +0000 (12:56 +0100)]
vout_display: add a helper function to compare vout_display_place_t

3 years agovout:win32: we don't need to update the visible area of the window
Steve Lhomme [Mon, 25 Mar 2019 11:10:15 +0000 (12:10 +0100)]
vout:win32: we don't need to update the visible area of the window

If anything the HWND handler knows the size better, but it's not used after
creating the window.

We also don't care about the position of the window in the screen to compute
the rect_dest.

3 years agovout:win32: simplify the code to detect size changes
Steve Lhomme [Mon, 25 Mar 2019 10:51:42 +0000 (11:51 +0100)]
vout:win32: simplify the code to detect size changes

We don't care if the position has changed. Only DirectDraw had this requirement.

3 years agovout:win32: rework the callback to get the display dimensions
Steve Lhomme [Fri, 22 Mar 2019 14:33:58 +0000 (15:33 +0100)]
vout:win32: rework the callback to get the display dimensions

We don't need a rect for that.

3 years agodirect3d11: render the texture at 0,0 in the viewport
Steve Lhomme [Mon, 25 Mar 2019 11:40:48 +0000 (12:40 +0100)]
direct3d11: render the texture at 0,0 in the viewport

We don't need to do a special case in common code.

3 years agodirect3d9: render the texture at 0,0 in the viewport
Steve Lhomme [Mon, 25 Mar 2019 11:30:52 +0000 (12:30 +0100)]
direct3d9: render the texture at 0,0 in the viewport

We don't need to do a special case in common code.

3 years agovout:win32: misc code cleaning
Steve Lhomme [Mon, 1 Apr 2019 11:10:39 +0000 (13:10 +0200)]
vout:win32: misc code cleaning

3 years agovout:wgl: do not use common.h
Steve Lhomme [Mon, 1 Apr 2019 14:13:05 +0000 (16:13 +0200)]
vout:wgl: do not use common.h

We are not using any "common" API here. We just need to store a HWND.

3 years agovout:win32: rect_display is only used for winstore
Steve Lhomme [Mon, 1 Apr 2019 09:58:25 +0000 (11:58 +0200)]
vout:win32: rect_display is only used for winstore

3 years agodirect3d11: inline the call to Manage()
Steve Lhomme [Fri, 22 Mar 2019 13:39:14 +0000 (14:39 +0100)]
direct3d11: inline the call to Manage()

3 years agodirect3d11: use the new flag telling when the display rectangle changed
Steve Lhomme [Fri, 22 Mar 2019 13:29:56 +0000 (14:29 +0100)]
direct3d11: use the new flag telling when the display rectangle changed

3 years agovout:win32: only mark the output size changed when it actually changed
Steve Lhomme [Fri, 22 Mar 2019 13:29:24 +0000 (14:29 +0100)]
vout:win32: only mark the output size changed when it actually changed

3 years agovout:win32: remove thumbnail bypassing
Steve Lhomme [Fri, 22 Mar 2019 13:17:05 +0000 (14:17 +0100)]
vout:win32: remove thumbnail bypassing

We don't need this hack anymore.

3 years agovout:win32: remove unused rect_src and associated callbacks
Steve Lhomme [Fri, 22 Mar 2019 13:11:37 +0000 (14:11 +0100)]
vout:win32: remove unused rect_src and associated callbacks

3 years agodirect3d9: use directly the decoder size in a rectangle
Steve Lhomme [Fri, 22 Mar 2019 13:04:53 +0000 (14:04 +0100)]
direct3d9: use directly the decoder size in a rectangle

Instead of using the rect_src which has the same values.
(see GetPictureWidth and GetPictureHeight)

3 years agovout:win32: log the src/dst rectangles even if the display width/height is 0
Steve Lhomme [Fri, 22 Mar 2019 13:00:11 +0000 (14:00 +0100)]
vout:win32: log the src/dst rectangles even if the display width/height is 0