Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Android options menu button #781

Open
zethfoxster opened this issue Jul 22, 2016 · 19 comments
Open

Android options menu button #781

zethfoxster opened this issue Jul 22, 2016 · 19 comments

Comments

@zethfoxster
Copy link
Member

on devices without a hard key for android options(storage, import deck, options)...
the button displays at all time, during matchs and deck creation, it is both distracting and cumbersome as you have to find a place on the screen such as the very middle, to place this button (which can be dragged) to avoid accidentally hitting it.

we should find a way to get this button to only display on main menu screen. if even possible.

@Rolzad73
Copy link
Member

@zethfoxster could you add a screenshot to explain? While I do see an option button on my devices, it is never in the way. thx

@zethfoxster
Copy link
Member Author

Not sure how to screenshot it on my phone. But my phone does not have a "options" button, so wagic emulates one directly on the screen.
Galaxy prime core android 5.1.1.
The emulated button is shown at all times.

@zethfoxster
Copy link
Member Author

This isnt wagic but see that 3 dot button? Thats what wagic has now and it always shows.

@kevlahnota
Copy link
Contributor

try holding power + volume down to screenshot

@Rolzad73
Copy link
Member

Rolzad73 commented Aug 3, 2016

try holding power + volume down to screenshot

or if that doesnt work, power + volume up.... diff devices, diff screenshots methods sometimes.
Screenshot or photo of the emulator version would be beneficial.

@Rolzad73
Copy link
Member

Rolzad73 commented Aug 3, 2016

@zethfoxster
I looked at that link you supplied and see what you mean about in the middle of the screen.

Here is a screen of mine to show you a comparison (Nexus 5, SDK 5.1.1)
nexus5_511

So, for Android, a long time ago it was fashionable to use "Options/Menu" buttons. On many old devices, they would have a hard Option button (Nexus One for ex.).
But as that got phased out, there was an intermediate period where the option button became soft, with eventually, Google recommending that it will become legacy, aka deprecated.

It was expected for developers to change their apps to be more in line with that. I will have to find the article(s) pertaining to that, but I know it exists.

As far as your manifestation @zethfoxster , it looks like your device's particular OS implementation decided to have a floating Options soft button. Not sure why they decided that it was a good idea to be in the middle of the screen, but I will reserve my judgement.

Although, it IS WTH using this option mechanism which is the trigger, maybe not the cause.

I can look into reworking it. Although, if we remove it completely, we would have to figure out where to put Settings (Storage) and Import. The About dialog could really be removed since it only displays version number anyways.

P.S. I just looked at your device type. Samsung.
Yes, I have seen many times that Samsung has tweaked their OS is small ways that ends up not conforming to stock. Not good, not bad, just different.

@Rolzad73
Copy link
Member

Rolzad73 commented Aug 3, 2016

@Rolzad73
Copy link
Member

Rolzad73 commented Aug 3, 2016

Ok, easy enough to remove, setting target SDK to 14> in manifest (min @ 10 can stay the same).

So just have to decide where to enable the storage and deck importing options, if they are even wanted. Do platforms other than android have deck import option? if so where is it placed?

@zethfoxster
Copy link
Member Author

i wonder if we can move those android options, ie: deck import (new feature kev added which works great) and "storage settings" directly into the code base instead of doing it externally through android.
if wagic can save and read decks, there has to be a way we can get it to do so from within the deck editor itself. and same from storage options, that should be inside the options for the game settings.

@zethfoxster
Copy link
Member Author

btw i dont even mond the button on the main menu screen, but it is present in every screen, during matchs, deck building ECT. just places where it doesnt make sense to show those options.
when was the last time you want to check your storage options and import a deck in the middle of a match lol.

@Rolzad73
Copy link
Member

Rolzad73 commented Aug 4, 2016

Unfortunately, I do not think the menu/option button only on main screen (using Android mechanisms) is possible.

Yeah, I could see "Deck import" added to the deck editor section instead. But will have to be considered all platforms and how they would have user interface functionality.

As far as "storage", I am unsure. it was only designed for Android right? SDCARD vs internal storage? Any device I use it on now shows nothing in the list to choose from. But they are only internal storage devices. Unsure of how that should be implemented.

@kevlahnota
Copy link
Contributor

@Rolzad73 if your device is rooted, make a file forcemount (no extension) on root of your internal sd ie. mnt/sdcard, and it will list the primary and secondary storage if you have...

@Rolzad73
Copy link
Member

Rolzad73 commented Aug 4, 2016

@Rolzad73 if your device is rooted, make a file forcemount (no extension) on root of your internal sd ie. mnt/sdcard, and it will list the primary and secondary storage if you have...

Thanks, but I just mentioned that is shows nothing in the list on my devices to show that the feature may need some updating. If I had my Nexus One to test, I believe it would look as it always did.

Functionally, wagic works without me having to do anything like that and I think that is how other non-coder/non-rooted users would like it.

Unless there was another reason for you mentioning that technique?

@kevlahnota
Copy link
Contributor

kevlahnota commented Aug 4, 2016

I thought you want your device to show a list of options... Im on Android 6.0, and it only shows the default options even I have Secondary Storage. forcemount is force mounting the available storage for Android 4 and upwards.. forcemount

@Rolzad73
Copy link
Member

Rolzad73 commented Aug 4, 2016

I see kev, thanks.

I may see if I can tweak it so that it works without the extra forces mounting process.

@Rolzad73
Copy link
Member

Rolzad73 commented Aug 4, 2016

@kevlahnota
I see how there are 2 mount lists gathered, one from the legacy /system/etc/vold.fstab (if it exists) and
/proc/mounts

I also see the attempt to work around the vold.fstab deprecation on SDK 4.3+. Though it seems to require a forcemount as you mentioned. I have not changed that hopefully so it still works for others if they use it.

Although, if vold.fstab is empty, it basically empties the mounts list (by comparison in a cleaning function) even though in my testing the ones I am receiving are valid mount points (tested with:

if (!root.exists() || !root.isDirectory() || !root.canWrite())... section

At least tested on Nexus5 5.1.1, Nexus7 6.0 and an emulator of a Nexus One 2.3.3

So, I am just adding that vold is empty check before the first mount list cleaning. I mention it in case anyone experiences breaks because of that attempted fix.

@zethfoxster
Copy link
Member Author

A nonpower user method for mounting ext was already provided by Google after the depreciation, its just not explained easy enough to implement over night. No other game i play on droid requires anything other than "move to sd" to save files there. Kev allowed a nonrooted forcemount...hos forcemount method will work, however it is not user friendly, an average person downloading wagic will assume it doesn't even work at all if the folders didnt already exist on thier systems before hand.

@Rolzad73
Copy link
Member

Rolzad73 commented Aug 4, 2016

Just trying to test on Nvidia Shield TV because I think I can have multiple USB plugged and set them to internal storage. But will have to find empty usb sticks first as it will format them.

But, the Nvidia doesn't even show any extra UI... back, home, menu or anything. That's expected, it requires a gamepad for input. Yet another case to put these options in game I suppose.

I was able to test my change at the first install because it will bring up the storage option before downloading Core.zip. It showed just one, as External SD Card 1. This is the Nvidia Shield TV with the internal HDD.

I haven't investigated the actual mount point in code. But it doesn't seem I have broken anything...yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants