%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/self/root/usr/share/ibus/setup/__pycache__/
Upload File :
Create Path :
Current File : //proc/self/root/usr/share/ibus/setup/__pycache__/main.cpython-312.pyc

�

FQ	f%��	�,�ddlmZddlZddlZddlZddlZddlZddlmZ	e	dd�e	dd�e	dd�e	d	d�e	d
d�ddl
mZejd
�ddl
m
Z
ddl
mZddl
mZddl
mZddlmZddlZddlZddlZddlmZddlmZddlmZddlmZddlmZddlmZm Z m!Z!e"e#d��\Z$Z%Z&Z'Z(Z)e"e#d��\	Z*Z+Z,Z-Z.Z/Z0Z1Z2Gd�de3�Z4e5dk(rZ	ejlejnd�ejve�ejvd"�e4�Z<e<j{�yy#ejp$r4e9dejt� �ejlejnd!�Y�wxYw)#�)�print_functionN)�require_version�GLibz2.0�GdkX11z3.0�Gio�Gtk�IBusz1.0)rz
ibus-setup)r)r)r)r	)�path)�EmojiLangButton)�EngineComboBox)�EngineDialog)�EngineTreeView)�EngineAbout)�
DOMAINNAME�_�N_��	c���eZdZd�Z�fd�Zd�Zdd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z�xZS)�Setupc��tj�r*tj�tj�r�)yy�N)r�events_pending�main_iteration��selfs �/usr/share/ibus/setup/main.py�__flush_gtk_eventszSetup.__flush_gtk_eventsTs(��� � �"���� �� � �"�c�z��tt|��tjd��|_tjd��|_tjd��|_tjd��|_d|_	|j�ttd�|_
tjtj t"�d�}tj$�|_|j&j)t*�|j&j-|�|j/�y)Nzorg.freedesktop.ibus.general)�schemaz#org.freedesktop.ibus.general.hotkeyzorg.freedesktop.ibus.panelz org.freedesktop.ibus.panel.emoji�ListBoxz
./setup.ui)�superr�__init__r�Settings�_Setup__settings_general�_Setup__settings_hotkey�_Setup__settings_panel�_Setup__settings_emoji�_Setup__bus�_Setup__init_bus�hasattrr�_Setup__has_list_boxr
�join�dirname�__file__�Builder�_Setup__builder�set_translation_domainr�
add_from_file�_Setup__init_ui)r�gtk_builder_file�	__class__s  �rr$zSetup.__init__Xs����
�e�T�#�%�"%�,�,�7�#9���!$���>�"@��� #���5�!7��� #���;�!=�����
�����&�c�9�5����9�9�T�\�\�(�%;�\�J�����������-�-�j�9����$�$�%5�6����rc��d}d}td�}|j|||�d}d}|j||�d}d}|j||�y)N�triggers�
switch_engine�>Use shortcut with shift to switch to the previous input method�emoji�emoji_dialog�unicode�unicode_dialog)r�_Setup__init_hotkey)r�name�label�comments    r�__init_hotkeyszSetup.__init_hotkeysvs`������
�N�O�	����4���0��������4��'��� �����4��'rc��|dk(r|jjd�}n<|dk(r|jjd�}n|jj|�}|jj	d|z�}|jj	d|z�}|jdj
|��dj
|�}|dk7r|d|zz
}|j|�|dk(r$|jd	|jdd
|z||�y|dk(r!|jd	|jdd||�y|jd	|j|d||�y)
Nr<�hotkeyr>zunicode-hotkeyz	button_%szentry_%s�; �
�clickedzpanel/�panel/emojizgeneral/hotkey)
r)�get_strvr'r2�
get_object�set_textr.�set_tooltip_text�connect�"_Setup__shortcut_button_clicked_cb)rrArBrC�	shortcuts�button�entry�tooltips        r�
__init_hotkeyzSetup.__init_hotkey�s@���7�?��-�-�6�6�x�@�I�
�Y�
��-�-�6�6�7G�H�I��.�.�7�7��=�I����*�*�;��+>�?�����)�)�*�u�*<�=��
���t�y�y��+�,��)�)�I�&���d�?��t�g�~�%�G�
���w�'��7�?��N�N�9�d�&G�&G��h��o�u�e�
=�
�Y�
��N�N�9�d�&G�&G�$�m�U�E�
C�
�N�N�9�d�&G�&G��*�E�5�
:rc�
���jjd��_�jj	d�jdt
jj��jjd��_�jj	d�jdt
jj��jjd��_	�jjd��jjd��_�jj	d	�jdt
jj��jjd
��_�jj	d�jdt
jj��jj	d	�jd
t
jj��jjd��_�jjd��_�jjd��_�fd�}|dd��jj	d�j dt
jj��jj#d|��jj	d�jd
t
jj��jj#d�j$��jjd��_�jjd��_�jjd��_�fd�}|dd��jj	d�j*dt
jj��jj#d|��jj	d�j(d
t
jj��j(j#d�j,��jjd��_�jj	d�j.dt
jj��jjd��_�jj	d �j0dt
jj��jjd!��_�jj	d"�j2dt
jj�y)#N�!combobox_lookup_table_orientationzlookup-table-orientation�active�combobox_panel_show�show�combobox_panel_position��checkbutton_custom_fontzuse-custom-font�fontbutton_custom_fontzcustom-font�	font-name�	sensitive�model_custom_theme�combobox_custom_theme�checkbutton_custom_themec�����j�}�jj�|D]}�jj|g�� �jj|�}	|j
|�}�jj|�y#t$rJ�jj|��jj|�}|j
|�}Y�nwxYwr)�!_Setup__init_available_gtk_themes�_Setup__model_custom_theme�clear�appendr(�
get_string�index�
ValueError�reset�_Setup__combobox_custom_theme�
set_active)�settings�key�theme_name_listrA�
current_theme�current_theme_numberrs      �r�update_combobox_custom_themez8Setup.__init_panel.<locals>.update_combobox_custom_theme�s����"�>�>�@�O��%�%�+�+�-�'�
9���)�)�0�0�$��8�
9� �1�1�<�<�S�A�M�
L�'6�'<�'<�]�'K�$�

�(�(�3�3�4H�I��	�
L��%�%�+�+�C�0� $� 5� 5� @� @�� E�
�'6�'<�'<�]�'K�$�
L���+B�AC+�*C+�custom-themezuse-custom-themezchanged::custom-theme�changed�model_custom_icon�combobox_custom_icon�checkbutton_custom_iconc�����j�}�jj�|D]}�jj|g�� �jj|�}	|j
|�}�jj|�y#t$rJ�jj|��jj|�}|j
|�}Y�nwxYwr)� _Setup__init_available_gtk_icons�_Setup__model_custom_iconrgrhr(rirjrkrl�_Setup__combobox_custom_iconrn)rorp�icon_name_listrA�current_icon�current_icon_numberrs      �r�update_combobox_custom_iconz7Setup.__init_panel.<locals>.update_combobox_custom_icon�s����!�<�<�>�N��$�$�*�*�,�&�
8���(�(�/�/���7�
8��0�0�;�;�C�@�L�
I�&4�&:�&:�<�&H�#�

�'�'�2�2�3F�G��	�
I��%�%�+�+�C�0�#�4�4�?�?��D��&4�&:�&:�<�&H�#�
I�ru�custom-iconzuse-custom-iconzchanged::custom-icon� checkbutton_show_icon_on_systrayzshow-icon-on-systray�checkbutton_show_im_namezshow-im-name�&checkbutton_use_glyph_from_engine_langzuse-glyph-from-engine-lang)r2rL�)_Setup__combobox_lookup_table_orientationr(�bindr�SettingsBindFlags�DEFAULT�_Setup__combobox_panel_show�_Setup__combobox_panel_positionrn�_Setup__checkbutton_custom_font�_Setup__fontbutton_custom_font�GETrfrm� _Setup__checkbutton_custom_themerO�(_Setup__on_combobox_custom_theme_changedr}r~�_Setup__checkbutton_custom_icon�'_Setup__on_combobox_custom_icon_changed�(_Setup__checkbutton_show_icon_on_systray� _Setup__checkbutton_show_im_name�*_Setup__checkbutton_glyph_from_engine_lang)rrtr�s`  r�__init_panelzSetup.__init_panel�s����37�>�>�3L�3L�3�45��0����"�"�#=�#'�#K�#K�#+�#&�#8�#8�#@�#@�	B�&*�^�^�%>�%>�%�&'��"����"�"�6�#'�#=�#=�#+�#&�#8�#8�#@�#@�	B�*.���)B�)B�)�*+��&��&�&�1�1�!�4�*.���)B�)B�)�*+��&����"�"�#4�#'�#A�#A�#+�#&�#8�#8�#@�#@�	B�
)-���(A�(A�(�)*��%����"�"�=�$(�$A�$A�#.�#&�#8�#8�#@�#@�	B�	
���"�"�#4�$(�$A�$A�#.�#&�#8�#8�#<�#<�	>�%)�N�N�$=�$=�$�%&��!�'+�~�~�'@�'@�'�()��$�*.�.�.�*C�*C�*�+,��'�	J�	%�T�>�:����"�"�#5�#'�#B�#B�#+�#&�#8�#8�#@�#@�	B�	
���%�%�&=�#?�	A����"�"�#5�#'�#?�#?�#.�#&�#8�#8�#@�#@�	B�	
�$�$�,�,�Y�#'�#J�#J�	L�
$(�>�>�#<�#<�#�$%�� �&*�n�n�&?�&?�&�'(��#�)-���)B�)B�)�*+��&�	H�	$�D�-�8����"�"�#4�#'�#A�#A�#+�#&�#8�#8�#@�#@�	B�	
���%�%�&<�#>�	@����"�"�#4�#'�#>�#>�#.�#&�#8�#8�#@�#@�	B�	
�#�#�+�+�I�#'�#I�#I�	K�37�.�.�2K�2K�2�34��/����"�"�#9�#'�#J�#J�#+�#&�#8�#8�#@�#@�	B�+/�.�.�*C�*C�*�+,��'����"�"�>�#'�#B�#B�#+�#&�#8�#8�#@�#@�	B�
59�N�N�4M�4M�8�5:��1����"�"�#?�#'�#L�#L�#+�#&�#8�#8�#@�#@�	Brc����jjd��_�jj	d�jdt
jj��jjd��_�jj	d�jdt
jj��jjd��_	�jj	d�jdt
jj��jj��_�jjd��_
�jr6�jjd	��jj!�n%�jj#�j�i}�jD]}|||j%�<��jj'd
�}|D�cgc]}||vs�||��}}�jjd��_�j(j#|��jjd�}�jr.|j+d	�|j-d
�j.�n|j-d
�j0��jjd�}|j-d
�fd���jjd�}|j-d
�fd���jjd�}|j-d
�fd���jjd�}|j-d
�j2�i�_�jjd�}|j-d
�j6��jj-d�j8��j(j-d�j:��j(j-d�j:�ycc}w)N�checkbutton_embed_preedit_textzembed-preedit-textrX�checkbutton_use_sys_layoutzuse-system-keyboard-layout�checkbutton_use_global_enginezuse-global-engine�combobox_enginesT�preload-engines�treeview_engines�button_engine_addrI�button_engine_removec�8���jj�Sr)�_Setup__treeview�
remove_engine��argsrs �r�<lambda>z&Setup.__init_general.<locals>.<lambda>Zs���t���/L�/L�/N�r�button_engine_upc�8���jj�Sr)r��move_up_enginer�s �rr�z&Setup.__init_general.<locals>.<lambda>\s���t���/M�/M�/O�r�button_engine_downc�8���jj�Sr)r��move_down_enginer�s �rr�z&Setup.__init_general.<locals>.<lambda>`s���T�_�_�=�=�?�r�button_engine_about�button_engine_preferencesznotify::active-engineznotify::engines)r2rL�&_Setup__checkbutton_embed_preedit_textr&r�rr�r��"_Setup__checkbutton_use_sys_layout�%_Setup__checkbutton_use_global_enginer*�list_engines�_Setup__engines�_Setup__comboboxr-�set_no_show_all�hide�set_engines�get_namerKr��
set_sensitiverO�_Setup__button_engine_add_cb�&_Setup__button_engine_add_cb_deprecate�_Setup__button_engine_about_cb�_Setup__engine_setup_exec_list�$_Setup__button_engine_preferences_cb�(_Setup__combobox_notify_active_engine_cb�_Setup__treeview_notify_cb)r�tmp_dict�e�engine_namesrA�enginesrRs`      r�__init_generalzSetup.__init_general(s[���04���0I�0I�0�12��-����$�$�%9�$(�$I�$I�$,�$'�$9�$9�$A�$A�	C�-1�N�N�,E�,E�,�-.��)����$�$�%A�$(�$E�$E�$,�$'�$9�$9�$A�$A�	C�04�~�~�/H�/H�/�01��,����$�$�%8�$(�$H�$H�$,�$'�$9�$9�$A�$A�	C����0�0�2����.�.�3�3�4F�G�������O�O�+�+�D�1��O�O� � �"��O�O�'�'����7������	'�A�%&�H�Q�Z�Z�\�"�	'��.�.�7�7�8I�J��.:�O�d�d�h�>N�8�D�>�O��O��.�.�3�3�4F�G������#�#�G�,����*�*�+>�?������ � ��&��N�N�9�d�&A�&A�B��N�N�9�d�&K�&K�L����*�*�+A�B�����y�"N�O����*�*�+=�>�����y�"O�P����*�*�+?�@�����y�?�	A����*�*�+@�A�����y�$�"?�"?�@�(*��%����*�*�+F�G�����y�$�"E�"E�F������ 7��7�7�	9������ 7��9R�9R�S������ 1�4�3L�3L�M��=Ps�
	Q�Qc�0����jjd��_�jjd��jjd�jdtjj��jjd��_	�jjd�jdtjj��jjd��_
�jj�}t|�tjk(r$|jdd	�|jd
d��jjd��_�jjd
�jdtjj��jjd
�j dtjj"���fd�}�fd�}|dd��j j%���j'd|��jj'd|��jjd��_�jjd
�j(dtjj"��jjd��_�jjd��_�jjd��_�fd�}�fd�}|dd��j*j'd|��j,j'd|��j.j'd|��jj'd|�y)N�fontbutton_emoji_fontu🙂🍎🚃💓📧⚽🐳�fontr_�button_emoji_lang�lang�checkbutton_emoji_partial_match�wrapTzmax-width-chars�J�spinbutton_emoji_partial_matchzhas-partial-matchrXr`c���d}t�j��}|�jj|�k(ry�jj	||�y)N�partial-match-length)�int�	get_valuer)�get_int�set_int)�objrp�value�
adjustmentrs   ��r�adjustment_value_changed_cbz7Setup.__init_emoji.<locals>.adjustment_value_changed_cb�sM���(�C��
�,�,�.�/�E���-�-�5�5�c�:�:���!�!�)�)�#�u�5rc�����jj|�}t�jj	��}||k(ry�jj|�yr)r)r�r��&_Setup__spinbutton_emoji_partial_matchr��	set_value)rorpr��	old_valuers    �r�&settings_emoji_partial_match_length_cbzBSetup.__init_emoji.<locals>.settings_emoji_partial_match_length_cb�sQ����)�)�1�1�#�6�E��D�A�A�K�K�M�N�I��	�!���1�1�;�;�E�Brr�z
value-changedzchanged::partial-match-length�hbox_emoji_partial_match�radiobutton_emoji_prefix_match�radiobutton_emoji_suffix_match�radiobutton_emoji_contain_matchc����d}d}|j�sy|�jk(rd}n0|�jk(rd}n|�jk(rd}nt	d�y�j
j
||�y)N�partial-match-conditionr��z Wrong emoji partial match object)�
get_active�&_Setup__radiobutton_emoji_prefix_match�&_Setup__radiobutton_emoji_suffix_match�'_Setup__radiobutton_emoji_contain_match�printr)r�)r�rp�	conditionrs   �r�!radiobuton_emoji_partial_match_cbz=Setup.__init_emoji.<locals>.radiobuton_emoji_partial_match_cb�su���+�C��I��>�>�#���d�;�;�;��	���=�=�=��	���>�>�>��	��8�9���!�!�)�)�#�y�9rc����jj|�}d}|dk(r
�j}n0|dk(r
�j}n|dk(r
�j}ntd�y|j
�ry|jd�y)Nrr�r�z#Wrong emoji partial match conditionT)r)r�r�r�r�r�r�rn)rorpr�r�rs    �r�)settings_emoji_partial_match_condition_cbzESetup.__init_emoji.<locals>.settings_emoji_partial_match_condition_cb�sy����)�)�1�1�#�6�E��C���z��;�;���!���;�;���!���<�<���;�<���~�~����N�N�4� rr��toggledz changed::partial-match-condition)r2rL�_Setup__fontbutton_emoji_font�set_preview_textr)r�rr�r��_Setup__button_emoji_lang�'_Setup__checkbutton_emoji_partial_match�	get_child�typer�Label�set_propertyr�r��get_adjustmentrO� _Setup__hbox_emoji_partial_matchr�r�r�)r�checkbutton_labelr�r�r�r�r�s`     @r�__init_emojizSetup.__init_emojins���'+�~�~�'@�'@�'�()��$��$�$�5�5�6S�T����"�"�6�$(�$@�$@�#.�#&�#8�#8�#@�#@�	B�$(�>�>�#<�#<�#�$%�� ����"�"�6�$(�$<�$<�#)�#&�#8�#8�#@�#@�	B�26���1J�1J�1�23��.� �B�B�L�L�N���!�"�c�i�i�/��*�*�6�4�8��*�*�+<�b�A�04���0I�0I�0�12��-����"�"�#6�#'�#I�#I�#+�#&�#8�#8�#@�#@�	B�	
���"�"�#6�#'�#H�#H�#.�#&�#8�#8�#<�#<�	>�
	6�	C�	/�t�5K�L��:�:�I�I�K�
����?�,G�H����%�%�&E�&L�	N�+/�.�.�*C�*C�*�+,��'����"�"�#6�#'�#B�#B�#.�#&�#8�#8�#<�#<�	>�15���0I�0I�0�12��-�04���0I�0I�0�12��-�15���1J�1J�1�23��.�	:�	!� 	2�$�2K�	M��-�-�5�5��1�	3�	
�-�-�5�5��1�	3�	
�.�.�6�6��1�	3�	
���%�%�&H�&O�	Qrc��|jjd�|_|jjdtj
�|jjd|j�|jjd�|_|jjdtj
�|j�|j�|j�|j�y)N�window_preferenceszdelete-eventznotify::window�button_closerI)r2rL�_Setup__windowrOr�	main_quit�_Setup__gdk_window_set_cb�_Setup__button_close�_Setup__init_hotkeys�_Setup__init_panel�_Setup__init_general�_Setup__init_emojirs r�	__init_uizSetup.__init_ui�s������1�1�2F�G��
��
�
���n�c�m�m�<��
�
���.��0H�0H�I�"�n�n�7�7��G������#�#�I�s�}�}�=����������������rc���|j�}t|�tjk7rydtjj	|�z}tjd|d�y)Nz%u�IBUS_SETUP_XIDT)�
get_windowr�r�	X11Window�get_xidr�setenv)r�object�pspec�window�ss     r�__gdk_window_set_cbzSetup.__gdk_window_set_cb�sQ���"�"�$����<�6�+�+�+���6�#�#�+�+�F�3�3�����$�a��.rc���|jj�}|jjd�}|j	|dk7xr||j
j
�v�y)Nr�)r��get_active_enginer2rLr�r��get_engines)r�combobox�property�enginerRs     r�"__combobox_notify_active_engine_cbz(Setup.__combobox_notify_active_engine_cb�sV�����2�2�4�����*�*�+>�?������$��N�6����1L�1L�1N�#N�	Prc��g}|dk(r|St|j��}t|�dk7r:|j�}|j	dtj|d��|St|j��}tjd}|dk7r|dzdznd|jd�dz}tj|�r5|j|�|jtj|��|S)Nrr��IBUS_LIBEXECDIR�/zibus-setup-�:)�str�	get_setup�len�split�insertr
�basenamer��os�environ�existsrh)rrr��setuprA�
libexecdir�
setup_paths       r�__get_engine_setup_exec_argsz"Setup.__get_engine_setup_exec_args�s������T�>��;��F�$�$�&�'���u�:��?��;�;�=�D��K�K��4�=�=��a��1�2��K��6�?�?�$�%���Z�Z� 1�2�
�:D��:L�j�3�&��6��$�*�*�S�/�!�"4�5�
��;�;�z�"��K�K�
�#��K�K��
�
�j�1�2��rc��|jdvry|jj�}|jj�}|jjd�j
|dk7�|jjd�j
|dk7�|jjd�j
||ddv�|jjd�j
||ddv�|jjd�}t|j|��d	k7r|j
d
�n|j
d�|jdk(rT|jj�}|D�cgc]}|j���}}|jjd
|�yycc}w)N)z
active-enginer�r�r�r�r�r����r�rTFr�r�)
rAr��get_sorted_enginesrr2rLr�r �"_Setup__get_engine_setup_exec_argsrr�r&�set_strv)r�treeview�propr�rr�r�r�s        r�__treeview_notify_cbzSetup.__treeview_notify_cbsu���9�9�8�8���/�/�4�4�6�����2�2�4�����!�!�"8�9�G�G��RV��W����!�!�"7�8�F�F�v�QU�~�V����!�!�"4�5�C�C�F�RY�Z\�[\�R]�D]�^����!�!�"6�7�E�E�f�T[�\^�\_�T`�F`�a��n�n�'�'�(C�D���t�0�0��8�9�Q�>����d�#����e�$��9�9�	�!��o�o�1�1�3�G�29�:�Q�A�J�J�L�:�L�:��#�#�,�,�->��M�"��:s�F;c�X�t|j��}|j|j�|j	�}|t
jjk7r|j�y|j�}|j�|jj|�y)N)�
transient_for)r
r�r�r��runr�ResponseType�APPLY�destroy�get_selected_enginer��
append_engine)rrR�dialog�idrs     r�__button_engine_add_cbzSetup.__button_engine_add_cbsx���d�m�m�<�����4�>�>�*�
�Z�Z�\��
��!�!�'�'�'��N�N����+�+�-���������%�%�f�-rc�n�|jj�}|jj|�yr)r�rr�r:)rrRrs   r� __button_engine_add_cb_deprecatez&Setup.__button_engine_add_cb_deprecate+s&�����2�2�4�����%�%�f�-rc��|jj�}|r8t||j��}|j	�|j�yy)N)rr4)r�rrr�r5r8)rrRr�abouts    r�__button_engine_about_cbzSetup.__button_engine_about_cb/s>�����2�2�4��������O�E��I�I�K��M�M�O�rc���|jj�}|j|�}t|�dk(ry|j	�}|t|jj��vrI	tj|j|tj�\}}|dk(ry	|j|=tjtjg|���|j|<y#t$rY�JwxYw)Nr)r�rr.r r��listr��keysr$�waitpid�WNOHANG�OSError�spawnl�P_NOWAIT)rrRrr�rA�wpid�stss       r�__button_engine_preferences_cbz$Setup.__button_engine_preferences_cb6s������2�2�4���0�0��8���t�9��>����� ���4��5�5�:�:�<�=�=�
��J�J�t�'D�'D�T�'J�')�z�z�3�	��c��1�9����-�-�d�3�.0�i�i����.K�d�.K��%�%�d�+���
��
�s�19C+�+	C7�6C7c�T��tj�|_|jj�ryt	d�}tjt
jjt
jj|��}|j�}|j�|j�|t
jjk7rt!j"d�t%j&��d}t%j(|�fd��|jj+d�fd��t-j.t,j0ddd	d
��j�|jj�r�t	d�}tjt
jj2t
jj4|��}|j�}|j�|j�yt	d�}tjt
jj2t
jj4||z��}|j�}|j�|j�t!j"d�y)
Nz8The IBus daemon is not running. Do you wish to start it?)�message_type�buttons�textr�c�$���j�Sr��quit�r��	main_loops �rr�z"Setup.__init_bus.<locals>.<lambda>Zs���	���8H�r�	connectedc�$���j�SrrTrVs �rr�z"Setup.__init_bus.<locals>.<lambda>[s���i�n�n�6F�rzibus-daemonz--ximz--daemonizez�IBus has been started! If you cannot use IBus, add the following lines to your $HOME/.bashrc; then relog into your desktop.
  export GTK_IM_MODULE=ibus
  export XMODIFIERS=@im=ibus
  export QT_IM_MODULE=ibusz/IBus daemon could not be started in %d seconds.)r	�Busr*�is_connectedrr�
MessageDialog�MessageType�QUESTION�ButtonsType�YES_NOr5r8�_Setup__flush_gtk_eventsr6�YES�sys�exitr�MainLoop�timeout_add_secondsrOr$�spawnlprJ�INFO�OK)r�message�dlgr<�timeoutrWs     @r�
__init_buszSetup.__init_busHs�����X�X�Z��
��:�:�"�"�$���N�O�����s���/G�/G�*-�/�/�*@�*@�'.�0���W�W�Y�����
����!�
��!�!�%�%�%��H�H�Q�K��M�M�O�	���� � ��*H�I��
�
���;�(F�G�
�
�
�2�;�;�
�}�g�}�U��
�
���:�:�"�"�$��-��G��#�#�3�?�?�3G�3G�.1�o�o�.@�.@�+2�4�C�����B��K�K�M��#�#�%��I�J�G��#�#�3�?�?�3G�3G�.1�o�o�.@�.@�+2�W�+<�>�C�����B��K�K�M��#�#�%��H�H�Q�Krc�Z�td�tjjtd�tjjf}td�}td�}||z}	tj|	|j��}
|
j|�|j�}|r|jd�}nd}|
j|�|
j�}
|
j�}|
j�|
tjjk7ry|dk(r|jj!||�n|j"j!||�dj%|�}|j'|�dj%|�}|dtd	�zz
}|j)|�y)
N�_Cancel�_OKzSelect keyboard shortcut for %szswitching input methods)�titler4rGrJrHr;)rrr6�CANCELri�keyboardshortcut�KeyboardShortcutSelectionDialogr��add_buttons�get_textr!�
set_shortcutsr5�
get_shortcutsr8r)r/r'r.rMrN)rrRrA�section�_namerSrP�title1�title2rqr;rQrQr<rTs               r�__shortcut_button_clicked_cbz"Setup.__shortcut_button_clicked_cbysk���Y�<��!1�!1�!8�!8��U�8�S�-�-�0�0�2���4�5���,�-������!�A�A��t�}�}�>������G�$��~�~�����
�
�4�(�I��I����Y�'�
�Z�Z�\���(�(�*�	�����
��!�!�$�$�$���m�#��!�!�*�*�4��;��"�"�+�+�D�)�<��y�y��#��
���t���)�)�I�&���4�
�N�O�P�	P��
���w�'rc
�,�g}|jtjjt	j
�d��|jtjjt	j�d��|jttd�t	j����g}g}|D])}|jtj|dz���+|D]j}|jtjjtjjtjj|�����l|jgd��tt|��}|j�|S)Nz.themes�themesc�B�tjj|d�S)Nr�r$r
r.��xs rr�z3Setup.__init_available_gtk_themes.<locals>.<lambda>�s��B�G�G�L�L�
�x�-�rz/*/gtk-*/gtk.css)�Adwaita�HighContrast�HighContrastInverse)rhr$r
r.r�get_home_dir�get_user_data_dir�extendrD�map�get_system_data_dirs�globr#r/�set�sort)r�	path_listrq�gtk_theme_pathr
s     r�__init_available_gtk_themesz!Setup.__init_available_gtk_themes�s;���	���������d�&7�&7�&9�9�E�F���������d�&<�&<�&>��I�J�����c�#��3�3�5�7�8�	9������	H�D��!�!�$�)�)�D�3E�,E�"F�G�	H�"�	9�D��"�"�2�7�7�#3�#3������������ 5�6�$8�
9�	9�	��� 
�	��s�?�3�4�������rc��|jj�}|�?|jj�}||d}|jj	d|�yy)Nrrv)rm�get_active_iter�	get_modelr(�
set_string)rr�	tree_iter�model�
theme_names     r�"__on_combobox_custom_theme_changedz(Setup.__on_combobox_custom_theme_changed�sZ���0�0�@�@�B�	�� ��0�0�:�:�<�E��y�)�!�,�J��!�!�,�,�^�Z�H�!rc	�p�g}|jtjjt	j
�d��|jtjjt	j�d��|jttd�t	j����g}g}|D])}|jtj|dz���+|D]�}tjj|�}tjjtjj|d��r�`|jtjj|����|jdg�tt|��}|j!�|S)Nz.icons�iconsc�B�tjj|d�S)Nr�r�r�s rr�z2Setup.__init_available_gtk_icons.<locals>.<lambda>�s��B�G�G�L�L�
�w�-�rz/*/index.theme�cursorsr�)rhr$r
r.rr�r�r�rDr�r�r�r/r&r#r�r�)rr�r�
gtk_icon_pathr
�dirs      r�__init_available_gtk_iconsz Setup.__init_available_gtk_icons�sH���	���������d�&7�&7�&9�8�D�E���������d�&<�&<�&>��H�I�����c�#��2�2�4�6�7�	8����
��	E�D�� � ����4�2B�+B�!C�D�	E�!�	=�D��'�'�/�/�$�'�C��7�7�>�>�"�'�'�,�,�s�I�">�?��%�%�b�g�g�&6�&6�s�&;�<�	=�
	���y�k�*��c�.�1�2�������rc��|jj�}|�?|jj�}||d}|jj	d|�yy)Nrr�)r~r�r�r(r�)rrr�r��	icon_names     r�!__on_combobox_custom_icon_changedz'Setup.__on_combobox_custom_icon_changed�sZ���/�/�?�?�A�	�� ��/�/�9�9�;�E��i�(��+�I��!�!�,�,�]�I�F�!rc	��|j|�}|j|t�}|tdk(r,	|jj|t|t�n+	|jj)|t|t�|t|t<|j+|t,|t�y#t$r�}tjtjj|jtjjt!|���}|j#�|j%�|j'�Yd}~yd}~wwxYw#t$r�}tjtjj|jtjjt!|���}|j#�|j%�|j'�Yd}~yd}~wwxYw)NF)rOr4rPrQ)�get_iter_from_stringr��COLUMN_DATA�DATA_STARTEDr*�register_start_engine�	DATA_LANG�	DATA_NAME�	Exceptionrr\r]�ERRORr�r_�CLOSErr5r8ra�register_stop_enginer��
COLUMN_ENABLE)r�cell�path_strr��iter�datar�rks        r� __item_started_column_toggled_cbz&Setup.__item_started_column_toggled_cb�sw���)�)�(�3�����t�[�1������&�

��
�
�0�0��i��$�y�/�R�

��
�
�/�/��Y���i��Q�"&�l�!3�3��\��	�	�	�$�
�t�L�'9�:��1�
��'�'�s���7L�7L�(,�
�
�"%�/�/�"7�"7�"�1�v�'�����	����
��'�'�)���
���
��'�'�s���7L�7L�(,�
�
�"%�/�/�"7�"7�"�1�v�'�����	����
��'�'�)���
�s1�*B;�!*E�;	E�BE�E�	G<�&BG7�7G<c�N�|j|�}|j|t�}|t|t<|t�d|t
��}|trY||jvr�|jj|�|jjdt|j��nX||jvrJ|jj|�|jjdt|j��|j|t|t�y)Nrr�)r�r�r��DATA_PRELOADr�r��_Setup__preload_engines�addr&r/rD�remover��COLUMN_PRELOAD)rr�r�r�r�r�rs       r� __item_preload_column_toggled_cbz&Setup.__item_preload_column_toggled_cb�s����)�)�(�3�����t�[�1��!%�l�!3�3��\�� ��O�T�)�_�=������T�3�3�3��&�&�*�*�6�2��'�'�0�0�1B�15�d�6L�6L�1M�O���/�/�/��&�&�-�-�f�5��'�'�0�0�1B�15�d�6L�6L�1M�O�	�	�	�$���\�(:�;rc�8�|jj�yr)r��present)rr�s  r�__sigusr1_cbzSetup.__sigusr1_cb
s���
�
���rc��|jj�tjtj|j�tj�yr)r��show_all�signal�SIGUSR1�_Setup__sigusr1_cbr�mainrs rr5z	Setup.runs3���
�
��� ��
�
�f�n�n�d�&7�&7�8����
rr)�__name__�
__module__�__qualname__rar$rr@rrrr5rr�r.r�r�r�r�r�r+rPrer�r|r��&_Setup__item_started_column_toggled_cb�&_Setup__item_preload_column_toggled_cbr�r5�
__classcell__)r7s@rrrSs����!��<(�:�0KB�ZDN�LiQ�V�/�P��$N�..�.��L�$/�b(�@�,I��*G�";�H<�. �rr�__main__�zUsing the fallback 'C' locale)�file�Czxkeyboard-config)>�
__future__rr$r�rc�timer��gir�gi_require_version�
gi.repositoryr�set_prgnamerrrr	r
�i18nrs�locale�	emojilangr�enginecomboboxr�enginedialogr
�enginetreeviewr�engineaboutrrrrrD�range�COLUMN_NAMEr�r��COLUMN_VISIBLE�COLUMN_ICONr�r��DATA_LOCAL_NAMEr��	DATA_ICON�DATA_AUTHOR�DATA_CREDITS�	DATA_EXECr�r�rrr��	setlocale�LC_ALL�Errorr��stderr�init_textdomainr'r5�rr�<module>r�s���4&�	�
�
���4��6�5�!��8�U�#��5�%� ��5�%� ��6�5�!�������� �������
�%�)�%�)�#�"�"�	��q��N��������	��q��N�
�
��
�
���
���@�F�@�D�z��-���������+�
�D����$��D���+�,��G�E�	�I�I�K����<�<�-�
�-�C�J�J�?���������,�-�s�6E�AF�F

Zerion Mini Shell 1.0