Skip to content

Commit 6de72bb

Browse files
committed
Add option to select WineD3D renderer
1 parent 38902fd commit 6de72bb

3 files changed

Lines changed: 19 additions & 0 deletions

File tree

app/src/main/java/com/winlator/ContainerDetailFragment.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,9 @@ public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup r
257257
private void saveWineRegistryKeys(View view) {
258258
File userRegFile = new File(container.getRootDir(), ".wine/user.reg");
259259
try (WineRegistryEditor registryEditor = new WineRegistryEditor(userRegFile)) {
260+
Spinner sRenderer = view.findViewById(R.id.SRenderer);
261+
registryEditor.setStringValue("Software\\Wine\\Direct3D", "renderer", Arrays.asList("vulkan", "gl", "no3d").get(sRenderer.getSelectedItemPosition()));
262+
260263
Spinner sCSMT = view.findViewById(R.id.SCSMT);
261264
registryEditor.setDwordValue("Software\\Wine\\Direct3D", "csmt", sCSMT.getSelectedItemPosition() != 0 ? 3 : 0);
262265

@@ -320,6 +323,11 @@ public void onNothingSelected(AdapterView<?> parent) {}
320323
File userRegFile = new File(containerDir, ".wine/user.reg");
321324

322325
try (WineRegistryEditor registryEditor = new WineRegistryEditor(userRegFile)) {
326+
List<String> rendererList = Arrays.asList("Vulkan", "OpenGL", "GDI (no3d)");
327+
Spinner sRenderer = view.findViewById(R.id.SRenderer);
328+
sRenderer.setAdapter(new ArrayAdapter<>(context, android.R.layout.simple_spinner_dropdown_item, rendererList));
329+
sRenderer.setSelection(Arrays.asList("vulkan", "gl", "no3d").indexOf(registryEditor.getStringValue("Software\\Wine\\Direct3D", "renderer", "gl")));
330+
323331
List<String> stateList = Arrays.asList(context.getString(R.string.disable), context.getString(R.string.enable));
324332
Spinner sCSMT = view.findViewById(R.id.SCSMT);
325333
sCSMT.setAdapter(new ArrayAdapter<>(context, android.R.layout.simple_spinner_dropdown_item, stateList));

app/src/main/res/layout/container_detail_fragment.xml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -284,6 +284,16 @@
284284
android:layout_height="wrap_content">
285285

286286
<LinearLayout style="@style/FieldSet">
287+
<TextView
288+
android:layout_width="wrap_content"
289+
android:layout_height="wrap_content"
290+
android:text="@string/renderer" />
291+
292+
<Spinner
293+
style="@style/ComboBox"
294+
android:id="@+id/SRenderer"
295+
android:layout_width="match_parent" />
296+
287297
<TextView
288298
android:layout_width="wrap_content"
289299
android:layout_height="wrap_content"

app/src/main/res/values/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@
6767
<string name="unable_to_import_profile">Unable to import profile</string>
6868
<string name="wine_configuration">Wine Configuration</string>
6969
<string name="registry_keys">Registry Keys</string>
70+
<string name="renderer">Renderer</string>
7071
<string name="csmt">CSMT (Command Stream Multi-Thread)</string>
7172
<string name="gpu_name">GPU Name</string>
7273
<string name="offscreen_rendering_mode">Offscreen Rendering Mode</string>

0 commit comments

Comments
 (0)