Commit Graph

357 Commits

Author SHA1 Message Date
sonninnos a96c5f77c8
(Ozone/XMB/RGUI) Explore menu thumbnails (#14365) 2022-08-31 14:42:10 +02:00
LibretroAdmin f1ff92c881 * menu_entries_append and menu_entries_append_enum are now combined into
one - if you set the last parameter to a valid 'rarch_setting_t' pointer
and enum_msg to MSG_UNKNOWN, you will get the previous menu_entries_append
behavior
* Renamed remaining function to menu_entries_append so that we have one
consistent way of adding menu entries instead of two
Reduces some code duplication significantly
2022-08-27 17:40:52 +02:00
LibretroAdmin 25b76fdb54 input_keyboard_osk_event_append and others: don't call strlen
implicitly, always leave it up to caller
font_driver_get_message_width - try to avoid scenario where 'len'
is 0
2022-08-27 15:13:56 +02:00
LibretroAdmin 61e24132bf (task_save.c) Simplification in control flow
(snprintf) Try to reduce or simplify snprintf calls, only tend to
use it for processing integers/numbers and avoid it for regular
string concatenation (NOTE: we try to be a bit safer about it to
address earlier cited criticism, although we don't consider concatenating
3 or 4 characters at the end to be insecure)
(msg_hash_to_str) Try to avoid duplicate calls to the same localized
string when we can just cache the results once instead locally
2022-08-27 07:55:02 +02:00
sonninnos 1f048dd358
(XMB+Ozone) Core option category icon refinements (#14354) 2022-08-26 16:11:36 +02:00
LibretroAdmin 575e331fd1 If we already know the length of the string, use strldup instead.
Avoids the internal strlen call inside strdup, and strdup is a deprecated
function starting from MSVC2005 anyways.

NOTE: Do NOT pass STRLEN_CONST as n parameter to strldup, it needs to
be at least +1 character higher than the strlen return value of the same
string
2022-08-25 16:31:54 +02:00
sonninnos 8fd0961c9a
Show playlist entry as 'Quick Menu' header title (#14350) 2022-08-25 04:41:14 +02:00
LibretroAdmin 72cc98e9bd Remove unused variables 2022-08-24 17:42:01 +02:00
LibretroAdmin 2bc723bb4b (Menu) Move duplicate code is_running_quickmenu to menu_driver.c 2022-08-24 13:28:53 +02:00
LibretroAdmin a147cb09d9 Get rid of duplicate code - move function to menu_driver.c and have
both XMB and Ozone use it
2022-08-24 13:14:55 +02:00
sonninnos 5f7d14966c
(Ozone+XMB) Fullscreen thumbnail browsing (#14342) 2022-08-24 12:35:54 +02:00
LibretroAdmin e769436876 (word wrap functions in stdstring.c) Avoid implicit strlens, caller
should pass the 'length' to the function instead
2022-08-23 17:06:01 +02:00
LibretroAdmin 1b43e60c7c (Ozone) Use less path_remove_extension and work more with return values
from file_path.c functions
(menu_cbs_title) Small optimization to string concatenation
2022-08-06 19:51:00 +02:00
LibretroAdmin 6ad88b080e Turn these two fill_pathname_join_delim() calls into plain strlcat() 2022-08-04 15:15:27 +02:00
LibretroAdmin b2634ea588 * Create fill_pathname_join_special - and specify fill_pathname_join
as deprecated.
* Use fill_pathname_join_special in the vast majority of cases where
we can ensure out_path is a new empty string
* Get rid of some extension concatenation with strlcat where encountered
* Some general cleanups with NULL termination of strings that get immediately
passed to strlcpy/strlcpy-adjacent functions
2022-08-04 14:19:38 +02:00
LibretroAdmin e7f3432e48 Replace some trivial strlcat usage - use return value of preceding
strlcpy then simply append the extension to it at this location
2022-08-04 03:45:09 +02:00
LibretroAdmin 6dd52d9bb1 Get rid of more boilerplate code in file_path_special.c 2022-08-02 18:05:51 +02:00
LibretroAdmin f472e4d0de (gfx_widgets) Call fill_pathname_application_special outside of hot functions
(gfx widgets) Pre-assemble and store paths that are not subject to change
2022-08-01 02:07:36 +02:00
LibretroAdmin e9a6252fc7 (Ozone) Some simplifications - less string concatenation 2022-08-01 01:06:38 +02:00
LibretroAdmin 83a2ec1da8 (Ozone/XMB) Move some fill_pathname_join operations out of the loops since
the output string is not subject to change during iterations
2022-08-01 00:49:33 +02:00
sonninnos 0c4bf5f2e3
(Ozone) Fix playlist thumbnail mouse hover after returning from QM (#14244) 2022-07-29 15:01:44 +02:00
LibretroAdmin 22bef5dc6b (Ozone) Remove unused arrays 2022-07-29 13:07:16 +02:00
sonninnos 052cdce29b
(Ozone+XMB) Add playlist icons under 'Load Content' (#14243) 2022-07-29 07:12:01 +02:00
sonninnos 6c1de85add
(Ozone+XMB) Thumbnail fixes (#14210) 2022-07-28 19:21:59 +02:00
TheRhysWyrill 54d0d84696
Fixed Purple Rain Theme (#14214)
* Add Purple Rain Theme
2022-07-25 00:44:31 +02:00
TheRhysWyrill 522d1ed16d
Add Purple Rain Theme (#14212)
* Add Purple Rain Theme

* Revert "Add Purple Rain Theme"

This reverts commit ceb896785b.

* Add Purple Rain Theme
2022-07-24 21:26:16 +02:00
libretroadmin 5c98caa7fd Don't NULL-terminate string if we pass it to strlcpy and/or a
file_path function that calls strlcpy under the hood
2022-07-24 06:22:35 +02:00
sonninnos 1f244aac01
(Ozone+XMB) Thumbnail improvements (#14188) 2022-07-21 15:25:12 +02:00
libretroadmin 69ddf03c91 Remove unused return variables 2022-07-12 18:00:33 +02:00
libretroadmin adf9994828 Deprecate fill_pathname_base_noext 2022-07-11 20:13:44 +02:00
libretroadmin d706c9c5bf Start deprecating trivial functions in file_path.c 2022-07-11 19:56:46 +02:00
libretroadmin c54499c5fb (Ozone) Simplify code 2022-07-09 14:29:49 +02:00
Cthulhu-throwaway 9af17b633e
(Netplay) Host Ban Submenu (#14151) 2022-07-07 16:08:46 +02:00
libretroadmin bf5409881c gfx_display_rotate_z optimizations - if radians is 0, we know cosine
and sine already. Avoid the computation with sinf/cosf and pass it as value to the
function when possible
2022-07-06 11:03:15 +02:00
libretroadmin 6607ff3aaa rotate_draw - get rid of scale_x/y/enable - scaling is only done now
in XMB at two spots - refactor gfx_display_rotate_z so that it only
manipulates the input matrix' Z axis
2022-07-05 20:50:01 +02:00
libretroadmin 336ca1a68c Don't call gfx_display_rotate_z unless the display driver implementation's
'handles_transform' is set to false
2022-07-05 17:20:01 +02:00
libretroadmin 681e1dea94 gfx_display_rotate_z - if scale_x/y/z are all 1.0f, then set
scale_enable to false
2022-07-05 14:02:38 +02:00
sonninnos 494c93df3e
Thumbnail aspect ratio fix (#14145) 2022-07-05 12:01:21 +02:00
sonninnos 91c8541e20
(Ozone+XMB) Savestate thumbnail aspect ratio (#14139) 2022-07-03 16:14:51 +02:00
sonninnos ee8993c76a
Silence Linux snprintf warnings (#14131) 2022-07-02 14:08:27 +02:00
sonninnos 0232fc8e10
(Ozone+XMB) Savestate thumbnail fullscreen + dropdown (#14116)
* (Ozone+XMB) Savestate thumbnail fullscreen toggle

* (Ozone+XMB) Savestate thumbnail dropdown
2022-07-01 23:41:46 +02:00
libretroadmin 367dfd6e71 No longer include file_path_special.h in gfx_display.h 2022-06-26 18:35:07 +02:00
sonninnos 3615deed9e
Savestate thumbnails (#14093)
* Savestate slot reset action

* (Ozone) Thumbnail visibility corrections
2022-06-23 14:46:29 +02:00
sonninnos 745652bbbf
(Ozone) Playlist metadata reformat (#14082) 2022-06-22 22:56:03 +02:00
sonninnos 807fd35300
(Ozone) Savestate thumbnail fixes (#14079) 2022-06-21 22:37:39 +02:00
sonninnos 2ff77a363e
(Ozone) Add savestate thumbnails (#14068) 2022-06-20 16:34:41 +02:00
sonninnos 1539e720f1 Add proper icons for shader items 2022-06-18 11:22:50 +03:00
sonninnos 325ba96613 More suitable icons for database entries 2022-06-17 18:10:08 +03:00
sonninnos 098f14dcd4 (Ozone) Header icon spacing adjustment 2022-06-17 15:23:42 +03:00
Gabriel Morazán 9a0f59677b
(Ozone) UWP Build fix. 2022-05-20 22:10:27 -04:00
libretroadmin 69d251ff6d (Menu) Cleanups for drivers 2022-05-20 20:31:06 +02:00
libretroadmin d9948c00e1 (Ozone) Cleanups 2022-05-20 19:50:33 +02:00
libretroadmin 14ab2db692 (Ozone) Cleanups 2022-05-20 14:46:45 +02:00
jdgleaver f2dca12a22 (Ozone/XMB) Prevent unnecessary thumbnail requests when scrolling through playlists 2022-05-19 16:42:01 +01:00
Ryunam d7cfcd3f9b Add option to toggle automatic refresh rate switching 2022-05-16 17:50:11 +02:00
LibretroAdmin 9dd03f6d9f
Merge pull request #13835 from sonninnos/quickmenu-reorder
Reorganize Quick Menu items
2022-05-16 12:06:19 +01:00
Cthulhu-throwaway 81593fda42 (Netplay) Host Kick Submenu
Path: Netplay -> Host -> Kick Client

- Allows the host to kick clients.
- Allows the host to view client information: connected clients (names), status (playing/spectating) and ping.
2022-05-15 04:04:15 -03:00
Cthulhu-throwaway 80a9c16b3f
(Netplay/Lobby) Add a toggleable filter for passworded rooms (#13920)
In addition, move lobby filters into its own submenu for better organization.
2022-05-08 04:24:58 +02:00
sonninnos 0b55188969 Reorganize Quick Menu items 2022-04-28 18:57:46 +03:00
jdgleaver 37c56d0d09
Add option to disable automatic saving of input remap files (#13894) 2022-04-27 19:12:53 +02:00
twinaphex ee9b6ba78e Hide Help menu until there is useful info to be shown 2022-04-09 17:23:14 +02:00
sonninnos fb444f9d91 (Ozone) Add 'Gray Dark + Light' themes 2022-03-22 06:59:05 +01:00
jdgleaver 05b7ac47c3 Add 'Reset Input Mapping' option to 'Manage Remap Files' menu 2022-03-21 15:08:02 +01:00
jdgleaver c6e83d23f5 RETRO_ENVIRONMENT_SHUTDOWN Fixes
- Ensure core is properly unloaded when RETRO_ENVIRONMENT_SHUTDOWN is called
- Ensure menu stack is properly flushed when RETRO_ENVIRONMENT_SHUTDOWN is called
2022-03-18 13:15:47 +01:00
jdgleaver ea77410037 Add 'Manage Remap Files' submenu + automatically save input remaps when closing content 2022-03-16 18:59:49 +01:00
sonninnos 646b0f7209 (XMB+Ozone) Fix input icons 2022-03-15 22:34:15 +01:00
Nikos Chantziaras d9bc8fb796
Ozone: Add thumbnail scale option (#13620)
* Ozone: Add thumbnail scale option

* CHANGES.md: Add ozone thumbnail bar scaling option
2022-03-11 15:51:41 +01:00
jdgleaver c67806dbd7
Enable manual selection of which cores are displayed in the 'Standalone Cores' menu (#13722) 2022-03-09 17:49:16 +01:00
Mats 249241d7cd
(steam) Initial integration with Steam API w/ mist (#13710) 2022-03-09 15:05:07 +01:00
jdgleaver ee4486068d
(XMB+Ozone) Improve efficiency/accuracy of History/Favorites icon rendering (#13661) 2022-02-23 16:53:24 +01:00
jdgleaver 9b0cb0fc92
Add 'Standalone Cores' menu (#13655) 2022-02-22 19:23:48 +01:00
Tony 6d5d2e722d
Logging cleanups (#13579) 2022-01-31 18:05:23 +01:00
Tony 17f63e6e39
(XMB+Ozone) Category + History/Favorites icons (#13433)
* (XMB+Ozone) Icons for matching core option categories

* (XMB+Ozone) Playlist content icon option for history/favorites
2021-12-30 20:14:57 +01:00
Cthulhu-throwaway 690c802921
Netplay Stuff (#13375)
* Netplay Stuff

## PROTOCOL FALLBACK
In order to support older clients a protocol fallback system was introduced.
The host will no longer send its header automatically after a TCP connection is established, instead, it awaits for the client to send his before determining which protocol this connection is going to operate on.
Netplay has now two protocols, a low protocol and a high protocol; the low protocol is the minimum protocol it supports, while the high protocol is the highest protocol it can operate on.
To fully support older clients, a hack was necessary: sending the high protocol in the unused client's header salt field, while keeping the protocol field to the low protocol. Without this hack we would only be able to support older clients if a newer client was the host.
Any future system can make use of this system by checking connection->netplay_protocol, which is available for both the client and host.

## NETPLAY CHAT
Starting with protocol 6, netplay chat is available through the new NETPLAY_CMD_PLAYER_CHAT command.
Limitations of the command code, which causes a disconnection on unknown commands, makes this system not possible on protocol 5.
Protocol 5 connections can neither send nor receive chat, but other netplay operations are unaffected.
Clients send chat as a string to the server, and it's the server's sole responsability to relay chat messages.
As of now, sending chat uses RetroArch's input menu, while the display of on-screen chat uses a widget overlay and RetroArch's notifications as a fallback.
If a new overlay and/or input system is desired, no backwards compatibility changes need to be made.
Only clients in playing mode (as opposed to spectating mode) can send and receive chat.

## SETTINGS SHARING
Some settings are better used when both host and clients share the same configuration.
As of protocol 6, the following settings will be shared from host to clients (without altering a client's configuration file): input latency frames and allow pausing.

## NETPLAY TUNNEL/MITM
With the current MITM system being defunct (at least as of 1.9.X), a new system was in order to solve most if not all of the problems with the current system.
This new system uses a tunneling approach, which is similar to most VPN and tunneling services around.

Tunnel commands:
RATS[unique id] (RetroArch Tunnel Session) - 16 bytes -> When this command is sent with a zeroed unique id, the tunnel server interprets this as a netplay host wanting to create a new session, in this case, the same command is returned to the host, but now with its unique session id. When a client needs to connect to a host, this command is sent with the unique session id of the host, causing the tunnel server to send a RATL command to the host.
RATL[unique id] (RetroArch Tunnel Link) - 16 bytes -> The tunnel server sends this command to the host when a client wants to connect to the host. Once the host receives this command, it establishes a new connection to the tunnel server, sending this command together with the client's unique id through this new connection, causing the tunnel server to link this connection to the connection of the client.
RATP (RetroArch Tunnel Ping) - 4 bytes -> The tunnel server sends this command to verify that the host, whom the session belongs to, is still around. The host replies with the same command. A session is closed if the tunnel server can not verify that the host is alive.

Operations:
Host -> Instead of listening and accepting connections, it connects to the tunnel server, requests a new session and then monitor this connection for new linking requests. Once a request is received, it establishes a new connection to the tunnel server for linking with a client. The tunnel server's address and port are obtained by querying the lobby server. The host will publish its session id together with the rest of its info to the lobby server.
Client -> It connects to the tunnel server and then sends the session id of the host it wants to connect to. A host's session id is obtained from the json data sent by the lobby server.

Improvements (from current MITM system):
No longer a risk of TCP port exhaustion; we only use one port now at the tunnel server.
Very little cpu usage. About 95% net I/O bound now.
Future backwards compatible with any and all changes to netplay as it no longer runs any netplay logic at MITM servers.
No longer operates the host in client mode, which was a source of many of the current problems.
Cleaner and more maintainable system and code.

Notable functions:
netplay_mitm_query -> Grabs the tunnel's address and port from the lobby server.
init_tcp_socket -> Handles the creation and operation mode of the TCP socket based on whether it's host, host+MITM or client.
handle_mitm_connection -> Creates and completes linking connections and replies to ping commands (only 1 of each per call to not affect performance).

## MISC
Ping Limiter: If a client's estimated latency to the server is higher than this value, connection will be dropped just before finishing the netplay handshake.
Ping Counter: A ping counter (similar to the FPS one) can be shown in the bottom right corner of the screen, if you are connected to a host.
LAN Discovery: Refactored and moved to its own "Refresh Netplay LAN List" button.

## FIXES
Many minor fixes to the current netplay implementation are also included.

* Remove NETPLAY_TEST_BUILD
2021-12-19 16:58:01 +01:00
Tomáš Kelemen (vudiq) efad7a7dcc
Lakka: CD-ROM eject menu item
Adds new entry (where the entry for dumping CD is) to eject the disc -
in case the CD drive has no physical button to eject the disc / the
button does not work. Useless for most, but quality of life improvement
for some.

Upstream of patch used by Lakka at build time
1943ad296e/packages/libretro/retroarch/patches/retroarch-99-eject_disc.patch
2021-11-18 00:36:01 +01:00
twinaphex 13d662d76b Silence some warnings 2021-11-11 22:28:16 +01:00
twinaphex 86f899c844 Revert "Shorten character arrays that are passed to fill_pathname_base_noext"
This reverts commit 318108ac82.
2021-11-10 08:22:19 +01:00
twinaphex 28bef36c74 Remove retroarch_data.h and retroarch_fwd_decls.h 2021-11-10 01:18:24 +01:00
twinaphex 318108ac82 Shorten character arrays that are passed to fill_pathname_base_noext 2021-11-10 00:09:33 +01:00
Omar Saleem b4878a8e7b
feat: solarized light ozone theme (#5)
* feat: adding solarized dark theme to ozone

* fix: variable not defined in header

* fix: added string for selecting theme in menu

* fix: added message hash for string

* feat: copied solarized dark translations into msg hashes

* fix: forgot to change name of enum label after copying

* first pass of new colors

* added selection border and fixed sublabel color

* sublabel color from blue to muted gray

* trying cyan for sublabel

* adjusted selected text color to match philosophy from solarized website

* testing what the entries_ colors do

* chose colors for entries_, adjusted other border and bgs

* match selection border to sublabel color

* trying gray for sublabel

* accidentally put the color in the wrong place, reverting and updating

* trying to change selected option color to orange

* not feeling orange, lets try teal

* try for orange border

* try for magenta border

* try for violet border

* trying blue border again

* trying omar blue bc why not

* reverting to regular blue for icons and green for border

* try magenta for footer border

* trying font color for footer border

* trying to get message background to show

* can't get it to render, but changed message background to violet

* testing sidebar changes

* sidebar colors

* lighter sidebar color

* trying gray sidebar

* try a gradient

* screwed up one of the coordinates

* reversing gradient

* attempting gradient with colors i made up

* accidentally wrote gradient to dracula instead of solarized dark

* adding gradient to the top, reversing bottom gradient

* randomly trying shuffling bottom gradient coords

* moving top right coordinate somewhere else

* swapped top two bottom coords to see

* swapped them back, i got lucky and things were right

* think i figured out the order,  BL, BR, TL, TR

* making background gradient lil darker

* fixed coords

* lessening gradient effect

* lessening gradient effect, but by making darker instead of lighter

* of course, messed up two coords

* removed top and bottom gradients

* dark and flat sidebar

* forgot to change running background

* made running background a bit less transparent since this is a low contrast theme

* added underscore to theme name

* adjusting message background color

* fixing message background color

* fixed cursor color border

* adjusting text to be one notch brighter, base0 -> base1, base01 -> base0

* adjusting sublabel text to use base00 instead, its in between base01 and base0

* added message hashes for light theme name

* added defines and enums for the light theme

* added solarized light structs into ozone.c, theyre all clones of dark for now

* fixing solarized dark ozone theme

fixing name of theme in ozone.c so assets load properly, fixing cursor and message colors to be green instead of purple

* added message hashes for light theme name

* added defines and enums for the light theme

* added solarized light structs into ozone.c, theyre all clones of dark for now

* i had based this branch on the wrong branch, fixed

* first pass, only changing background and regular text

* trying orange and magenta highlights

* Revert "trying orange and magenta highlights"

This reverts commit 1f1e107888cee0e97c6354a8d114863b39af8d00.

* applying the new colors to the right theme this time :)

* trying red instead of pink

* trying magenta icons in a desperate attempt to justify the use of the color

* trying magenta icons, orange labels and selector

* back to orange and red, sigh

* trying sidebar colors

* fixing sidebar gradient

* light theme red animated border colors

* trying magenta for second border color

* that was bad, trying a less light red

* going even darker

* made cursor border get darker instead of lighter

* that was a little too dark

* changed light theme running background to be..light
2021-10-16 16:17:16 -04:00
Omar Saleem 038b28c5f2
updating text labels to be brighter (#4)
* adjusting text to be one notch brighter, base0 -> base1, base01 -> base0

* adjusting sublabel text to use base00 instead, its in between base01 and base0
2021-10-16 12:42:45 -04:00
Omar Saleem 64dabb0388 Revert "Solarized light (#3)"
This reverts commit 485d07691d.
2021-10-15 23:51:25 -04:00
Omar Saleem 485d07691d
Solarized light (#3)
* feat: adding solarized dark theme to ozone

* fix: variable not defined in header

* fix: added string for selecting theme in menu

* fix: added message hash for string

* feat: copied solarized dark translations into msg hashes

* fix: forgot to change name of enum label after copying

* first pass of new colors

* added selection border and fixed sublabel color

* sublabel color from blue to muted gray

* trying cyan for sublabel

* adjusted selected text color to match philosophy from solarized website

* testing what the entries_ colors do

* chose colors for entries_, adjusted other border and bgs

* match selection border to sublabel color

* trying gray for sublabel

* accidentally put the color in the wrong place, reverting and updating

* trying to change selected option color to orange

* not feeling orange, lets try teal

* try for orange border

* try for magenta border

* try for violet border

* trying blue border again

* trying omar blue bc why not

* reverting to regular blue for icons and green for border

* try magenta for footer border

* trying font color for footer border

* trying to get message background to show

* can't get it to render, but changed message background to violet

* testing sidebar changes

* sidebar colors

* lighter sidebar color

* trying gray sidebar

* try a gradient

* screwed up one of the coordinates

* reversing gradient

* attempting gradient with colors i made up

* accidentally wrote gradient to dracula instead of solarized dark

* adding gradient to the top, reversing bottom gradient

* randomly trying shuffling bottom gradient coords

* moving top right coordinate somewhere else

* swapped top two bottom coords to see

* swapped them back, i got lucky and things were right

* think i figured out the order,  BL, BR, TL, TR

* making background gradient lil darker

* fixed coords

* lessening gradient effect

* lessening gradient effect, but by making darker instead of lighter

* of course, messed up two coords

* removed top and bottom gradients

* dark and flat sidebar

* forgot to change running background

* made running background a bit less transparent since this is a low contrast theme

* added underscore to theme name

* adjusting message background color

* fixing message background color

* fixed cursor color border

* adjusting text to be one notch brighter, base0 -> base1, base01 -> base0

* adjusting sublabel text to use base00 instead, its in between base01 and base0

* added message hashes for light theme name

* added defines and enums for the light theme

* added solarized light structs into ozone.c, theyre all clones of dark for now

* fixing solarized dark ozone theme

fixing name of theme in ozone.c so assets load properly, fixing cursor and message colors to be green instead of purple

* added message hashes for light theme name

* added defines and enums for the light theme

* added solarized light structs into ozone.c, theyre all clones of dark for now

* i had based this branch on the wrong branch, fixed

* first pass, only changing background and regular text

* trying orange and magenta highlights

* Revert "trying orange and magenta highlights"

This reverts commit 1f1e107888cee0e97c6354a8d114863b39af8d00.

* applying the new colors to the right theme this time :)

* trying red instead of pink

* trying magenta icons in a desperate attempt to justify the use of the color

* trying magenta icons, orange labels and selector

* back to orange and red, sigh

* trying sidebar colors

* fixing sidebar gradient

* light theme red animated border colors

* trying magenta for second border color

* that was bad, trying a less light red

* going even darker

* made cursor border get darker instead of lighter

* that was a little too dark

* changed light theme running background to be..light
2021-10-15 23:44:42 -04:00
Omar Saleem 0c017a2c82 reverting so i can squash commits 2021-10-15 16:36:09 -04:00
Omar Saleem 5226a0659a
new ozone theme: solarized dark (#1)
* feat: adding solarized dark theme to ozone

* fix: variable not defined in header

* fix: added string for selecting theme in menu

* fix: added message hash for string

* feat: copied solarized dark translations into msg hashes

* fix: forgot to change name of enum label after copying

* first pass of new colors

* added selection border and fixed sublabel color

* sublabel color from blue to muted gray

* trying cyan for sublabel

* adjusted selected text color to match philosophy from solarized website

* testing what the entries_ colors do

* chose colors for entries_, adjusted other border and bgs

* match selection border to sublabel color

* trying gray for sublabel

* accidentally put the color in the wrong place, reverting and updating

* trying to change selected option color to orange

* not feeling orange, lets try teal

* try for orange border

* try for magenta border

* try for violet border

* trying blue border again

* trying omar blue bc why not

* reverting to regular blue for icons and green for border

* try magenta for footer border

* trying font color for footer border

* trying to get message background to show

* can't get it to render, but changed message background to violet

* testing sidebar changes

* sidebar colors

* lighter sidebar color

* trying gray sidebar

* try a gradient

* screwed up one of the coordinates

* reversing gradient

* attempting gradient with colors i made up

* accidentally wrote gradient to dracula instead of solarized dark

* adding gradient to the top, reversing bottom gradient

* randomly trying shuffling bottom gradient coords

* moving top right coordinate somewhere else

* swapped top two bottom coords to see

* swapped them back, i got lucky and things were right

* think i figured out the order,  BL, BR, TL, TR

* making background gradient lil darker

* fixed coords

* lessening gradient effect

* lessening gradient effect, but by making darker instead of lighter

* of course, messed up two coords

* removed top and bottom gradients

* dark and flat sidebar

* forgot to change running background

* made running background a bit less transparent since this is a low contrast theme
2021-10-15 03:16:13 -04:00
twinaphex fde3406d1b Get rid of input_event_get_osk_ptr/get_osk_grid 2021-10-01 07:37:33 +02:00
twinaphex e886e908d5 Create consistent naming conventions - use retroarch_ instead
of rarch_ for some functions for all functions coming from retroarch.h
2021-09-28 12:56:10 +02:00
twinaphex 1ff024be26 Don't do rotate_z call for every draw_texture_slice call 2021-09-21 21:38:07 +02:00
twinaphex 6eeebeab25 Get rid of gfx_display_set_msg_force 2021-09-21 21:10:38 +02:00
twinaphex 83ce4259a0 Have only one getter for runloop_state 2021-09-21 19:08:26 +02:00
twinaphex 33f075191d Silence warning for libnx 2021-09-21 17:53:50 +02:00
twinaphex 295aa84a9e Cleanups 2021-09-20 20:43:05 +02:00
twinaphex 5e4ce74000 Get rid of duplicate code in gfx_widgets -
gfx_display_get_widget_dpi_scale made redundant
2021-09-13 20:21:36 +02:00
twinaphex 490233f3c5 wite_texture is now a static global variable inside gfx_display.c
- no longer referenced outside
2021-09-13 19:55:53 +02:00
twinaphex 3d303a63df (Ozone) Reduce rotate_z calls 2021-09-12 17:14:03 +02:00
jdgleaver 6da778b934 (Playlist Manager) Add 'Refresh Playlist' option 2021-09-09 16:18:26 +01:00
twinaphex 10782f9abc Cleanups - move code over to menu_driver.c 2021-09-07 11:55:12 +02:00
Autechre 36888612eb
Reduce gfx_display_rotate_z calls in menu drivers (#12937)
* (Ozone) Take out gfx_display_rotate_z out of ozone_draw_icon -
lots of matrix rotates and multiplies were happening when
just calling it once would suffice

* (MaterialUI) Reduce calls to gfx_display_rotate_z

* (XMB) Cleanup
2021-09-05 03:46:52 +02:00
twinaphex 9ea6f15c1d (Ozone) Forgot to add ozone.c file 2021-08-31 18:43:58 +02:00
natinusala 33ecec05c5 ozone: split into multiple files 2018-11-19 13:15:09 +01:00
natinusala b694608251 ozone: increase legibility of menu when content is running 2018-11-19 10:34:02 +01:00
natinusala bca0669833 ozone: fix cheevos badges, convert cheevos.c to LF 2018-11-19 10:23:55 +01:00
natinusala fa96962fa7 ozone: fix osk visual glitch 2018-11-19 09:55:12 +01:00
natinusala 186cc288bb ozone: fix typo, show images tab properly 2018-11-19 09:34:27 +01:00
Alfrix 2400da6129 Ozone: Localize and log asset warning 2018-11-17 10:35:20 -03:00
natinusala fe2f9bdcbc ozone: fix missing content icons 2018-11-15 20:47:59 +01:00
natinusala c421df494b ozone: fix playlists icons 2018-11-15 20:47:59 +01:00
natinusala 1abab059f9 ozone: don't break playlists without a hyphen in their name 2018-11-15 19:01:30 +01:00
natinusala 48cdac2a64 ozone: add console playlists support 2018-11-15 18:41:50 +01:00
natinusala 228f8ca0ef ozone: display correct tabs 2018-11-14 14:41:41 +01:00
natinusala f493c114b5 ozone: fix visual issues, add fade in/out to messagebox 2018-11-14 14:18:14 +01:00
natinusala a8a5f286b9 ozone: see content behind menu if content is running 2018-11-13 16:05:24 +01:00
natinusala 73f6e51892 ozone: improve OSK display 2018-11-13 15:48:16 +01:00
natinusala 4af4582204 ozone: fix empty playlist message position 2018-11-13 14:35:15 +01:00
natinusala 2c628860c8 ozone: fix some values display 2018-11-13 14:08:28 +01:00
natinusala 8a1afb0a52 ozone: add support for cursor height, improve empty playlists display 2018-11-13 14:01:59 +01:00
natinusala f9d74ad0e0 ozone: add is_playlist flag 2018-11-13 13:09:47 +01:00
natinusala 28b415f9f2 ozone: implement bind_init 2018-11-13 12:54:06 +01:00
natinusala eee619f64b ozone: go back to main menu tab when pressing B on the sidebar 2018-11-13 12:52:20 +01:00
Twinaphex 1ef286ec7c
Merge pull request #7583 from alfrix/input_icons
Input icons (User Binds)
2018-11-12 21:53:07 +01:00
Alfrix 989ddb35a8 Cleanup 2018-11-12 00:54:24 -03:00
Alfrix 53e89f6bd1 Fix shutdown icon and add restart 2018-11-12 00:38:12 -03:00
Alfrix e5c7de8607 Input icons (User binds) 2018-11-12 00:30:09 -03:00
natinusala 6733eaa330 ozone: fix content clear color 2018-11-10 15:25:29 +01:00
natinusala 650f9e9e36 ozone: pulsating cursor 2018-11-09 18:50:27 +01:00
natinusala 5406e19c3e ozone: add missing assets message 2018-11-09 17:00:44 +01:00
natinusala 20a8e1b40f ozone: fancy new cursor 2018-11-09 16:51:34 +01:00
Alfrix 0b29a93bf3 Add more icons OZONE/XMB 2018-11-08 19:43:42 -03:00
natinusala b5f869bf25 ozone: implement messagebox and OSK 2018-11-08 12:00:06 +01:00
natinusala 019e6d8e2d ozone: fix restore clear color on toggle 2018-11-08 12:00:06 +01:00
natinusala 9ceceef2b8 ozone: don't use subsetting icon for config 2018-11-07 13:45:51 +01:00
natinusala 265683b0aa ozone: never draw cogs 2018-11-07 12:50:17 +01:00
natinusala 4312868080 ozone: don't draw icons if all entries are cogs 2018-11-07 11:52:08 +01:00
natinusala 6fa40df7fd ozone: fix missing icons 2018-11-07 11:25:49 +01:00
natinusala 7227e1147e ozone: don't crash if font_driver_get_message_width isn't implemented 2018-11-06 16:57:44 +01:00
Stuart Carnie 0485d741a2
fix(ozone): Fix crash on shutdown; check for NULL 2018-11-06 07:56:05 -07:00
natinusala 9e2db18480 ozone: fix sublabel wrapping 2018-11-06 15:39:38 +01:00
natinusala 7f17c50738 ozone: implement battery display 2018-11-06 14:58:17 +01:00
twinaphex 180bb3bdd2 Implement natinusala's commit - dropdown lists - fix checked attribute
for ints, uints and floats
2018-11-06 09:22:49 +01:00
natinusala 07068e5035 Dropdown lists: Add a checked bool to menu_entry_t 2018-11-05 17:34:57 +01:00
natinusala 1a575dec7a ozone: fix horizontal animation direction 2018-11-05 15:48:55 +01:00
natinusala fd65daebbb ozone: update icons to be on par with XMB 2018-11-05 00:42:18 +01:00
natinusala ea736cea19 ozone: fix ghost sidebar when toggling menu 2018-11-05 00:28:24 +01:00
natinusala 7d058e61b5 ozone: load textures for every theme (#7498 workaround) 2018-10-27 23:08:20 +02:00
natinusala 67ed8d3986 ozone: fix entries centering 2018-10-27 19:28:18 +02:00
natinusala c9a5156e5d ozone: fix on the fly theme setting 2018-10-27 19:19:52 +02:00
natinusala d7be8c4cf2 ozone: fix tabs wrapping, again 2018-10-27 17:25:13 +02:00
twinaphex 689e612af8 (Ozone) Add 'Use System Preferred Color Theme' (enabled for Switch) 2018-10-27 17:10:53 +02:00
twinaphex 624698d2d9 (Ozone) Add menu color theme 2018-10-27 16:51:17 +02:00
natinusala 52ab4a58a2 ozone: fix tabs wrapping 2018-10-27 14:52:26 +02:00
natinusala 8e37ad858a ozone: fix horizontal animation on libnx 2018-10-27 14:52:22 +02:00
twinaphex 75d36ebc1f (Ozone) Button legend now responds to 'Menu Swap OK/Cancel' setting 2018-10-27 06:18:56 +02:00
twinaphex 622bef1f7a Dehardcode some more strings 2018-10-27 05:48:44 +02:00
twinaphex 9b72a3337c (Dutch) Update Dutch translation
(Ozone) Update hardcoded label
2018-10-27 05:29:28 +02:00
twinaphex 199bc744b3 (Ozone) Use strlcpy/strlcat 2018-10-27 04:47:12 +02:00
twinaphex 2fd2649eb8 Fix ton of C89 warnings/errors 2018-10-27 04:40:43 +02:00
natinusala 158ddc0b2a New menu driver : ozone (Nintendo Switch lookalike) 2018-10-26 13:24:32 +02:00