Repository: spyder-ide/spyder

Issue:
Profiler pane issues and details
## Problem Description

1. In the toolbar menu there’s a lot of changes: 

- [ ] The icons no longer have text next to them 
- [ ] In macOS icons don’t have tooltips. 
- [ ] The combobox in master is really small and it truncates the whole path of the file.

<Details>

Master MacOS:

![pasted image 0](https://user-images.githubusercontent.com/18587879/92073474-57516800-ed79-11ea-9c81-704374a3d31f.png)

Master Windows

![unnamed](https://user-images.githubusercontent.com/18587879/92073499-6e905580-ed79-11ea-9cd0-e967ec40cec1.png)

Master 4.x

![pasted image 0-2](https://user-images.githubusercontent.com/18587879/92073533-81a32580-ed79-11ea-9dda-1365795af7e6.png)

</Details>

2.  In macOS when I hit the option to expand all, the last entry is not visible even in the bottom of the scrollbar

![pasted image 0-3](https://user-images.githubusercontent.com/18587879/92073586-a8f9f280-ed79-11ea-8235-79858f7e6082.png)





Discussion:
@goanpeca can you take care of this one please?

Resolving patch:
diff --git a/spyder/api/widgets/mixins.py b/spyder/api/widgets/mixins.py
--- a/spyder/api/widgets/mixins.py
+++ b/spyder/api/widgets/mixins.py
@@ -516,6 +516,7 @@ def create_action(self, name, text, icon=None, icon_text='', tip=None,
         action.text_beside_icon = bool(icon_text)
         action.shortcut_context = shortcut_context
         action.register_shortcut = register_shortcut
+        action.tip = tip
 
         if initial is not None:
             if toggled:
diff --git a/spyder/api/widgets/toolbars.py b/spyder/api/widgets/toolbars.py
--- a/spyder/api/widgets/toolbars.py
+++ b/spyder/api/widgets/toolbars.py
@@ -51,7 +51,8 @@ def eventFilter(self, obj, event):
         event_type = event.type()
         action = obj.defaultAction() if isinstance(obj, QToolButton) else None
         if event_type == QEvent.ToolTip and action is not None:
-            return action.text_beside_icon
+            if action.tip is None:
+                return action.text_beside_icon
 
         return QObject.eventFilter(self, obj, event)
 
diff --git a/spyder/plugins/profiler/widgets/main_widget.py b/spyder/plugins/profiler/widgets/main_widget.py
--- a/spyder/plugins/profiler/widgets/main_widget.py
+++ b/spyder/plugins/profiler/widgets/main_widget.py
@@ -208,7 +208,7 @@ def setup(self, options):
         )
         browse_action = self.create_action(
             ProfilerWidgetActions.Browse,
-            text=_('Browse'),
+            text='',
             tip=_('Select Python script'),
             icon=self.create_icon('fileopen'),
             triggered=lambda x: self.select_file(),
@@ -216,6 +216,7 @@ def setup(self, options):
         self.log_action = self.create_action(
             ProfilerWidgetActions.ShowOutput,
             text=_("Output"),
+            icon_text=_("Output"),
             tip=_("Show program's output"),
             icon=self.create_icon('log'),
             triggered=self.show_log,
@@ -237,6 +238,7 @@ def setup(self, options):
         self.save_action = self.create_action(
             ProfilerWidgetActions.SaveData,
             text=_("Save data"),
+            icon_text=_("Save data"),
             tip=_('Save profiling data'),
             icon=self.create_icon('filesave'),
             triggered=self.save_data,
@@ -244,6 +246,7 @@ def setup(self, options):
         self.load_action = self.create_action(
             ProfilerWidgetActions.LoadData,
             text=_("Load data"),
+            icon_text=_("Load data"),
             tip=_('Load profiling data for comparison'),
             icon=self.create_icon('fileimport'),
             triggered=self.compare,
@@ -251,9 +254,12 @@ def setup(self, options):
         self.clear_action = self.create_action(
             ProfilerWidgetActions.Clear,
             text=_("Clear comparison"),
+            icon_text=_("Clear comparison"),
+            tip=_("Clear comparison"),
             icon=self.create_icon('editdelete'),
             triggered=self.clear,
         )
+        self.clear_action.setEnabled(False)
 
         # Main Toolbar
         toolbar = self.get_main_toolbar()


Test patch: