def __init__(self, **kwargs): super(GreeterApp, self).__init__(**kwargs) self.password = "" self.session = "" # Connect to lightDM install_gobject_iteration() self.greeter = LightDM.Greeter() self.greeter.connect("authentication-complete", self.authentication_complete_cb) self.greeter.connect("show-prompt", self.show_prompt_cb) self.greeter.connect_sync() # Get all available sessions available_sessions = [] for sess in LightDM.get_sessions(): available_sessions.append(LightDM.Session.get_key(sess)) # Get all available users available_users = [] inst = LightDM.UserList.get_instance() for user in LightDM.UserList.get_users(inst): user_name = LightDM.User.get_name(user) available_users.append(user_name) self.root_widget = Builder.load_string(kv) self.root_widget.username_spinner.values = available_users self.root_widget.session_spinner.values = available_sessions
def build(self): install_gobject_iteration() self.view = BaseView() # Bind events self.view.ids.control_bar.bind(on_screen_switch=self.on_screen_switch) return self.view
def __init__(self, dummy=False): install_gobject_iteration() self.dummy = dummy bus = pydbus.SystemBus() self.bus = bus self.bluez = bus.get('org.bluez', '/') self.ofono = bus.get('org.ofono', '/') self.bluez.InterfacesAdded.connect(self.on_interfaces_added) self.bluez.InterfacesRemoved.connect(self.on_interfaces_removed) self.get_interfaces() self.get_modems()
def build(self): install_gobject_iteration() self.bluetooth = BluetoothManager() self.hfp = HFPManager(self.bluetooth) self.a2dp = A2DPManager(self.bluetooth) self.pbap = PhonebookManager(self.bluetooth, self.hfp) self.canbus = CANBus(self) self.a2dp.bind(connected=self.on_connected_change) #self.hfp.bind(status=self.on_call_status_change) self.hfp.bind(attention=self.on_hfp_attention_change) view = BaseView() self.statusbar = view.ids.statusbar self.statusbar.set_app(self) self.statusbar.set_title('Home') self.controlbar = view.ids.controlbar self.controlbar.ids.phone.bind(on_press=self.on_screen_switch) self.controlbar.ids.home.bind(on_press=self.on_screen_switch) self.controlbar.ids.music.bind(on_press=self.on_screen_switch) self.controlbar.ids.settings.bind(on_press=self.on_screen_switch) screenmanager = view.ids.screenmanager screenmanager.add_widget(MusicScreen(name='musicscreen', a2dp=self.a2dp, app=self)) screenmanager.add_widget(ContactScreen(name='contactscreen', pbap=self.pbap, hfp=self.hfp)) screenmanager.add_widget(HomeScreen(name='homescreen', app=self)) screenmanager.add_widget(PhoneScreen(name='phonescreen', hfp=self.hfp, pbap=self.pbap)) screenmanager.add_widget(SettingsScreen(name='settingsscreen')) screenmanager.current = 'settingsscreen' # screenmanager.transition = CardTransition() screenmanager.transition.duration = .1 self.sm = screenmanager self.screen_names = {'musicscreen': 'Music', 'contactscreen': 'Phone', 'homescreen': 'Home', 'phonescreen': 'Call', 'settingsscreen': 'Settings'} # self.on_connected_change(self, self.a2dp.connected) self.previous_screen = 'homescreen' return view
from os import path from threading import Lock if PY2: from urllib import pathname2url else: from urllib.request import pathname2url from kivy.graphics.texture import Texture from kivy.logger import Logger from functools import partial from weakref import ref from kivy.core.video import VideoBase # install the gobject iteration from kivy.support import install_gobject_iteration install_gobject_iteration() BUF_SAMPLE = 'buffer' _VIDEO_CAPS = ','.join([ 'video/x-raw-rgb', 'red_mask=(int)0xff0000', 'green_mask=(int)0x00ff00', 'blue_mask=(int)0x0000ff']) if not PY2: gst.init(None) gst.STATE_NULL = gst.State.NULL gst.STATE_READY = gst.State.READY gst.STATE_PLAYING = gst.State.PLAYING gst.STATE_PAUSED = gst.State.PAUSED gst.FORMAT_TIME = gst.Format.TIME
from kivy.clock import Clock from kivy.graphics.texture import Texture from kivy.core.camera import CameraBase try: import pygst if not hasattr(pygst, '_gst_already_checked'): pygst.require('0.10') pygst._gst_already_checked = True import gst except: raise # install the gobject iteration from kivy.support import install_gobject_iteration install_gobject_iteration() class CameraPyGst(CameraBase): '''Implementation of CameraBase using GStreamer :Parameters: `video_src`: str, default is 'v4l2src' Other tested options are: 'dc1394src' for firewire dc camera (e.g. firefly MV). Any gstreamer video source should potentially work. Theoretically a longer string using "!" can be used describing the first part of a gstreamer pipeline. ''' def __init__(self, **kwargs): self._pipeline = None
def init(self): if self._is_init: return install_gobject_iteration() self._is_init = True