Commit Graph
3941 Commits
Author SHA1 Message Date
athrxx eb29aea4b4 TTS: (Windows) - implement better way to disable the option
Currently, the text-to-speech manager will try to update the voices whenever TextToSpeechManager::pushState()/popState() is called. This causes lags of 4 - 5 seconds on Windows. Also, a warning is triggered each time. This commit prevents that from happening if the tts option is not enabled.

This commit currently affects only Windows. Other backends don't make use of the new _enabled setting. I don't know if it would make sense for any of these and I also wouldn't be able to test it.
2022-04-26 21:08:41 +03:00
elasota 5cb75fdaec COMMON: Remove implicit bool conversion from WeakPtr 2022-04-25 18:20:19 -07:00
elasota a1f2121bb8 COMMON: Remove empty BasePtrTrackerDeletionImpl destructor 2022-04-25 18:20:19 -07:00
elasota 2432c67426 COMMON: Fix double destruction when using a deleter. 2022-04-25 18:20:19 -07:00
elasota 22b72dba52 COMMON: Remove BasePtr base class from SharedPtr and WeakPtr. Fix missing refCount method in SharedPtr. 2022-04-25 18:20:19 -07:00
elasota c8d0186752 COMMON: Fix WeakPtr missing copy constructor 2022-04-25 18:20:19 -07:00
elasota be5a7cb8e7 COMMON: Fix up WeakPtr logic 2022-04-25 18:20:19 -07:00
elasota 9fa32ac47d COMMON: Fix WeakPtr preventing object deletion 2022-04-25 18:20:19 -07:00
Donovan Watteau f6641e18b2 BUILD: Remove support for ancient SGI MIPSpro
This very old compiler has no C++11 support, so we're now sure that
its support (and workarounds) can be removed.
2022-04-15 22:43:57 +02:00
Matthew Duggan ddee0e76f9 COMMON: INIFile bugfixes and unit tests
This adds a lot more unit tests for Common::INIFile and fixes some small
problems identified during their creation.  Specifically:

* addSection() did not check the validity of the section name, which meant it
  was possible to create a section that could not then be operated on by the
  other functions (which all check validity)
* If allowNonEnglishCharacters was set, it was possible to create a key or
  section name starting with '[' or '#', or including a carriage return.  This
  would not read back in correctly.
* Blank section and key names were considered valid, but neither would be
  read back in correctly.
* The struct documentation did not mention whitespcae handling or that comments
  include the '#' and carriage return.
2022-04-10 19:41:06 +03:00
Le Philousophe b978cd1caa OPENGL: Allow engines to detect OpenGL info without switching
For now only OpenGL type and shaders support are available
2022-04-03 22:17:19 +02:00
Paul Gilbert 3395af886f COMMON: Fix assert crash trying to open invalid fs nodes
It was previously trying to print out the node path,
which was asserting because the node wasn't valid
2022-03-27 14:00:51 -07:00
Misty De Meo b3df6c6f03 COMMON: macresman: handle macbinary with resource forks 2022-03-20 20:48:17 +01:00
Eugene Sandulenko 498b2ca3a0 COMMON: Added firstPathComponents() method.
A better name is welcome
2022-03-14 21:16:03 +01:00
D G Turner 4491ccb8bd COMMON: Fix Undefined Macro Warnings in OSystem Header
These are emitted by GCC when -Wundef is passed.
2022-03-10 18:47:39 +00:00
kevinlaurier 3ff4e1c9c4 COMMON: Moved Node struct from private to public so that HashMap can be
used with Common::find_if from algorithm.h - this is required as part of
the lambda or function object signature when passed as a predicate.
2022-03-06 17:46:23 +01:00
trembyle b9e7b1dfcd COMMON: ENGINES: Correct Czech language ISO code
1. Correct constant in common files
2. Add the old code to obsolete language codes
3. Replace all occurences in engine code
2022-03-04 18:29:02 +01:00
Paul Gilbert 03ec59bbc6 COMMON: Implement MemoryReadWriteStream::seek 2022-03-03 18:35:03 -08:00
Cameron Cawley a8579176d4 GUI: Remove kFeatureOnScreenControl and kFeatureSwapMenuAndBackButtons 2022-02-07 00:53:34 +02:00
neuromancer 293942a80d COMMON: extended BitArray to allow setting bits using a byte array 2022-02-06 13:29:29 +01:00
Thunderforge fd129ebc0c JANITORIAL: "Mac OS X" and "OS X" to "macOS" in comments
Apple's desktop operating system was formerly called "Mac OS X" and "OS X", but since 2016 it has been called "macOS" (starting with version 10.12).

Changing across all comments and documentation to use this current terminology, except in cases where the historical versions are explicitly referenced. No code changes are made; we should consider changing those in future PRs.
2022-01-29 14:15:05 +01:00
hackingdemon 453f7cfffe COMMON: Fix BufferedWriteStream::pos() method
The pos() method of BufferedWriteStream should return the stream position
but actually returns the buffer position. That completely breaks saving
the game in AGS engine on the platforms using BufferedWriteStream wrapper
for savefile handling, such as Nintendo Switch. AGS engine's save file
writing functions use GetPosition() with later Seek() on stream,
so an invalid return value from GetPosition() results in invalid save files
that cannot be loaded and are skipped by the engine.
2022-01-18 15:31:59 +00:00
trembyle 7b1fe3df42 COMMON: Add platform for Tandy Color Computer 1/2
This platform was supported by Sierra for early and pri-AGI games.
CoCo 1 and 2 were not generally forward compatible with CoCo 3,
which was officially supported by Sierra for KQ3 and LSL1 only.
2022-01-03 18:34:45 -05:00
Paweł Kołodziejski 20cb0ae228 ALL: Cleanup ResidualVM -> ScummVM 2021-12-26 21:19:38 +01:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Filippos Karapetis a160058d06 COMMON: Add more engine-specific options
We have reached the limit of 16 engine-specific options in SCI, so
we're adding 16 more for future additions
2021-12-19 11:35:48 +02:00
Le Philousophe ba136b6f29 COMMON: Add JOYSTICK_BUTTON_INVALID to be used when no button is pressed 2021-11-29 00:04:45 +01:00
Paweł Kołodziejski 2a7aa00c85 BACKENDS: Remove PixelBuffer leftovers 2021-11-27 21:22:09 +01:00
Cameron Cawley a21961516a GRAPHICS: Split ScalerPluginObject into two classes 2021-11-23 23:32:58 +01:00
Paweł Kołodziejski f5ccb90ddf COMMON: Put debug traces to defined level to avoid printing them always 2021-11-23 15:19:01 +01:00
Torbjörn Andersson 8574d19f20 KYRA: First attempt at loading Kyra1 StuffIt archive
This doesn't work. Not even close.
2021-11-22 18:39:23 +01:00
Eugene Sandulenko 192b05930a COMMON: Mark human-readable bytes as translatable 2021-11-18 22:38:43 +01:00
athrxx 1b64bf837b GUI: fix for 9e92ffe (missing code line)
(somehow one line went missing when moving that commit to master. It would still work, but much, much less efficiently)
2021-11-15 22:45:41 +01:00
athrxx 9e92ffea44 GUI: make parsing of GUI options more precise
The parsing was rather lazy and would e. g. find "ega" in "midiSegaCD", so that the launcher offered me an "EGA" rendering mode for EOB SegaCD. Now, there is less lenience, but ScummVM will always write the string in the correct format anyway...
2021-11-15 16:18:56 +01:00
athrxx aefb23d44c GUI: add missing GUIO settings for mac b/w mode
(I noticed that I got offered macintosh b/w mode for EOB DOS and Amiga versions)
2021-11-14 16:19:32 +01:00
Orgad Shaneh cb61ec37c4 COMMON: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Orgad Shaneh 7adcd48a41 COMMON: Use override
Using clang-tidy modernize-use-override
2021-11-14 14:35:15 +02:00
Cameron Cawley 5022489277 BACKENDS: Refactor the API for creating Mutexes 2021-11-12 20:19:45 +01:00
sluicebox 946bb818ea VIDEO: QuickTime comments, mild cleanup 2021-11-12 18:47:22 +02:00
trembyle 5ef7793578 COMMON: Return updated language from obsolete code
When an obsolete language code is encountered in a user's
config file, we translate this to the updated language ID.
2021-11-11 12:06:15 +01:00
trembyle c740f96f63 COMMON: Normalize and document language maintenance
* Add documentation to add or maintain language values
* Fix and reorder existing entries to match ISO standards
2021-11-11 12:06:15 +01:00
Orgad Shaneh 7a4e5612de JANITORIAL: Replace new[]/memset with new[]()
Mostly done using the following Ruby script:

(Dir.glob('**/*.cpp') + Dir.glob('**/*.h')).each do |file|
  s = File.read(file, encoding: 'iso8859-1')
  t = s.gsub(/(([\w_.\[\]]+)\s*=\s*new\s+\S+?\[[^\]]+?\](?!\())([^\{\}]*?)\n\s+memset\(\s*\2\s*,\s*0\s*,[^;]*;/m, '\1()\3')
  if t != s
    File.open(file, 'w') { |io| io.write(t) }
  end
end
2021-11-10 19:53:15 +01:00
Cameron Cawley 6dbb129f40 BACKENDS: Allow activating the system virtual keyboard using the keymapper 2021-11-01 16:54:39 +01:00
Eugene Sandulenko f0af2b513b COMMON: Remove c++11-compat.h. It is not needed anymore 2021-10-31 23:07:36 +02:00
Eugene Sandulenko 44bc2e2eab COMMON: Fix punycode implementation for upper Unicode characters 2021-10-31 23:00:35 +02:00
Alexandre Detiste 6044504762 JANITORIAL: typos
some in the variable names, some in the comments;
no change for the strings that interract with original games assets
2021-10-31 20:46:31 +01:00
neuromancer 0925d2b823 COMMON: changed type of variable in the directory count loop 2021-10-31 19:15:06 +01:00
neuromancer c608f28f05 COMMON: removed convertPath 2021-10-31 19:15:06 +01:00
neuromancer ceaf573ecf COMMON: extended InstallShieldV3 support to read all the files in every subdirectory 2021-10-31 19:15:06 +01:00
Eugene Sandulenko 3b281bd85c COMMON: Further synchronisation of the escape characters for punycode 2021-10-31 19:26:48 +02:00