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

151118_1033AM_addingChangesFromCn1Repository #19

Merged
merged 89 commits into from
Nov 20, 2018

Conversation

DurankGts
Copy link
Owner

No description provided.

shannah and others added 30 commits October 2, 2018 11:09
…incorrect results. This fixes some issues with rotation and clipping on Android, in particular, #2567.

The test case provided in that issue now works correctly in the simulator, iOS, and android.  It still fails on Javascript - and haven't tested on UWP yet.  Work on those is still in progress.
Note: As part of this fix, I changed the behaviour of Graphics.rotate(angle, x, y) so that the x, y coordinates are relative to the context's current translateX and translateY values (i.e. translateX, and translateY will be added to these values before calling the internal transform's rotation.  While this may possibly be a breaking change, this is the 'right' way for it to work and is consistent with all other methods in Graphics.
… paused audio to start playing again after a call was terminated
…h mm unit. #2561 (comment)

Added some code to support loading multi-images as background-image url directives in CSS - but this is currently disabled because it would produce unexpected results when generating image borders.  #2569 (comment)
Fix bug of stroke thickness not taken into account when stroke passed…
…Opqaue methods to disable background painting of components. This is necessary for Switch because the background color style property is used to set the color of the track rather than the actual component background - this is to make it simpler to style.
This includes work on pull to refresh to support that styling
And the new pull to refresh functionality
This turned out to be an issue with the way we were doing Z-Layering.  When adding a peer component, we were adding a peer components UIView to the parent of the root view.  Unfortunately, this technically places it outside the view hierarchy - even though it appeared to work.  Resolved the problem by instead re-rooting the view hierarchy with a new UIView above the previous EAGLView.  There were some places where the view controller (CodenameOne_GLViewController) would call self.view and expect that it would be the EAGLView.  This can no-longer be assumed.  If there have been any peer components added, then self.view will return the new UIView root (the parent of the EAGLView).

To help with this, I added a new eaglView method in CodenameOne_GLView controller which will always return the EAGLView.  I have swapped out all of the places where an EAGLView was explicitly assumed via cast.  It is possible that there are other situations where it is implicitly assumed, but we'll have to squash those as we find them.

Also added a macro EAGLVIEW for [[CodenameOne_GLView Controller] instance] eaglView] for convenience.

Tested with a few different apps in test suite so far and appears to not have broken anything - but this is a pretty low-level change so it could have far-reaching effects.
shannah and others added 28 commits November 5, 2018 09:28
…at if the pointer is pressed in a layerd pane, then it is not considered out of bounds. This fixes the issue where the user opens a picker inside the dialog, and then tries to interact with the picker popup dialog. Technically some of the presses in the picker might be outside the bounds of the parent dialog, but we still don't want the parent dialog to dispose in such cases. https://stackoverflow.com/questions/53147275/dialog-close-without-selecting-the-value-into-text-fields-on-on-simulator
…ainsOrOwns(x,y) to allow components to denote an ownership hierarchy. This allows you to more easily track relationships hierarchical relationships between components that don't happen to descendents of each other - e.g. for popup dialogs that are actually contained in a layered pane but are logically owned by components in the content pane. This is used by Dialog and InteractionDialog to better test for pointer events that occur outside their bounds. Now Dialog.setDisposeWhenPointerOutOfBounds() will regard an event to be *in* bounds if it occurs on a component that is owned by the dialog (or by a component in the dialog).

The Picker, AutocompleteTextField, and ComboBox popup dialogs have been updated to track their owner so that they behave appropriately.  If you develop your own popups that are placed in the layered pane, it is up to you to set their owner appropriately using Component.setOwner() so that dialogs can deal with their pointer events properly.

There is no special house-keeping for the owner hierarchy.  E.g. If you remove an owner from the form, it doesn't do anything like remove its owned components also.  It is up to you (the developer) to manage these relationships.
… a value change. It had been firing every time the value of the switch is changed, which is incorrect. Added change listeners which will fire whenever the value changes.
…anageSubscriptionsSupported() to facility opening the UI for managing in-app purchase subscriptions. Currently only supported on iOS and android.
…11. Number types now implement Comparable also. Added missing methods to java.lang.String in CLDC11. #2604
…th JDK 8 and JDK 11. This includes fixing artifacts when scrolling, and setting the window size appropriately when the simulator is loaded, rotated, zoomed, and toggled between scrollable and not scrollable.
…ess events near the right edge of the form. a9c604a included a corresponding fix for the left side menu.
It would fallback to using "*/*" which is probably not what people want
…ainer after current animations are complete. Calling revalidate() directly from an app is almost never a good idea as it will cause jitter in currently running animations.

Also made InfiniteProgress more efficient when visiblity is false so that it doesn't try to paint.
… in a format like 'Just now', '5 minutes ago', 'yesterday', etc...
Added validate UI to the component inspector
…4 and older. Not sure where the cut-off was. Workaround not required for 1.8u162, but is required for 1.8u144. The problem was that google maps now requires requestAnimationFrame. Solution/workaround was to add a requestAnimationFrame polyfill. This is the same problem as codenameone/codenameone-google-maps#30
@DurankGts DurankGts merged commit 2986b4b into DurankGts:master Nov 20, 2018
DurankGts pushed a commit that referenced this pull request Jul 11, 2019
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

Successfully merging this pull request may close these issues.

4 participants