~fginther/unity/precise-libgeis-rename-patch

« back to all changes in this revision

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

  • Committer: Sebastien Bacher
  • Date: 2012-07-20 17:36:06 UTC
  • mfrom: (702.1.1 precise)
  • Revision ID: seb128@ubuntu.com-20120720173606-e0oidd8chhfm427s
* New upstream release.
  - Unity launcher shows internal partitions after they have been unmounted 
    (LP: #994163)
  - can't click to dismiss hud in the area where dynamic hud results are 
    meant to appear (LP: #962651)
  - Spread/Scale should exit if Dash is invoked (LP: #944033)
  - Searching in the HUD freezes unity (LP: #1016239)
  - Dash - The search bar gets the focus when pressing invalid keys 
    (LP: #931393)
  - unity crashed with NameError in reset_unity_compiz_profile(): global name 
    'GError' is not defined (LP: #778470)
  - When number of workspaces is set to 1, the Spread no longer works 
    (LP: #996604)
  - compiz crashed with SIGSEGV in CompWindow::id() from getPaintMask() 
    from unity::UnityWindow::glPaint() (LP: #851982)
  - "Keyboard Shortcuts" overlay can cause annoyance (LP: #934062)
  - padding between last quicklist item and bottom edge is non-deterministic 
    (changes randomly) (LP: #955158)
  - HUD Draws improperly while searching for results (LP: #932531)
  - compiz crashed with SIGSEGV in 
    unity::ui::KeyboardUtil::GetKeycodeAboveKeySymbol() (LP: #920258)
  - Launcher - when a user starts dragging a item, any folded launcher icons 
    that are valid drop receptacles should unfold (LP: #839717)
  - Dragging image from firefox/chrome to dock causes lagg/freeze 
    (LP: #772445)
  - dash should open when pressing "super" in scale mode (LP: #1023811)
  - Multimonitor, Launcher - When the Launcher is set to autohide and 
    'Sticky edges' are turned off, 'Launcher Edge Stop Overcome Pressure' 
    seems to be broken when revealing the Launcher (LP: #987955)
  - Software Center add to launcher icon animation is delayed when the 
    launcher is in auto-hide mode (LP: #1012896)
  - Purchased items are not being added to the Unity launcher (LP: #925014)
  - Unity Launcher Fails To Auto-Hide When Enabled & Installing Commercial 
    Software (LP: #1002440)
  - Regression: shift+click on a launcher icon to open a new application 
    instance gone (LP: #754565)
  - Regression: Installing apps causes a terrible visual glitch-- have to 
    restart X.org. (LP: #981168)
  - Duplicated applications icons on quick application restart (LP: #1003574)
  - HUD - Formatting of text in the auto-complete is wrong (LP: #939436)
  - alt-backtick flickers between windows (LP: #987156)
  - [Hud] The result grid is not drawn in proximity of the search entry 
    (LP: #1008603)
  - Dash and Launcher - As soon as a user starts dragging a file from the 
    Dash, there is a 'flicker' before the Launcher icons that are valid drop 
    receptacles re-saturate (LP: #863230)
  - [hud] The last button is not rounded (LP: #1008656)
  - Hud flickers when show up (LP: #1011507)
  - Dash maximise button changed location (LP: #987674)
  - launcher reordering "line" doesn't go to the bottom slot (LP: #971421)
  - Dash/HUD should close on "Spread" (LP: #870284)
  - Nothing should be written into the dash/hud searchbar when holding super,
    ctrl or Alt (LP: #1013751)
  - Dash - when a file is dragged from the Dash (Dash home, file lens, or 
    music lens) and dropped on a Launcher icon, the Dash should automatically
    close (LP: #865168)
  - Wrong keyboard focus after opening workspace switcher via keyboard 
    navigation (LP: #962408)

Show diffs side-by-side

added added

removed removed

Lines of Context:
32
32
#include "DashStyle.h"
33
33
#include "DashSettings.h"
34
34
#include "UBusMessages.h"
 
35
#include "KeyboardUtil.h"
35
36
 
36
37
namespace unity
37
38
{
804
805
}
805
806
 
806
807
Area* DashView::FindKeyFocusArea(unsigned int key_symbol,
807
 
      unsigned long x11_key_code,
808
 
      unsigned long special_keys_state)
 
808
                                 unsigned long x11_key_code,
 
809
                                 unsigned long special_keys_state)
809
810
{
810
811
  // Do what nux::View does, but if the event isn't a key navigation,
811
812
  // designate the text entry to process it.
812
813
 
 
814
  nux::KeyNavDirection direction = KEY_NAV_NONE;
813
815
  bool ctrl = (special_keys_state & NUX_STATE_CTRL);
814
816
 
815
 
  nux::KeyNavDirection direction = KEY_NAV_NONE;
816
817
  switch (x11_key_code)
817
818
  {
818
819
  case NUX_VK_UP:
850
851
    break;
851
852
  default:
852
853
    direction = KEY_NAV_NONE;
853
 
    break;
854
854
  }
855
855
 
856
856
  // We should not do it here, but I really don't want to make DashView
858
858
  // DashView::KeyNavIteration.
859
859
   nux::InputArea* focus_area = nux::GetWindowCompositor().GetKeyFocusArea();
860
860
 
861
 
  if (key_symbol == nux::NUX_KEYDOWN && !search_bar_->im_preedit)
 
861
  if (direction != KEY_NAV_NONE && key_symbol == nux::NUX_KEYDOWN && !search_bar_->im_preedit)
862
862
  {
863
863
    std::list<nux::Area*> tabs;
864
864
    for (auto category : active_lens_view_->categories())
933
933
    }
934
934
  }
935
935
 
936
 
  if (direction == KEY_NAV_NONE || search_bar_->im_preedit)
 
936
  bool search_key = false;
 
937
 
 
938
  if (direction == KEY_NAV_NONE)
 
939
  {
 
940
    if (ui::KeyboardUtil::IsPrintableKeySymbol(x11_key_code) ||
 
941
        ui::KeyboardUtil::IsMoveKeySymbol(x11_key_code))
 
942
    {
 
943
      search_key = true;
 
944
    }
 
945
  }
 
946
 
 
947
  if (search_key || search_bar_->im_preedit)
937
948
  {
938
949
    // then send the event to the search entry
939
950
    return search_bar_->text_entry();
942
953
  {
943
954
    return next_object_to_key_focus_area_->FindKeyFocusArea(key_symbol, x11_key_code, special_keys_state);
944
955
  }
945
 
  return NULL;
 
956
 
 
957
  return nullptr;
946
958
}
947
959
 
948
960
}