+
    Ki  c                   sl    R t ^ RIt^ RIt^ RIHt ^ RIHt ^ RIHt ^ RI	H
t
 ^ RIHt  ! R R]
4      tR# )	zGUI dialog for reporting issuesN)gettext)Gtk)NoticeDialog)BaseApplicationWindow)gather_system_infoc                   sH   a a ] tR t^t oRtV 3R ltR tR tR tRt	Vt
V ;t# )IssueReportWindowz/Window for collecting and sending issue reportsc                s  <a  \         SS `  V4       \        P                  ! R R7      S n        S P
                  P                  S P                  4       \        P                  ! 4       pVP                  \        R4      4       S P
                  P                  V4       S P
                  P                  \        P                  ! 4       4       \        P                  ! \        R4      4      pVP                  ^P4       VP                  RR 4       S P
                  P                  V4       \        P                  ! 4       S n        S P                  P                  ^4       S P                  P                  ^4       S P                  P!                  ^4       S P                  P#                  ^4       S P
                  P%                  S P                  R R ^ 4       \        P&                  ! ^R7      S n        \        P*                  P-                  ^^ ^ ^ 4      pVP                  S P(                  4       S P
                  P%                  VRR ^ 4       S P/                  \        R4      V 3R lR	7      pS P(                  P                  V4       S P/                  \        R
4      S P0                  R	7      pS P(                  P                  V4       S P3                  4        R# )T)Zvisiblez<b>Submit an issue</b>zDescribe the problem you're having in the text box below. This information will be sent the Lutris team along with your system information. You can also save this information locally if you are offline.Zwrap)ZspacingFZC_ancelc                  s$   < SP                  4       # )N)destroy)Zxselfs   *=/usr/lib/python3.14/site-packages/lutris/gui/dialogs/issue.pyZ<lambda>Z,IssueReportWindow.__init__.<locals>.<lambda>3   s    PTP\P\P^    )ZhandlerZ_SaveN)Zsuper__init__r   ZLabeltitle_labelZvboxZaddZ
set_markup_Z
HSeparatorZset_max_width_charsZset_propertyZTextViewtextviewZset_pixels_above_linesZset_pixels_below_linesZset_left_marginZset_right_marginZ
pack_startZBoxaction_buttonsZ	AlignmentnewZget_action_buttonon_saveZshow_all)r   Zapplicationr   Zissue_entry_labelZaction_buttons_alignmentZcancel_buttonZsave_button	__class__s   f&     r   r
   ZIssueReportWindow.__init__   s   %99T2		d&&'iikq!9:;		k"		cnn&'IIQ
 	--b1&&vt4		'(,,R0,,R0%%b)&&r*		T]]D$:!gga0#&==#4#4Q1a#@  $$T%8%89		5udAF..q|E^._.,,QwZ,N,r	   c                s    V P                   P                  4       pR VP                  VP                  4       VP	                  4       R4      R\        4       /# )ZcommentTZsystem)r   Z
get_bufferZget_textZget_start_iterZget_end_iterr   )r   Zbuffers   & r   get_issue_infoZ IssueReportWindow.get_issue_info;   sL    ))+vv'<'<'>@S@S@UW[\(*
 	
r	   c           	     s   \         P                  P                  \        R4      V \         P                  P
                  \        R4      \        R4      4      pVP                  RV P                  V4       VP                  4        R# )z"Signal handler for the save buttonz#Select a location to save the issueZ_OKZ_CancelresponseN)	r   ZFileChooserNativer   r   ZFileChooserActionZSELECT_FOLDERZconnecton_folder_selectedZshow)r   Z_buttonZsave_dialogs   && r   r   ZIssueReportWindow.on_saveB   si     ++//34!!//eHiL
 	J(?(?Mr	   c                s   V\         P                  P                  8w  d   R # VP                  4       pV'       g   R # \        P
                  P                  VR4      pV P                  4       p\        VRRR7      ;_uu_ 4       p\        P                  ! Wg^R7       R R R 4       VP                  4        \        \        R4      V,          4       V P                  4        R #   + '       g   i     LM; i)Nzlutris-issue-report.jsonZwzutf-8)Zencoding)ZindentzIssue saved in %s)r   ZResponseTypeZACCEPTZget_filenameosZpathZjoinr   ZopenjsonZdumpr   r   r   )r   Zdialogr   Z_dialogZtarget_pathZ
issue_pathZ
issue_infoZ
issue_files   &&&&    r   r   Z$IssueReportWindow.on_folder_selectedO   s    s''...))+WW\\+/IJ
((*
*cG44
IIjQ7 5Q*+j89	 54s   C  C0	)r   r   r   )Z__name__Z
__module__Z__qualname__Z__firstlineno____doc__r
   r   r   r   Z__static_attributes__Z__classdictcell__Z__classcell__)r   Z__classdict__s   @@r   r   r      s"     9(T
 r	   r   )r   r   r   r    r   Zgi.repositoryr   Zlutris.gui.dialogsr   Zlutris.gui.widgets.windowr   Zlutris.util.linuxr   r   ) r	   r   <module>r      s,    %  	    + ; 0M- Mr	   