Bug 663803 - Zoomed view implementation using render document r=mcomella,snorp
This commit is contained in:
@@ -5,7 +5,9 @@
|
||||
|
||||
package org.mozilla.gecko.gfx;
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
import java.nio.IntBuffer;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import org.mozilla.gecko.AndroidGamepadManager;
|
||||
import org.mozilla.gecko.AppConstants.Versions;
|
||||
@@ -530,6 +532,19 @@ public class LayerView extends FrameLayout implements Tabs.OnTabsChangedListener
|
||||
}
|
||||
}
|
||||
|
||||
@WrapElementForJNI(allowMultithread = true, stubName = "updateZoomedView")
|
||||
public static void updateZoomedView(ByteBuffer data) {
|
||||
data.position(0);
|
||||
LayerView layerView = GeckoAppShell.getLayerView();
|
||||
if (layerView != null) {
|
||||
LayerRenderer layerRenderer = layerView.getRenderer();
|
||||
if (layerRenderer != null){
|
||||
layerRenderer.updateZoomedView(data);
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
public interface Listener {
|
||||
void renderRequested();
|
||||
void sizeChanged(int width, int height);
|
||||
@@ -662,7 +677,27 @@ public class LayerView extends FrameLayout implements Tabs.OnTabsChangedListener
|
||||
public void onPanZoomStopped();
|
||||
}
|
||||
|
||||
public void setOnMetricsChangedListener(OnMetricsChangedListener listener) {
|
||||
mLayerClient.setOnMetricsChangedListener(listener);
|
||||
public void setOnMetricsChangedDynamicToolbarViewportListener(OnMetricsChangedListener listener) {
|
||||
mLayerClient.setOnMetricsChangedDynamicToolbarViewportListener(listener);
|
||||
}
|
||||
|
||||
public void setOnMetricsChangedZoomedViewportListener(OnMetricsChangedListener listener) {
|
||||
mLayerClient.setOnMetricsChangedZoomedViewportListener(listener);
|
||||
}
|
||||
|
||||
// Public hooks for zoomed view
|
||||
|
||||
public interface OnZoomedViewListener {
|
||||
public void requestZoomedViewRender();
|
||||
public void updateView(ByteBuffer data);
|
||||
}
|
||||
|
||||
public void addOnZoomedViewListener(OnZoomedViewListener listener) {
|
||||
mRenderer.addOnZoomedViewListener(listener);
|
||||
}
|
||||
|
||||
public void removeOnZoomedViewListener(OnZoomedViewListener listener) {
|
||||
mRenderer.removeOnZoomedViewListener(listener);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user