Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 995e69d1 authored by Svetoslav's avatar Svetoslav Committed by Android (Google) Code Review
Browse files

Merge "Offer to enable a print service after it is installed (Settings)." into klp-dev

parents c9ebf9bb 0ad40283
Loading
Loading
Loading
Loading

res/drawable-hdpi/ic_print.png

deleted100644 → 0
−1.03 KiB
Loading image diff...

res/drawable-mdpi/ic_print.png

deleted100644 → 0
−799 B
Loading image diff...

res/drawable-xhdpi/ic_print.png

deleted100644 → 0
−1.11 KiB
Loading image diff...
+1 −1
Original line number Diff line number Diff line
@@ -192,7 +192,7 @@
    <header
        android:id="@+id/print_settings"
        android:fragment="com.android.settings.print.PrintSettingsFragment"
        android:icon="@drawable/ic_print"
        android:icon="@*android:drawable/ic_print"
        android:title="@string/print_settings" />

    <!-- Development -->
+18 −0
Original line number Diff line number Diff line
@@ -65,6 +65,9 @@ public class PrintSettingsFragment extends SettingsPreferenceFragment implements
    static final String EXTRA_ADD_PRINTERS_COMPONENT_NAME = "add_printers_component_name";
    static final String EXTRA_SERVICE_COMPONENT_NAME = "service_component_name";

    private static final String EXTRA_PRINT_SERVICE_COMPONENT_NAME =
            "EXTRA_PRINT_SERVICE_COMPONENT_NAME";

    private final PackageMonitor mSettingsPackageMonitor = new SettingsPackageMonitor();

    private final Handler mHandler = new Handler() {
@@ -97,6 +100,7 @@ public class PrintSettingsFragment extends SettingsPreferenceFragment implements
        mSettingsPackageMonitor.register(getActivity(), getActivity().getMainLooper(), false);
        mSettingsContentObserver.register(getContentResolver());
        updateServicesPreferences();
        startPrintServiceSettingsIfNeeded();
        setHasOptionsMenu(true);
    }

@@ -213,6 +217,20 @@ public class PrintSettingsFragment extends SettingsPreferenceFragment implements
        }
    }

    private void startPrintServiceSettingsIfNeeded() {
        if (getArguments() == null) {
            return;
        }
        String componentName = getArguments().getString(EXTRA_PRINT_SERVICE_COMPONENT_NAME);
        if (componentName != null) {
            getArguments().remove(EXTRA_PRINT_SERVICE_COMPONENT_NAME);
            Preference prereference = findPreference(componentName);
            if (prereference != null) {
                prereference.performClick(getPreferenceScreen());
            }
        }
    }

    private class SettingsPackageMonitor extends PackageMonitor {
        @Override
        public void onPackageAdded(String packageName, int uid) {