Commit Graph

50 Commits (0a5f136bc39a694a1ded348d34c7b30701c7d811)

Author SHA1 Message Date
Nemirtingas 76c9e7a9ee Fix game crash.
WHen overlay is shown, you have at least 1 friend connected and you resize the game window smaller to the friend list position, it crashes because ImGui::ListBoxHeader returns false when its clipped and ImGui::ListBoxFooter shouldn't be called.
2021-05-09 10:11:35 +02:00
Mr_Goldberg 8a5e49251c
Remove hex symbols in overlay chat window. 2021-04-02 23:40:54 -04:00
Mr_Goldberg 3f06dd8576
Call GameLobbyJoinRequested_t if a lobby exists when joining with rich presence. 2021-03-07 19:04:01 -05:00
Mr_Goldberg d6bdde0123
Update ImGui 2021-01-17 22:58:42 -05:00
Mr_Goldberg 2c95011e73
Fix mouse cursor showing up in some games due to overlay. 2020-02-14 15:03:20 -05:00
Mr_Goldberg b4205535fb
Only allow people to join lobbies with the overlay if they have been invited first. 2020-02-02 19:07:30 -05:00
Mr_Goldberg 39d1d8dcdf
Add a notifications mutex to the overlay. 2020-01-26 17:24:16 -05:00
Mr_Goldberg eace15df47
Thread related overlay improvements. 2020-01-26 09:46:57 -05:00
Mr_Goldberg e0af318948
Try to fix overlay related lag. 2020-01-25 15:23:16 -05:00
Mr_Goldberg 43a5b13302
Use different mutex for overlay to try to fix lag. 2020-01-20 11:47:12 -05:00
Mr_Goldberg db2a803cf7
A few improvements to the overlay merge request.
NO_OVERLAY define becomes EMU_OVERLAY which enables the overlay instead of disabling it.

disable_overlay.txt moved to steam_settings.
2020-01-19 12:55:14 -05:00
Nemirtingas 20c03cda75 Update steam_overlay.cpp 2019-12-10 05:56:08 +00:00
Nemirtingas 695954e13a Add software cursor to Linux overlay too 2019-11-08 15:56:21 +01:00
Nemirtingas ce79df1c26 Added customizable notification
Notification can have a type depending on what to show.
2019-11-08 15:52:38 +01:00
Nemirtingas c006555b01 Add infos on friend game
Add friend appid and check if the game is compatible.
2019-10-14 16:35:53 +02:00
Nemirtingas bce574dc43 Changed windows id and fixed chat layout 2019-10-13 12:27:48 +02:00
Nemirtingas d467248236 Forgot to initialize overlay's close button 2019-10-13 12:27:44 +02:00
Nemirtingas 8abb0c8bc2 Add close button for overlay 2019-10-13 12:27:32 +02:00
Nemirtingas 6c09635600 Added the possibility to create new fonts.
Fonts cannot be created after a NewFrame call.
2019-09-05 09:00:02 +02:00
Nemirtingas 2db31928e9 Notifications 2019-09-04 19:31:31 +02:00
Nemirtingas 344674b889 revert of "Should fix the cursor until we draw our own cursor." 2019-09-03 19:22:08 +02:00
Nemirtingas 1785ae6eaf Moved every platform specific code to their own folder 2019-09-01 20:48:27 +02:00
Nemirtingas 0573c4eb94 Windows only part 2019-09-01 20:47:00 +02:00
Nemirtingas b6eb929383 Should fix the cursor until we draw our own cursor. 2019-08-27 21:15:58 +02:00
Nemirtingas 04847abeb7 Overlay & Hook cleanup. 2019-08-27 15:45:53 +02:00
Nemirtingas 44d583ee7d Added class Renderer_Detector.
Hook_Manager now only manages hooks.
Renderer_Detector is used to detect the game's renderer. There will be 2 version of it. 1 for windows and 1 for Linux.
2019-08-27 15:38:07 +02:00
Nemirtingas 9b178146c4 Cleaned a bit hooks and added sanity checks. 2019-08-26 19:36:07 +02:00
Nemirtingas dd530e80b1 Now passing to hooks device object.
Added Base_Hook::get_lib_name to track what renderer is hooked for overlay.
Objects used to detect renderer type are now also used to hook the rendering functions. So we don't have to build another device.
Updated VTables for DX12.
2019-08-26 16:38:01 +02:00
Nemirtingas 5b0306dccc Moved window hooks to its own class
Every class has a job. Overlay is to show an overlay not to hook windows functions.
Hook_Manager's job is to manage hooks and should not contain a reference to the overlay. (It should not contains any reference to directX or OpenGL either but I'll see that later... Maybe)
This makes the overlay code much cleaner and "could" be used in Linux as well.
2019-08-18 16:22:07 +02:00
Nemirtingas fdeb5912d3 Try to Disable all inputs when overlay is on 2019-08-18 14:29:08 +02:00
Nemirtingas 1b37e837a1 Notification sound when something happen 2019-08-16 18:31:56 +02:00
Nemirtingas 2792793bf3 Only call overlay related functions if it is ready
Continue to receive friends notifications, so if the overlay becomes ready we already have the list of friends.
2019-08-16 10:37:45 +02:00
Nemirtingas 3516b98042 Replaced wildcard with sed. 2019-08-15 22:23:59 +02:00
Nemirtingas d87760b78b Created a define to not compile overlay. 2019-08-14 15:09:57 +02:00
Nemirtingas 3eeca9b50e Modified a bit overlay and added comments 2019-08-14 14:56:57 +02:00
Nemirtingas 2c74abd6ab Moved this docs to the tool's doc 2019-08-14 14:56:27 +02:00
Nemirtingas 56b4e6a7c7 Added preprocessor exclusion for linux 2019-08-14 14:55:31 +02:00
Nemirtingas 86fa3ab47a Comments
Explains what I could use to get steam's info. Its in plain http, could use a simple socket to read the json.
2019-08-12 16:04:14 +02:00
Nemirtingas 9f3e3a95da Cleaned hooks
I don't even know why I thought it was a good idea to hook dispatchMessage.
2019-08-07 11:11:31 +02:00
Nemirtingas d3ded5842d Added invite/join checks
Don't show "Invite" button if current user doesn't have a lobby.
Don't show "Join" button if friend doesn't have a lobby.
Added a button to open chat with a right click.
Close the popup when you click a button.
2019-08-06 13:46:43 +02:00
Nemirtingas d2a75db930 Moved colored implementation to their own functions
To minimise source code modifications, colored input text has been moved to their own functions.
The ImFont is still modified tho.
2019-08-03 14:37:03 +02:00
Nemirtingas 4f9e67d700 Support for chat message (WIP) 2019-08-03 12:58:48 +02:00
Nemirtingas 2a373bbf79 Now I set the invite instead of adding it.
You should send a lobby invite or a rich invite, but not both.
2019-08-02 23:01:24 +02:00
Nemirtingas 73fa7b50b5 Moved some code to functions. 2019-08-02 15:26:16 +02:00
Nemirtingas 8fe7c2267a User must now accept invite 2019-08-02 13:02:20 +02:00
Nemirtingas 156bee1564 Invitation & Chat support (WIP) 2019-08-02 11:16:30 +02:00
Nemirtingas 300832ebb3 I think i should protect this 2019-08-02 09:09:32 +02:00
Nemirtingas d646f61582 Removed numeric (don't use iota anymore)
Also placed the include on the top of cpp file.
Need to look into directinput and xinput hooks.
2019-08-01 15:56:56 +02:00
Nemirtingas a08c8102a9 Use already defined functions to invite user to game. 2019-08-01 15:56:50 +02:00
Nemirtingas e6826d8ead Basic & Ugly implementation of overlay.
Overlay still WIP, don't look too much into the code.
I will do it better soon.
2019-08-01 15:47:47 +02:00