~tatokis/unity/gcc-72-errors

« back to all changes in this revision

Viewing changes to launcher/Launcher.cpp

  • Committer: Bileto Bot
  • Author(s): Marco Trevisan (Treviño)
  • Date: 2017-07-21 08:52:20 UTC
  • mfrom: (4245.3.2 lower-launcher-effects)
  • Revision ID: ci-train-bot@canonical.com-20170721085220-gmbqg8meacb7f5ud
Launcher: disable or reduce most icon effects on lowgfx (LP: #1700859)

Approved by: Andrea Azzarone

Show diffs side-by-side

added added

removed removed

Lines of Context:
138
138
  , drag_action_(nux::DNDACTION_NONE)
139
139
  , bg_effect_helper_(this)
140
140
  , launcher_position_(unity::Settings::Instance().launcher_position())
141
 
  , auto_hide_animation_(Settings::Instance().low_gfx ? 0 : ANIM_DURATION_SHORT)
142
 
  , hover_animation_(Settings::Instance().low_gfx ? ANIM_DURATION_SHORT_SHORT : ANIM_DURATION)
143
 
  , drag_over_animation_(Settings::Instance().low_gfx ? 0 : ANIM_DURATION_LONG)
144
 
  , drag_out_animation_(Settings::Instance().low_gfx ? 0 : ANIM_DURATION_SHORT)
145
 
  , drag_icon_animation_(Settings::Instance().low_gfx ? 0 : ANIM_DURATION_SHORT)
146
 
  , dnd_hide_animation_(Settings::Instance().low_gfx ? 0 : ANIM_DURATION * 3)
147
 
  , dash_showing_animation_(Settings::Instance().low_gfx ? 0 : ANIM_DURATION_DASH_SHOWING)
148
141
  , cv_(Settings::Instance().em(monitor))
149
142
{
150
143
  icon_renderer_->monitor = monitor();
199
192
  });
200
193
 
201
194
  Settings::Instance().dpi_changed.connect(sigc::mem_fun(this, &Launcher::OnDPIChanged));
202
 
  Settings::Instance().low_gfx.changed.connect(sigc::track_obj([this] (bool low_gfx) {
203
 
    auto_hide_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION_SHORT);
204
 
    hover_animation_.SetDuration(low_gfx ? ANIM_DURATION_SHORT_SHORT : ANIM_DURATION);
205
 
    drag_over_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION_LONG);
206
 
    drag_out_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION_SHORT);
207
 
    drag_icon_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION_SHORT);
208
 
    dnd_hide_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION * 3);
209
 
    dash_showing_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION_DASH_SHOWING);
210
 
    QueueDraw();
211
 
  }, *this));
 
195
  Settings::Instance().low_gfx.changed.connect(sigc::hide(sigc::mem_fun(this, &Launcher::UpdateAnimations)));
212
196
 
 
197
  UpdateAnimations();
213
198
  auto_hide_animation_.updated.connect(redraw_cb);
214
199
  hover_animation_.updated.connect(redraw_cb);
215
200
  drag_over_animation_.updated.connect(redraw_cb);
1356
1341
  SetLauncherMinimizeWindow(options->minimize_window_on_click);
1357
1342
  OnMonitorChanged(monitor);
1358
1343
 
 
1344
  UpdateAnimations();
 
1345
  ConfigureBarrier();
 
1346
  QueueDraw();
 
1347
}
 
1348
 
 
1349
void Launcher::UpdateAnimations()
 
1350
{
 
1351
  bool low_gfx = Settings::Instance().low_gfx();
 
1352
 
 
1353
  auto_hide_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION_SHORT);
 
1354
  hover_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION);
 
1355
  drag_over_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION_LONG);
 
1356
  drag_out_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION_SHORT);
 
1357
  drag_icon_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION_SHORT);
 
1358
  dnd_hide_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION * 3);
 
1359
  dash_showing_animation_.SetDuration(low_gfx ? 0 : ANIM_DURATION_DASH_SHOWING);
 
1360
 
1359
1361
  if (model_)
1360
1362
  {
1361
1363
    for (auto const& icon : *model_)
1362
1364
      SetupIconAnimations(icon);
1363
1365
  }
1364
1366
 
1365
 
  ConfigureBarrier();
1366
1367
  QueueDraw();
1367
1368
}
1368
1369
 
1739
1740
 
1740
1741
void Launcher::SetupIconAnimations(AbstractLauncherIcon::Ptr const& icon)
1741
1742
{
1742
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::VISIBLE, ANIM_DURATION_SHORT, monitor());
1743
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::RUNNING, ANIM_DURATION_SHORT, monitor());
1744
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::ACTIVE, ANIM_DURATION_SHORT, monitor());
1745
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::STARTING, (ANIM_DURATION_LONG * MAX_STARTING_BLINKS * STARTING_BLINK_LAMBDA * 2), monitor());
1746
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::PULSE_ONCE, (ANIM_DURATION_LONG * PULSE_BLINK_LAMBDA * 2), monitor());
1747
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::PRESENTED, ANIM_DURATION, monitor());
1748
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::UNFOLDED, ANIM_DURATION, monitor());
1749
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::SHIMMER, ANIM_DURATION_LONG, monitor());
1750
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::CENTER_SAVED, ANIM_DURATION, monitor());
1751
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::PROGRESS, ANIM_DURATION, monitor());
1752
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::DESAT, ANIM_DURATION_SHORT_SHORT, monitor());
1753
 
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::GLOW, ANIM_DURATION_SHORT, monitor());
 
1743
  bool display = monitor();
 
1744
  bool low_gfx = Settings::Instance().low_gfx();
 
1745
 
 
1746
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::VISIBLE, low_gfx ? 0 : ANIM_DURATION_SHORT, display);
 
1747
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::RUNNING, low_gfx ? 0 : ANIM_DURATION_SHORT, display);
 
1748
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::ACTIVE, low_gfx ? 0 : ANIM_DURATION_SHORT, display);
 
1749
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::STARTING, (ANIM_DURATION_LONG * MAX_STARTING_BLINKS * STARTING_BLINK_LAMBDA * 2), display);
 
1750
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::PULSE_ONCE, (ANIM_DURATION_LONG * PULSE_BLINK_LAMBDA * 2), display);
 
1751
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::PRESENTED, low_gfx ? 0 : ANIM_DURATION, display);
 
1752
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::UNFOLDED, low_gfx ? 0 : ANIM_DURATION, display);
 
1753
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::SHIMMER, low_gfx ? ANIM_DURATION_SHORT_SHORT : ANIM_DURATION_LONG, display);
 
1754
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::CENTER_SAVED, low_gfx ? ANIM_DURATION_SHORT_SHORT : ANIM_DURATION, display);
 
1755
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::PROGRESS, low_gfx ? ANIM_DURATION_SHORT_SHORT : ANIM_DURATION, display);
 
1756
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::DESAT, low_gfx ? 0 : ANIM_DURATION_SHORT_SHORT, display);
 
1757
  icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::GLOW, low_gfx ? 0 : ANIM_DURATION_SHORT, display);
1754
1758
 
1755
1759
  if (options()->urgent_animation() == URGENT_ANIMATION_WIGGLE)
1756
 
    icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::URGENT, (ANIM_DURATION_SHORT * WIGGLE_CYCLES), monitor());
 
1760
    icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::URGENT, (ANIM_DURATION_SHORT * WIGGLE_CYCLES), display);
1757
1761
  else
1758
 
    icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::URGENT, (ANIM_DURATION_LONG * URGENT_BLINKS * 2), monitor());
 
1762
    icon->SetQuirkDuration(AbstractLauncherIcon::Quirk::URGENT, (ANIM_DURATION_LONG * URGENT_BLINKS * 2), display);
1759
1763
}
1760
1764
 
1761
1765
void Launcher::SetModel(LauncherModel::Ptr model)