HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/python3/dist-packages/DistUpgrade/__pycache__/DistUpgradeFetcher.cpython-38.pyc
U

wE�^y�@s�ddlZe�dd�ddlmZmZddlmZddlmZddlmZdd	l	m
Z
dd
lmZddl
mZddlmZddlZddlZGd
d�de�ZdS)�N�Gtkz3.0)r�Gdk�)�ReleaseNotesViewer)�error)�DistUpgradeFetcherCore)�SimpleGtkbuilderApp)�gettext)�urlopen)�	HTTPErrorc@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�DistUpgradeFetcherGtkcCs4t�|||�tj�|dd�}t|d�|_||_dS)NZ
gtkbuilderzReleaseNotes.uizubuntu-release-upgrader)r�__init__�os�path�joinr�widgets�window_main)�self�new_distZprogress�parentZdatadirZuifile�r�@/usr/lib/python3/dist-packages/DistUpgrade/DistUpgradeFetcher.pyr
(szDistUpgradeFetcherGtk.__init__cCst|j||�S�N)rr)rZsummary�messagerrrr.szDistUpgradeFetcherGtk.errorcCst�|j|jg|j�dSr)r�execvZscriptZrun_options)rrrr�runDistUpgrader1sz%DistUpgradeFetcherGtk.runDistUpgradercCs |��}|dk	r|S|��SdSr)�_try_show_release_notes_webkit� _try_show_release_notes_textview)r�resrrr�showReleaseNotes4sz&DistUpgradeFetcherGtk.showReleaseNotescCs�|jjdk	r�z^ddlm}||jj�}|��|jj�|�|jj��}|jj�	�|t
jjkrfWdSWdSt
k
r~YnXdS)Nr)�ReleaseNotesViewerWebkitTF)rZreleaseNotesHtmlUrir �showr�scrolled_notes�add�dialog_release_notes�run�hider�ResponseType�OK�ImportError)rr Zwebkit_release_notesrrrrr>s �z4DistUpgradeFetcherGtk._try_show_release_notes_webkitc
Cs|jjdk	�r|�|jj�}|jrJ|j�d�|j���tj�	tj
j��t�
�r\t��qJtjj}t��}zpt�d�t|�}|���dd�}t|�}|��|jj�|�|jj}|�|j�|jj��}|jj��Wn�t k
�rTdt!d�}t!d�}	t�"|jtj#j$tj%j&tj'j(d�}
|
�)d�|
�*|�|
�+|	�|
��|
�,�Ynxt-k
�r�dt!d	�}t!d
�}	t�"|jtj#j$tj%j&tj'j(d�}
|
�)d�|
�*|�|
�+|	�|
��|
�,�YnXt�|�|j�r�|j�d�|j���d�|tjj.k�rdSdS)NF�zUTF-8�replacez+<span weight="bold" size="larger">%s</span>z Could not find the release noteszThe server may be overloaded. �z$Could not download the release notesz&Please check your internet connection.T)/rZreleaseNotesURIZ
_expandUrirZ
set_sensitiveZ
get_windowZ
set_cursorrZCursor�newZ
CursorTypeZWATCHrZevents_pendingZmain_iterationr'ZCANCEL�socketZgetdefaulttimeoutZsetdefaulttimeoutr
�read�decoderr!rr"r#r$Zset_transient_forr%r&r�_Z
MessageDialogZDialogFlagsZMODALZMessageTypeZERRORZButtonsTypeZCLOSEZ	set_titleZ
set_markupZformat_secondary_textZdestroy�IOErrorr()rZurirZtimeoutZ
release_notesZnotesZtextview_release_notesZrelease_widgetZprimaryZ	secondaryZdialogrrrrOsz
�

��


��



z6DistUpgradeFetcherGtk._try_show_release_notes_textviewN)	�__name__�
__module__�__qualname__r
rrrrrrrrrr&s
r)ZgiZrequire_versionZ
gi.repositoryrrrZutilsrrZSimpleGtk3builderApprr	r1Zurllib.requestr
Zurllib.errorrrr.rrrrr�<module>s