Project

General

Profile

Actions

Emulator Issues #7652

closed

Render to main window in fullscreen makes hotkeys stop working

Added by hawntah over 9 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
Category:
Controls
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

Game Name?
N/A

Game ID?
N/A

What's the problem? Describe what went wrong in few words.
Hotkeys stop working after pausing in fullscreen (Render to main window enabled). This makes it impossible to unpause or exit fullscreen without closing Dolphin and losing all progress.

What did you expect to happen instead?
I expected hotkeys to work at all times.

What steps will reproduce the problem?

  1. Load a game
  2. Enter Fullscreen mode
  3. Pause

Dolphin 3.5 and 3.5-367 are old versions of Dolphin that have
known issues and bugs, so don't report issues about them and test the
latest Dolphin version first.
Which versions of Dolphin did you test on?
4.0-3180, 4.0-3073

Does using an older version of Dolphin solve your issue? If yes, which
versions of Dolphin used to work?
4.0-2771

What are your PC specifications? (including, but not limited to: Operating
System, CPU and GPU)
OS: Windows 8 64-bit (6.2, Build 9200)
CPU: Intel Core i7-3610QM @ 2.30GHz
GPU: Intel HD Graphics 4000
RAM: 8GB

Is there any other relevant information? (e.g. logs, screenshots,
configuration files)


Related issues 4 (0 open4 closed)

Has duplicate Emulator - Emulator Issues #7753: Screenshot function ineffective when both Use Fullscreen and Render to Main Window option is checkedDuplicate

Actions
Has duplicate Emulator - Emulator Issues #7822: Can't exit the emulatorDuplicate

Actions
Has duplicate Emulator - Emulator Issues #7889: Hotkeys don't working with "Render to main window" option.Duplicate

Actions
Has duplicate Emulator - Emulator Issues #7934: Hotkeys don't work once in fullscreen.Duplicate

Actions
Actions #1

Updated by rachelbryk over 9 years ago

  • Status changed from New to Accepted
Actions #2

Updated by Morphello over 9 years ago

Pause doesn't seem to influence this. Certain hotkeys appear to always work and others don't. Unlocking Frame Limit will always work for me in fullscreen mode (render to main window). Pause, stop, toggle fullscreen and save states will not work in full screen mode.

The only way to exit the emulation is to Alt+F4. If you enable the confirmation prompt on exit, select no, the game will switch from fullscreen to windowed, rendering the game in the main window, and all hotkeys will work until you hit Alt+Enter to make it fullscreen again.

Game Name?
N/A

Game ID?
N/A

What's the problem? Describe what went wrong in few words.
Certain Hotkeys don't work in fullscreen mode (Render to main window).

What did you expect to happen instead?
All hotkeys should function at all times

What steps will reproduce the problem?

  1. Load a game
  2. Enter Fullscreen mode
  3. Hit Pause, Toggle Fullscreen, Stop, Save state, load state

Dolphin 3.5 and 3.5-367 are old versions of Dolphin that have
known issues and bugs, so don't report issues about them and test the
latest Dolphin version first.
Which versions of Dolphin did you test on?
4.0-3376

Does using an older version of Dolphin solve your issue? If yes, which
versions of Dolphin used to work?
4.0-2691

What are your PC specifications? (including, but not limited to: Operating
System, CPU and GPU)
Tested on 4 Computers
OS: Windows 8.1 64-bit
CPU: Intel Core i7 4770k, 4690, 4590, 4700MQ
GPU: Intel HD Graphics 4600, Nvidia GTX 770
RAM: 8GB

Is there any other relevant information? (e.g. logs, screenshots,
configuration files)
N/A

Actions #3

Updated by hawntah over 9 years ago

Interesting... I did some further testing in both 4.0-3180 and the latest version, 4.0-3382, and I couldn't get certain hotkeys (save/load state, frame advance, reset) to work at all in render to main window fullscreen mode. However, other hotkeys (stop, toggle fullscreen, toggle framelimit) worked just fine until I paused the game. Additionally, if I used stop and then play/pause the hotkeys would stop working, so there is definitely something up with the pause hotkey.

Actions #4

Updated by hawntah over 9 years ago

Oops, I meant to say if I used stop and then play/pause the hotkeys would not work once I re-entered fullscreen, since play/pause automatically switches you back into windowed mode and I have no problems with hotkeys in windowed mode.

Actions #5

Updated by JMC4789 over 9 years ago

Issue 7753 has been merged into this issue.

Actions #7

Updated by JMC4789 over 9 years ago

Issue 7822 has been merged into this issue.

Actions #8

Updated by JMC4789 over 9 years ago

Is this still an issue on Windows? On Linux, I'm reproducing the bug, but in Windows I have no issues.

Actions #9

Updated by Morphello over 9 years ago

Yes. As of Build 4.0-4065 posted an hour ago, this is still an issue.

Running a full screen game called via cmd Dolphin.exe /b /e "C:\Games\ROMs\Wii\test\test.wbfs", game launches, plays as expected.

Escape, Fkeys, etc, dont work. Controller input and emulated controller input still works.

Alt + F4 brings up "do you want to end emulation" option.

Select No, takes you out of full screen and renders in main window.

All Hotkeys now work, pause, play, etc. Alt + Enter returns to full screen mode. Hotkeys no longer work.

Actions #10

Updated by ZephyrSurfer over 9 years ago

I think this is fixed in PR #1604

Actions #11

Updated by Morphello over 9 years ago

Issue is still a problem as of 4.0-4441, released 40 minutes ago.

Retested settings - http://i.imgur.com/59V1RlG.png

With settings above, behavior is as post #10. Alt + F4 is the only command that works, causing it to render in the main window. After hitting alt + f4, all keyboard commands work. Going fullscreen again causes everything not to work.

Tested without "render to main window" selected.

All keyboard commands work as expected.

Issue is still not resolved. If anyone needs more information, I'm happy to post it.

Actions #12

Updated by JMC4789 over 9 years ago

Pull Request 1604 is not merged yet. Try this please.

https://dl.dolphin-emu.org/prs/pr-1604-dolphin-latest-x64.7z

Actions #13

Updated by Morphello over 9 years ago

Testing PR-1604 now.

Errors attempting to load a game.

"Failed to write BT.DINF to Sysconfig"

"Setup Wii Memory: Cant write setting.txt file"

This occurs while running dolphin under administrator settings.

Clearing user folder.

Game has loaded successfully with Render to Main Window selected.

New issues present.

Dolphin GUI window is over game window - http://i.imgur.com/7fRoZMG.png

Testing hotkeys, pause and other hotkeys work successfully during this state.

Running dolphin.exe through a batch file with the command:

start /min "" "C:\Dolphin-x64\Dolphin.exe" /b /e %1

results in the game loading, the dolphin GUI window being minimized and the game still responding to hotkey commands. However the mouse is now visible in the middle of the screen. This still occurs with "hide mouse cursor" selected. I do not have a mouse plugged into this machine. Additionally Alt + F4 causes dolphin to crash after you select yes for "stop emulation".

Turning off Render to Main Window results in dolphin running as expected, without the gui in front of the game and with the mouse correctly hidden, however now the prompt for ending the emulation does not appear.

Finally, swapping between these settings and going back and forth, produces a lot of instability that requires me to delete the user file, or I am no longer able to load games. The two errors at the start of the post are the errors I receive here. Additionally I believe these errors are caused by more than one instance of the game window being open at a time, and something is causing 2 instances of dolphin to open as I open a game.

The goal is to run the emulator in batch mode without mouse intervention. Currently Render to Main Window works as expected, if you can use a mouse to minimize the dolphin window.

So in total:

Hotkeys work in PR-1604
Render to main window shows GUI in fullscreen mode
Render to main window shows Mouse in full screen mode regardless of setting
Turning off render to window, everything works except prompts
Crashing when "stop emulation" with flag /b set
Emulator becomes unstable, opens multiple instances of itself, needs clearing of user folder to fix

Actions #14

Updated by JMC4789 over 9 years ago

Interesting. That's the kind of testing we needed :)

Actions #15

Updated by Morphello over 9 years ago

Well like I said, I'd like to provide as much accurate information as possible to get the problem solved. Just ask.

Actions #16

Updated by hawntah over 9 years ago

Just tested PR 1604. Unlike #14, I'm getting no errors when loading games and the GUI is not shown onscreen in fullscreen mode. However, the mouse cursor is always visible for me too, even with "hide mouse cursor" selected.

The pause hotkey issue seems to have been fixed.. to an extent. Pausing and unpausing now works all the time in fullscreen, but other hotkeys, such as save states and frame advance still do not do anything. When I Alt+Tab, it shows there are two different Dolphin windows open, the GUI window and the render output window (like in fullscreen mode with "render to main window" disabled). If I switch to the GUI window, all hotkeys work, when it loses focus, e.g. when I switch back to the other window, they stop working again.

On an unrelated note, if I stop and restart emulation in windowed mode, or switch to fullscreen and back to windowed mode, the toolbar's width doubles while emulation is running.

Actions #17

Updated by Morphello over 9 years ago

Ah, I must admit the only 3 keyboard shortcuts I've tried are pause (F10), Fullscreen (Alt+Enter), and Quit (Alt + F4).

Actions #18

Updated by Armada over 9 years ago

Issue 7889 has been merged into this issue.

Actions #19

Updated by Armada over 9 years ago

Issue 7934 has been merged into this issue.

Actions #20

Updated by psxlover over 9 years ago

I was just about to make a new issue when I searched and found this one.
The problem with the state shortcuts was introduced between 4.0-2927 and 4.0-2929, probably on https://github.com/dolphin-emu/dolphin/pull/871.

Originally I couldn't leave Fullscreen after enabling it using alt+enter, then I noticed that neither Screenshot nor Save/Load state shortcuts were working while on fullscreen. Rebinding the Fullscreen and Screenshot shortcuts to numpad keys made them work.

Later on while trying to find which build introduced it I noticed that both Fullscreen and Screenshot shortcuts had started working and I couldn't reproduce the problem with them even when I returned them to their normal bindings (Alt+Enter, F9). But F1-F8 where still not working while on Fullscreen.

Actions #21

Updated by skidau over 9 years ago

  • Category changed from controls to ui

I have created an alternate hotkey system based on controller inputs. The new system should fix this issue. It can be tested here:

https://github.com/dolphin-emu/dolphin/pull/1949

Windows build:
http://dl.dolphin-emu.org/prs/pr-1949-dolphin-latest-x64.7z

OSX build:
http://dl.dolphin-emu.org/prs/pr-1949-dolphin-latest.dmg

Actions #22

Updated by skidau over 9 years ago

Note that with the new system, Background Input can be enabled for hotkeys

Actions #23

Updated by Morphello over 9 years ago

Testing PR-1949 now.

Fresh install, default settings + render to main window + hide mouse cursor. Background input and Iterative input both deselected.

Loading ISO in full screen.

Pause works as intended. Pausing in fullscreen causes mouse to appear even with "hide mouse cursor" setting disabled.

Screenshot works fullscreen.

Turbo works fullscreen.

Saving states does not work in full screen.

Loading states does not work in full screen.

Alt + F4 works in fullscreen, however 25-50% of the time, the "Do you want to stop the current emulation" window does not appear (window is rendered beneath the game window).

Escape works in fullscreen, however 50-75% of the time, the "Do you want to stop the current emulation" window does not appear (window is rendered beneath the game window).

Hitting Alt + F4 or Escape, hitting right on the keyboard to highlight No, hitting space to select, brings me to windowed mode while running the game within the window.

Most hotkeys used fire twice. Hitting Alt + Enter causes the game to go fullscreen then windowed again instantly. Hitting pause pauses the game, then unpauses it. Or the reverse if the game was already paused.

Saving states now works, with confirmation via text.

Loading states also works.

Do not know what Background Input or Iterative Input imply, testing anyway.

Reloaded ISO after each test. Identical symptoms.

Testing without render to main window.

All previous hotkeys tested work correctly in fullscreen mode.

Alt + F4 or Escape's "Do you want to stop emulation" window is still behind the game window and thus is invisible.

Mouse still appears on pause.

Alt + Enter, Pause and other hot keys are not double firing.

Hitting Alt + F4 in fullscreen mode and then selecting "no" results in the main GUI being in focus and the game window is now in the background. Alt Tab or Mouse is required to relocate game window.

It looks as if a few versions ago, a new behavior of the "stop emulation" window being hidden under the game window was introduced and is still there in this build. The keys work mostly in normal mode, but using them in "render to main window" causes all the issues listed.

When returning to fullscreen in Render to main window mode, a message about fullscreen exclusive mode is displayed.

That's all the testing I can do for the next few days. Hope it helps.

Actions #24

Updated by skidau about 9 years ago

  • Status changed from Accepted to Fixed
Actions #25

Updated by Morphello about 9 years ago

Downloading and testing 4.0-5406

New install, default settings + Render to main window + hide mouse + fullscreen.

Initial testing shows NOTHING has changed since my previous tests.

Using Default keybinds and Xenoblade to test.

Screenshot (F9) + Pause (F10) + Toggle Frame Limit (TAB) WORK in full screen.

Stop (ESCAPE) WORKS in fullscreen but the dialogue box "Do you want to stop this emulation" is behind the game screen. Using the keyboard to navigate the dialogue box still works, even though it isnt visible.

Save State Slot 1 (Shift + F1) + Load State Slot 1 (Shift + Alt + F1) DO NOT WORK in fullscreen.

By default Dolphin has Standard Controller for GC Controller port 1 and Emulated Wiimote for Wiimote port 1.

Xenoblade recognises the wiimote only.

All keyboard based hotkeys for the emulated wiimote work perfectly.

Switching over to windowed (ALT + ENTER).

Stop (ESCAPE) WORKS correctly AND it displays the stop dialogue "Do you want to end emulation".

Screenshot (F9) + Toggle Frame Limit (TAB) WORK in windowed mode.

Pause (F10) DOES NOT WORK CORRECTLY in windowed mode. Each press causes 2 commands to fire. The emulator will pause, then unpause immediately.

Save State Slot 1 (Shift + F1) WORKS in windowed mode.

Load State Slot 1 (Shift + Alt + F1) DOES NOT WORK in windowed mode.

Fullscreen (ALT + ENTER) DOES NOT WORK in windowed mode. It suffers the same problem as pause, double firing.

Swapping over to custom keybindings - http://i.imgur.com/zC49N4V.png

Switching to Fullscreen.

Fullscreen (NUM8) WORKS in windowed mode without double firing. Note, it will only work correctly in Fullscreen mode if the emulation is currently unpaused.

Screenshot (NUM6) + Pause (NUM5) + Toggle Frame Limit (NUM1) WORKS in fullscreen.

Stop (NUM7) WORKS in fullscreen but the dialogue box will only display about half the time.

Save State Slot 1 (NUM2) + Load State Slot 1 (NUM3) DO NOT WORK in fullscreen.

Switching to Windowed.

Pause (NUM5) WORKS correctly in windowed mode now (no double press)

Save State Slot 1 (NUM2) + Load State Slot 1 (NUM3) DO NOT WORK in in windowed mode at all

The remaining buttons work as previously stated.

Pausing the game in fullscreen mode still causes the mouse cursor to appear.

Since version 4.0-3376 Pause, Stop and Toggle Fullscreen have been fixed in fullscreen mode (render to main window) however this has introduced the bug where the dialogue box will not reliably show to select yes or no to stop the emulation.

Saving and loading states is still broken, additionally they don't like not being used in conjunction with the F keys. Setting Save state to be F1 and Load state to F2 works, but setting them to Num1 and Num2 does not. Whatever has been altered through this process still has something fundamentally wrong with the way the hotkeys are being translated to the game with Render to Main Window selected. Most notably is keys not working during fullscreen, and double firing during windowed mode.

Actions #26

Updated by JMC4789 about 9 years ago

  • Status changed from Fixed to Questionable

"Xenoblade only recognizes the Wiimote" well, yeah, that game doesn't support the GameCube controller.

Reopening this as questionable because it sounds like it isn't fixed, but I can't really confirm.

Actions #27

Updated by Morphello about 9 years ago

Yeah I realise that. I just wanted to put as much info as possible, since we're talking about hotkeys, by default Dolphin has a set of keyboard based hotkeys for both the wiimote and the GC controller. Shift is bound to a hotkey on the Wiimote initially. I tried selecting and deselecting it, it didn't affect anything.

The wiimote settings also have return set to start, which causes the wii menu to appear in game in an attempt to fullscreen (ALT + ENTER). Addtionally, even if ALT+ENTER is unbound, it still makes the game fullscreen.

Render to window solves a lot of problems on a mouseless computer that is running the game by a batch script. Without it, you often get applications that steal focus or leap in front of the game window. Since the running game will have two windows, the render window and the main dolphin GUI, the main GUI will be selected when focus returns, causing issues on a PC that cant easily just select the window again.

In its current state, the render to window function doesn't work fully. Pause, stop and fullscreen now work, but the save states don't and something is broken about rebinding certain keys.

Actions #28

Updated by skidau about 9 years ago

Morphello, sorry, I misunderstood your earlier test results. The save state keys should be fixed with PR 2011:

http://dl.dolphin-emu.org/prs/pr-2011-dolphin-latest-x64.7z

For the Alt-Enter and the double firing of other keys, go to Options > Menu Accelerators and clear all of the presets by clicking the button and pressing Space. Note there is a State Saves tab too where the keys will have to be cleared. That should fix the double firing.

Thanks for taking the time to test this new code and writing up the results.

Actions #29

Updated by skidau about 9 years ago

The Num keys will have to be remapped in the hotkeys configuration.

The mouse cursor appearing while paused will still occur but is covered by another issue.

The dialogue box on stop will also still occur but is again covered by another issue. Personally, I turn off the "Confirm on stop" option as I do not accidentally press the Stop button.

Actions #30

Updated by Morphello about 9 years ago

Well I'll be. That's pretty much solved that.

Testing PR-2011

Options > Menu Accelerators all cleared

Previous settings as post #26

ALT + Enter no longer works while unbound

No double firing of keys

Save/Load states work in fullscreen and windowed

Everything is working as expected now hotkey wise.

As of PR-2011, all hotkeys tested in this thread work as expected.

Two issues remain, which are probably unrelated to the hotkeys themselves, but cropped up during whatever modifications were made to dolphin to fix the hotkey interface.

Fullscreen > Stop Emulation causes the dialogue box to appear behind the game. This could be fixed by causing the game to toggle fullscreen before attempting to stop emulation. Ideally, it'd just pop up in front.

Mouse cursor appears when paused in fullscreen. Even if a mouse isn't plugged into the computer, it appears on pause.

So thank you for all that fixing, its working great as far as I can tell. I had a feeling there was two sets of hotkeys somewhere, and I had totally forgotten that submenu. Are the other issues related to this or should they be in their own bug tracker?

Actions #31

Updated by skidau about 9 years ago

Please feel free to open up new issue reports for the remaining bugs.

Actions #32

Updated by skidau about 9 years ago

  • Status changed from Questionable to Work started

Have made further fixes for this issue in PR2011: https://github.com/dolphin-emu/dolphin/pull/2011

Let me know if the fix works for you by testing it out here:
http://dl.dolphin-emu.org/prs/pr-2011-dolphin-latest-x64.7z

Actions #33

Updated by skidau about 9 years ago

  • Status changed from Work started to Fixed
Actions #34

Updated by diari.yae about 9 years ago

It isn't fixed, I'm using 4.0-6112

Actions #35

Updated by skidau about 9 years ago

diari, from the menu, select Options > Hotkeys and set up the keys you want in the window that pops up. On the right hand side, check the "Background Input" checkbox. Press OK and restart Dolphin. The hotkeys will then work in full screen mode.

Actions

Also available in: Atom PDF