~macslow/unity/unity.fix-929425

« back to all changes in this revision

Viewing changes to plugins/unityshell/src/DashController.cpp

  • Committer: Tarmac
  • Author(s): Gord Allott
  • Date: 2012-02-15 12:13:45 UTC
  • mfrom: (1972.2.2 trunk)
  • Revision ID: tarmac-20120215121345-c22d8go277oxdxt0
UNBLOCK 

does everything i can think of to ensure the hud is forced, something else is stealing focus 
or at the very least removing focus from the hud input window on alt press, needs further investigation. Fixes: https://bugs.launchpad.net/bugs/932072. Approved by Michal Hruby.

Show diffs side-by-side

added added

removed removed

Lines of Context:
49
49
  SetupRelayoutCallbacks();
50
50
  RegisterUBusInterests();
51
51
 
52
 
  PluginAdapter::Default()->compiz_screen_ungrabbed.connect(sigc::mem_fun(this, &Controller::OnScreenUngrabbed));
53
52
 
54
53
  ensure_id_ = g_timeout_add_seconds(60, [] (gpointer data) -> gboolean { static_cast<Controller*>(data)->EnsureDash(); return FALSE; }, this);
55
54
 
194
193
 
195
194
void Controller::OnScreenUngrabbed()
196
195
{
 
196
  LOG_DEBUG(logger) << "On Screen Ungrabbed called";
197
197
  if (need_show_)
198
198
  {
199
199
    EnsureDash();
235
235
  // for the screen to be available again before honouring the request.
236
236
  if (adaptor->IsScreenGrabbed())
237
237
  {
 
238
    screen_ungrabbed_slot_.disconnect();
 
239
    screen_ungrabbed_slot_ = PluginAdapter::Default()->compiz_screen_ungrabbed.connect(sigc::mem_fun(this, &Controller::OnScreenUngrabbed));
238
240
    need_show_ = true;
239
241
    return;
240
242
  }
266
268
  if (!visible_)
267
269
   return;
268
270
 
 
271
  screen_ungrabbed_slot_.disconnect();
 
272
 
269
273
  EnsureDash();
270
274
 
271
275
  view_->AboutToHide();