← Back to team overview

openlp-core team mailing list archive

Re: [Merge] lp:~suutari-olli/openlp/click-slide-to-go-live-from-blank into lp:openlp

 

Thanks again, 

if by previous slide being shortly visible you mean it happens once you change slide inside the Live Panel
and the transition effect is applied, yes that can be changed. I've heard people complaining there's no transition effects when unblanking or changing items so maybe it should be left as it is since it would mean loosing effects.

If you were talking about this happening on song edit:
Think it would be possible but would require quite a effort, 
maybe we can let it pass for the time being, it's still mostly fixed.

I really suck at writing tests, is one enough for a rookie?

I also replied to the code comment.

Diff comments:

> 
> === modified file 'openlp/core/ui/slidecontroller.py'
> --- openlp/core/ui/slidecontroller.py	2016-02-28 20:33:19 +0000
> +++ openlp/core/ui/slidecontroller.py	2016-03-15 18:42:53 +0000
> @@ -789,11 +789,28 @@
>      def replace_service_manager_item(self, item):
>          """
>          Replacement item following a remote edit
> +        This action  also takes place when a song that is sent to live from Service Manager is edited.
> +        If display is blanked, this will update the song and then re-blank the display.
> +        As result, lyrics are flashed on screen for a very short time before re-blanking happens. (Bug)
> +        This happens only when Automatic unblanking is enabled when new item is sen to Live,
> +        if it's not enabled they won't flash.
>  
>          :param item: The current service item
>          """
>          if item == self.service_item:
> -            self._process_item(item, self.preview_widget.current_slide_number())
> +            if not self.hide_mode():
> +                self._process_item(item, self.preview_widget.current_slide_number())
> +            # "isChecked" method is required for checking blanks, on_xx_display(False) does not work.
> +            elif self.hide_mode():
> +                if self.blank_screen.isChecked():
> +                    self._process_item(item, self.preview_widget.current_slide_number())
> +                    self.on_blank_display(True)
> +                elif self.theme_screen.isChecked():
> +                    self._process_item(item, self.preview_widget.current_slide_number())
> +                    self.on_theme_display(True)
> +                elif self.desktop_screen.isChecked():
> +                    self._process_item(item, self.preview_widget.current_slide_number())
> +                    self.on_hide_display(True)

Why don't you just use the value returned by hide_mode() instead of isChecked()?

# How does this value check work?

And why not move  self._process_item(item, self.preview_widget.current_slide_number()) to the outside of the if?

# I've tried to use it both without "if not self.hide_mode(): and above if item ==  or elif self... but for some reason the display does not get re-blanked if this is not called with the if blank statements. I'm not aware of the reason why but I just can't make it work without repeating it.

Not sure if you saw my previous reply to your earlier comment: 
"
# self._process_item(item,..” must be called separately with each blank to mode, otherwise it won’t work. If display is blanked when this action occurs, it needs to be blanked to the same blank mode again. (All though I’m not sure why it does not work if it’s called once before checking for blanks)
# With hide_mode() I can check if any blank is active, but this needs to have precise match. With hide_mode(x) or.x I ran into some tracebacks but got it working with isChecked(). Is there something wrong with this method?
As for “on_blank_display(True)” it does not work for some reason.
"

>  
>      def add_service_manager_item(self, item, slide_no):
>          """


-- 
https://code.launchpad.net/~suutari-olli/openlp/click-slide-to-go-live-from-blank/+merge/289026
Your team OpenLP Core is subscribed to branch lp:openlp.


References