hide eu on ios 18 + improve min version code

This commit is contained in:
leminlimez
2024-10-25 13:50:01 -04:00
parent 98de30aa46
commit c6a431a669
4 changed files with 168 additions and 108 deletions

View File

@@ -221,6 +221,15 @@ class MainWindow(QtWidgets.QMainWindow):
self.device_manager.set_current_device(index=index)
# hide options that are for newer versions
# remove the new dynamic island options
MinTweakVersions = {
"exploit": [("18.0", self.ui.featureFlagsPageBtn)],
"18.1": [self.ui.enableAIChk, self.ui.aiEnablerContent],
"18.0": [self.ui.aodChk, self.ui.iphone16SettingsChk]
}
MaxTweakVersions = {
"17.7": [self.ui.euEnablerContent]
}
try:
self.ui.dynamicIslandDrp.removeItem(6)
self.ui.dynamicIslandDrp.removeItem(5)
@@ -232,24 +241,41 @@ class MainWindow(QtWidgets.QMainWindow):
else:
self.ui.rdarFixChk.show()
self.ui.rdarFixChk.setText(f"{rdar_title} (modifies resolution)")
if Version(self.device_manager.data_singleton.current_device.version) >= Version("18.1"):
self.ui.enableAIChk.show()
self.ui.aiEnablerContent.hide()
else:
self.ui.enableAIChk.hide()
self.ui.aiEnablerContent.hide()
if Version(self.device_manager.data_singleton.current_device.version) >= Version("18.0"):
self.ui.aodChk.show()
self.ui.iphone16SettingsChk.show()
if self.device_manager.data_singleton.current_device.has_exploit():
self.ui.featureFlagsPageBtn.show()
device_ver = Version(self.device_manager.data_singleton.current_device.version)
# toggle option visibility for the minimum versions
for version in MinTweakVersions.keys():
if version == "exploit":
# disable if the exploit is not available
for pair in MinTweakVersions[version]:
if self.device_manager.data_singleton.current_device.has_exploit() and device_ver >= Version(pair[0]):
pair[1].show()
else:
pair[1].hide()
else:
# show views if the version is higher
parsed_ver = Version(version)
for view in MinTweakVersions[version]:
if device_ver >= parsed_ver:
view.show()
else:
view.hide()
# toggle option visibility for the max versions
for version in MaxTweakVersions.keys():
parsed_ver = Version(version)
for view in MaxTweakVersions[version]:
if device_ver <= parsed_ver:
view.show()
else:
view.hide()
if device_ver >= Version("18.0"):
# show the other dynamic island options
self.ui.dynamicIslandDrp.addItem("2622 (iPhone 16 Pro Dynamic Island)")
self.ui.dynamicIslandDrp.addItem("2868 (iPhone 16 Pro Max Dynamic Island)")
# eligibility page button
if device_ver >= Version("17.4") and (device_ver <= Version("17.7") or device_ver >= Version("18.1")):
self.ui.euEnablerPageBtn.show()
else:
self.ui.aodChk.hide()
self.ui.iphone16SettingsChk.hide()
self.ui.featureFlagsPageBtn.hide()
self.ui.euEnablerPageBtn.hide()
else:
self.device_manager.set_current_device(index=None)

View File

@@ -2510,13 +2510,6 @@ what you are doing.</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="euEnablerEnabledChk">
<property name="text">
<string>Enable EU Enabler</string>
</property>
</widget>
</item>
<item>
<widget class="QWidget" name="euEnablerPageContent" native="true">
<property name="enabled">
@@ -2536,22 +2529,44 @@ what you are doing.</string>
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_5">
<property name="text">
<string>Method Type</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="methodChoiceDrp">
<property name="maximumSize">
<size>
<width>150</width>
<height>16777215</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QComboBox {
<widget class="QWidget" name="euEnablerContent" native="true">
<layout class="QVBoxLayout" name="verticalLayout_36">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QCheckBox" name="euEnablerEnabledChk">
<property name="text">
<string>Enable EU Enabler</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_5">
<property name="text">
<string>Method Type</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="methodChoiceDrp">
<property name="maximumSize">
<size>
<width>150</width>
<height>16777215</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QComboBox {
background-color: #3b3b3b;
border: none;
color: #e8e8e8;
@@ -2583,49 +2598,52 @@ QComboBox QAbstractItemView::item:hover {
background-color: #535353;
color: #ffffff;
}</string>
</property>
<item>
<property name="text">
<string>Method 1</string>
</property>
</item>
<item>
<property name="text">
<string>Method 2</string>
</property>
</item>
</widget>
</item>
<item>
<widget class="QLabel" name="label_6">
<property name="text">
<string>Region Code (Should be 2 letters)</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="regionCodeTxt">
<property name="placeholderText">
<string>Region Code (Default: US)</string>
</property>
</widget>
</item>
<item>
<widget class="Line" name="line_16">
<property name="enabled">
<bool>false</bool>
</property>
<property name="styleSheet">
<string notr="true">QFrame {
</property>
<item>
<property name="text">
<string>Method 1</string>
</property>
</item>
<item>
<property name="text">
<string>Method 2</string>
</property>
</item>
</widget>
</item>
<item>
<widget class="QLabel" name="label_6">
<property name="text">
<string>Region Code (Should be 2 letters)</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="regionCodeTxt">
<property name="placeholderText">
<string>Region Code (Default: US)</string>
</property>
</widget>
</item>
<item>
<widget class="Line" name="line_16">
<property name="enabled">
<bool>false</bool>
</property>
<property name="styleSheet">
<string notr="true">QFrame {
color: #414141;
}</string>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>

View File

@@ -1374,23 +1374,28 @@ class Ui_Nugget(object):
self.verticalLayout_17.addWidget(self.line_13)
self.euEnablerEnabledChk = QCheckBox(self.euEnablerPage)
self.euEnablerEnabledChk.setObjectName(u"euEnablerEnabledChk")
self.verticalLayout_17.addWidget(self.euEnablerEnabledChk)
self.euEnablerPageContent = QWidget(self.euEnablerPage)
self.euEnablerPageContent.setObjectName(u"euEnablerPageContent")
self.euEnablerPageContent.setEnabled(False)
self.verticalLayout_16 = QVBoxLayout(self.euEnablerPageContent)
self.verticalLayout_16.setObjectName(u"verticalLayout_16")
self.verticalLayout_16.setContentsMargins(0, 0, 0, 0)
self.label_5 = QLabel(self.euEnablerPageContent)
self.euEnablerContent = QWidget(self.euEnablerPageContent)
self.euEnablerContent.setObjectName(u"euEnablerContent")
self.verticalLayout_36 = QVBoxLayout(self.euEnablerContent)
self.verticalLayout_36.setObjectName(u"verticalLayout_36")
self.verticalLayout_36.setContentsMargins(0, 0, 0, 0)
self.euEnablerEnabledChk = QCheckBox(self.euEnablerContent)
self.euEnablerEnabledChk.setObjectName(u"euEnablerEnabledChk")
self.verticalLayout_36.addWidget(self.euEnablerEnabledChk)
self.label_5 = QLabel(self.euEnablerContent)
self.label_5.setObjectName(u"label_5")
self.verticalLayout_16.addWidget(self.label_5)
self.verticalLayout_36.addWidget(self.label_5)
self.methodChoiceDrp = QComboBox(self.euEnablerPageContent)
self.methodChoiceDrp = QComboBox(self.euEnablerContent)
self.methodChoiceDrp.addItem("")
self.methodChoiceDrp.addItem("")
self.methodChoiceDrp.setObjectName(u"methodChoiceDrp")
@@ -1428,19 +1433,19 @@ class Ui_Nugget(object):
" color: #ffffff;\n"
"}")
self.verticalLayout_16.addWidget(self.methodChoiceDrp)
self.verticalLayout_36.addWidget(self.methodChoiceDrp)
self.label_6 = QLabel(self.euEnablerPageContent)
self.label_6 = QLabel(self.euEnablerContent)
self.label_6.setObjectName(u"label_6")
self.verticalLayout_16.addWidget(self.label_6)
self.verticalLayout_36.addWidget(self.label_6)
self.regionCodeTxt = QLineEdit(self.euEnablerPageContent)
self.regionCodeTxt = QLineEdit(self.euEnablerContent)
self.regionCodeTxt.setObjectName(u"regionCodeTxt")
self.verticalLayout_16.addWidget(self.regionCodeTxt)
self.verticalLayout_36.addWidget(self.regionCodeTxt)
self.line_16 = QFrame(self.euEnablerPageContent)
self.line_16 = QFrame(self.euEnablerContent)
self.line_16.setObjectName(u"line_16")
self.line_16.setEnabled(False)
self.line_16.setStyleSheet(u"QFrame {\n"
@@ -1449,7 +1454,10 @@ class Ui_Nugget(object):
self.line_16.setFrameShadow(QFrame.Plain)
self.line_16.setFrameShape(QFrame.HLine)
self.verticalLayout_16.addWidget(self.line_16)
self.verticalLayout_36.addWidget(self.line_16)
self.verticalLayout_16.addWidget(self.euEnablerContent)
self.enableAIChk = QCheckBox(self.euEnablerPageContent)
self.enableAIChk.setObjectName(u"enableAIChk")

View File

@@ -1374,23 +1374,28 @@ class Ui_Nugget(object):
self.verticalLayout_17.addWidget(self.line_13)
self.euEnablerEnabledChk = QCheckBox(self.euEnablerPage)
self.euEnablerEnabledChk.setObjectName(u"euEnablerEnabledChk")
self.verticalLayout_17.addWidget(self.euEnablerEnabledChk)
self.euEnablerPageContent = QWidget(self.euEnablerPage)
self.euEnablerPageContent.setObjectName(u"euEnablerPageContent")
self.euEnablerPageContent.setEnabled(False)
self.verticalLayout_16 = QVBoxLayout(self.euEnablerPageContent)
self.verticalLayout_16.setObjectName(u"verticalLayout_16")
self.verticalLayout_16.setContentsMargins(0, 0, 0, 0)
self.label_5 = QLabel(self.euEnablerPageContent)
self.euEnablerContent = QWidget(self.euEnablerPageContent)
self.euEnablerContent.setObjectName(u"euEnablerContent")
self.verticalLayout_36 = QVBoxLayout(self.euEnablerContent)
self.verticalLayout_36.setObjectName(u"verticalLayout_36")
self.verticalLayout_36.setContentsMargins(0, 0, 0, 0)
self.euEnablerEnabledChk = QCheckBox(self.euEnablerContent)
self.euEnablerEnabledChk.setObjectName(u"euEnablerEnabledChk")
self.verticalLayout_36.addWidget(self.euEnablerEnabledChk)
self.label_5 = QLabel(self.euEnablerContent)
self.label_5.setObjectName(u"label_5")
self.verticalLayout_16.addWidget(self.label_5)
self.verticalLayout_36.addWidget(self.label_5)
self.methodChoiceDrp = QComboBox(self.euEnablerPageContent)
self.methodChoiceDrp = QComboBox(self.euEnablerContent)
self.methodChoiceDrp.addItem("")
self.methodChoiceDrp.addItem("")
self.methodChoiceDrp.setObjectName(u"methodChoiceDrp")
@@ -1428,19 +1433,19 @@ class Ui_Nugget(object):
" color: #ffffff;\n"
"}")
self.verticalLayout_16.addWidget(self.methodChoiceDrp)
self.verticalLayout_36.addWidget(self.methodChoiceDrp)
self.label_6 = QLabel(self.euEnablerPageContent)
self.label_6 = QLabel(self.euEnablerContent)
self.label_6.setObjectName(u"label_6")
self.verticalLayout_16.addWidget(self.label_6)
self.verticalLayout_36.addWidget(self.label_6)
self.regionCodeTxt = QLineEdit(self.euEnablerPageContent)
self.regionCodeTxt = QLineEdit(self.euEnablerContent)
self.regionCodeTxt.setObjectName(u"regionCodeTxt")
self.verticalLayout_16.addWidget(self.regionCodeTxt)
self.verticalLayout_36.addWidget(self.regionCodeTxt)
self.line_16 = QFrame(self.euEnablerPageContent)
self.line_16 = QFrame(self.euEnablerContent)
self.line_16.setObjectName(u"line_16")
self.line_16.setEnabled(False)
self.line_16.setStyleSheet(u"QFrame {\n"
@@ -1449,7 +1454,10 @@ class Ui_Nugget(object):
self.line_16.setFrameShadow(QFrame.Plain)
self.line_16.setFrameShape(QFrame.Shape.HLine)
self.verticalLayout_16.addWidget(self.line_16)
self.verticalLayout_36.addWidget(self.line_16)
self.verticalLayout_16.addWidget(self.euEnablerContent)
self.enableAIChk = QCheckBox(self.euEnablerPageContent)
self.enableAIChk.setObjectName(u"enableAIChk")