
    ce                     L    d dl Z d dlZd dlmZ d dlmZ d dlmZ d Zd Z	d Z
dS )    N)LINUX)run_process)loggerc                  N    t           rt                      t          j        d<   dS dS )z
    Setup QT_SCALE_FACTOR parameter to be equal to the system one,
    because QT is not able to handle scaling for the X Window Systems
    QT_SCALE_FACTORN)r   get_scaling_factor_using_dbusosenviron     Flib/python3.11/site-packages/anaconda_navigator/utils/linux_scaling.pysetup_scale_factor_for_linuxr      s2    
  H(E(G(G
$%%%H Hr   c                     d} t          g d          \  }}}|s|rt          j        d           nUt                      }|rEt	          j        d| d|          }|r|                    d          } nt          j        d           | S )zLReturns system primary monitor scale factor, otherwise one will be returned.1)z	dbus-sendz	--sessionz--print-replyz%--dest=org.gnome.Mutter.DisplayConfigz/org/gnome/Mutter/DisplayConfigz.org.gnome.Mutter.DisplayConfig.GetCurrentStatezFAn exception occurred during fetching list of system display settings.zUstruct \{\n(?:.*\n){2}.*double (?P<scaling_factor>\d(?:\.\d+)?)(?:.*\n){5}.*string \"z\"scaling_factorz@Can't detect system scaling factor settings for primary monitor.)r   r   warningget_primary_monitor_nameresearchgroup)r   stdoutstderrerrormonitor_namescaling_factor_ress         r   r   r      s    N'	
 	
 	
 FFE  d d_````/11 		d!#.). . ." "
 " d!3!9!9:J!K!Kbcccr   c                      d} t          ddg          \  }}}|s|rt          j        d           nAt          j        d|          }|r|                    d          } nt          j        d           | S )z#Returns name of the primary monitorNxrandrz--listactivemonitorsz>An exception occurred during fetching list of active monitors.z>\d+\: \+\*(?P<primary_monitor>.*) \d*/\d+x\d+/\d+\+\d+\+\d +.*primary_monitorzCan't detect primary monitor.)r   r   r   r   r   r   )primary_monitor_namer   r   r   active_monitor_ress        r   r   r   1   s    '3I(JKKFFE = =WXXXXY'hjpqq 	=#5#;#;<M#N#N  N;<<<r   )r	   r   anaconda_navigator.configr   %anaconda_navigator.utils.conda.launchr   anaconda_navigator.utils.logsr   r   r   r   r   r   r   <module>r$      s   
 
			 				 + + + + + + = = = = = = 0 0 0 0 0 0H H H  8         r   