~jamiebennett/entertainer/bug-372452-disable-screensaver

« back to all changes in this revision

Viewing changes to entertainerlib/frontend/gui/user_interface.py

  • Committer: Paul Hummer
  • Date: 2009-06-29 04:11:31 UTC
  • mfrom: (378.3.13 reactive_videoOSD)
  • Revision ID: paul@eventuallyanyway.com-20090629041131-kv4na4byjgdrghgy
The video screen is now reactive to pointer events. (Samuel Buffet)

Show diffs side-by-side

added added

removed removed

Lines of Context:
94
94
            self.config.get_stage_width(), self.config.get_stage_height())
95
95
 
96
96
        # Initialize menu overlay texture
97
 
        self.overlay_status = False
 
97
        self.is_overlay = False
98
98
        self.menu_overlay = MenuOverlay(self.config.theme)
99
99
        self.menu_overlay.set_opacity(0)
100
 
        self.menu_overlay.set_name("overlay")
101
100
        self.menu_overlay.set_size(
102
101
            self.config.get_stage_width(), self.config.get_stage_height())
103
102
        self.stage.add(self.menu_overlay)
258
257
        a video playing and menu showing at the same time. Overlay is not part
259
258
        of any specific screen. It is used for all screens when neccesary.
260
259
        """
261
 
        self.overlay_status = True
262
 
        if self.config.show_effects():
 
260
        if not self.is_overlay:
 
261
            self.is_overlay = True
263
262
            self.menu_overlay.fade_in()
264
 
        else:
265
 
            self.menu_overlay.set_opacity(255)
 
263
            self.player.is_reactive_allowed = False
266
264
 
267
265
    def disable_menu_overlay(self):
268
266
        """
269
267
        Disable menu overlay. Overlay should be disabled when current screen is
270
268
        a type of Screen.OSD.
271
269
        """
272
 
        self.overlay_status = False
273
 
        if self.config.show_effects():
 
270
        if self.is_overlay:
 
271
            self.is_overlay = False
274
272
            self.menu_overlay.fade_out()
275
 
        else:
276
 
            self.menu_overlay.set_opacity(0)
277
 
 
278
 
    def is_overlay(self):
279
 
        """
280
 
        Get menu overlay status.
281
 
        @return boolean value. True if menu overlay is active, otherwise False.
282
 
        """
283
 
        return self.overlay_status
 
273
            self.player.is_reactive_allowed = True
284
274
 
285
275
    def change_screen(self, screen, direction):
286
276
        '''Transition the given screen in the direction provided.'''
287
277
        # Enable/Disable menu overlay
288
 
        if screen.kind == Screen.OSD and self.is_overlay():
 
278
        if screen.kind == Screen.OSD:
289
279
            self.disable_menu_overlay()
290
 
        elif screen.kind != Screen.OSD and not self.is_overlay():
 
280
        else:
291
281
            self.enable_menu_overlay()
292
282
 
293
283
        # Add current screen to screen history
367
357
        if self.current.is_interested_in_play_action():
368
358
            self.current.execute_play_action()
369
359
        else:
370
 
            if self.player.is_playing():
 
360
            if self.player.is_playing:
371
361
                self.player.pause()
372
362
                self.current.handle_user_event(event)
373
363
            else:
390
380
 
391
381
    def _handle_player_stop(self, event):
392
382
        '''Handle UserEvent.PLAYER_STOP.'''
393
 
        if self.player.is_playing():
 
383
        if self.player.is_playing:
394
384
            self.player.stop()
395
385
            self.current.handle_user_event(event)
396
386