499 Commits

Author SHA1 Message Date
Daniel Martí
17b6ca83d7 Merge branch 'master' of https://gitlab.com/relan/fdroidclient 2015-07-24 10:21:08 -07:00
relan
8f2c827280 Fix padding in dialogs
Padding around content area should be 24dp. See the Material Design spec:

	http://www.google.com/design/spec/components/dialogs.html#dialogs-specs
2015-07-23 09:47:27 +03:00
relan
28ba6921d1 Tint links
Apply the accent color to links.
2015-07-23 09:46:33 +03:00
relan
0b7c5fb616 Tint preference dialogs
Apply the accent color to EditTextPreference and ListPreference. They
use android.app.AlertDialog.Builder, not
android.support.v7.app.AlertDialog.Builder, so the theme has to be
specified using "android:alertDialogTheme" attribute in addition to
AppCompat's "alertDialogTheme". For the same reason those dialogs won't
be tinted on pre-Lollipop Android versions.
2015-07-23 09:41:37 +03:00
relan
04e8b591ab Tint alert dialogs
Apply the accent color to alert dialog buttons. Note that without
"android:windowMinWidthMajor" and "android:windowMinWidthMinor" attributes
dialog width is calculated incorrectly resulting in visual artifacts.
2015-07-23 09:19:20 +03:00
Daniel Martí
cfff0ba0e8 Bump to 0.95-alpha1 2015-07-21 11:47:14 -07:00
relan
4b699d5376 Use AlertDialog from the support library
This unifies look of alert dialogs across various Android versions and
allows proper tinting.
2015-07-20 11:17:40 +03:00
Luca Favatella
b7527e78e7 Log error when view finds unknown column in model
This stricter behaviour would have reported a more meaningful error
easing investigation for issue #276 on Android 2.1.
2015-07-20 03:26:22 +01:00
relan
bcb3ac1fe0 Fix identical bitmaps across various configurations
No need to put mdpi images into drawable/ directory since F-Droid does not
support Android 1.5. This fixes appropriate warning from lint.
2015-07-19 19:34:25 +03:00
Peter Serwylo
9da6893ac3 Added verbose debugging to diagnose swap state. Foreground/background service correctly. 2015-07-19 23:52:47 +10:00
Peter Serwylo
240bcce445 Remove bonjour preference. Separate bluetooth and wifi more clearly.
Before, you could "Enable swapping" without specifying which type
of protocol to enable. Now, the two switches are clearly delimited
between bluetooth and wifi.
2015-07-18 01:48:56 +10:00
Peter Serwylo
4f4310c0ca Clean up after merging swap stuff. 2015-07-18 00:08:25 +10:00
relan
6ddd1571c7 Change repositories icon
Use ic_toc_white instead of ic_view_headline_white. The latter often used
to show navigation drawer and thus may be confusing.
2015-07-17 15:43:42 +03:00
relan
2dc689e2a1 Remove icons from dialogs titles
Dialogs should not have icons in their title bars. See the Material Design
spec:

    http://www.google.com/design/spec/components/dialogs.html
2015-07-17 09:59:34 +03:00
relan
f0f0bd09d3 Reuse existing refresh icon
Use Material-style icon instead of the old Holo-style one.
2015-07-17 09:20:47 +03:00
relan
cc43561bf2 Reduce action bar icons size from 48dp to 24dp
From the Material Design spec:

> DP unit grid

> System icons are displayed at 24dp.

See http://www.google.com/design/spec/style/icons.html#icons-system-icons

Script used to update the icons:

    function download {
        F-Droid/tools/download-material-icon.sh F-Droid/res $1 $2
    }

    download content add
    download device bluetooth
    download action delete
    download notification do_not_disturb
    download image edit
    download action help
    download device nfc
    download av play_arrow
    download navigation refresh
    download action search
    download action settings
    download social share
    download action view_headline
2015-07-17 08:34:32 +03:00
Peter Serwylo
0a373de7a4 Merge branch 'nathan-bluetooth-swap' into nearby-peers-with-bluetooth 2015-07-15 17:42:03 +10:00
n8fr8
2a6b514232 change BT request handling to operate directly on files
We don't want to depend on HTTP being active in case there is
no wifi that exists at all. In some cases, local 127.0.0.1 does not
exist if the Wifi is not connected. This commit takes the code
from LocalHTTPD and repurposes it for the BluetoothServer needs.
2015-07-13 16:45:53 -04:00
n8fr8
e930e03378 improvement on scan/re-scan logic to avoid failure 2015-07-13 16:05:13 -04:00
n8fr8
c53df989b8 small UI clean-up of header display 2015-07-13 16:05:00 -04:00
n8fr8
c399a17369 add more checks for possible NPE and simplify the UI 2015-07-13 15:04:38 -04:00
n8fr8
cc6b2736ce add logic for setting/re-setting "Fdroid" name tag for bluetooth device 2015-07-13 14:41:21 -04:00
n8fr8
d662c15fb8 list background should be white 2015-07-13 14:40:22 -04:00
n8fr8
99a86c4080 handle null adapter case 2015-07-13 14:40:11 -04:00
Hans-Christoph Steiner
01fce7f94f re-enable Lollipop spongycastle hack
It doesn't look like there is an easy way around this, so re-enable it in
the new structure.

#111 https://gitlab.com/fdroid/fdroidclient/issues/111
2015-07-13 10:32:08 -07:00
Hans-Christoph Steiner
2910acc906 break out TOFU so all connections also run through regular verification
This drastically simplifies the very important index.jar signature
verification process by splitting out the Trust On First Use (TOFU) part of
the process into its own method, and makes the TOFU write happen separately
from the `RepoUpdateRememberer`.  It requires all connections go through
the normal verification process.
2015-07-13 10:32:08 -07:00
Hans-Christoph Steiner
43cc017c91 Utils.closeQuietly() for closing things in finally {} blocks 2015-07-13 10:32:08 -07:00
Hans-Christoph Steiner
675151b4ef rename string status_processing_xml to prevent crashes on old translations
Thanks to @mvdan for catching that.  Turns out Java's String formatting is
not as tolerant as C's printf().  Java crashes when the format is wrong,
while C just ignores extras.
2015-07-13 10:32:08 -07:00
Hans-Christoph Steiner
64d709c142 create ProgressBufferedInputStream to get progress info while parsing XML
Might as well tap into the stream to get the byte counts, that's best
progress info I can think of when parsing a file.

This is a step towards a single progress bar for the whole process, instead
of showing one progress for downloading, another for parsing XML, then a
third for processing the new app info.
2015-07-13 10:32:08 -07:00
Hans-Christoph Steiner
4f2650cd47 update logic to match only parsing signed index files
Now that there is only ever the index.jar, the whole flow of RepoUpdater
has changed quite a bit.  This updates the logic for deciding when to store
the current repo's pubkey in the database for future reference.

This changes the flow to stop writing the unpacked index.xml and instead
stream it directly to the XML parser from the index.jar.  This should speed
things up some.
refs #259 https://gitlab.com/fdroid/fdroidclient/issues/259

This is also work towards running the whole thing in the background:
refs #103 https://gitlab.com/fdroid/fdroidclient/issues/103

This also removes the progress stuff since it will need to change a lot to
work with the streaming mode
2015-07-13 10:32:07 -07:00
Hans-Christoph Steiner
d7efc99bdb simplify RepoUpdater to remove cruft from previous code structure
Before, there was an abstract RepoUpdater class with two subclasses, one
for signed and unsigned.  Now there is just a single class, and it only
ever starts with the index.jar.  So this removes lots of code that was
there to handle that more complicated structure.  For example, there is no
longer the need to separately work on the index.xml vs index.jar.
2015-07-13 10:32:07 -07:00
Hans-Christoph Steiner
3c6389c004 fix failing symlink test
the dest.txt  symlink was produced, but it was pointing to a non-existent
file.
2015-07-13 10:32:07 -07:00
Peter Serwylo
a8dedd8ac2 Removed SwapAppListActivity, implemented UI mockup for swap app list.
Still need to hook up the buttons in the app list, but this change
shows the correct status and/or buttons for installable/upgradable/
incompatible/installed apps in the swap list. This change also hooks
up UIL to download icons for apps and thus display them in the list.
2015-07-13 22:52:51 +10:00
Daniel Martí
ef4c67530a Merge branch 'master' of https://gitlab.com/relan/fdroidclient 2015-07-12 11:42:27 -07:00
Peter Serwylo
f236dc3d3e Removed ConnectSwapActivity, refactored into SwapWorkflowActivity.
Involved creating another view/state for which the swap workflow can
be in. It is not explicitly stated by setting the state of the SwapService,
as is the case with other views. Rather, it is inferred based on the
presence of a `NewRepoConfig` crafted from the incoming intent in
`onResume()`.

Also gave me an idea of how to move more logic out of individual views,
and into the SwapWorkflowActivity. That is, inflateInnerView should
return the inflated view, to be cast into the specific subclass. From
there, the activity can call methods directly on the view to set it
up, rather than having the view do that stuff itself. In the future,
may consider doing this with other views too.
2015-07-12 23:18:09 +10:00
Nico Alt
53c4ba52c4 delete default value for old permission preference 2015-07-11 11:43:59 +02:00
Peter Serwylo
4e4d3ec3f9 WIP: More cleaning up of swap process, unbinding service, and investigating getting rid of ConnectSwapActivity. 2015-07-10 01:14:32 +10:00
Peter Serwylo
0b1e2732c2 Refactored SwapService + SwapManager into single SwapService 2015-07-09 11:43:34 +10:00
relan
c6a2b1174e Apply new UI colors
Action bar color is Blue 700.
Status bar color is Blue 900.
Accent color is not from Material Design palette.

See https://www.google.com/design/spec/style/color.html for color values.
2015-07-04 21:32:38 +03:00
relan
db3e8a62c4 Update raster icons
Script used to generate raster icons:

    function rasterize_icon {
        inkscape media/fdroid-logo-2015/$1.svg -e F-Droid/res/drawable-$4/$2.png -w $3 -h $3
    }

    function rasterize {
        rasterize_icon $2 $3 $(( 18 * $1 )) ldpi
        rasterize_icon $2 $3 $(( 24 * $1 )) mdpi
        rasterize_icon $2 $3 $(( 36 * $1 )) hdpi
        rasterize_icon $2 $3 $(( 48 * $1 )) xhdpi
        rasterize_icon $2 $3 $(( 72 * $1 )) xxhdpi
        rasterize_icon $2 $3 $(( 96 * $1 )) xxxhdpi
    }

    rasterize 2 fdroid-logo ic_launcher
    rasterize 2 default-app ic_repo_app_default
    rasterize 1 default_notification ic_stat_notify
    rasterize 1 updates_notification ic_stat_notify_updates
2015-07-04 21:29:16 +03:00
Daniel Martí
618b1096f3 Remove partial arrays to fix theme selection crashes 2015-06-30 10:22:05 -07:00
Peter Serwylo
a3af6b8b9f WIP: Serialize bonjour peers correctly. Refactor mini-service APIs.
The reference to mini-services above are not full blown Android
services. Rather, they are utility classes which can be started,
stopped, and send broadcasts about their status.

Made the list of apps to install better, with buttons for install
or upgrade, and statuses for incompatible and installed.
2015-06-30 19:04:06 +10:00
Daniel Martí
3cc54ad2ff Bump to 0.94-test 2015-06-28 13:41:51 -07:00
Daniel Martí
6e5468daa1 Remove unused code in TabsAdapter 2015-06-28 13:37:37 -07:00
Daniel Martí
d9c2ea6fb6 Remove unused imports 2015-06-28 13:33:19 -07:00
Daniel Martí
2b15a3c17b Make good use of TextUtils.isEmpty()
Keep a consistent style when checking for empty strings. This also adds some
missing lentgh() > 0 checks in crucial places like AppDetails.
2015-06-28 13:24:23 -07:00
Peter Serwylo
22b072962e WIP: Don't show self in Bonjour peer list. Implement UI for peer list.
Peers are shown as proper list items now, subject to feedback from Carrie.
TODO: Need to figure out how to combine bluetooth and bonjour with same
fingerprint.
2015-06-27 10:12:26 +10:00
Peter Serwylo
30669f8058 WIP: Hooking up specific peers from the "nearby peers".
Touching the peers will prompt app selection for swap, then skip the
wifi and NFC screens, then show updating info, then a list of apps to
swap.
2015-06-26 00:13:52 +10:00
Peter Serwylo
7c49f03f21 Updated readme with instructions for running tests. Fixed for Andoid-10
Updated the README with details of how to run the tests. Also added a
minor fix to allow tests to run on pre-honeycomb devices. However their
behaviour may not be 100% defined - because the contentproviders are
not shuttind down correctly due to lack of an API to do so.
2015-06-24 21:36:36 +10:00
Daniel Martí
e7912359eb Drop ant support
It broke with a recent support lib update that made the binary library be an
.aar instead of a .jar. Besides, the ant plugin has been buggy and unsupported
for a very long time.

Also dropping support for eclipse in the process, which lets us get rid of the
nasty symlinks.
2015-06-24 00:01:51 +02:00