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
1=== modified file 'openlp/core/lib/htmlbuilder.py'
2--- openlp/core/lib/htmlbuilder.py 2014-07-21 06:37:41 +0000
3+++ openlp/core/lib/htmlbuilder.py 2014-09-09 20:19:02 +0000
4@@ -303,6 +303,7 @@
5 function show_blank(state){
6 var black = 'none';
7 var lyrics = '';
8+ var background = 'black';
9 switch(state){
10 case 'theme':
11 lyrics = 'hidden';
12@@ -312,11 +313,19 @@
13 break;
14 case 'desktop':
15 break;
16+ case 'transparent-theme':
17+ background = 'transparent';
18+ break;
19+ case 'transparent-display':
20+ lyrics = 'hidden';
21+ background = 'transparent';
22+ break;
23 }
24 document.getElementById('black').style.display = black;
25 document.getElementById('lyricsmain').style.visibility = lyrics;
26 document.getElementById('image').style.visibility = lyrics;
27 document.getElementById('footer').style.visibility = lyrics;
28+ document.getElementsByTagName('body')[0].style.backgroundColor = background;
29 }
30
31 function show_footer(footertext){
32@@ -469,6 +478,7 @@
33 function show_blank(state){
34 var black = 'none';
35 var lyrics = '';
36+ var background = 'black';
37 switch(state){
38 case 'theme':
39 lyrics = 'hidden';
40@@ -478,11 +488,19 @@
41 break;
42 case 'desktop':
43 break;
44+ case 'transparent-theme':
45+ background = 'transparent';
46+ break;
47+ case 'transparent-display':
48+ lyrics = 'hidden';
49+ background = 'transparent';
50+ break;
51 }
52 document.getElementById('black').style.display = black;
53 document.getElementById('lyricsmain').style.visibility = lyrics;
54 document.getElementById('image').style.visibility = lyrics;
55 document.getElementById('footer').style.visibility = lyrics;
56+ document.getElementsByTagName('body')[0].style.backgroundColor = background;
57 }
58
59 function show_footer(footertext){
60
61=== modified file 'openlp/core/ui/__init__.py'
62--- openlp/core/ui/__init__.py 2014-02-27 21:39:44 +0000
63+++ openlp/core/ui/__init__.py 2014-09-09 20:19:02 +0000
64@@ -49,6 +49,8 @@
65 Blank = 1
66 Theme = 2
67 Screen = 3
68+ TransparentTheme = 4
69+ TransparentDisplay = 5
70
71
72 class AlertLocation(object):
73
74=== modified file 'openlp/core/ui/maindisplay.py'
75--- openlp/core/ui/maindisplay.py 2014-08-27 23:18:06 +0000
76+++ openlp/core/ui/maindisplay.py 2014-09-09 20:19:02 +0000
77@@ -427,6 +427,12 @@
78 if mode == HideMode.Screen:
79 self.frame.evaluateJavaScript('show_blank("desktop");')
80 self.setVisible(False)
81+ elif mode == HideMode.TransparentTheme:
82+ self.frame.evaluateJavaScript('show_blank("transparent-theme");')
83+ self.set_transparency(True)
84+ elif mode == HideMode.TransparentDisplay:
85+ self.frame.evaluateJavaScript('show_blank("transparent-display");')
86+ self.set_transparency(True)
87 elif mode == HideMode.Blank or self.initial_fame:
88 self.frame.evaluateJavaScript('show_blank("black");')
89 else:
90
91=== modified file 'tests/functional/openlp_core_lib/test_htmlbuilder.py'
92--- tests/functional/openlp_core_lib/test_htmlbuilder.py 2014-07-24 21:57:16 +0000
93+++ tests/functional/openlp_core_lib/test_htmlbuilder.py 2014-09-09 20:19:02 +0000
94@@ -79,6 +79,7 @@
95 function show_blank(state){
96 var black = 'none';
97 var lyrics = '';
98+ var background = 'black';
99 switch(state){
100 case 'theme':
101 lyrics = 'hidden';
102@@ -88,11 +89,19 @@
103 break;
104 case 'desktop':
105 break;
106+ case 'transparent-theme':
107+ background = 'transparent';
108+ break;
109+ case 'transparent-display':
110+ lyrics = 'hidden';
111+ background = 'transparent';
112+ break;
113 }
114 document.getElementById('black').style.display = black;
115 document.getElementById('lyricsmain').style.visibility = lyrics;
116 document.getElementById('image').style.visibility = lyrics;
117 document.getElementById('footer').style.visibility = lyrics;
118+ document.getElementsByTagName('body')[0].style.backgroundColor = background;
119 }
120
121 function show_footer(footertext){