Adds helper method createItemsFromExternalPasteboard: returning
an array of file items from the pasteboard.
performDragOperation: in VLCCoreInteraction is the now only place
where we try to add the dropped file as a subtitle.
This renames the playlist related class files to match the class name,
which makes it easier to find the which belongs to a certain class and
follows common Cocoa/Obj C file naming conventions.
Signed-off-by: Felix Paul Kühne <fkuehne@videolan.org>
The current playlist model directly operates on the core playlist
datastructures without proper locking for a complete playlist table
reload/update. This resulted in various ugly hacks and workarounds.
The new playlist model encapsulates the data in own objects like
in the qt interface. This allows a much easier integration with
the table view and proper updates from the core playlist.
This way, the previous playlist objects, stored in an ugly map with
pointer strings as keys, pointing to the same pointer inside a
NSValue, is obsolete finally. :-)
- Use the new VLCDragDropView for both CAS and main window drop zone.
This implements a drop highlight border the same way as in playlist view.
- Remove Brushed Metal Image view and its own drop implementation.
When having a image view inside a drop zone, you need to use
VLCDropDisabledImageView which disables the own drop handling of NSImageView.
- Removed more unneeded drop implementations for subviews from CAS
This reverts commit 00b2fcce88.
[__MNSArray objectAtIndexedSubscript] isn't part of the OS X 10.7 ObjC runtime and in turn, we can't use this feature of the modern ObjC syntax until we drop support for 10.7 some day
Now, everything from the video menu and the basic stuff like fullscreen
should work. If it does'nt (e.g. fullscreen and resize with video-splitter module enabled)
please blame the core first. ;-)
TODO: There might be some getVout()-calls left which should be investigated.
close#6814
Now, every video window is responsible for the fullscreen handling for its own.
Furthermore, fullscreen now acts entirely in response to vout events, and not over the
playlist fullscreen variable callback anymore.
Native fullscreen mode should also work correctly, but of course only
for embedded video in mainwindow.