forked from CastroFidel/PortWINE
		
	Merge branch 'Htylol-update-name_desktop_1' into devel
This commit is contained in:
		| @@ -273,7 +273,7 @@ EOF | |||||||
|                     while [[ ! $line =~ msgid ]] ; do |                     while [[ ! $line =~ msgid ]] ; do | ||||||
|                         msgstr+=$line |                         msgstr+=$line | ||||||
|                         read -r line |                         read -r line | ||||||
|                         if [[ $line == "" ]] ; then |                         if [[ -z $line ]] ; then | ||||||
|                             break |                             break | ||||||
|                         fi |                         fi | ||||||
|                     done |                     done | ||||||
| @@ -762,8 +762,8 @@ background_pid () { | |||||||
|                 export bg_pid"${arg3}"="$PID" ;; |                 export bg_pid"${arg3}"="$PID" ;; | ||||||
|             --end) |             --end) | ||||||
|                 PID=$(get_bg_pid bg_pid"${arg3}") |                 PID=$(get_bg_pid bg_pid"${arg3}") | ||||||
|                 [[ $PID == "" ]] && return 1 |                 [[ -z $PID ]] && return 1 | ||||||
|                 wait "$PID" && return 0 ;; |                 wait "$PID" 2>/dev/null && return 0 ;; | ||||||
|         esac |         esac | ||||||
|     fi |     fi | ||||||
| } | } | ||||||
| @@ -911,70 +911,70 @@ search_desktop_file () { | |||||||
|     fi |     fi | ||||||
| } | } | ||||||
|  |  | ||||||
| create_pw_comment () { | create_name_desktop () { | ||||||
|     search_desktop_file |     search_desktop_file | ||||||
|     unset DESKTOP_NAME_FILE PW_SHORTCUT_PROXY |     unset DESKTOP_NAME_FILE | ||||||
|     if [[ -n ${DESKTOP_FILES_ARRAY[0]} ]] ; then |     if [[ -n $DESKTOP_NAME_YAD ]] ; then | ||||||
|         for df in "${DESKTOP_FILES_ARRAY[@]}" ; do |         DESKTOP_NAME_FILE="${DESKTOP_NAME_YAD//.desktop/}" | ||||||
|             df="${df//"$PORT_WINE_PATH/"/}" |         unset DESKTOP_NAME_YAD | ||||||
|             DESKTOP_NAME_FILE="${df//.desktop/}" |     elif [[ -n $name_desktop ]] ; then | ||||||
|         done |         DESKTOP_NAME_FILE="$name_desktop" | ||||||
|  |         unset name_desktop | ||||||
|  |     elif [[ -n ${DESKTOP_FILES_ARRAY[0]} ]] \ | ||||||
|  |     && [[ -z ${DESKTOP_FILES_ARRAY[1]} ]] ; then | ||||||
|  |         DESKTOP_NAME_FILE="${DESKTOP_FILES_ARRAY[0]//"$PORT_WINE_PATH/"/}" | ||||||
|  |         DESKTOP_NAME_FILE="${DESKTOP_NAME_FILE//.desktop/}" | ||||||
|     fi |     fi | ||||||
|     if [[ -z "${PW_COMMENT_DB}" ]] ; then |  | ||||||
|         [[ $FILE_DESCRIPTION != "" ]] && FILE_DESCRIPTION_ABBR=$(make_abbreviation "$FILE_DESCRIPTION") |     [[ -n $PORTPROTON_NAME ]] && PORTPROTON_NAME_ABBR=$(make_abbreviation "$PORTPROTON_NAME") | ||||||
|         [[ $PORTPROTON_NAME != "" ]] && PORTPROTON_NAME_ABBR=$(make_abbreviation "$PORTPROTON_NAME") |     [[ -n $FILE_DESCRIPTION ]] && FILE_DESCRIPTION_ABBR=$(make_abbreviation "$FILE_DESCRIPTION") | ||||||
|         if [[ -n $DESKTOP_NAME_FILE ]] && [[ $DESKTOP_NAME_FILE != "" ]] ; then |  | ||||||
|             PW_COMMENT_DB="${translations[Launching]} <b>$(print_wrapped "$DESKTOP_NAME_FILE" "50")</b>$(seconds_to_time "$TIME_CURRENT")" |     if [[ -z $PORTWINE_DB ]] ; then | ||||||
|             PW_SHORTCUT_PROXY="$DESKTOP_NAME_FILE" |         PORTWINE_DB_DESKTOP="$(basename "${portwine_exe%.[Ee][Xx][Ee]}")" | ||||||
|         elif [[ ${PORTPROTON_NAME^^} =~ ${PORTWINE_DB^^} ]] && [[ ${PORTPROTON_NAME^^} != "${PORTWINE_DB^^}" ]] ; then |  | ||||||
|             PW_COMMENT_DB="${translations[Launching]} <b>$(print_wrapped "$PORTPROTON_NAME" "50")</b>$(seconds_to_time "$TIME_CURRENT")" |  | ||||||
|             PW_SHORTCUT_PROXY="$PORTPROTON_NAME" |  | ||||||
|         elif (( ${#PORTPROTON_NAME_ABBR} > 2 )) && [[ ${PORTPROTON_NAME_ABBR^^} =~ ${PORTWINE_DB^^} ]] ; then |  | ||||||
|             PW_COMMENT_DB="${translations[Launching]} <b>$(print_wrapped "$PORTPROTON_NAME" "50")</b>$(seconds_to_time "$TIME_CURRENT")" |  | ||||||
|             PW_SHORTCUT_PROXY="$PORTPROTON_NAME" |  | ||||||
|         elif [[ ${FILE_DESCRIPTION^^} =~ ${PORTWINE_DB^^} ]] && [[ ${FILE_DESCRIPTION^^} != "${PORTWINE_DB^^}" ]] ; then |  | ||||||
|             PW_COMMENT_DB="${translations[Launching]} <b>$(print_wrapped "$FILE_DESCRIPTION" "50")</b>$(seconds_to_time "$TIME_CURRENT")" |  | ||||||
|             PW_SHORTCUT_PROXY="$FILE_DESCRIPTION" |  | ||||||
|         elif (( ${#FILE_DESCRIPTION_ABBR} > 2 )) && [[ ${FILE_DESCRIPTION_ABBR^^} =~ ${PORTWINE_DB^^} ]] ; then |  | ||||||
|             PW_COMMENT_DB="${translations[Launching]} <b>$(print_wrapped "$FILE_DESCRIPTION" "50")</b>$(seconds_to_time "$TIME_CURRENT")" |  | ||||||
|             PW_SHORTCUT_PROXY="$FILE_DESCRIPTION" |  | ||||||
|         else |  | ||||||
|             unset PORTWINE_DB_PROXY PORTWINE_DB_NEW |  | ||||||
|             PORTWINE_DB="${PORTWINE_DB//_/ }" |  | ||||||
|             if [[ ${PORTWINE_DB:0:1} =~ [a-z] ]] ; then |  | ||||||
|                 PORTWINE_DB_UPPER="${PORTWINE_DB^^}" |  | ||||||
|                 PORTWINE_DB="${PORTWINE_DB_UPPER:0:1}${PORTWINE_DB:1}" |  | ||||||
|             fi |  | ||||||
|             if (( ${#PORTWINE_DB} > 3 )) ; then |  | ||||||
|                 for ((i=0 ; i<${#PORTWINE_DB} ; i++)) ; do |  | ||||||
|                     if [[ ${PORTWINE_DB:i:2} =~ ([a-z][A-Z]|[a-z][0-9]) ]] \ |  | ||||||
|                     && [[ ! ${PORTWINE_DB:i:3} =~ ([a-z][A-Z]" "|[a-z][0-9]" ") ]] ; then |  | ||||||
|                         PORTWINE_DB_PROXY+="${PORTWINE_DB:i:1} " |  | ||||||
|                     elif [[ ${PORTWINE_DB:i:3} =~ [0-9][0-9][a-zA-Z] ]] ; then |  | ||||||
|                         PORTWINE_DB_PROXY+="${PORTWINE_DB:i:2} " |  | ||||||
|                         ((i++)) |  | ||||||
|                     else |  | ||||||
|                         PORTWINE_DB_PROXY+="${PORTWINE_DB:i:1}" |  | ||||||
|                     fi |  | ||||||
|                 done |  | ||||||
|                 for ((i=0 ; i<${#PORTWINE_DB_PROXY} ; i++)) ; do |  | ||||||
|                     if [[ ${PORTWINE_DB_PROXY:i:2} =~ " "[a-z] ]] ; then |  | ||||||
|                         PORTWINE_DB_UPPER="${PORTWINE_DB_PROXY:i:2}" |  | ||||||
|                         PORTWINE_DB_NEW+="${PORTWINE_DB_UPPER^^}" |  | ||||||
|                         ((i++)) |  | ||||||
|                     else |  | ||||||
|                         PORTWINE_DB_NEW+="${PORTWINE_DB_PROXY:i:1}" |  | ||||||
|                     fi |  | ||||||
|                 done |  | ||||||
|             else |  | ||||||
|                 PORTWINE_DB_NEW="$PORTWINE_DB" |  | ||||||
|             fi |  | ||||||
|             PW_COMMENT_DB="${translations[Launching]} <b>$(print_wrapped "$PORTWINE_DB_NEW" "50")</b>$(seconds_to_time "$TIME_CURRENT")" |  | ||||||
|             PW_SHORTCUT_PROXY="$PORTWINE_DB_NEW" |  | ||||||
|         fi |  | ||||||
|     else |     else | ||||||
|         PW_COMMENT_DB="$PW_COMMENT_DB$(seconds_to_time "$TIME_CURRENT")" |         PORTWINE_DB_DESKTOP="$PORTWINE_DB" | ||||||
|         PW_SHORTCUT_PROXY="$DESKTOP_NAME_FILE" |     fi | ||||||
|  |  | ||||||
|  |     if [[ -n $DESKTOP_NAME_FILE ]] ; then | ||||||
|  |         PW_NAME_DESKTOP_PROXY="$DESKTOP_NAME_FILE" | ||||||
|  |     elif [[ -n $PORTPROTON_NAME && ${PORTPROTON_NAME^^} =~ ${PORTWINE_DB_DESKTOP^^} && $PORTPROTON_NAME != "$PORTWINE_DB_DESKTOP" ]] \ | ||||||
|  |     || [[ -n $PORTPROTON_NAME && ${#PORTPROTON_NAME_ABBR} -gt 2 && ${PORTPROTON_NAME_ABBR^^} =~ ${PORTWINE_DB_DESKTOP^^} ]] ; then | ||||||
|  |         PW_NAME_DESKTOP_PROXY="$PORTPROTON_NAME" | ||||||
|  |     elif [[ -n $FILE_DESCRIPTION && ${FILE_DESCRIPTION^^} =~ ${PORTWINE_DB_DESKTOP^^} && $FILE_DESCRIPTION != "$PORTWINE_DB_DESKTOP" ]] \ | ||||||
|  |     || [[ -n $FILE_DESCRIPTION && ${#FILE_DESCRIPTION_ABBR} -gt 2 && ${FILE_DESCRIPTION_ABBR^^} =~ ${PORTWINE_DB_DESKTOP^^} ]] ; then | ||||||
|  |         PW_NAME_DESKTOP_PROXY="$FILE_DESCRIPTION" | ||||||
|  |     else | ||||||
|  |         unset PORTWINE_DB_PROXY PORTWINE_DB_NEW | ||||||
|  |         PORTWINE_DB_DESKTOP="${PORTWINE_DB_DESKTOP//_/ }" | ||||||
|  |         if [[ ${PORTWINE_DB_DESKTOP:0:1} =~ [a-z] ]] ; then | ||||||
|  |             PORTWINE_DB_UPPER="${PORTWINE_DB_DESKTOP^^}" | ||||||
|  |             PORTWINE_DB_DESKTOP="${PORTWINE_DB_UPPER:0:1}${PORTWINE_DB_DESKTOP:1}" | ||||||
|  |         fi | ||||||
|  |         if (( ${#PORTWINE_DB_DESKTOP} > 3 )) ; then | ||||||
|  |             for ((i=0 ; i<${#PORTWINE_DB_DESKTOP} ; i++)) ; do | ||||||
|  |                 if [[ ${PORTWINE_DB_DESKTOP:i:2} =~ ([a-z][A-Z]|[a-z][0-9]) ]] \ | ||||||
|  |                 && [[ ! ${PORTWINE_DB_DESKTOP:i:3} =~ ([a-z][A-Z]" "|[a-z][0-9]" ") ]] ; then | ||||||
|  |                     PORTWINE_DB_PROXY+="${PORTWINE_DB_DESKTOP:i:1} " | ||||||
|  |                 elif [[ ${PORTWINE_DB_DESKTOP:i:3} =~ [0-9][0-9][a-zA-Z] ]] ; then | ||||||
|  |                     PORTWINE_DB_PROXY+="${PORTWINE_DB_DESKTOP:i:2} " | ||||||
|  |                     ((i++)) | ||||||
|  |                 else | ||||||
|  |                     PORTWINE_DB_PROXY+="${PORTWINE_DB_DESKTOP:i:1}" | ||||||
|  |                 fi | ||||||
|  |             done | ||||||
|  |             for ((i=0 ; i<${#PORTWINE_DB_PROXY} ; i++)) ; do | ||||||
|  |                 if [[ ${PORTWINE_DB_PROXY:i:2} =~ " "[a-z] ]] ; then | ||||||
|  |                     PORTWINE_DB_UPPER="${PORTWINE_DB_PROXY:i:2}" | ||||||
|  |                     PORTWINE_DB_NEW+="${PORTWINE_DB_UPPER^^}" | ||||||
|  |                     ((i++)) | ||||||
|  |                 else | ||||||
|  |                     PORTWINE_DB_NEW+="${PORTWINE_DB_PROXY:i:1}" | ||||||
|  |                 fi | ||||||
|  |             done | ||||||
|  |         else | ||||||
|  |             PORTWINE_DB_NEW="$PORTWINE_DB_DESKTOP" | ||||||
|  |         fi | ||||||
|  |         PW_NAME_DESKTOP_PROXY="$PORTWINE_DB_NEW" | ||||||
|     fi |     fi | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -1021,10 +1021,10 @@ seconds_to_time () { | |||||||
|     if [[ $minutes =~ ^0$ ]] ; then |     if [[ $minutes =~ ^0$ ]] ; then | ||||||
|         hours=${hours//" ${translations[and]} "/} |         hours=${hours//" ${translations[and]} "/} | ||||||
|         minutes= |         minutes= | ||||||
|         if [[ $days == "" ]] || [[ $hours == "" ]] ; then |         if [[ -z $days ]] || [[ -z $hours ]] ; then | ||||||
|             days=${days//","/} |             days=${days//","/} | ||||||
|         fi |         fi | ||||||
|         if [[ $days == "" ]] && [[ $hours == "" ]] ; then |         if [[ -z $days ]] && [[ -z $hours ]] ; then | ||||||
|             minutes="${translations[less than a minute]}" |             minutes="${translations[less than a minute]}" | ||||||
|         fi |         fi | ||||||
|     elif [[ $minutes =~ ^1$ ]] ; then |     elif [[ $minutes =~ ^1$ ]] ; then | ||||||
| @@ -2510,8 +2510,7 @@ pw_find_exe () { | |||||||
|  |  | ||||||
|     if [[ -n "${PW_SET_FIND_EXE}" ]] ; then |     if [[ -n "${PW_SET_FIND_EXE}" ]] ; then | ||||||
|         portwine_exe="${PW_PATH_FOR_FIND}$(echo "${PW_SET_FIND_EXE}" | awk -F'|' '{print $1}')" |         portwine_exe="${PW_PATH_FOR_FIND}$(echo "${PW_SET_FIND_EXE}" | awk -F'|' '{print $1}')" | ||||||
|         portwine_create_shortcut silent |         portwine_create_shortcut | ||||||
|         restart_pp |  | ||||||
|     fi |     fi | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -4592,7 +4591,7 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate.] | |||||||
|     1> "$PW_TMPFS_PATH/tmp_output_yad_fps_limit" 2>/dev/null & |     1> "$PW_TMPFS_PATH/tmp_output_yad_fps_limit" 2>/dev/null & | ||||||
|  |  | ||||||
|     "${pw_yad}" --notebook --key="$KEY_EDIT_DB_GUI" --title "${translations[EDIT DB]}" --text-align=center \ |     "${pw_yad}" --notebook --key="$KEY_EDIT_DB_GUI" --title "${translations[EDIT DB]}" --text-align=center \ | ||||||
|     --text "${translations[Change settings in database file for]} <b>${PORTWINE_DB}</b>\n ${translations[<b>NOTE:</b> To display help for each item, simply hover your mouse over the text]}" \ |     --text "${translations[Change settings in database file for]} <b>$PW_NAME_DESKTOP_PROXY</b>\n ${translations[<b>NOTE:</b> To display help for each item, simply hover your mouse over the text]}" \ | ||||||
|     --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --separator=" " --expand \ |     --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --separator=" " --expand \ | ||||||
|     --gui-type="settings-base" \ |     --gui-type="settings-base" \ | ||||||
|     --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" \ |     --gui-type-text="${NOTEBOOK_GUI_TYPE_TEXT}" --gui-type-layout="${NOTEBOOK_GUI_TYPE_LAYOUT}" \ | ||||||
| @@ -5233,7 +5232,7 @@ gui_gamescope () { | |||||||
|  |  | ||||||
|     unset ADD_CHK_BOX_GS |     unset ADD_CHK_BOX_GS | ||||||
|     if [[ "${GAMESCOPE_INSTALLED}" == 1 ]] ; then |     if [[ "${GAMESCOPE_INSTALLED}" == 1 ]] ; then | ||||||
|         GAMESCOPE_NEED_INSTALL="${translations[Change settings gamescope for]} <b>${PORTWINE_DB}</b>\n ${translations[<b>NOTE:</b> To display help for each item, simply hover your mouse over the text]}" |         GAMESCOPE_NEED_INSTALL="${translations[Change settings gamescope for]} <b>$PW_NAME_DESKTOP_PROXY</b>\n ${translations[<b>NOTE:</b> To display help for each item, simply hover your mouse over the text]}" | ||||||
|         GS_CB="CB" && GS_CBE="CBE" && GS_NUM="NUM" && GS_NUMN="NUMN" |         GS_CB="CB" && GS_CBE="CBE" && GS_NUM="NUM" && GS_NUMN="NUMN" | ||||||
|         for int_to_boole in ${PW_GS_LIST[@]} ; do |         for int_to_boole in ${PW_GS_LIST[@]} ; do | ||||||
|             if [[ "${!int_to_boole}" == "1" ]] |             if [[ "${!int_to_boole}" == "1" ]] | ||||||
| @@ -5540,8 +5539,9 @@ portwine_create_shortcut () { | |||||||
|     [[ -z "${PW_SHORTCUT_DESKTOP}" ]] && PW_SHORTCUT_DESKTOP="TRUE" |     [[ -z "${PW_SHORTCUT_DESKTOP}" ]] && PW_SHORTCUT_DESKTOP="TRUE" | ||||||
|     [[ -z "${PW_SHORTCUT_STEAM}" ]] && PW_SHORTCUT_STEAM="FALSE" |     [[ -z "${PW_SHORTCUT_STEAM}" ]] && PW_SHORTCUT_STEAM="FALSE" | ||||||
|  |  | ||||||
|     [[ -z $PW_SHORTCUT_PROXY ]] && create_pw_comment  |     unset name_desktop | ||||||
|     export name_desktop="$PW_SHORTCUT_PROXY" |     create_name_desktop | ||||||
|  |     export name_desktop="$PW_NAME_DESKTOP_PROXY" | ||||||
|  |  | ||||||
|     [[ -z "${name_desktop_png}" ]] && name_desktop_png="${PORTPROTON_NAME// /_}" |     [[ -z "${name_desktop_png}" ]] && name_desktop_png="${PORTPROTON_NAME// /_}" | ||||||
|  |  | ||||||
| @@ -5594,12 +5594,13 @@ portwine_create_shortcut () { | |||||||
|                 for rm in "${DESKTOP_FILES_ARRAY[@]}" ; do |                 for rm in "${DESKTOP_FILES_ARRAY[@]}" ; do | ||||||
|                     rm -f "$rm" |                     rm -f "$rm" | ||||||
|                 done |                 done | ||||||
|                 [[ $name_desktop == "" ]] && create_pw_comment && export name_desktop="$PW_SHORTCUT_PROXY" |  | ||||||
|             fi |             fi | ||||||
|         else |         else | ||||||
|             try_remove_file "${PORT_WINE_PATH}/${name_desktop}.desktop" |             try_remove_file "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||||
|         fi |         fi | ||||||
|  |  | ||||||
|  |         [[ -z $name_desktop ]] && create_name_desktop && export name_desktop="$PW_NAME_DESKTOP_PROXY" | ||||||
|  |  | ||||||
|         echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop" |         echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||||
|         echo "Name=${name_desktop}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" |         echo "Name=${name_desktop}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||||
|         if check_flatpak |         if check_flatpak | ||||||
| @@ -6185,6 +6186,7 @@ button_click () { | |||||||
|                     (( count++ )) |                     (( count++ )) | ||||||
|                 done |                 done | ||||||
|             fi |             fi | ||||||
|  |             export DESKTOP_NAME_YAD="${PW_YAD_SET//"$PORT_WINE_PATH/"/}" | ||||||
|             if check_flatpak |             if check_flatpak | ||||||
|             then PW_EXEC_FROM_DESKTOP="$(grep Exec "$PW_YAD_SET" | head -n 1 | sed 's|flatpak run ru.linux_gaming.PortProton|\"${PORT_SCRIPTS_PATH}/start.sh\"|' | awk -F'=' '{print $2}')" |             then PW_EXEC_FROM_DESKTOP="$(grep Exec "$PW_YAD_SET" | head -n 1 | sed 's|flatpak run ru.linux_gaming.PortProton|\"${PORT_SCRIPTS_PATH}/start.sh\"|' | awk -F'=' '{print $2}')" | ||||||
|             else PW_EXEC_FROM_DESKTOP="$(grep Exec "$PW_YAD_SET" | head -n 1 | awk -F"=env " '{print $2}')" |             else PW_EXEC_FROM_DESKTOP="$(grep Exec "$PW_YAD_SET" | head -n 1 | awk -F"=env " '{print $2}')" | ||||||
|   | |||||||
| @@ -497,7 +497,12 @@ if [[ -f "${portwine_exe}" ]] ; then | |||||||
|             PW_SHORTCUT="${translations[DELETE SHORTCUT]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Delete shortcut for select file...]}:98" |             PW_SHORTCUT="${translations[DELETE SHORTCUT]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Delete shortcut for select file...]}:98" | ||||||
|         fi |         fi | ||||||
|  |  | ||||||
|         create_pw_comment |         create_name_desktop | ||||||
|  |         if [[ -z "${PW_COMMENT_DB}" ]] ; then | ||||||
|  |             PW_COMMENT_DB="${translations[Launching]} <b>$(print_wrapped "$PW_NAME_DESKTOP_PROXY" "50")</b>$(seconds_to_time "$TIME_CURRENT")" | ||||||
|  |         else | ||||||
|  |             PW_COMMENT_DB="$PW_COMMENT_DB$(seconds_to_time "$TIME_CURRENT")" | ||||||
|  |         fi | ||||||
|  |  | ||||||
|         export KEY_START="$RANDOM" |         export KEY_START="$RANDOM" | ||||||
|         if [[ "${PW_GUI_START}" == "NOTEBOOK" ]] ; then |         if [[ "${PW_GUI_START}" == "NOTEBOOK" ]] ; then | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user