I meant to, but forgot, to do it when adding the stretch factor
to the Options dialog. Doing it now should prevent from using
older themes that do not have the position for this widget.
Removing this GUI control was suggested as far back as 2011 at
<http://lists.scummvm.org/pipermail/scummvm-devel/2011-November/010416.html>.
There were no objections, but it was never removed. When working
on audio latency bugs, I independently rediscovered that the GUI
option was broken: the per-game options would *never* work, and the
option would not take effect until ScummVM was restarted because
there is no API for interacting with the backend audio mixer. So
now, it is finally gone.
Primarily for the sake of future troubleshooting, configurability
of the audio sample frequency within SdlMixerManager is maintained
for the moment, but now users will need to edit their ScummVM
configuration file manually to change it.
The width of each tab is now computed from its title, independently of
the other tabs. This increases the number of tabs that fit on the
screen.
This rewrite also fixes a bug where if the window size increased while
_firstVisibleTab > 0, some tabs would become inaccessible when the
scroll buttons were hidden.
The layout key Globals.TabWidget.Tab.Width is now treated as minimal
tab width. This is set so that the tabs fit reasonably well in lowres
layouts.
At the same time, this reduces the lowres scroll buttons heights to fit.
This patch makes the Nintento DS hacks in TabWidget obsolete.
(Hopefully! I'm not able to test.)
Fixes erratic speeds in analog pointer motion
Implemented option to set analog/keyboard pointer speed
and control the analog joystick deadzone. The deadzone option appears
only if the build supports analog joystick (via JOY_ANALOG define)
It pastes clipboard contents as code into 8 fields of that dialog.
(Clipboard support works with SDL2 only.)
"Open URL" and "Paste" buttons are placed in the left column under the
picture (because there is no room for 4 buttons in the bottom row).
Commit also adds "dropbox.bmp", which is just a square 115x115 picture.
Such pictures are would be used as Storages logos in that dialog.
In lowres there is no left column, so all 4 buttons are in the same row.
None of them are visible, because they are overflowed. Container has to
be added to continue working on them.
It's enabled only when NETWORKING_LOCALWEBSERVER_ENABLE_PORT_OVERRIDE is
defined.
It's not defined, because override means we have to reconfigure our
redirect links somehow to use the override port.
Changes theme stx files to specify TabWidget's type. That fixes wrong TabWidget height.
Changes TabWidget's getHeight() to return not only "children" height, but also tabs height. That fixes wrong clipping area.
Changes Widget's findWidget to use getHeight(). That fixes bug when widgets in the bottom of TabWidget were not reacting to the mouse events.
Since clipping is now in place for strings, having text widgets which
are 4 pixels high will no longer work. Remade the layout to set better
heights, and remove some spacing instead.
Now that we actually use the textalign field of Launcher.Version the version
would be left aligned by default. This looks odd for the classic theme and
the low resolution version of the modern theme and is contrary to the old
"default" value, so I decided to center the string explicitly again.
I don't really understand what these parameters do, or what the
sensible values are, so for now the sliders are limited only by
the allowed (or, in one case, "safe") values.
All uses of the old target scale API actually wanted to disallow scaling of
the mouse cursor. This commit adapts our API to this and thus simplifies
backend implementations.
Some backends, most notable the Wii and Android, did some implementation of
the cursor target scale, which I didn't adapt yet. I added a TODO for the
porters there.