_info->Show (_mode != Config::PLAYER_MODE_FULL);
_overall_panel->SetBackgroundColour (_mode == Config::PLAYER_MODE_FULL ? wxColour(0, 0, 0) : wxNullColour);
ShowFullScreen (_mode == Config::PLAYER_MODE_FULL);
+ _viewer->set_pad_black (_mode != Config::PLAYER_MODE_WINDOW);
if (_mode == Config::PLAYER_MODE_DUAL) {
_dual_screen = new wxFrame (this, wxID_ANY, wxT(""));
, _closed_captions_dialog (new ClosedCaptionsDialog(p))
, _outline_content (false)
, _eyes (EYES_LEFT)
+ , _pad_black (false)
#ifdef DCPOMATIC_VARIANT_SWAROOP
, _in_watermark (false)
#endif
if (_out_size.width < _panel_size.width) {
/* XXX: these colours are right for GNOME; may need adjusting for other OS */
- wxPen p (wxColour (240, 240, 240));
- wxBrush b (wxColour (240, 240, 240));
+ wxPen p (_pad_black ? wxColour(0, 0, 0) : wxColour(240, 240, 240));
+ wxBrush b (_pad_black ? wxColour(0, 0, 0) : wxColour(240, 240, 240));
dc.SetPen (p);
dc.SetBrush (b);
dc.DrawRectangle (_out_size.width, 0, _panel_size.width - _out_size.width, _panel_size.height);
}
if (_out_size.height < _panel_size.height) {
- wxPen p (wxColour (240, 240, 240));
- wxBrush b (wxColour (240, 240, 240));
+ wxPen p (_pad_black ? wxColour(0, 0, 0) : wxColour(240, 240, 240));
+ wxBrush b (_pad_black ? wxColour(0, 0, 0) : wxColour(240, 240, 240));
dc.SetPen (p);
dc.SetBrush (b);
int const gap = (_panel_size.height - _out_size.height) / 2;
{
seek (_video_position + by, accurate);
}
+
+void
+FilmViewer::set_pad_black (bool p)
+{
+ _pad_black = p;
+}
boost::optional<int> dcp_decode_reduction () const;
void set_outline_content (bool o);
void set_eyes (Eyes e);
+ void set_pad_black (bool p);
void slow_refresh ();
bool _outline_content;
Eyes _eyes;
+ /** true to pad the viewer panel with black, false to use
+ the normal window background colour.
+ */
+ bool _pad_black;
#ifdef DCPOMATIC_VARIANT_SWAROOP
bool _in_watermark;