List of usage examples for android.accessibilityservice AccessibilityService GLOBAL_ACTION_RECENTS
int GLOBAL_ACTION_RECENTS
To view the source code for android.accessibilityservice AccessibilityService GLOBAL_ACTION_RECENTS.
Click Source Link
From source file:Main.java
public static void doLeftOrRight(AccessibilityService service) { service.performGlobalAction(AccessibilityService.GLOBAL_ACTION_RECENTS); }
From source file:Main.java
@SuppressLint("NewApi") public static void doLeftOrRight(AccessibilityService service) { service.performGlobalAction(AccessibilityService.GLOBAL_ACTION_RECENTS); }
From source file:Main.java
@TargetApi(Build.VERSION_CODES.JELLY_BEAN) public static void performRecentApp(AccessibilityService service) { if (service == null) { return;/*from www. ja v a2s .co m*/ } service.performGlobalAction(AccessibilityService.GLOBAL_ACTION_RECENTS); }
From source file:com.android.talkback.controller.GestureControllerApp.java
@Override public void performAction(String action) { if (action.equals(mService.getString(R.string.shortcut_value_unassigned))) { // Do Nothing } else if (action.equals(mService.getString(R.string.shortcut_value_previous))) { boolean result = mCursorController.previous(true /* shouldWrap */, true /* shouldScroll */, true /*useInputFocusAsPivotIfEmpty*/, InputModeManager.INPUT_MODE_TOUCH); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_next))) { boolean result = mCursorController.next(true /* shouldWrap */, true /* shouldScroll */, true /*useInputFocusAsPivotIfEmpty*/, InputModeManager.INPUT_MODE_TOUCH); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_scroll_back))) { boolean result = mCursorController.less(); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_scroll_forward))) { boolean result = mCursorController.more(); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_first_in_screen))) { boolean result = mCursorController.jumpToTop(InputModeManager.INPUT_MODE_TOUCH); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_last_in_screen))) { boolean result = mCursorController.jumpToBottom(InputModeManager.INPUT_MODE_TOUCH); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_back))) { mService.performGlobalAction(AccessibilityService.GLOBAL_ACTION_BACK); } else if (action.equals(mService.getString(R.string.shortcut_value_home))) { mService.performGlobalAction(AccessibilityService.GLOBAL_ACTION_HOME); } else if (action.equals(mService.getString(R.string.shortcut_value_overview))) { mService.performGlobalAction(AccessibilityService.GLOBAL_ACTION_RECENTS); } else if (action.equals(mService.getString(R.string.shortcut_value_notifications))) { mService.performGlobalAction(AccessibilityService.GLOBAL_ACTION_NOTIFICATIONS); } else if (action.equals(mService.getString(R.string.shortcut_value_talkback_breakout))) { mMenuManager.showMenu(R.menu.global_context_menu); } else if (action.equals(mService.getString(R.string.shortcut_value_local_breakout))) { mMenuManager.showMenu(R.menu.local_context_menu); } else if (action.equals(mService.getString(R.string.shortcut_value_show_custom_actions))) { mMenuManager.showMenu(R.id.custom_action_menu); } else if (action.equals(mService.getString(R.string.shortcut_value_previous_granularity))) { boolean result = mCursorController.previousGranularity(); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_next_granularity))) { boolean result = mCursorController.nextGranularity(); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_read_from_top))) { mFullScreenReadController.startReadingFromBeginning(); } else if (action.equals(mService.getString(R.string.shortcut_value_read_from_current))) { mFullScreenReadController.startReadingFromNextNode(); } else if (action.equals(mService.getString(R.string.shortcut_value_print_node_tree))) { TreeDebug.logNodeTree(AccessibilityServiceCompatUtils.getRootInActiveWindow(mService)); }/*from w w w . j ava 2s. co m*/ Intent intent = new Intent(GestureActionMonitor.ACTION_GESTURE_ACTION_PERFORMED); intent.putExtra(GestureActionMonitor.EXTRA_SHORTCUT_GESTURE_ACTION, action); LocalBroadcastManager.getInstance(mService).sendBroadcast(intent); }
From source file:com.android.screenspeak.controller.GestureControllerApp.java
@Override public void performAction(String action) { if (action.equals(mService.getString(R.string.shortcut_value_unassigned))) { // Do Nothing } else if (action.equals(mService.getString(R.string.shortcut_value_previous))) { boolean result = mCursorController.previous(true /* shouldWrap */, true /* shouldScroll */, true /*useInputFocusAsPivotIfEmpty*/); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_next))) { boolean result = mCursorController.next(true /* shouldWrap */, true /* shouldScroll */, true /*useInputFocusAsPivotIfEmpty*/); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_scroll_back))) { boolean result = mCursorController.less(); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_scroll_forward))) { boolean result = mCursorController.more(); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_first_in_screen))) { boolean result = mCursorController.jumpToTop(); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_last_in_screen))) { boolean result = mCursorController.jumpToBottom(); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_back))) { mService.performGlobalAction(AccessibilityService.GLOBAL_ACTION_BACK); } else if (action.equals(mService.getString(R.string.shortcut_value_home))) { mService.performGlobalAction(AccessibilityService.GLOBAL_ACTION_HOME); } else if (action.equals(mService.getString(R.string.shortcut_value_overview))) { mService.performGlobalAction(AccessibilityService.GLOBAL_ACTION_RECENTS); } else if (action.equals(mService.getString(R.string.shortcut_value_notifications))) { mService.performGlobalAction(AccessibilityService.GLOBAL_ACTION_NOTIFICATIONS); } else if (action.equals(mService.getString(R.string.shortcut_value_screenspeak_breakout))) { mMenuManager.showMenu(R.menu.global_context_menu); } else if (action.equals(mService.getString(R.string.shortcut_value_local_breakout))) { mMenuManager.showMenu(R.menu.local_context_menu); } else if (action.equals(mService.getString(R.string.shortcut_value_previous_granularity))) { boolean result = mCursorController.previousGranularity(); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_next_granularity))) { boolean result = mCursorController.nextGranularity(); if (!result) mFeedbackController.playAuditory(R.raw.complete); } else if (action.equals(mService.getString(R.string.shortcut_value_read_from_top))) { mFullScreenReadController.startReadingFromBeginning(); } else if (action.equals(mService.getString(R.string.shortcut_value_read_from_current))) { mFullScreenReadController.startReadingFromNextNode(); } else if (action.equals(mService.getString(R.string.shortcut_value_print_node_tree))) { TreeDebug.logNodeTree(AccessibilityServiceCompatUtils.getRootInActiveWindow(mService)); }/*from ww w. j av a 2 s . c o m*/ Intent intent = new Intent(GestureActionMonitor.ACTION_GESTURE_ACTION_PERFORMED); intent.putExtra(GestureActionMonitor.EXTRA_SHORTCUT_GESTURE_ACTION, action); LocalBroadcastManager.getInstance(mService).sendBroadcast(intent); }
From source file:com.farmerbb.taskbar.service.TaskbarService.java
@SuppressLint("RtlHardcoded") private void drawTaskbar() { IconCache.getInstance(this).clearCache(); // Initialize layout params windowManager = (WindowManager) getSystemService(WINDOW_SERVICE); U.setCachedRotation(windowManager.getDefaultDisplay().getRotation()); final WindowManager.LayoutParams params = new WindowManager.LayoutParams( WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.TYPE_PHONE, WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM, PixelFormat.TRANSLUCENT);/* w w w . ja v a 2s .c o m*/ // Determine where to show the taskbar on screen switch (U.getTaskbarPosition(this)) { case "bottom_left": layoutId = R.layout.taskbar_left; params.gravity = Gravity.BOTTOM | Gravity.LEFT; positionIsVertical = false; break; case "bottom_vertical_left": layoutId = R.layout.taskbar_vertical; params.gravity = Gravity.BOTTOM | Gravity.LEFT; positionIsVertical = true; break; case "bottom_right": layoutId = R.layout.taskbar_right; params.gravity = Gravity.BOTTOM | Gravity.RIGHT; positionIsVertical = false; break; case "bottom_vertical_right": layoutId = R.layout.taskbar_vertical; params.gravity = Gravity.BOTTOM | Gravity.RIGHT; positionIsVertical = true; break; case "top_left": layoutId = R.layout.taskbar_left; params.gravity = Gravity.TOP | Gravity.LEFT; positionIsVertical = false; break; case "top_vertical_left": layoutId = R.layout.taskbar_top_vertical; params.gravity = Gravity.TOP | Gravity.LEFT; positionIsVertical = true; break; case "top_right": layoutId = R.layout.taskbar_right; params.gravity = Gravity.TOP | Gravity.RIGHT; positionIsVertical = false; break; case "top_vertical_right": layoutId = R.layout.taskbar_top_vertical; params.gravity = Gravity.TOP | Gravity.RIGHT; positionIsVertical = true; break; } // Initialize views int theme = 0; SharedPreferences pref = U.getSharedPreferences(this); switch (pref.getString("theme", "light")) { case "light": theme = R.style.AppTheme; break; case "dark": theme = R.style.AppTheme_Dark; break; } boolean altButtonConfig = pref.getBoolean("alt_button_config", false); ContextThemeWrapper wrapper = new ContextThemeWrapper(this, theme); layout = (LinearLayout) LayoutInflater.from(wrapper).inflate(layoutId, null); taskbar = (LinearLayout) layout.findViewById(R.id.taskbar); scrollView = (FrameLayout) layout.findViewById(R.id.taskbar_scrollview); if (altButtonConfig) { space = (Space) layout.findViewById(R.id.space_alt); layout.findViewById(R.id.space).setVisibility(View.GONE); } else { space = (Space) layout.findViewById(R.id.space); layout.findViewById(R.id.space_alt).setVisibility(View.GONE); } space.setOnClickListener(v -> toggleTaskbar()); startButton = (ImageView) layout.findViewById(R.id.start_button); int padding; if (pref.getBoolean("app_drawer_icon", false)) { startButton.setImageDrawable(ContextCompat.getDrawable(this, R.mipmap.ic_launcher)); padding = getResources().getDimensionPixelSize(R.dimen.app_drawer_icon_padding_alt); } else { startButton.setImageDrawable(ContextCompat.getDrawable(this, R.drawable.all_apps_button_icon)); padding = getResources().getDimensionPixelSize(R.dimen.app_drawer_icon_padding); } startButton.setPadding(padding, padding, padding, padding); startButton.setOnClickListener(ocl); startButton.setOnLongClickListener(view -> { openContextMenu(); return true; }); startButton.setOnGenericMotionListener((view, motionEvent) -> { if (motionEvent.getAction() == MotionEvent.ACTION_BUTTON_PRESS && motionEvent.getButtonState() == MotionEvent.BUTTON_SECONDARY) openContextMenu(); return false; }); refreshInterval = (int) (Float.parseFloat(pref.getString("refresh_frequency", "2")) * 1000); if (refreshInterval == 0) refreshInterval = 100; sortOrder = pref.getString("sort_order", "false"); runningAppsOnly = pref.getString("recents_amount", "past_day").equals("running_apps_only"); switch (pref.getString("recents_amount", "past_day")) { case "past_day": searchInterval = System.currentTimeMillis() - AlarmManager.INTERVAL_DAY; break; case "app_start": long oneDayAgo = System.currentTimeMillis() - AlarmManager.INTERVAL_DAY; long appStartTime = pref.getLong("time_of_service_start", System.currentTimeMillis()); long deviceStartTime = System.currentTimeMillis() - SystemClock.elapsedRealtime(); long startTime = deviceStartTime > appStartTime ? deviceStartTime : appStartTime; searchInterval = startTime > oneDayAgo ? startTime : oneDayAgo; break; } Intent intent = new Intent("com.farmerbb.taskbar.HIDE_START_MENU"); LocalBroadcastManager.getInstance(TaskbarService.this).sendBroadcast(intent); if (altButtonConfig) { button = (Button) layout.findViewById(R.id.hide_taskbar_button_alt); layout.findViewById(R.id.hide_taskbar_button).setVisibility(View.GONE); } else { button = (Button) layout.findViewById(R.id.hide_taskbar_button); layout.findViewById(R.id.hide_taskbar_button_alt).setVisibility(View.GONE); } try { button.setTypeface(Typeface.createFromFile("/system/fonts/Roboto-Regular.ttf")); } catch (RuntimeException e) { /* Gracefully fail */ } updateButton(false); button.setOnClickListener(v -> toggleTaskbar()); LinearLayout buttonLayout = (LinearLayout) layout.findViewById( altButtonConfig ? R.id.hide_taskbar_button_layout_alt : R.id.hide_taskbar_button_layout); if (buttonLayout != null) buttonLayout.setOnClickListener(v -> toggleTaskbar()); LinearLayout buttonLayoutToHide = (LinearLayout) layout.findViewById( altButtonConfig ? R.id.hide_taskbar_button_layout : R.id.hide_taskbar_button_layout_alt); if (buttonLayoutToHide != null) buttonLayoutToHide.setVisibility(View.GONE); int backgroundTint = U.getBackgroundTint(this); int accentColor = U.getAccentColor(this); dashboardButton = (FrameLayout) layout.findViewById(R.id.dashboard_button); navbarButtons = (LinearLayout) layout.findViewById(R.id.navbar_buttons); dashboardEnabled = pref.getBoolean("dashboard", false); if (dashboardEnabled) { layout.findViewById(R.id.square1).setBackgroundColor(accentColor); layout.findViewById(R.id.square2).setBackgroundColor(accentColor); layout.findViewById(R.id.square3).setBackgroundColor(accentColor); layout.findViewById(R.id.square4).setBackgroundColor(accentColor); layout.findViewById(R.id.square5).setBackgroundColor(accentColor); layout.findViewById(R.id.square6).setBackgroundColor(accentColor); dashboardButton.setOnClickListener(v -> LocalBroadcastManager.getInstance(TaskbarService.this) .sendBroadcast(new Intent("com.farmerbb.taskbar.TOGGLE_DASHBOARD"))); } else dashboardButton.setVisibility(View.GONE); if (pref.getBoolean("button_back", false)) { navbarButtonsEnabled = true; ImageView backButton = (ImageView) layout.findViewById(R.id.button_back); backButton.setVisibility(View.VISIBLE); backButton.setOnClickListener(v -> { U.sendAccessibilityAction(this, AccessibilityService.GLOBAL_ACTION_BACK); if (pref.getBoolean("hide_taskbar", true) && !FreeformHackHelper.getInstance().isInFreeformWorkspace()) hideTaskbar(true); }); } if (pref.getBoolean("button_home", false)) { navbarButtonsEnabled = true; ImageView homeButton = (ImageView) layout.findViewById(R.id.button_home); homeButton.setVisibility(View.VISIBLE); homeButton.setOnClickListener(v -> { U.sendAccessibilityAction(this, AccessibilityService.GLOBAL_ACTION_HOME); if (pref.getBoolean("hide_taskbar", true) && !FreeformHackHelper.getInstance().isInFreeformWorkspace()) hideTaskbar(true); }); homeButton.setOnLongClickListener(v -> { Intent voiceSearchIntent = new Intent(RecognizerIntent.ACTION_VOICE_SEARCH_HANDS_FREE); voiceSearchIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); try { startActivity(voiceSearchIntent); } catch (ActivityNotFoundException e) { /* Gracefully fail */ } if (pref.getBoolean("hide_taskbar", true) && !FreeformHackHelper.getInstance().isInFreeformWorkspace()) hideTaskbar(true); return true; }); homeButton.setOnGenericMotionListener((view13, motionEvent) -> { if (motionEvent.getAction() == MotionEvent.ACTION_BUTTON_PRESS && motionEvent.getButtonState() == MotionEvent.BUTTON_SECONDARY) { Intent voiceSearchIntent = new Intent(RecognizerIntent.ACTION_VOICE_SEARCH_HANDS_FREE); voiceSearchIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); try { startActivity(voiceSearchIntent); } catch (ActivityNotFoundException e) { /* Gracefully fail */ } if (pref.getBoolean("hide_taskbar", true) && !FreeformHackHelper.getInstance().isInFreeformWorkspace()) hideTaskbar(true); } return true; }); } if (pref.getBoolean("button_recents", false)) { navbarButtonsEnabled = true; ImageView recentsButton = (ImageView) layout.findViewById(R.id.button_recents); recentsButton.setVisibility(View.VISIBLE); recentsButton.setOnClickListener(v -> { U.sendAccessibilityAction(this, AccessibilityService.GLOBAL_ACTION_RECENTS); if (pref.getBoolean("hide_taskbar", true) && !FreeformHackHelper.getInstance().isInFreeformWorkspace()) hideTaskbar(true); }); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { recentsButton.setOnLongClickListener(v -> { U.sendAccessibilityAction(this, AccessibilityService.GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN); if (pref.getBoolean("hide_taskbar", true) && !FreeformHackHelper.getInstance().isInFreeformWorkspace()) hideTaskbar(true); return true; }); recentsButton.setOnGenericMotionListener((view13, motionEvent) -> { if (motionEvent.getAction() == MotionEvent.ACTION_BUTTON_PRESS && motionEvent.getButtonState() == MotionEvent.BUTTON_SECONDARY) { U.sendAccessibilityAction(this, AccessibilityService.GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN); if (pref.getBoolean("hide_taskbar", true) && !FreeformHackHelper.getInstance().isInFreeformWorkspace()) hideTaskbar(true); } return true; }); } } if (!navbarButtonsEnabled) navbarButtons.setVisibility(View.GONE); layout.setBackgroundColor(backgroundTint); layout.findViewById(R.id.divider).setBackgroundColor(accentColor); button.setTextColor(accentColor); if (isFirstStart && FreeformHackHelper.getInstance().isInFreeformWorkspace()) showTaskbar(false); else if (!pref.getBoolean("collapsed", false) && pref.getBoolean("taskbar_active", false)) toggleTaskbar(); LocalBroadcastManager.getInstance(this).unregisterReceiver(showReceiver); LocalBroadcastManager.getInstance(this).unregisterReceiver(hideReceiver); LocalBroadcastManager.getInstance(this).unregisterReceiver(tempShowReceiver); LocalBroadcastManager.getInstance(this).unregisterReceiver(tempHideReceiver); LocalBroadcastManager.getInstance(this).registerReceiver(showReceiver, new IntentFilter("com.farmerbb.taskbar.SHOW_TASKBAR")); LocalBroadcastManager.getInstance(this).registerReceiver(hideReceiver, new IntentFilter("com.farmerbb.taskbar.HIDE_TASKBAR")); LocalBroadcastManager.getInstance(this).registerReceiver(tempShowReceiver, new IntentFilter("com.farmerbb.taskbar.TEMP_SHOW_TASKBAR")); LocalBroadcastManager.getInstance(this).registerReceiver(tempHideReceiver, new IntentFilter("com.farmerbb.taskbar.TEMP_HIDE_TASKBAR")); startRefreshingRecents(); windowManager.addView(layout, params); isFirstStart = false; }