summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules/lib/osdlib_win32.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Miscellaneous improvements: Vas Crabb2023-04-141-5/+5
| | | | | | | | | | | | | | infoxml.cpp: Thread device processing. Gives about a 10% speed improvement overall, and avoids the need to mess with the locale of the ultimate output stream. debugger/win/consolewininfo.cpp: Show image mount/create error messages on the console. emu/devdelegate.h, util/delegate.h: Added deduction guides for common delegate creation patterns (only used in sega/segas16a.cpp so far). More noexcept on things that have no business throwing exceptions.
* Allow loading PNG/JPEG/MS DIB bitmaps from Lua, and cleanup. Vas Crabb2023-04-131-2/+2
| | | | | | | | | | | Use VirtualAlloc rather than VirtualProtect on Windows to change page protection, as the latter can cause severe performance issues with some antivirus software. Added noexcept to lots of hash- and bitmap-related things, and added a little more error checking. Yes, I realise it will abort if an allocation fails while printing a log message, but if you get to that point, you're probably screwed already.
* -osd: Improved SDL Game Controller joystick provider: Vas Crabb2023-01-131-1/+1
| | | | | | | | | * Allow fallback to joystick API for devices without game controller mappings. * Detect controller reconnection. * Force Switch Pro Controller ZL/ZR to act like buttons. * Added button names for Google Stadia controller. * Also fixed dumb copy/paste error on my part in Windows clipboard code.
* Patched up some gaps in functionality and fixed some bugs. Vas Crabb2022-09-021-7/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ui: Added some missing functionality: * Added an option to copy input device IDs to the relevant menus. * Added an item for setting the software lists files path (-hashpath) to the folder setup menu. * Allow pasting text from clipboard in most places that allow typing (searching, entering filenames, entering barcodes). * Changed the software selection menu heading to be a bit less misleading. * Made barcode menu less eager to rebuild itself unnecessarily, and removed some confusing and apparently pointless code. Exposed more Lua bindings: * Added low-level palette objects. * Added indexed bitmap types. * Added a bitmap method for extracting pixels from a rectangular area as a packed binary string. * Changed screen device pixels method to return width and height in addition to the pixels. osd: Added some functionality and cleaned up a little: * Added a function for copying text to the clipboard. * Moved function for converting Windows error codes to standard error conditions to winutil.cpp so it can be used from more places. * Removed duplicate declaration of osd_get_clipboard_text and made the function noexcept (including fixing implementations). * Made macOS implementation of osd_get_clipboard_text skip the encoding conversion if it finds UTF-8 text first. * Changed the default -uimodekey setting so it doesn't lose the "not shift" that stops the default from interfering with UI paste. Various bug fixes: * util/unicode.cpp: Fixed the version of utf8_from_uchar that returns std::string blowing up on invalid codepoints. * util/bitmap.h: Fixed wrapping constructors for indexed bitmaps taking the wrong parameter type (nothing was using them before). * util/bitmap.cpp: Fixed potential use-after-free issues with bitmap palettes. * emu/input.cpp, emu/inputdev.cpp: Log 1-based device numbers, matching what's shown in the internal UI and used in tokens in CFG files. * emu/emumem.cpp: Added the bank tag to a fatal error message where it was missing. docs: Reworked and expanded documentation on configuring stable controller IDs. For translators, the changes are quite minor: * There's a menu item for copying a device ID to the clipboard, and associated success/failure messages. * There's the menu item for setting the software list file search path. * One of the lines in the software selection menu heading has changes as it could be interpreted as implying it showed a software list name.
* Remove OSD_UWP from rest of code Miodrag Milanovic2021-10-261-5/+0
|
* Bug fixes and usablility enhancements: Vas Crabb2021-01-291-1/+1
| | | | | | * Declare intent when requesting virtual memory (for NetBSD, 7712) * Improve scrolling behaviour in Qt debugger (MT07795) * Added prompts to input mapping menu to make it less intimidating
* cpu: Allow recompilers to work with W^X policy Vas Crabb2021-01-061-49/+68
|
* fixed some modernize-use-auto clang-tidy warnings (nw) (#6238) Oliver Stöneberg2020-01-301-1/+1
|
* fixed some clang-tidy warnings (nw) (#6236) Oliver Stöneberg2020-01-301-2/+2
| | | | | | | | | | | | | | | | * fixed some modernize-redundant-void-arg clang-tidy warnings (nw) * fixed some modernize-use-bool-literals clang-tidy warnings (nw) * fixed some modernize-use-emplace clang-tidy warnings (nw) * fixed some performance-move-const-arg clang-tidy warnings (nw) * fixed some readability-redundant-control-flow clang-tidy warnings (nw) * fixed some readability-redundant-string-cstr clang-tidy warnings (nw) * fixed some performance-unnecessary-value-param clang-tidy warnings (nw)
* use C++ library includes (nw) firewave2020-01-221-1/+1
|
* Changed osd_get_clipboard_text() to return std::string (#5615) npwoods2019-09-111-14/+12
| | | | | | | | | | * Changed osd_get_clipboard_text() to return std::string This change has only been tested on Windows. The Un*x/Mac versions were made blindly; they might not even build. This needs to be checked prior to merging. * Fixing Mac OS X build (hopefully)
* Discord plugin try 2 (#3640) cracyc2018-06-081-0/+9
| | | | | | | | | | | * plugins/discord: discord presence plugin [Carl] * plugins/discord: use domain sockets and pipes [Carl] * winptty: fix connecting to existing socket (nw) plugins/discord: show pause state (nw) * plugins/discord: fix pause behavior (nw)
* Move special windows.h include directives to build defines (nw) Brad Hughes2016-12-281-1/+0
|
* removed not used macros (nw) Miodrag Milanovic2016-11-111-21/+0
|
* let osd_process_kill just kill, rest is on osd users, watchdog only in this ↵ Miodrag Milanovic2016-11-111-2/+0
| | | | case (nw)
* No need for osd_malloc, osd_malloc_array and osd_free (nw) Miodrag Milanovic2016-11-111-95/+2
| | | | MALLOC_DEBUG not applicable anymore since we use new to allocate in 99.9% of cases
* NOTICE (TYPE NAME CONSOLIDATION) Miodrag Milanovic2016-10-221-8/+8
| | | | | Use standard uint64_t, uint32_t, uint16_t or uint8_t instead of UINT64, UINT32, UINT16 or UINT8 also use standard int64_t, int32_t, int16_t or int8_t instead of INT64, INT32, INT16 or INT8
* use standard types uintptr_t, char16_t and char32_t instead of FPTR, ↵ Miodrag Milanovic2016-10-221-2/+2
| | | | utf16_char, unicode_char (nw)
* Bulk renaming of Windows string conversion functions Nathan Woods2016-10-031-3/+3
| | | | | utf8_from_[a|w|t]string ==> osd::text::from_[a|w|t]string [a|w|t]string_from_utf8 ==> osd::text::to_[a|w|t]string
* Adding new string conversion overloads Nathan Woods2016-10-011-1/+1
| | | | [a|w|t|utf8]_from_[a|w|t|utf8_]string(xyz.c_str()) seems to be common enough to justify overloads. Also, I'm explicitly assuming that it is legal to override the NUL pointer within a C++ basic_string (e.g. - s[s.size()] = '\0'). As far as I can tell, this seems to be legal - please don't shoot if I am wrong.
* Fixed off by one issue and other cleanups requested by Vas Nathan Woods2016-07-251-1/+1
|
* Changed strconv.[cpp|h] functions to return their results as std::string and ↵ Nathan Woods2016-07-241-11/+11
| | | | std::wstring
* MT6284 flush stdout/stderr before killing process Vas Crabb2016-07-081-1/+4
|
* Cleanup and version bumpmame0175 Miodrag Milanovic2016-06-291-3/+2
|
* Introduce dynamic_module Giuseppe Gorgoglione2016-06-111-0/+84
| | | | | This is a central cross-platform facility to dynamically bind functions from shared libraries. Updated all OSD modules to use it.
* Various cleanups suggested by static analyzer (nw) Miodrag Milanovic2016-04-241-13/+13
|
* move clipboard handling on proper place (nw) Miodrag Milanovic2016-04-031-0/+74
|
* Cleanups and version bump Miodrag Milanovic2016-03-301-1/+0
|
* use chrono calls for time handling in core (nw) Miodrag Milanovic2016-03-031-106/+0
|
* clang-modernize part 5 Miodrag Milanovic2015-12-041-2/+2
|
* Rename *.c -> *.cpp in our source (nw) Miodrag Milanovic2015-11-081-0/+349