浏览代码

Open SideMenu on burger button click

Guy Carmeli 8 年前
父节点
当前提交
72dd351d1f
共有 17 个文件被更改,包括 87 次插入55 次删除
  1. 4
    1
      android/app/src/main/java/com/reactnativenavigation/controllers/Modal.java
  2. 7
    2
      android/app/src/main/java/com/reactnativenavigation/controllers/ModalController.java
  3. 6
    1
      android/app/src/main/java/com/reactnativenavigation/layouts/BottomTabsLayout.java
  4. 2
    2
      android/app/src/main/java/com/reactnativenavigation/layouts/ScreenStackContainer.java
  5. 14
    7
      android/app/src/main/java/com/reactnativenavigation/layouts/SingleScreenLayout.java
  6. 3
    3
      android/app/src/main/java/com/reactnativenavigation/screens/FragmentScreen.java
  7. 6
    6
      android/app/src/main/java/com/reactnativenavigation/screens/Screen.java
  8. 5
    5
      android/app/src/main/java/com/reactnativenavigation/screens/ScreenFactory.java
  9. 7
    7
      android/app/src/main/java/com/reactnativenavigation/screens/ScreenStack.java
  10. 2
    2
      android/app/src/main/java/com/reactnativenavigation/screens/SingleScreen.java
  11. 2
    2
      android/app/src/main/java/com/reactnativenavigation/screens/ViewPagerScreen.java
  12. 10
    4
      android/app/src/main/java/com/reactnativenavigation/views/LeftButton.java
  13. 7
    0
      android/app/src/main/java/com/reactnativenavigation/views/LeftButtonOnClickListener.java
  14. 4
    0
      android/app/src/main/java/com/reactnativenavigation/views/SideMenu.java
  15. 4
    4
      android/app/src/main/java/com/reactnativenavigation/views/TitleBar.java
  16. 0
    5
      android/app/src/main/java/com/reactnativenavigation/views/TitleBarBackButtonListener.java
  17. 4
    4
      android/app/src/main/java/com/reactnativenavigation/views/TopBar.java

+ 4
- 1
android/app/src/main/java/com/reactnativenavigation/controllers/Modal.java 查看文件

@@ -39,13 +39,16 @@ public class Modal extends Dialog implements DialogInterface.OnDismissListener,
39 39
     }
40 40
 
41 41
     @Override
42
-    public boolean onTitleBarBackPress() {
42
+    public boolean onTitleBarBackButtonClick() {
43 43
         if (!layout.onBackPressed()) {
44 44
             onBackPressed();
45 45
         }
46 46
         return true;
47 47
     }
48 48
 
49
+    public void onSideMenuButtonClick() {
50
+    }
51
+
49 52
     public interface OnModalDismissedListener {
50 53
         void onModalDismissed(Modal modal);
51 54
     }

+ 7
- 2
android/app/src/main/java/com/reactnativenavigation/controllers/ModalController.java 查看文件

@@ -98,8 +98,13 @@ public class ModalController implements ScreenStackContainer, Modal.OnModalDismi
98 98
     }
99 99
 
100 100
     @Override
101
-    public boolean onTitleBarBackPress() {
102
-        // Do nothing and let the layout handle the back press
101
+    public boolean onTitleBarBackButtonClick() {
102
+        // Do nothing and let the layout handle the back button click
103 103
         return false;
104 104
     }
105
+
106
+    @Override
107
+    public void onSideMenuButtonClick() {
108
+        // Do nothing and let the layout handle the click
109
+    }
105 110
 }

+ 6
- 1
android/app/src/main/java/com/reactnativenavigation/layouts/BottomTabsLayout.java 查看文件

@@ -199,7 +199,7 @@ public class BottomTabsLayout extends RelativeLayout implements Layout, AHBottom
199 199
     }
200 200
 
201 201
     @Override
202
-    public boolean onTitleBarBackPress() {
202
+    public boolean onTitleBarBackButtonClick() {
203 203
         if (getCurrentScreenStack().canPop()) {
204 204
             getCurrentScreenStack().pop(true, new ScreenStack.OnScreenPop() {
205 205
                 @Override
@@ -212,4 +212,9 @@ public class BottomTabsLayout extends RelativeLayout implements Layout, AHBottom
212 212
 
213 213
         return false;
214 214
     }
215
+
216
+    @Override
217
+    public void onSideMenuButtonClick() {
218
+
219
+    }
215 220
 }

+ 2
- 2
android/app/src/main/java/com/reactnativenavigation/layouts/ScreenStackContainer.java 查看文件

@@ -1,9 +1,9 @@
1 1
 package com.reactnativenavigation.layouts;
2 2
 
3 3
 import com.reactnativenavigation.params.ScreenParams;
4
-import com.reactnativenavigation.views.TitleBarBackButtonListener;
4
+import com.reactnativenavigation.views.LeftButtonOnClickListener;
5 5
 
6
-public interface ScreenStackContainer extends TitleBarBackButtonListener {
6
+public interface ScreenStackContainer extends LeftButtonOnClickListener {
7 7
     void push(ScreenParams screenParams);
8 8
 
9 9
     void pop(ScreenParams screenParams);

+ 14
- 7
android/app/src/main/java/com/reactnativenavigation/layouts/SingleScreenLayout.java 查看文件

@@ -10,8 +10,8 @@ import com.reactnativenavigation.params.SideMenuParams;
10 10
 import com.reactnativenavigation.params.TitleBarButtonParams;
11 11
 import com.reactnativenavigation.params.TitleBarLeftButtonParams;
12 12
 import com.reactnativenavigation.screens.ScreenStack;
13
+import com.reactnativenavigation.views.LeftButtonOnClickListener;
13 14
 import com.reactnativenavigation.views.SideMenu;
14
-import com.reactnativenavigation.views.TitleBarBackButtonListener;
15 15
 
16 16
 import java.util.List;
17 17
 
@@ -23,13 +23,13 @@ public class SingleScreenLayout extends RelativeLayout implements Layout {
23 23
     private final ScreenParams screenParams;
24 24
     private final SideMenuParams sideMenuParams;
25 25
     private ScreenStack stack;
26
-    private TitleBarBackButtonListener titleBarBackButtonListener;
26
+    private LeftButtonOnClickListener leftButtonOnClickListener;
27 27
     private @Nullable SideMenu sideMenu;
28 28
 
29 29
     public SingleScreenLayout(AppCompatActivity activity, ScreenParams screenParams,
30
-                              TitleBarBackButtonListener titleBarBackButtonListener) {
30
+                              LeftButtonOnClickListener leftButtonOnClickListener) {
31 31
         this(activity, null, screenParams);
32
-        this.titleBarBackButtonListener = titleBarBackButtonListener;
32
+        this.leftButtonOnClickListener = leftButtonOnClickListener;
33 33
     }
34 34
 
35 35
     public SingleScreenLayout(AppCompatActivity activity, @Nullable SideMenuParams sideMenuParams, ScreenParams screenParams) {
@@ -133,11 +133,18 @@ public class SingleScreenLayout extends RelativeLayout implements Layout {
133 133
     }
134 134
 
135 135
     @Override
136
-    public boolean onTitleBarBackPress() {
137
-        if (titleBarBackButtonListener != null) {
138
-            return titleBarBackButtonListener.onTitleBarBackPress();
136
+    public boolean onTitleBarBackButtonClick() {
137
+        if (leftButtonOnClickListener != null) {
138
+            return leftButtonOnClickListener.onTitleBarBackButtonClick();
139 139
         }
140 140
 
141 141
         return onBackPressed();
142 142
     }
143
+
144
+    @Override
145
+    public void onSideMenuButtonClick() {
146
+        if (sideMenu != null) {
147
+            sideMenu.openDrawer();
148
+        }
149
+    }
143 150
 }

+ 3
- 3
android/app/src/main/java/com/reactnativenavigation/screens/FragmentScreen.java 查看文件

@@ -11,7 +11,7 @@ import android.widget.FrameLayout;
11 11
 import com.reactnativenavigation.R;
12 12
 import com.reactnativenavigation.params.ScreenParams;
13 13
 import com.reactnativenavigation.views.ContentView;
14
-import com.reactnativenavigation.views.TitleBarBackButtonListener;
14
+import com.reactnativenavigation.views.LeftButtonOnClickListener;
15 15
 
16 16
 import java.lang.reflect.InvocationTargetException;
17 17
 import java.lang.reflect.Method;
@@ -25,8 +25,8 @@ public class FragmentScreen extends Screen {
25 25
     private static final String CONTRACT_GET_SUPPORT_FRAGMENT = "getSupportFragment";
26 26
     private FrameLayout content;
27 27
 
28
-    public FragmentScreen(AppCompatActivity activity, ScreenParams screenParams, TitleBarBackButtonListener titleBarBackButtonListener) {
29
-        super(activity, screenParams, titleBarBackButtonListener);
28
+    public FragmentScreen(AppCompatActivity activity, ScreenParams screenParams, LeftButtonOnClickListener leftButtonOnClickListener) {
29
+        super(activity, screenParams, leftButtonOnClickListener);
30 30
     }
31 31
 
32 32
     @Override

+ 6
- 6
android/app/src/main/java/com/reactnativenavigation/screens/Screen.java 查看文件

@@ -14,7 +14,7 @@ import com.reactnativenavigation.params.StyleParams;
14 14
 import com.reactnativenavigation.params.TitleBarButtonParams;
15 15
 import com.reactnativenavigation.params.TitleBarLeftButtonParams;
16 16
 import com.reactnativenavigation.utils.ViewUtils;
17
-import com.reactnativenavigation.views.TitleBarBackButtonListener;
17
+import com.reactnativenavigation.views.LeftButtonOnClickListener;
18 18
 import com.reactnativenavigation.views.TopBar;
19 19
 
20 20
 import java.util.List;
@@ -27,15 +27,15 @@ public abstract class Screen extends RelativeLayout {
27 27
     protected final AppCompatActivity activity;
28 28
     protected final ScreenParams screenParams;
29 29
     protected TopBar topBar;
30
-    private final TitleBarBackButtonListener titleBarBackButtonListener;
30
+    private final LeftButtonOnClickListener leftButtonOnClickListener;
31 31
     private VisibilityAnimator topBarVisibilityAnimator;
32 32
     private ScreenAnimator screenAnimator;
33 33
 
34
-    public Screen(AppCompatActivity activity, ScreenParams screenParams, TitleBarBackButtonListener titleBarBackButtonListener) {
34
+    public Screen(AppCompatActivity activity, ScreenParams screenParams, LeftButtonOnClickListener leftButtonOnClickListener) {
35 35
         super(activity);
36 36
         this.activity = activity;
37 37
         this.screenParams = screenParams;
38
-        this.titleBarBackButtonListener = titleBarBackButtonListener;
38
+        this.leftButtonOnClickListener = leftButtonOnClickListener;
39 39
 
40 40
         screenAnimator = new ScreenAnimator(this);
41 41
         createViews();
@@ -61,7 +61,7 @@ public abstract class Screen extends RelativeLayout {
61 61
             screenParams.leftButton.setColorFromScreenStyle(screenParams.styleParams.titleBarButtonColor);
62 62
         }
63 63
         topBar.addTitleBarAndSetButtons(screenParams.rightButtons, screenParams.leftButton,
64
-                titleBarBackButtonListener, screenParams.navigatorEventId);
64
+                leftButtonOnClickListener, screenParams.navigatorEventId);
65 65
     }
66 66
 
67 67
     private void createTopBar() {
@@ -138,7 +138,7 @@ public abstract class Screen extends RelativeLayout {
138 138
         topBar.setTitleBarRightButtons(navigatorEventId, titleBarButtons);
139 139
     }
140 140
 
141
-    public void setTitleBarLeftButton(String navigatorEventId, TitleBarBackButtonListener backButtonListener,
141
+    public void setTitleBarLeftButton(String navigatorEventId, LeftButtonOnClickListener backButtonListener,
142 142
                                       TitleBarLeftButtonParams titleBarLeftButtonParams) {
143 143
         topBar.setTitleBarRightButton(navigatorEventId, backButtonListener, titleBarLeftButtonParams);
144 144
     }

+ 5
- 5
android/app/src/main/java/com/reactnativenavigation/screens/ScreenFactory.java 查看文件

@@ -3,18 +3,18 @@ package com.reactnativenavigation.screens;
3 3
 import android.support.v7.app.AppCompatActivity;
4 4
 
5 5
 import com.reactnativenavigation.params.ScreenParams;
6
-import com.reactnativenavigation.views.TitleBarBackButtonListener;
6
+import com.reactnativenavigation.views.LeftButtonOnClickListener;
7 7
 
8 8
 public class ScreenFactory {
9 9
     public static Screen create(AppCompatActivity activity,
10 10
                                 ScreenParams screenParams,
11
-                                TitleBarBackButtonListener titleBarBackButtonListener) {
11
+                                LeftButtonOnClickListener leftButtonOnClickListener) {
12 12
         if (screenParams.isFragmentScreen()) {
13
-            return new FragmentScreen(activity, screenParams, titleBarBackButtonListener);
13
+            return new FragmentScreen(activity, screenParams, leftButtonOnClickListener);
14 14
         } else if (screenParams.hasTopTabs()) {
15
-            return new ViewPagerScreen(activity, screenParams, titleBarBackButtonListener);
15
+            return new ViewPagerScreen(activity, screenParams, leftButtonOnClickListener);
16 16
         } else {
17
-            return new SingleScreen(activity, screenParams, titleBarBackButtonListener);
17
+            return new SingleScreen(activity, screenParams, leftButtonOnClickListener);
18 18
         }
19 19
     }
20 20
 }

+ 7
- 7
android/app/src/main/java/com/reactnativenavigation/screens/ScreenStack.java 查看文件

@@ -11,7 +11,7 @@ import com.reactnativenavigation.params.TitleBarButtonParams;
11 11
 import com.reactnativenavigation.params.TitleBarLeftButtonParams;
12 12
 import com.reactnativenavigation.utils.KeyboardVisibilityDetector;
13 13
 import com.reactnativenavigation.utils.Task;
14
-import com.reactnativenavigation.views.TitleBarBackButtonListener;
14
+import com.reactnativenavigation.views.LeftButtonOnClickListener;
15 15
 
16 16
 import java.util.List;
17 17
 import java.util.Stack;
@@ -24,27 +24,27 @@ public class ScreenStack {
24 24
 
25 25
     private final AppCompatActivity activity;
26 26
     private RelativeLayout parent;
27
-    private TitleBarBackButtonListener titleBarBackButtonListener;
27
+    private LeftButtonOnClickListener leftButtonOnClickListener;
28 28
     private Stack<Screen> stack = new Stack<>();
29 29
     private final KeyboardVisibilityDetector keyboardVisibilityDetector;
30 30
 
31 31
     public ScreenStack(AppCompatActivity activity,
32 32
                        RelativeLayout parent,
33
-                       TitleBarBackButtonListener titleBarBackButtonListener) {
33
+                       LeftButtonOnClickListener leftButtonOnClickListener) {
34 34
         this.activity = activity;
35 35
         this.parent = parent;
36
-        this.titleBarBackButtonListener = titleBarBackButtonListener;
36
+        this.leftButtonOnClickListener = leftButtonOnClickListener;
37 37
         keyboardVisibilityDetector = new KeyboardVisibilityDetector(parent);
38 38
     }
39 39
 
40 40
     public void pushInitialScreen(ScreenParams initialScreenParams, RelativeLayout.LayoutParams params) {
41
-        Screen initialScreen = ScreenFactory.create(activity, initialScreenParams, titleBarBackButtonListener);
41
+        Screen initialScreen = ScreenFactory.create(activity, initialScreenParams, leftButtonOnClickListener);
42 42
         initialScreen.setVisibility(View.INVISIBLE);
43 43
         addScreen(initialScreen, params);
44 44
     }
45 45
 
46 46
     public void push(final ScreenParams params, RelativeLayout.LayoutParams layoutParams) {
47
-        Screen nextScreen = ScreenFactory.create(activity, params, titleBarBackButtonListener);
47
+        Screen nextScreen = ScreenFactory.create(activity, params, leftButtonOnClickListener);
48 48
         final Screen previousScreen = stack.peek();
49 49
         addScreen(nextScreen, layoutParams);
50 50
         nextScreen.show(params.animateScreenTransitions, new Runnable() {
@@ -166,7 +166,7 @@ public class ScreenStack {
166 166
         performOnScreen(screenInstanceId, new Task<Screen>() {
167 167
             @Override
168 168
             public void run(Screen param) {
169
-                param.setTitleBarLeftButton(navigatorEventId, titleBarBackButtonListener, titleBarLeftButtonParams);
169
+                param.setTitleBarLeftButton(navigatorEventId, leftButtonOnClickListener, titleBarLeftButtonParams);
170 170
             }
171 171
         });
172 172
     }

+ 2
- 2
android/app/src/main/java/com/reactnativenavigation/screens/SingleScreen.java 查看文件

@@ -4,7 +4,7 @@ import android.support.v7.app.AppCompatActivity;
4 4
 
5 5
 import com.reactnativenavigation.params.ScreenParams;
6 6
 import com.reactnativenavigation.views.ContentView;
7
-import com.reactnativenavigation.views.TitleBarBackButtonListener;
7
+import com.reactnativenavigation.views.LeftButtonOnClickListener;
8 8
 
9 9
 import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
10 10
 
@@ -13,7 +13,7 @@ public class SingleScreen extends Screen {
13 13
     private ContentView contentView;
14 14
 
15 15
     public SingleScreen(AppCompatActivity activity, ScreenParams screenParams,
16
-                        TitleBarBackButtonListener titleBarBarBackButtonListener) {
16
+                        LeftButtonOnClickListener titleBarBarBackButtonListener) {
17 17
         super(activity, screenParams, titleBarBarBackButtonListener);
18 18
     }
19 19
 

+ 2
- 2
android/app/src/main/java/com/reactnativenavigation/screens/ViewPagerScreen.java 查看文件

@@ -7,7 +7,7 @@ import android.support.v7.app.AppCompatActivity;
7 7
 import com.reactnativenavigation.params.ScreenParams;
8 8
 import com.reactnativenavigation.params.TopTabParams;
9 9
 import com.reactnativenavigation.views.ContentView;
10
-import com.reactnativenavigation.views.TitleBarBackButtonListener;
10
+import com.reactnativenavigation.views.LeftButtonOnClickListener;
11 11
 
12 12
 import java.util.ArrayList;
13 13
 import java.util.List;
@@ -20,7 +20,7 @@ public class ViewPagerScreen extends Screen {
20 20
     private List<ContentView> contentViews;
21 21
     private ViewPager viewPager;
22 22
 
23
-    public ViewPagerScreen(AppCompatActivity activity, ScreenParams screenParams, TitleBarBackButtonListener backButtonListener) {
23
+    public ViewPagerScreen(AppCompatActivity activity, ScreenParams screenParams, LeftButtonOnClickListener backButtonListener) {
24 24
         super(activity, screenParams, backButtonListener);
25 25
     }
26 26
 

+ 10
- 4
android/app/src/main/java/com/reactnativenavigation/views/LeftButton.java 查看文件

@@ -19,16 +19,16 @@ public class LeftButton extends MaterialMenuDrawable implements View.OnClickList
19 19
     }
20 20
 
21 21
     private TitleBarLeftButtonParams params;
22
-    private final TitleBarBackButtonListener titleBarBackButtonListener;
22
+    private final LeftButtonOnClickListener onClickListener;
23 23
     private final String navigatorEventId;
24 24
 
25 25
     public LeftButton(Context context,
26 26
                       TitleBarLeftButtonParams params,
27
-                      TitleBarBackButtonListener titleBarBackButtonListener,
27
+                      LeftButtonOnClickListener onClickListener,
28 28
                       String navigatorEventId) {
29 29
         super(context, getColor(params), Stroke.THIN);
30 30
         this.params = params;
31
-        this.titleBarBackButtonListener = titleBarBackButtonListener;
31
+        this.onClickListener = onClickListener;
32 32
         this.navigatorEventId = navigatorEventId;
33 33
         setInitialState();
34 34
     }
@@ -44,7 +44,9 @@ public class LeftButton extends MaterialMenuDrawable implements View.OnClickList
44 44
     @Override
45 45
     public void onClick(View v) {
46 46
         if (isBackButton()) {
47
-            titleBarBackButtonListener.onTitleBarBackPress();
47
+            onClickListener.onTitleBarBackButtonClick();
48
+        } else if (isSideMenuButton()) {
49
+            onClickListener.onSideMenuButtonClick();
48 50
         } else {
49 51
             sendClickEvent();
50 52
         }
@@ -62,6 +64,10 @@ public class LeftButton extends MaterialMenuDrawable implements View.OnClickList
62 64
         return getIconState() == IconState.ARROW;
63 65
     }
64 66
 
67
+    private boolean isSideMenuButton() {
68
+        return getIconState() == IconState.BURGER;
69
+    }
70
+
65 71
     private void sendClickEvent() {
66 72
         NavigationApplication.instance.sendNavigatorEvent(params.eventId, navigatorEventId);
67 73
     }

+ 7
- 0
android/app/src/main/java/com/reactnativenavigation/views/LeftButtonOnClickListener.java 查看文件

@@ -0,0 +1,7 @@
1
+package com.reactnativenavigation.views;
2
+
3
+public interface LeftButtonOnClickListener {
4
+    boolean onTitleBarBackButtonClick();
5
+
6
+    void onSideMenuButtonClick();
7
+}

+ 4
- 0
android/app/src/main/java/com/reactnativenavigation/views/SideMenu.java 查看文件

@@ -23,6 +23,10 @@ public class SideMenu extends DrawerLayout {
23 23
         removeView(sideMenuView);
24 24
     }
25 25
 
26
+    public void openDrawer() {
27
+        openDrawer(Gravity.LEFT);
28
+    }
29
+
26 30
     public SideMenu(Context context, SideMenuParams sideMenuParams) {
27 31
         super(context);
28 32
         createContentContainer();

+ 4
- 4
android/app/src/main/java/com/reactnativenavigation/views/TitleBar.java 查看文件

@@ -46,9 +46,9 @@ public class TitleBar extends Toolbar {
46 46
     }
47 47
 
48 48
     public void setLeftButton(TitleBarLeftButtonParams leftButtonParams,
49
-                               TitleBarBackButtonListener titleBarBackButtonListener, String navigatorEventId) {
49
+                              LeftButtonOnClickListener leftButtonOnClickListener, String navigatorEventId) {
50 50
         if (shouldSetLeftButton(leftButtonParams)) {
51
-            createAndSetLeftButton(leftButtonParams, titleBarBackButtonListener, navigatorEventId);
51
+            createAndSetLeftButton(leftButtonParams, leftButtonOnClickListener, navigatorEventId);
52 52
         } else if (hasLeftButton()) {
53 53
             updateLeftButton(leftButtonParams);
54 54
         }
@@ -101,8 +101,8 @@ public class TitleBar extends Toolbar {
101 101
         return leftButton == null && leftButtonParams != null;
102 102
     }
103 103
 
104
-    private void createAndSetLeftButton(TitleBarLeftButtonParams leftButtonParams, TitleBarBackButtonListener titleBarBackButtonListener, String navigatorEventId) {
105
-        leftButton = new LeftButton(getContext(), leftButtonParams, titleBarBackButtonListener, navigatorEventId);
104
+    private void createAndSetLeftButton(TitleBarLeftButtonParams leftButtonParams, LeftButtonOnClickListener leftButtonOnClickListener, String navigatorEventId) {
105
+        leftButton = new LeftButton(getContext(), leftButtonParams, leftButtonOnClickListener, navigatorEventId);
106 106
         setNavigationOnClickListener(leftButton);
107 107
         setNavigationIcon(leftButton);
108 108
     }

+ 0
- 5
android/app/src/main/java/com/reactnativenavigation/views/TitleBarBackButtonListener.java 查看文件

@@ -1,5 +0,0 @@
1
-package com.reactnativenavigation.views;
2
-
3
-public interface TitleBarBackButtonListener {
4
-    boolean onTitleBarBackPress();
5
-}

+ 4
- 4
android/app/src/main/java/com/reactnativenavigation/views/TopBar.java 查看文件

@@ -24,12 +24,12 @@ public class TopBar extends AppBarLayout {
24 24
 
25 25
     public void addTitleBarAndSetButtons(List<TitleBarButtonParams> rightButtons,
26 26
                                          TitleBarLeftButtonParams leftButton,
27
-                                         TitleBarBackButtonListener titleBarBackButtonListener,
27
+                                         LeftButtonOnClickListener leftButtonOnClickListener,
28 28
                                          String navigatorEventId) {
29 29
         titleBar = new TitleBar(getContext());
30 30
         addView(titleBar);
31 31
         titleBar.setRightButtons(rightButtons, navigatorEventId);
32
-        titleBar.setLeftButton(leftButton, titleBarBackButtonListener, navigatorEventId);
32
+        titleBar.setLeftButton(leftButton, leftButtonOnClickListener, navigatorEventId);
33 33
     }
34 34
 
35 35
     public void setTitle(String title) {
@@ -56,9 +56,9 @@ public class TopBar extends AppBarLayout {
56 56
     }
57 57
 
58 58
     public void setTitleBarRightButton(String navigatorEventId,
59
-                                       TitleBarBackButtonListener titleBarBackButtonListener,
59
+                                       LeftButtonOnClickListener leftButtonOnClickListener,
60 60
                                        TitleBarLeftButtonParams titleBarLeftButtonParams) {
61
-        titleBar.setLeftButton(titleBarLeftButtonParams, titleBarBackButtonListener, navigatorEventId);
61
+        titleBar.setLeftButton(titleBarLeftButtonParams, leftButtonOnClickListener, navigatorEventId);
62 62
     }
63 63
 
64 64
     private void setTopTabsStyle(StyleParams style) {