def get_indicator(self): options = self._options name = self._option_type.value options[Option.Name] = name options[Option.Layout] = set() if name not in EmptyIndicators: if self._option_text.enabled: options[Option.Text] = self._option_text.value or None options[Option.Layout].add(LayoutSet.Text) if self._option_image.enabled: options[Option.Image] = self._option_image.value or None options[Option.Layout].add(LayoutSet.Image) if self._option_text.enabled and self._option_image.enabled and self._reversed: options[Option.Layout].add(LayoutSet.Reversed) if LayoutSet.Text not in options[Option.Layout] and Option.Text in options: del options[Option.Text] if LayoutSet.Image not in options[Option.Layout] and Option.Image in options: del options[Option.Image] if name == Indicators.External: options[Option.Path] = self._option_path.value else: options.pop(Option.Path, None) if name == Indicators.Power and string2bool(self._option_hide_disabled.value): options[Option.HideDisabled] = None elif Option.HideDisabled in options: options.pop(Option.HideDisabled, None) return options
def on_entry_changed_greeter_allow_debugging(self, entry): gtk_version = Gtk.MAJOR_VERSION, Gtk.MINOR_VERSION, Gtk.MICRO_VERSION minimal_version = 3, 14, 0 if gtk_version < minimal_version and string2bool(entry.value): entry.error = C_('option|greeter|allow-debugging', 'GtkInspector is not available on your system\n' 'Gtk version: {current} < {minimal}').format( current=gtk_version, minimal=minimal_version) else: entry.error = None
def on_entry_changed_greeter_allow_debugging(self, entry): gtk_version = Gtk.MAJOR_VERSION, Gtk.MINOR_VERSION, Gtk.MICRO_VERSION minimal_version = 3, 14, 0 if gtk_version < minimal_version and string2bool(entry.value): entry.error = C_( 'option|greeter|allow-debugging', 'GtkInspector is not available on your system\n' 'Gtk version: {current} < {minimal}').format( current=gtk_version, minimal=minimal_version) else: entry.error = None
def main(): import argparse import locale import os from gi.repository import Gtk from lightdm_gtk_greeter_settings import helpers from lightdm_gtk_greeter_settings import GtkGreeterSettingsWindow from lightdm_gtk_greeter_settings.GtkGreeterSettingsWindow import WindowMode locale.textdomain('lightdm-gtk-greeter-settings') parser = argparse.ArgumentParser(description='LightDM Gtk+ Greeter settings editor') parser.add_argument('-s', '--socket-id', action='store', help='Settings manager socket') parser.add_argument('--use-gtk-header', action='store_const', const=True, help='Use GtkHeaderBar') parser.add_argument('--test-socket', action='store_const', const=True) args = parser.parse_args() if args.test_socket: w = Gtk.Window() w.props.title = 'Testing embedded mode' socket = Gtk.Socket.new() w.add(socket) w.show_all() args.socket_id = socket.get_id() try: socket_id = int(args.socket_id or '') except ValueError: socket_id = None if socket_id: window = GtkGreeterSettingsWindow.GtkGreeterSettingsWindow(WindowMode.Embedded) plug = Gtk.Plug.new(socket_id) plug.connect('delete-event', Gtk.main_quit) plug.show() content = window.builder.get_object('content_box') content.reparent(plug) Gtk.main() else: if args.use_gtk_header is None: args.use_gtk_header = helpers.string2bool(os.getenv('GTK_CSD'), False) elif args.use_gtk_header: os.putenv('GTK_CSD', '1') window_mode = WindowMode.Default if args.use_gtk_header: window_mode = WindowMode.GtkHeader window = GtkGreeterSettingsWindow.GtkGreeterSettingsWindow(mode=window_mode) window.show() Gtk.main()
def get_indicator(self): options = self._options name = self._option_type.value options[Option.Name] = name options[Option.Layout] = set() if name not in EmptyIndicators: if self._option_text.enabled: options[Option.Text] = self._option_text.value or None options[Option.Layout].add(LayoutSet.Text) if self._option_image.enabled: options[Option.Image] = self._option_image.value or None options[Option.Layout].add(LayoutSet.Image) if self._option_text.enabled and self._option_image.enabled and self._reversed: options[Option.Layout].add(LayoutSet.Reversed) if LayoutSet.Text not in options[ Option.Layout] and Option.Text in options: del options[Option.Text] if LayoutSet.Image not in options[ Option.Layout] and Option.Image in options: del options[Option.Image] if name == Indicators.External: options[Option.Path] = self._option_path.value else: options.pop(Option.Path, None) if name == Indicators.Power and string2bool( self._option_hide_disabled.value): options[Option.HideDisabled] = None elif Option.HideDisabled in options: options.pop(Option.HideDisabled, None) return options
def main(): import argparse import locale import os from gi.repository import Gtk from lightdm_gtk_greeter_settings import helpers from lightdm_gtk_greeter_settings import GtkGreeterSettingsWindow from lightdm_gtk_greeter_settings.GtkGreeterSettingsWindow import WindowMode locale.textdomain('lightdm-gtk-greeter-settings') parser = argparse.ArgumentParser( description='LightDM Gtk+ Greeter settings editor') parser.add_argument('-s', '--socket-id', action='store', help='Settings manager socket') parser.add_argument('--use-gtk-header', action='store_const', const=True, help='Use GtkHeaderBar') parser.add_argument('--test-socket', action='store_const', const=True) args = parser.parse_args() if args.test_socket: w = Gtk.Window() w.props.title = 'Testing embedded mode' socket = Gtk.Socket.new() w.add(socket) w.show_all() args.socket_id = socket.get_id() try: socket_id = int(args.socket_id or '') except ValueError: socket_id = None if socket_id: window = GtkGreeterSettingsWindow.GtkGreeterSettingsWindow( WindowMode.Embedded) plug = Gtk.Plug.new(socket_id) plug.connect('delete-event', Gtk.main_quit) plug.show() content = window.builder.get_object('content_box') content.reparent(plug) Gtk.main() else: if args.use_gtk_header is None: args.use_gtk_header = helpers.string2bool(os.getenv('GTK_CSD'), False) elif args.use_gtk_header: os.putenv('GTK_CSD', '1') window_mode = WindowMode.Default if args.use_gtk_header: window_mode = WindowMode.GtkHeader window = GtkGreeterSettingsWindow.GtkGreeterSettingsWindow( mode=window_mode) window.show() Gtk.main()
def _set_value(self, value): self._value.props.active = not string2bool(value)