You've already forked android_translation_layer
mirror of
https://gitlab.com/android_translation_layer/android_translation_layer.git
synced 2025-10-27 11:48:10 -07:00
implement LayoutParams.resolveLayoutDirection() callback
This is needed to make androidx ConstraintLayout behave correctly
This commit is contained in:
@@ -153,6 +153,7 @@ public class LayoutInflater {
|
|||||||
|
|
||||||
// Create layout params that match root, if supplied
|
// Create layout params that match root, if supplied
|
||||||
params = root.generateLayoutParams(attrs);
|
params = root.generateLayoutParams(attrs);
|
||||||
|
params.resolveLayoutDirection(root.getLayoutDirection());
|
||||||
if (!attachToRoot) {
|
if (!attachToRoot) {
|
||||||
// Set the layout params for temp if we are not
|
// Set the layout params for temp if we are not
|
||||||
// attaching. (If we are, we use addView, below)
|
// attaching. (If we are, we use addView, below)
|
||||||
@@ -219,6 +220,7 @@ public class LayoutInflater {
|
|||||||
final View view = createViewFromTag(parent, name, attrs);
|
final View view = createViewFromTag(parent, name, attrs);
|
||||||
final ViewGroup viewGroup = (ViewGroup)parent;
|
final ViewGroup viewGroup = (ViewGroup)parent;
|
||||||
final ViewGroup.LayoutParams params = viewGroup.generateLayoutParams(attrs);
|
final ViewGroup.LayoutParams params = viewGroup.generateLayoutParams(attrs);
|
||||||
|
params.resolveLayoutDirection(viewGroup.getLayoutDirection());
|
||||||
rInflate(parser, view, attrs, true);
|
rInflate(parser, view, attrs, true);
|
||||||
viewGroup.addView(view, params);
|
viewGroup.addView(view, params);
|
||||||
}
|
}
|
||||||
@@ -261,6 +263,7 @@ public class LayoutInflater {
|
|||||||
if (params == null) {
|
if (params == null) {
|
||||||
params = group.generateLayoutParams(childAttrs);
|
params = group.generateLayoutParams(childAttrs);
|
||||||
}
|
}
|
||||||
|
params.resolveLayoutDirection(group.getLayoutDirection());
|
||||||
view.setLayoutParams(params);
|
view.setLayoutParams(params);
|
||||||
// Inflate all children.
|
// Inflate all children.
|
||||||
rInflate(childParser, view, childAttrs, true);
|
rInflate(childParser, view, childAttrs, true);
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ import java.util.ArrayList;
|
|||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
|
|
||||||
public class ViewGroup extends View implements ViewParent, ViewManager {
|
public class ViewGroup extends View implements ViewParent, ViewManager {
|
||||||
public int id;
|
|
||||||
public ArrayList<View> children;
|
public ArrayList<View> children;
|
||||||
|
|
||||||
public ViewGroup(Context context) {
|
public ViewGroup(Context context) {
|
||||||
@@ -336,6 +335,8 @@ public class ViewGroup extends View implements ViewParent, ViewManager {
|
|||||||
a.recycle();
|
a.recycle();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void resolveLayoutDirection(int layoutDirection) {}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Used to animate layouts.
|
* Used to animate layouts.
|
||||||
*/
|
*/
|
||||||
@@ -397,6 +398,8 @@ public class ViewGroup extends View implements ViewParent, ViewManager {
|
|||||||
public void setMarginEnd(int marginEnd) {
|
public void setMarginEnd(int marginEnd) {
|
||||||
rightMargin = marginEnd;
|
rightMargin = marginEnd;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getLayoutDirection() { return LAYOUT_DIRECTION_LTR; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface OnHierarchyChangeListener {
|
public interface OnHierarchyChangeListener {
|
||||||
|
|||||||
Reference in New Issue
Block a user