Report to Crashlytics if the fail to set texture due to it being too large.
Progress with Skewb familty; separate StickerFactory class.
Spearate the concept of number of layers of an object and its size.In case of the Skewb family, this is no longer the same (Master Skewb has 3 layers but it's twice bigger than the 2-layered Skewb)
Objects must explicitly provide a list of offsets specifying where the cut planes are (rather than just a BASIC_STEP - the width of the layer - which is insufficient in case of objects which have layers of vastly different width, like the Master Skewb)
Move computation of the rotation rows to the Object from Cubits.
Beginnings of support for any-sized Skewb.
New meshes.
CubitFactory: unify creating MeshPolygon bands.
Play State: Recreate all 3 PopupWindows.
More debugging for the case of suspicious submits.
Swap Redi with Helicopter.
More unification in CubitFactory.
New API for the library: add an empty texture component to a Mesh.Use this in thr Magic Cube to add empty texture components to some types of cubits.
Unification of the way we round the corners of various cubits.
Bugfix for a rare Firebase crash.
Improve Analytics reports
The Redi Cube should be finished now.
Minor.
Redi icons.
Add the Redi Cube: part3.
Add the Redi Cube: part2.
Add the Redi Cube: part1.
Work around a rare crash on startup
Correct a bug computing Hash and immediatelly bump to 1.5.2
adjust requesting for review a bit more - now it will happen after a user has launched the app twice and played 7 times.
adjust the objects some more.
- after some time using it, request an App review- some tweaking for the way the objects look (set internal_color to something slightly lighter than pure black, round the corners of the stickers better)- set internal_node ratio to 1.42, this way the objects never get cut
Simplify OpenGL error dialog. Show it only once.
Simplify drawing textures.
Minor
Brighter background.
Bigger 'OK' button in Dialogs.
Transparent Buttons.
1) report all solved levels to Analytics2) automatically dismiss the NewRecord and Solved dialogs when one backs from the Done state.
Make the RubikScores class thread-safe.
New meshes for the Diamond and the Pyraminxes.
Icons for the Diamond.
Add a CubitFactory and convert all objects to use it. Biggest change is thr Pyramiinx which now uses a lattice of Octahedrons and Tetrahedrons, just like the Diamond.
Fix Diamond's isSolved()
Progress with the Diamond. Everything working except for the isSolved(): turns out the center cubits can end up rotated along the face by multitudes of 120 degrees.
Progress with the Diamond. Everything working, expect one thing: half of the faces are upside down, and computing offset doesn't work on those faces properly.
Make the top and bottom bars transparent, above the GLSurfaceView.
Progress with the Skewb Diamond.
Progress with the Skewb Diamond - it is rendered correctly now.
Rename some classes.
Rename 'RubikMovement' to 'Movement'
1) correction for Dino4's isSolved() [ remember about the mirror! ]2) beginnings of support for the Skewb Diamond
Fully support the 4-color Dino.
Add the 4-color Dino.
Still one thing needs to be done about it: randomization of Moves (now sometimes in Level 1 the randomized move leads to an already solved position)
Add lock button.
Slight correction for devices which have scrWidth>scrHeight ( Huawei Mate Xs! )
Do not forget the amount an Object has been changed in size when we switch between Objects.
Compute the size of the Solver icon correctly.
Apply a hack so that the App enters fullscreen modee on some Huawei devices.
Remove LAYOUT_STABLE from the UI flags since that was causing trembling of the Scores dialog in some platforms.
Progress with UI
Make the keyboard visible again
Rework the bottom pane
Remove Navigation Bar in the last case, when we were popping out a PopupWindow!Navigation Bar fully gone now!
Make it so that the Navigation Bar does not re-appear when we pop up a DialogFragment.
Now there's noly 1 case when it still reappears: it's when we pop up a PopupWindow.
Progress with Play state.
Add hiding the Navigation bar (still unfinished, the bar re-appears when a DialogFragment or a PopupWindow appears)Integrate the Level Spinner and the Play button into oneMove the Menu button up
DMesh for the Helicopter.
Icons for the Helicopter.
Fix rotations of the Helicopter.
More support for the Helicopter.
Beginnings of support for the Helicopter.
Correct the Dino mesh.
Add Sudan flag.
Skewb finished?
Skewb Mesh.
Icons for the Skewb.
Progress with the Skewb.
Beginnings of support for the Skewb.
Make the ObjectPopup a 2D grid - corrections.
Make the ObjectPopup a 2D grid.
Improve the Scores dialog: now level sections are added one-by-one.
Improve Pyraminx Mesh
Convert RubikDino to the new Polygon mesh.
Tweaks for the new RubikPyraminx mesh so it looks better.
Convert RubikPyraminx to the new MeshPolygon - better quality of the mesh and less vertices!
Convert RubikCubes to the new MeshPolygon - better quality of the mesh and less vertices!
Fix for a crasher.
Rename Meshes.
Fix: nwo we need to explicitly set mesh center to negative Z if we want to GLOW a flat object.
Fix for Samsung Android 5
Fix for one bug seen in Firebase and additional debugging for another.
Finally fix the Dino's 'isSolved()' - Dino can be mirrored and then it is also solved!
Update dmesh'es to 'proper' (i.e. with centers) version 2.
Update all the dmeshes to versions 2.