Merge lp:~springermac/openlp/transparent-display into lp:openlp

Proposed by Jonathan Springer
Status: Work in progress
Proposed branch: lp:~springermac/openlp/transparent-display
Merge into: lp:openlp
Diff against target: 121 lines (+35/-0)
4 files modified
openlp/core/lib/htmlbuilder.py (+18/-0)
openlp/core/ui/__init__.py (+2/-0)
openlp/core/ui/maindisplay.py (+6/-0)
tests/functional/openlp_core_lib/test_htmlbuilder.py (+9/-0)
To merge this branch: bzr merge lp:~springermac/openlp/transparent-display
Reviewer Review Type Date Requested Status
OpenLP Core Pending
Review via email: mp+233995@code.launchpad.net

This proposal supersedes a proposal from 2014-09-09.

Description of the change

This merge proposal is for comment only and contains no added tests.

Add the ability to have a completely transparent display or a display with a transparent background.

To post a comment you must log in.

Unmerged revisions

2421. By Jonathan Springer

Remove extra spaces

2420. By Jonathan Springer

Update htmbuilder docstring and htmbuilder test to reflect changes to code

2419. By Jonathan Springer

Add the ability to make the display completely transparent or to make only the background transparent

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'openlp/core/lib/htmlbuilder.py'
--- openlp/core/lib/htmlbuilder.py 2014-07-21 06:37:41 +0000
+++ openlp/core/lib/htmlbuilder.py 2014-09-09 20:19:02 +0000
@@ -303,6 +303,7 @@
303 function show_blank(state){303 function show_blank(state){
304 var black = 'none';304 var black = 'none';
305 var lyrics = '';305 var lyrics = '';
306 var background = 'black';
306 switch(state){307 switch(state){
307 case 'theme':308 case 'theme':
308 lyrics = 'hidden';309 lyrics = 'hidden';
@@ -312,11 +313,19 @@
312 break;313 break;
313 case 'desktop':314 case 'desktop':
314 break;315 break;
316 case 'transparent-theme':
317 background = 'transparent';
318 break;
319 case 'transparent-display':
320 lyrics = 'hidden';
321 background = 'transparent';
322 break;
315 }323 }
316 document.getElementById('black').style.display = black;324 document.getElementById('black').style.display = black;
317 document.getElementById('lyricsmain').style.visibility = lyrics;325 document.getElementById('lyricsmain').style.visibility = lyrics;
318 document.getElementById('image').style.visibility = lyrics;326 document.getElementById('image').style.visibility = lyrics;
319 document.getElementById('footer').style.visibility = lyrics;327 document.getElementById('footer').style.visibility = lyrics;
328 document.getElementsByTagName('body')[0].style.backgroundColor = background;
320 }329 }
321330
322 function show_footer(footertext){331 function show_footer(footertext){
@@ -469,6 +478,7 @@
469 function show_blank(state){478 function show_blank(state){
470 var black = 'none';479 var black = 'none';
471 var lyrics = '';480 var lyrics = '';
481 var background = 'black';
472 switch(state){482 switch(state){
473 case 'theme':483 case 'theme':
474 lyrics = 'hidden';484 lyrics = 'hidden';
@@ -478,11 +488,19 @@
478 break;488 break;
479 case 'desktop':489 case 'desktop':
480 break;490 break;
491 case 'transparent-theme':
492 background = 'transparent';
493 break;
494 case 'transparent-display':
495 lyrics = 'hidden';
496 background = 'transparent';
497 break;
481 }498 }
482 document.getElementById('black').style.display = black;499 document.getElementById('black').style.display = black;
483 document.getElementById('lyricsmain').style.visibility = lyrics;500 document.getElementById('lyricsmain').style.visibility = lyrics;
484 document.getElementById('image').style.visibility = lyrics;501 document.getElementById('image').style.visibility = lyrics;
485 document.getElementById('footer').style.visibility = lyrics;502 document.getElementById('footer').style.visibility = lyrics;
503 document.getElementsByTagName('body')[0].style.backgroundColor = background;
486 }504 }
487505
488 function show_footer(footertext){506 function show_footer(footertext){
489507
=== modified file 'openlp/core/ui/__init__.py'
--- openlp/core/ui/__init__.py 2014-02-27 21:39:44 +0000
+++ openlp/core/ui/__init__.py 2014-09-09 20:19:02 +0000
@@ -49,6 +49,8 @@
49 Blank = 149 Blank = 1
50 Theme = 250 Theme = 2
51 Screen = 351 Screen = 3
52 TransparentTheme = 4
53 TransparentDisplay = 5
5254
5355
54class AlertLocation(object):56class AlertLocation(object):
5557
=== modified file 'openlp/core/ui/maindisplay.py'
--- openlp/core/ui/maindisplay.py 2014-08-27 23:18:06 +0000
+++ openlp/core/ui/maindisplay.py 2014-09-09 20:19:02 +0000
@@ -427,6 +427,12 @@
427 if mode == HideMode.Screen:427 if mode == HideMode.Screen:
428 self.frame.evaluateJavaScript('show_blank("desktop");')428 self.frame.evaluateJavaScript('show_blank("desktop");')
429 self.setVisible(False)429 self.setVisible(False)
430 elif mode == HideMode.TransparentTheme:
431 self.frame.evaluateJavaScript('show_blank("transparent-theme");')
432 self.set_transparency(True)
433 elif mode == HideMode.TransparentDisplay:
434 self.frame.evaluateJavaScript('show_blank("transparent-display");')
435 self.set_transparency(True)
430 elif mode == HideMode.Blank or self.initial_fame:436 elif mode == HideMode.Blank or self.initial_fame:
431 self.frame.evaluateJavaScript('show_blank("black");')437 self.frame.evaluateJavaScript('show_blank("black");')
432 else:438 else:
433439
=== modified file 'tests/functional/openlp_core_lib/test_htmlbuilder.py'
--- tests/functional/openlp_core_lib/test_htmlbuilder.py 2014-07-24 21:57:16 +0000
+++ tests/functional/openlp_core_lib/test_htmlbuilder.py 2014-09-09 20:19:02 +0000
@@ -79,6 +79,7 @@
79 function show_blank(state){79 function show_blank(state){
80 var black = 'none';80 var black = 'none';
81 var lyrics = '';81 var lyrics = '';
82 var background = 'black';
82 switch(state){83 switch(state){
83 case 'theme':84 case 'theme':
84 lyrics = 'hidden';85 lyrics = 'hidden';
@@ -88,11 +89,19 @@
88 break;89 break;
89 case 'desktop':90 case 'desktop':
90 break;91 break;
92 case 'transparent-theme':
93 background = 'transparent';
94 break;
95 case 'transparent-display':
96 lyrics = 'hidden';
97 background = 'transparent';
98 break;
91 }99 }
92 document.getElementById('black').style.display = black;100 document.getElementById('black').style.display = black;
93 document.getElementById('lyricsmain').style.visibility = lyrics;101 document.getElementById('lyricsmain').style.visibility = lyrics;
94 document.getElementById('image').style.visibility = lyrics;102 document.getElementById('image').style.visibility = lyrics;
95 document.getElementById('footer').style.visibility = lyrics;103 document.getElementById('footer').style.visibility = lyrics;
104 document.getElementsByTagName('body')[0].style.backgroundColor = background;
96 }105 }
97106
98 function show_footer(footertext){107 function show_footer(footertext){