Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
PortWINE
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Mikhail Tergoev
PortWINE
Commits
369860af
Commit
369860af
authored
Oct 20, 2024
by
Vladislav
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed bugs
parent
d327053f
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
32 additions
and
35 deletions
+32
-35
functions_helper
data_from_portwine/scripts/functions_helper
+25
-26
start.sh
data_from_portwine/scripts/start.sh
+7
-9
No files found.
data_from_portwine/scripts/functions_helper
View file @
369860af
...
...
@@ -810,33 +810,26 @@ search_desktop_file () {
sed -i
"s|Exec=env
\"
$PORT_SCRIPTS_PATH
/start.sh
\"
|Exec=flatpak run ru.linux_gaming.PortProton|"
"
$desktop_file
"
fi
EXEC_DESKTOP_NEW=
${
EXEC_DESKTOP
//\
"/}
if [[ -n
$TIME_CURRENT_PROXY
]] && [[
$portwine_exe
== "
$EXEC_DESKTOP_NEW
" ]] ; then
TIME_CURRENT=
$TIME_CURRENT_PROXY
TIME_CURRENT_ARRAY+=(
$TIME_CURRENT
)
# Если существует несколько .desktop файлов на один и тот же .exe файл,
# то среди них время берётся из того .desktop файла, в котором проведено дольше времени
# и данное время будет потом записываться во все .desktop файлы у которых общий .exe файл
if [[ -n
${
TIME_CURRENT_ARRAY
[1]
}
]] ; then
for i in "
${
!TIME_CURRENT_ARRAY[@]
}
" ; do
for j in "
${
!TIME_CURRENT_ARRAY[@]
}
" ; do
if ((
${
TIME_CURRENT_ARRAY
[
$i
]
}
>
${
TIME_CURRENT_ARRAY
[
$j
]
}
)) ; then
tmp=
${
TIME_CURRENT_ARRAY
[
$i
]
}
TIME_CURRENT_ARRAY[i]=
${
TIME_CURRENT_ARRAY
[
$j
]
}
TIME_CURRENT_ARRAY[j]=
$tmp
fi
done
done
fi
TIME_CURRENT="
${
TIME_CURRENT_ARRAY
[0]
}
"
fi
unset TIME_CURRENT_PROXY
if [[
$portwine_exe
== "
$EXEC_DESKTOP_NEW
" ]] ; then
# Когда новый .desktop файл
if [[
$TIME_CURRENT
== "" ]] ; then
echo "
#NEW_DESKTOP
" >> "
$desktop_file
"
TIME_CURRENT="
0
"
# Для битых #Time=
else
if [[ -n
$TIME_CURRENT_PROXY
]] ; then
TIME_CURRENT=
$TIME_CURRENT_PROXY
TIME_CURRENT_ARRAY+=(
$TIME_CURRENT
)
# Если существует несколько .desktop файлов на один и тот же .exe файл,
# то среди них время берётся из того .desktop файла, в котором проведено дольше времени
# и данное время будет потом записываться во все .desktop файлы у которых общий .exe файл
if [[ -n
${
TIME_CURRENT_ARRAY
[1]
}
]] ; then
for i in "
${
!TIME_CURRENT_ARRAY[@]
}
" ; do
for j in "
${
!TIME_CURRENT_ARRAY[@]
}
" ; do
if ((
${
TIME_CURRENT_ARRAY
[
$i
]
}
>
${
TIME_CURRENT_ARRAY
[
$j
]
}
)) ; then
tmp=
${
TIME_CURRENT_ARRAY
[
$i
]
}
TIME_CURRENT_ARRAY[i]=
${
TIME_CURRENT_ARRAY
[
$j
]
}
TIME_CURRENT_ARRAY[j]=
$tmp
fi
done
done
fi
TIME_CURRENT="
${
TIME_CURRENT_ARRAY
[0]
}
"
# Для битых #Time=
if [[ !
$TIME_CURRENT
=~ [0-9]+ ]]
\
|| (( TIME_CURRENT >= 999999999 )) ; then
TIME_CURRENT="
0
"
...
...
@@ -845,10 +838,13 @@ search_desktop_file () {
DESKTOP_FILES_ARRAY["
$count
"]="
$desktop_file
"
(( count++ ))
fi
unset TIME_CURRENT_PROXY
fi
fi
done
IFS="
$orig_IFS
"
[[ -z
$TIME_CURRENT
]] && TIME_CURRENT=0
export TIME_CURRENT
if [[ -n
$PW_TIME_IN_GAME
]] ; then
...
...
@@ -5575,6 +5571,9 @@ portwine_create_shortcut () {
unset
PW_SKIP_RESTART_STEAM
fi
# Когда новый .desktop файл
echo
"#NEW_DESKTOP"
>>
"
$PORT_WINE_PATH
/
$name_desktop
.desktop"
if
[[
"
$PW_NO_RESTART_PPDB
"
!=
"1"
]]
;
then
print_info
"Restarting PP..."
[[
"
$PW_GUI_START
"
==
"NOTEBOOK"
]]
&&
unset
PW_YAD_FORM_TAB
...
...
data_from_portwine/scripts/start.sh
View file @
369860af
...
...
@@ -636,10 +636,10 @@ else
[[
$line
=~ ^#NEW_DESKTOP ]] && NEW_DESKTOP=1
done < "
$desktop_file
"
PW_ALL_DF["
$AMOUNT_GENERATE_BUTTONS
"]="
$desktop_file_new
"
if [[
$
NEW_DESKTOP
== 1 ]] && [[
$SORT_WITH_TIME
== enabled
]] ; then
if [[
$
SORT_WITH_TIME
== enabled ]] && [[
$NEW_DESKTOP
== 1
]] ; then
unset NEW_DESKTOP
sed -i '/^#NEW_DESKTOP/d' "
$desktop_file
"
PW_AMOUNT_NEW_DESKTOP
+
=(
$AMOUNT_GENERATE_BUTTONS
)
PW_AMOUNT_NEW_DESKTOP=(
$AMOUNT_GENERATE_BUTTONS
)
else
PW_AMOUNT_OLD_DESKTOP+=(
$AMOUNT_GENERATE_BUTTONS
)
fi
...
...
@@ -657,7 +657,7 @@ else
portwine_exe=
${
PW_NAME_D_ICON
[
"
$AMOUNT_GENERATE_BUTTONS
"
]//\
"/}
search_desktop_file
unset portwine_exe
PW_GAME_TIME["
$AMOUNT_GENERATE_BUTTONS
"]=
$
{
TIME_CURRENT_ARRAY
[0]
}
PW_GAME_TIME["
$AMOUNT_GENERATE_BUTTONS
"]=
$
TIME_CURRENT
fi
(( AMOUNT_GENERATE_BUTTONS++ ))
fi
...
...
@@ -667,10 +667,9 @@ else
# Переопределение элементов в массивах в зависимости от PW_GAME_TIME, от большего значения к меньшему.
# 10 миллисекунд на 40 .desktop файлов, работает быстро
if [[
$SORT_WITH_TIME
== enabled ]] && [[ -n
${
PW_GAME_TIME
[1]
}
]] ; then
for i in "
${
!PW_GAME_TIME[@]
}
" ; do
for j in "
${
!PW_GAME_TIME[@]
}
" ; do
if ((
${
PW_GAME_TIME
[
$i
]
}
>
${
PW_GAME_TIME
[
$j
]
}
))
\
&& [[ !
${
PW_AMOUNT_NEW_DESKTOP
[*]
}
=~
$j
]] ; then
for i in "
${
PW_AMOUNT_OLD_DESKTOP
[@]
}
" ; do
for j in "
${
PW_AMOUNT_OLD_DESKTOP
[@]
}
" ; do
if ((
${
PW_GAME_TIME
[
$i
]
}
>
${
PW_GAME_TIME
[
$j
]
}
)) ; then
tmp_0=
${
PW_GAME_TIME
[
$i
]
}
tmp_1=
${
PW_ALL_DF
[
$i
]
}
tmp_2=
${
PW_NAME_D_ICON
[
$i
]
}
...
...
@@ -693,7 +692,7 @@ else
# Генерация .desktop баттанов для главного меню
IFS=
$'
\n
'
PW_GENERATE_BUTTONS="
--field=
${
translations
[Create shortcut...]
}
!
${
PW_GUI_ICON_PATH
}
/find_48.svg!
:FBTNR%@bash
-c \
"button_click --normal pw_find_exe
\"
%"
for dp in
${
PW_AMOUNT_NEW_DESKTOP
[@]
}
${
PW_AMOUNT_OLD_DESKTOP
[@]
}
; do
for dp in
"
${
PW_AMOUNT_NEW_DESKTOP
[@]
}
"
"
${
PW_AMOUNT_OLD_DESKTOP
[@]
}
"
; do
PW_NAME_D_ICON_48=
"
${
PW_ICON_PATH
[dp]%.png
}
_48"
PW_NAME_D_ICON_128=
"
${
PW_ICON_PATH
[dp]%.png
}
"
PW_NAME_D_ICON_NEW=
"
${
PW_NAME_D_ICON
[dp]//\
"/}"
...
...
@@ -733,7 +732,6 @@ else
--gui-type-layout
=
"
${
MAIN_MENU_GUI_TYPE_LAYOUT
}
"
\
--align-buttons
--scroll
--separator
=
" "
${
PW_GENERATE_BUTTONS
}
2>/dev/null &
IFS
=
"
$orig_IFS
"
unset
PW_GENERATE_BUTTONS
"
${
pw_yad
}
"
--plug
=
$KEY_MENU
--tabnum
=
"
${
PW_GUI_SORT_TABS
[3]
}
"
--form
--columns
=
3
--align-buttons
--separator
=
";"
--homogeneous-column
\
--gui-type-layout
=
"
${
MAIN_MENU_GUI_TYPE_LAYOUT
}
"
\
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment